MCP2221 und HID

Gast #4824679
Lesenswert?
• ▲
▼
Wie kann ich den MCP2221 unter Linux über HID ansteuern ?

Mein MCP2221 wir als "/dev/hidraw3" erkannt.

Ich kann die Device mit
1
int fd = open("/dev/hidraw3", O_RDWR|O_NONBLOCK);
öffnen.


So kann ich den Herstelle-Name auslesen.
1
int res;
2
char buf[256];
3
res = ioctl(fd, HIDIOCGRAWNAME(256), buf);

Kann ich irgendwie auch mit "ioctl(fd, ....." auf die GPIO und I²C 
zugreifen ?
#4824843
Lesenswert?
• ▲
▼
Mathias schrieb:

> Kann ich irgendwie auch mit "ioctl(fd, ....." auf die GPIO und I²C
> zugreifen ?

Ja, das müsste gehen.

Wie Du mit hidraw umgehst, steht hier:
https://www.kernel.org/doc/Documentation/hid/hidraw.txt
(oder in Deinem Kernel-Source-Verzeichnis)

Im Datenblatt 
http://ww1.microchip.com/downloads/en/DeviceDoc/20005292B.pdf
ab Seite 23 ("3.0 USB HID COMMUNICATION") findest Du die Struktur der 
HID-Pakete. Die sind immer 64 Byte groß und werden mit read() und 
write() übertragen.

Damit müsstest Du alle nötigen Informationen zusammen haben.

fchk
#4824893
Lesenswert?
• ▲
▼
>Wie Du mit hidraw umgehst, steht hier:
>https://www.kernel.org/doc/Documentation/hid/hidraw.txt

Das habe ich hier auch gefunden, ich konnte es auch fehlerfrei 
kompilieren und starten. Das spuckt mir aber nur Info zu den HID-Geräten 
aus.

https://android.googlesource.com/kernel/common.git/+/android-3.10/samples/hidraw/hid-example.c

>Im Datenblatt
>http://ww1.microchip.com/downloads/en/DeviceDoc/20...
>ab Seite 23 ("3.0 USB HID COMMUNICATION") findest Du die Struktur der
>HID-Pakete. Die sind immer 64 Byte groß und werden mit read() und
>write() übertragen.

Dies habe ich auch schon gesehen, werde aber nicht schlau.

Schön wäre ein Beispiel, wie ich zB. den GPIO0 ein und ausschalte.
Google findet da leider nichts.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.