Forum: Mikrocontroller und Digitale Elektronik Set-Konfiguration in USB Kommunikation


von USB (Gast)


Lesenswert?

Hallo,

vielleicht mag nochmal einer von euch einen Setup-Befehl einer 
USB-Kommunikation entschlüsseln, bzw. eigentlich glaube ich, ihn bereits 
entschlüsselt zu haben und bräuchte jemanden, der mir meine bisher 
ungeklärten Fragen dazu beantwortet...

Der Befehl lautet:
SETUP: 21 09 01 02 00 00 02 00

Übersetzen würde ich ihn wie folgt:
21: Host do Device Interface Class
09: Set Config

01 02:
Aus dem Lower Byte: Konfiguration 01, ok, keine Frage
Aus dem HigherByte: Die 02 sollten eigentlich reserviert sein.
Jemand eine Idee wo die 02 herkommt?


weiter,
00 00: wIndex = scheint korrekt vorschriftsmäßig Null, keine Frage

02 00: Länge = 2, aber warum?
Set Configuration gibt hier eigentlich eine "Null" vor. Warum wird sich 
nicht dran gehalten?

Als Antwort gibt es übrigens zweimal eine 0x01 0x01 zurück.

von PittyJ (Gast)


Lesenswert?

Ich nehme immer Wireshark. Der Kann auch USB-Kommunikation anzeigen und 
entschlüsseln (zumindest unter Linux).
Benutzt den doch einfach und lass dir die Kommunikation aufdröseln.

Ansonsten gibt google so etwas heraus:
http://www.beyondlogic.org/usbnutshell/usb6.shtml
http://www.jungo.com/st/support/documentation/windriver/811/wdusb_man_mhtml/node55.html

von Clemens L. (c_l)


Lesenswert?

USB schrieb:
> 21: Host do Device Interface Class
> 09: Set Config

"Class" heißt, dass der Wert von bRequest in der Klassen-Spezifikation 
definiert ist. 9 = SET_CONFIGURATION würde nur für "Standard" statt 
"Class" gelten.

Und welche Klasse dieses Interface hat, hast du nicht verraten ...

von Joe F. (easylife)


Lesenswert?

USB schrieb:
> 09: Set Config

Das wäre dann ein Standard Device Request.
Du hast aber einen Class Interface Request, und da kann 0x09 z.B. 
SET_REPORT sein, wenn es ein HID Interface ist.

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.