Recently Purchased a "TOOGOO(R) T45 USB Host Shield" from Amazon. I attempted to use the "USB Host Shield Library" from Github, but It seems like it might not support this particular shield.
I would really like to learn how to use this shield to interact with my joystick but the only tutorial information I have found to help me with this is from Circuits@home and they seem to be using a specific shield in their development of the code library.
Can anyone point me to a tutorial or Github library that can help me learn to work with this setup?
I'm using an Arduino Uno and a Thrustmaster USB joystick.
Thanks in advance.
UPDATE*
I fixed the initial problem of accessing the HIDDESC report. I now have the report, but the formatting of the report is particularly hard to understand. Using the Circuits@home articles I'm a little lost on how to read the report data I was given. It does not seem to be formatted in the same way as the example. Can anyone help with interpreting my device report?
Start
0000: 05 01 09 04 A1 01 09 01 A1 00 09 30 09 31 09 32
0010: 09 BB 15 80 25 7F 46 FF 00 66 00 00 66 00 00 75
0020: 08 95 04 81 02 C0 09 39 15 01 25 08 35 00 46 3B
0030: 01 65 14 75 04 95 01 81 02 05 09 19 01 29 04 15
0040: 00 25 01 75 01 95 04 81 02 95 08 81 01 05 08 09
0050: 43 15 00 26 FF 00 35 00 46 FF 00 75 08 95 04 91
0060: 82 55 00 65 00 55 00 65 00 55 00 C0
Usage Page Gen Desktop Ctrls(01)
Usage Game Pad
Collection Application
Usage Pointer
Collection Physical
Usage X
Usage Y
Usage Z
Usage Undef
Logical Min(80)
Logical Max(7F)
Physical Max(FF00)
Unit(0000)
Unit(0000)
Report Size(08)
Report Count(04)
Input(00000010)
End Collection
Usage Hat Switch
Logical Min(01)
Logical Max(08)
Physical Min(00)
Physical Max(3B01)
Unit(14)
Report Size(04)
Report Count(01)
Input(00000010)
Usage Page Button(09)
Usage Min(01)
Usage Max(04)
Logical Min(00)
Logical Max(01)
Report Size(01)
Report Count(04)
Input(00000010)
Report Count(08)
Input(00000001)
Usage Page LEDs(08)
Usage Slow Blk On Time
Logical Min(00)
Logical Max(FF00)
Physical Min(00)
Physical Max(FF00)
Report Size(08)
Report Count(04)
Output(10000010)
Unit Exp(00)
Unit(00)
Unit Exp(00)
Unit(00)
Unit Exp(00)
End Collection Game Pad Pointer X Y Z Undef(00)(00)(7F)(00)
Hat Switch(00)
Btn0001
(00) Btn0002
(00) Btn0003
(00) Btn0004
(00)
(00)(00)(00)(00)(00)(00)(00)(00)
Slow Blk On Time
-
I think you will need to get the library for your shield.Code Gorilla– Code Gorilla2018年04月12日 10:17:10 +00:00Commented Apr 12, 2018 at 10:17
-
1Identify the chip on your shield, and identify the chip on the shields that are supported. Typically these fly-by-night boards are just clones of better supported ones, but you could have anything including an inert paperweight. Worth considering that a host shield on an Arduino is generally a bad idea to begin with; if you want to host a USB peripheral, use a processor that can do so natively - it will be both cheaper and less roundabout. Also realize that only trivial well documented USB peripherals make sense for MCUs; for more complex things you probably want an embedded Linux system.Chris Stratton– Chris Stratton2018年04月12日 14:12:01 +00:00Commented Apr 12, 2018 at 14:12
-
@code Gorilla, where would I get the library for my shield?B. Guisgand– B. Guisgand2018年04月13日 03:08:06 +00:00Commented Apr 13, 2018 at 3:08
-
@ChrisStratton the chip is a max 3421EE 1637. It seems to work fine, and be designed well enough, but thanks for the input.B. Guisgand– B. Guisgand2018年04月13日 03:11:11 +00:00Commented Apr 13, 2018 at 3:11
-
@B.Guisgand - The library, if it exists, will be somewhere on the internet, I know that isn't helpful but what else can I say. I think you might have misunderstood Chris's point. Put bluntly you well down S creek with no paddle and he was handing you an outboard motor.Code Gorilla– Code Gorilla2018年04月13日 09:37:38 +00:00Commented Apr 13, 2018 at 9:37
1 Answer 1
The photos on Amazon show a clone of the circuit@home board so the same library should work. You may be running into the problem mentioned in the following page.
https://esp8266-notes.blogspot.com/2017/08/defective-arduino-usb-host-shield-boards.html