Forum: Test Leseliste USB HID


von Max G. (l0wside) Benutzerseite


Lesenswert?

[Der Post ist hier nur als Zwischenspeicher]

Grundlagen

- Lowlevel-Kommunikation (hilft beim Verständnis, was der STM32 so 
treibt): https://www.lowlevel.eu/wiki/Universal_Serial_Bus
- USB in a Nutshell: https://www.beyondlogic.org/usbnutshell/usb1.shtml

Kommunikation mit dem Host

- SimpleHidWrite (Windows): http://janaxelson.com/hidpage.htm#tools
- PyWinUSB (Windows): 
https://stackoverflow.com/questions/16357756/how-to-send-hid-data-to-device-using-python-pywinusb
- Hidapi (Linux): https://pypi.org/project/hidapi/
- Windows + Linux: https://pypi.org/project/hid/

Debugging

Funktioniert nur unter Linux vernünftig, Wireshark fand ich eher 
frustrierend.
- USBMon: Programm https://www.mankier.com/8/usbmon, Format 
https://docs.kernel.org/usb/usbmon.html, für Descriptors: 
https://www.spinics.net/lists/linux-usb/msg154311.html
- Fehler -32 EPROTO heißt "Protocol Error", dann hat man den falschen 
Endpoint Type
- Fehler -115 ist völlig egal (EINPROGRESS)

Deskriptoren

- 
https://www.infineon.com/dgdl/Infineon-AN82072_PSoC_3_and_PSoC_5LP_USB_General_Data_Transfer_with_Standard_HID_Drivers-ApplicationNotes-v07_00-EN.pdf?fileId=8ac78c8c7cdc391c017d073bc5b95fcb&utm_source=cypress&utm_medium=referral&utm_campaign=202110_globe_en_all_integration-an_vanitylink
- 
https://community.nxp.com/t5/Kinetis-Microcontrollers/Modifying-USB-Generic-HID-Example-Code-for-Custom-Report/td-p/900868
- Beitrag "USB-HID Report Descriptor"
- https://eleccelerator.com/tutorial-about-usb-hid-report-descriptors/
- https://os.mbed.com/media/uploads/wim/hid_usb_intro_an249.pdf
- https://www.usbmadesimple.co.uk/ums_5.htm
- 
https://stackoverflow.com/questions/12140297/how-does-a-usb-hid-report-with-both-input-and-output-usages-work
- 
https://www.kampis-elektroecke.de/mikrocontroller/avr8/at90usb1287-usb/usb-device/hid-eine-einfuehrung-in-das-protokoll/
- Sehr hilfreich ist der Report Parser: 
https://eleccelerator.com/usbdescreqparser/#

Offizielle Device Class Definition: 
https://www.usb.org/document-library/device-class-definition-hid-111

: Bearbeitet durch User
Beitrag #7324657 wurde vom Autor gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.