Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

hil: stm32f723disco non-DMA host/cdc_msc_hid CDC echo intermittently reads nothing

Open
#4,203 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
c
Domain
embedded-iot

Research direction

Start by repeating the specified stm32f723disco non-DMA host/cdc_msc_hid run on master with -b stm32f723disco -t host/cdc_msc_hid -r 1. Capture the host log at failure with LOG=2 or RTT, then trace the failing transfer through the dwc2 slave-mode host IN path. Done means the transfer issue is fixed and repeated HIL runs pass.

Written by the indexing model from the issue text.

Description

followup Prio 📌

Seen while validating #3776 on ci.lan on 2026-10-09. #3776 does not cause it.

stm32f723disco (non-DMA variant), host/cdc_msc_hid, run with -b stm32f723disco -t host/cdc_msc_hid -r 1:

  • master e20482387: failed 3 of 4 runs.
  • #3776 branch: failed 1 of 4 runs.
  • stm32f723disco-DMA: passed every run.

First error:

CDC echo mismatch at offset 141 (38 bytes): expected: b'uCLROKkFjbDE6aCeh7Pq9zFc0TEhRfzyAuYXbU'  received: b''

The host stops returning CDC data partway through the echo. Since only the non-DMA variant fails, the suspect is the dwc2 slave-mode host IN path. This is a hypothesis; it has not been investigated.

Remaining work:

  • Reproduce with repeated runs on master.
  • Capture the host log at the failure, with LOG=2 or RTT.
  • Find the failing transfer, fix it, and confirm with repeated HIL runs.

Deferred because it is pre-existing and unrelated to the hub change.

Dominant language
C
Stars
7.2k
Forks
1.6k
Avg merge
2d 1h
Merged PRs (30d)
97

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from hathach/tinyusb

All issues in hathach/tinyusb

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.