Skip to content

Live capture on real DSO-2250 hardware reports no waveform #44

Description

@malikalhack
  • Symptom: GetCaptureState polling never leaves the empty-buffer state on a
    physical Hantek DSO-2250 (state byte stays 0x00), so no channel data is
    ever read and the display keeps showing no waveform, while Demo mode and
    every deterministic CTest continue to pass.
  • Investigated and ruled out across several verified, warning-free
    Debug/Release builds, each checked against fresh USB captures from the
    physical device: a missing ForceTrigger before polling, an incomplete
    configureCapture() command sequence, missing empty-response retry
    handling, resending TriggerEnabled on every poll, and a missing
    SetOffset (CONTROL_SETOFFSET, request 0xB4) channel/trigger offset
    command derived from the device's calibration table - all implemented,
    hardware-tested, and individually confirmed insufficient.
  • Found by correlating each USB command byte with its immediately following
    response byte across a full Windows reference driver capture (naive
    per-endpoint response counts are misleading, because GetCaptureState,
    GetChannelData, and the unrelated logic-channel/auto-range subsystem all
    share bulk-IN endpoint 0x86): the reference driver's completed-capture
    state value is 3, not the previously assumed 2. Corrected
    captureCompleteState from 2U to 3U for both DSO-2250 profiles in
    usb/src/usb_device.cpp.
  • This correction is warning-free in Debug/Release and passes all CTest
    cases, but still did NOT resolve the symptom on hardware retest - the
    root cause remains open. Treated as a known, unresolved bug pending
    further hardware-side USB capture analysis.

Wireshark-dumps.zip

Activity

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

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions