Forum: PC-Programmierung Linux USB HID Device?


von Markus (Gast)


Lesenswert?

Hallo,

Wie kann ich unter Linux mein USB HID Device finden und eine 
Kommunikation mit dem aufnehmen?

Unter Windows gibt es die Befehle der HID.DLL (HidD_GetHidGuid, 
SetupDiGetClassDevs, SetupDiEnumDeviceInterfaces usw.).

Aber wie geht das unter Linux?

Der Hintergrund:
Ich habe einen Mikrocontroller, der soll möglichst einfach an jedem PC 
ohne lästige Treiberinstallation laufen, also programmiere ich dort das 
USB als HID Device. Damit lässt sich das Gerät unter Windows mit Hilfe 
dieser HID.dll finden. Jetzt möchte ich gerne das gleiche unter Linux 
machen.

In Google finde ich alles, aber keine Lösung für mein Problem.

(LibUSB hat leider den Nachteil, dass man diese Treiber installieren 
muss, funktioniert dafür auch mit Linux)

Vielen Dank für eure Unterstützung.

von Sven P. (Gast)


Lesenswert?

Kommt aufs HID an: Tastaturen und andres serielles Zeugs landet 
automatisch als "tty*" im /dev-Verzeichnis, Mäuse kommen entweder als 
"mouse*" oder auch als "tty*" raus, Modems sind auch "tty*".
Dann einfach Datei öffnen und loslegen. Den Rest besorgst du vermutlich 
mit fcntl().

von Markus (Gast)


Lesenswert?

vielen Dank für Ihre Antwort!

Gibt es irgendwo Codebeispiele, wie man z.B. auf einen Endpoint was 
schreibt und liest?

von Roland (Gast)


Lesenswert?

Hier ist ein Beispiel unter Linux

http://www.frogmouth.net/hid-doco/c514.html

von Markus (Gast)


Lesenswert?

Vielen Dank für das Demo, jetzt kann ich wieder googeln, mit dem 
Stickwort "HIDIOCGDEVINFO"...

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.