Skip to content

[cpp-RCP-09] ADC endpoint uses an invented "ADC_NO_SIGNAL" error and 32-bit values instead of the spec's 16-bit width #77

Closed

Description

@SoundMatt

Location: include/rcp/adc.hpp — AdcErrc::no_signal message text (~line 91) and the uint32_t-typed sample/value plumbing throughout AdcEndpoint/compute_average (~lines 113-190).

Finding: Two separate divergences from the governing specification in the same header. First, the ADC endpoint's no-signal condition renders as "ADC_NO_SIGNAL" in its error message; the spec's numeric error-code table has no such code — the only *_NO_SIGNAL entry in that table belongs to the PWM_IN endpoint, not ADC. Second, ADC sample/result values are modeled as uint32_t throughout this header, while the spec's ADC endpoint is defined for resolutions up to 16 bits, with responses carrying 16-bit values.

Recommendation: Remove the invented "ADC_NO_SIGNAL" identifier from the error message (use one of the spec's real error codes, or none, rather than a fabricated one), and narrow the ADC sample/result representation to 16 bits to match the spec's resolution ceiling.

Verification: Independently re-read include/rcp/adc.hpp against current HEAD (commit 4b9449a, 2026-07-29), and cross-checked against the governing specification's error-code table (confirming PWM_IN_NO_SIGNAL is the only *_NO_SIGNAL entry) and its ADC endpoint section (confirming the 16-bit value width and response figure). Confirmed both divergences.

Filed from the 2026-07-29 ecosystem audit register; independently re-verified against current HEAD before filing.

Activity

  1. added a commit that references this issue on Jul 30, 2026
  2. SoundMatt commented on Jul 30, 2026

    @SoundMatt
    OwnerAuthor

    Fixed by #91 (merged), which was not auto-linked because the PR description's bold markdown around the issue numbers broke GitHub's closing-keyword parser.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions