Replies: 1 comment 1 reply
-
max FS bulk endpoint size is only 64 bytes. This violate the USB specs, 2 wrongs cannot make a right. You should make an PR/issue to Arduino Due for them to fix the issue. The suggested patch is not accepted. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Operating System
Linux
Board
Pico
Firmware
examples/hosts/cdc_msc_hid modified to receive 512 + 1 bytes. (originally receives 64 + 1 bytes)
What happened ?
This is not a bug in tiny usb, but rather the Arduino Due. It reports as a Full Speed device, but reports a max packet size of 512. It also sends with a 512 byte packet size. The following patch allows tinyusb to communicate with the due in host mode. It modifies the max packet size from the descriptor from 512 bytes to 64 bytes.
It is also necessary to call tuh_cdc_read with a buffer size of at least 512 bytes (rather than 64) to ensure that data is not lost.
How to reproduce ?
Connect to native port on the Arduino Due.
Run modified cdc host example.
Debug Log as txt file
tinyusb_due.log
Screenshots
No response
I have checked existing issues, dicussion and documentation
Beta Was this translation helpful? Give feedback.
All reactions