Comments (4)
it does zero length transaction, most likely for control status stage
from tinyusb.
my point is the event is dropped:
Line 664 in 0848c46
dcd_event_handler skips processing it. so you never get to execute the xfer
i'm trying to port a chip, but i currently do not know if i get an interrupt for status completion or not. unfortunately the manual for this chip is in Chinese so I'm kinda on my own here :)
i have a usb analyzer so I'm using that to help
from tinyusb.
Not really, the DCD_EVENT_XFER_COMPLETE is called when the transferred is complete. For control status stage (zero length data), the stack has nothing to process in upper layer. So it simply skips that specific event.
To trace/debug your port, you should have an debugger such as jlink, or increase some variable counter, and printf it later etc... Though It is much easier to use jlink along with segger embedded studio which is mainly what I use for debugging :D
PS: I re-opened issue for further discussion. you can close it when you are happy with answer.
from tinyusb.
Unfortunately this chip (WCH CH568) is not an ARM chip, it is NDS32! I asked the guys using Google translate but they said that the debug port is not open... damn. Anyway, I'm slowly getting the idea that the interrupts really mean the transfer is done already (SETUP/IN/OUT). I believe I need to control the responses... Thanks for the help. I'll close this issue.
from tinyusb.
Related Issues (20)
- Potential code typo in examples/device/uac2_headset HOT 1
- Enabling feedback for USB microphone hangs
- Inconsistent Driver Errors on STM32F0
- [UVC] Support device with multiple VS and VC interface HOT 1
- panic on hid device enumeration with a particular hub HOT 6
- add webusb memory region support in dfu mode
- `tud_cdc_rx_cb` callback is never called. HOT 7
- MAX3421 (host) and NAK handling HOT 1
- Add a check to see if device ID is correctly mapped before accessing it HOT 5
- Debug logging options not enabled by tusb_config.h, ep_dir_string not defined HOT 5
- Plug in two devices at once, no devices found, panic HOT 7
- unredistributable *.ld files under non-free license HOT 9
- dcd_rusb2.c MSC enum error HOT 5
- Losing half of the bandwidth when receiving data by hid set-report transfer. HOT 2
- support wch ch32v/f full usb host
- DWC2: usbd_edpt_close() does not free TX FIFO RAM HOT 5
- WebUSB example crash when a max size packet and a ZLP received
- Support ESP32-S3 USB Host
- Testing branch for functionality preview
- EHCI driver attempts transfers exceeding the max transfer size
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tinyusb.