Teilantwort:
Ein HID-kompatibles Gerät sollte über einen HID-Deskriptor verfügen, der das bzw. die gültigen Datenformate von und zum Gerät beschreibt.
Unter Linux können Sie auf den HID-Deskriptor folgendermaßen zugreifen:
Sehen Sie sich die neuen Zeilen an dmesg
, die nach dem Anschließen des Geräts angezeigt werden. Dies zeigt an, ob der Linux-Kernel ihn auch als HID-Gerät und die Busnummer sowie den Hersteller und die Geräte-ID erkennt.
Wenn es noch nicht montiert ist, machen Sie es
mount -t debugfs none /sys/kernel/debug
als Wurzel. Dann /sys/kernel/debug/hid/<dev>/rdesc
wird der HID-Deskriptor enthalten, wobei <dev>
eine Geräte-ID die Busnummer, die Hersteller- und Geräte-ID sowie eine zusätzliche Nummer enthält.
Sehen Sie sich den Inhalt des Deskriptors mit cat '/sys/kernel/debug/hid/<dev>/rdesc'
an und bearbeiten Sie die Frage, um den Inhalt einzuschließen (oder platzieren Sie ihn in einem Pastebin usw. und bearbeiten Sie die Frage mit einem Link).
lsusb
und lsusb -v -d xxxx:yyyy
(wo xxxx:yyyy
ist der Hersteller und die Geräte-ID) gibt auch Informationen, die bei der Bestimmung der Kommunikation mit dem Gerät hilfreich sein können.
Bearbeiten
Das ist eine lustige Art, HID-USB zu verwenden: Der HID-Deskriptor besagt, dass Sie Chunks mit einer Länge von 8 Byte lesen und schreiben können, mit anwendungsspezifischem (nicht standardisiertem) Zweck. In der Tat tut dies der Blazer_usb- Treibercode in NUT, der eine Simulation simuliert serieller USB über 8-Byte-Chunks. Total verrückt.
Hier ist eine Beschreibung, wie es unter Ubuntu funktioniert, anscheinend gibt es mehrere Fallstricke. Das Kommunikationsprotokoll für die eigentliche serielle Schnittstelle wird hier beschrieben .
Wenn Sie immer noch Probleme damit haben, dass es unter Linux funktioniert usbmon
, überprüfen Sie, was nicht funktioniert.
Keine Ahnung, was für einen Windows-Treiber zu tun ist, es sei denn, Sie nehmen die Quelle und schreiben selbst einen.