Replies: 2 comments
-
PS: Please tell me if you think this should be posted in the TinyUSB project discussion forum, rather than in the Arduino one. Thanks. |
Beta Was this translation helpful? Give feedback.
0 replies
-
As a follow up to this, I now find that the older trackball works when a USB hub is placed between the trackball and the "Adafruit Feather RP2040 with USB Type A Host" board. This really surprised me, and now I am digging through the debug info trying to work out why it would work with the hub but not without. My motivation is to not need the hub. |
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
-
Hi there, I am using TinyUSB with Arduino on a "Adafruit Feather RP2040 with USB Type A Host" board.
The USB host functionality is working well for most devices and I have also been able to enable the USB debugging via the TinyUSB library.
I have here an older trackball which identifies as "bcdUSB: 0x100 (USB Version 1.00)" and specifically "bcdHID : 0x0100 (HID Version 1.00)".
It works as expected on both Windows and Linux computers.
When connected to the "Adafruit Feather RP2040 with USB Type A Host" board the device is not detected as an HID device and no callbacks are made.
My question is whether I should expect a USB v1.0 and HID v1.0 device to work with TinyUSB? If not can anyone provide any hints as to how to modify the library to support this device? Perhaps I need to change some of the descriptor parsing for identification of HID devices?
If it helps, when I debug at level 3 I get the following output:
=============================================================
Idling output from debugger
...snip...
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xf414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x6014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
CDC xfer callback
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xd414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x4014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
CDC xfer callback
Connect device
[1:] USBH DEVICE ATTACH
Low Speed
[1:0] Open EP0 with Size = 8
Get 8 byte of Device Descriptor
[1:0] Get Descriptor: 80 06 00 01 00 00 08 00
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xf414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x6014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
CDC xfer callback
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xd414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x4014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
CDC xfer callback
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xf414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x6014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
CDC xfer callback
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xd414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x4014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
CDC xfer callback
on EP 00 with 8 bytes: FAILED
[1:0] Control FAILED, xferred_bytes = 8
80 06 00 01 00 00 08 00
Unplug device
[1:0:0] USBH DEVICE REMOVED
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xf414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x6014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
CDC xfer callback
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xd414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x4014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
CDC xfer callback
Queue EP 82 with 20 bytes ...
Prepare BufCtrl: [0] = 0xf414 [1] = 0x0000
buf_status = 0x00000010
Sync BufCtrl: [0] = 0x6014 [1] = 0x0000
Short packet on buffer 0 with 20 bytes
Completed transfer of 20 bytes on ep 82
USBD Xfer Complete on EP 82 with 20 bytes
...snip...
=============================================================
Beta Was this translation helpful? Give feedback.
All reactions