Replies: 2 comments 1 reply
-
|
Which request has zero length and dir bit set ? |
Beta Was this translation helpful? Give feedback.
1 reply
-
|
If any one have same problem, you can check out this #3615 pr |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
We are developing with TinyUSB and using Vendor Control Transfers to execute certain commands. We noticed that when an IN transfer is initiated with a requested length (wLength) of 0, the device stops responding on the control endpoint.
After reviewing the USB specification and the TinyUSB source code, my understanding is that a request with wLength == 0 should always have its status stage as an IN transaction. However, in the status_stage_xact function, the response direction seems to be inverted. Could this cause an IN request's status stage to be incorrectly handled as an OUT transaction?

The strange part is the inconsistency across different systems using the same firmware and the same host application (WebUSB):
At my workplace, it fails (stops responding) on both Windows and macOS.
At home, it works perfectly on a Windows machine.
I am not entirely sure if this is a bug, so I would like to start a discussion first to clarify my understanding.
Beta Was this translation helpful? Give feedback.
All reactions