HID-Device
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
HID-Device
Demnächst bekomme ich eine Arduino Leonardo, welcher man Alternativ auch über HID ansprechen kann.
Hat jemand Anhaltspunkte, wie man mit Lazarus auf die HID-Device zugreifen kann ?
Hat jemand Anhaltspunkte, wie man mit Lazarus auf die HID-Device zugreifen kann ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: HID-Device
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: HID-Device
Dort werden die JvHidControllerClass, JvComponentBase gebraucht.
Hat man diese unter LAzarus zum laufen gekriegt, da die Package sehr Delphi orientiert ist ?
Dort sind sogar cpp Dateien vorhanden.
Hat man diese unter LAzarus zum laufen gekriegt, da die Package sehr Delphi orientiert ist ?
Dort sind sogar cpp Dateien vorhanden.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: HID-Device
Ein bisschen weiter bin ich gekommen, ich habe ein C++ Code gefunden, welcher sich auf Anhieb mit Codeblooks kompilieren lies.
https://android.googlesource.com/kernel/common.git/+/android-3.10/samples/hidraw/hid-example.c
Laufen tut dann die Exe nur mit Root-Rechten.
Mal gucken, ob ich den Code auf Lazarus abändern kann.
Immerhin wurde mein MCP2221 gefunden:
https://android.googlesource.com/kernel/common.git/+/android-3.10/samples/hidraw/hid-example.c
Laufen tut dann die Exe nur mit Root-Rechten.
Mal gucken, ob ich den Code auf Lazarus abändern kann.
Immerhin wurde mein MCP2221 gefunden:
Code: Alles auswählen
tux-To-be-filled-by-O-E-M tux # ./test_mcp2221
Report Descriptor Size: 28
Report Descriptor:
6 0 ff 9 1 a1 1 19 1 29 40 15 1 25 40 75 8 95 40 81 0 19 1 29 40 91 0 c0
Raw Name: Microchip Technology Inc. MCP2221 USB-I2C/UART Combo
Raw Phys: usb-0000:00:1d.0-1.5.2/input2
Raw Info:
bustype: 3 (USB)
vendor: 0x04d8
product: 0x00dd
HIDIOCSFEATURE: Broken pipe
HIDIOCGFEATURE: Broken pipe
write() wrote 2 bytes
read: Resource temporarily unavailable
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: HID-Device
So nun habe ich den Code in Lazarus umgeschrieben.
Code ist im Anhang.
Voraussetzung ist, das man Linux verwendet.
Code ist im Anhang.
Voraussetzung ist, das man Linux verwendet.
- Dateianhänge
-
- HID-Test.zip
- (126.33 KiB) 162-mal heruntergeladen
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: HID-Device
Gibt es wenigsten einfache Beispiele in C/C++ ?
Google kann mir einfach nichts schlaues liefern.
Ich kann mir nicht vorstellen, das ich der einzige bin, der auf eine HID-Device zugreifen will.
Google kann mir einfach nichts schlaues liefern.
Ich kann mir nicht vorstellen, das ich der einzige bin, der auf eine HID-Device zugreifen will.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: HID-Device
Wenn ich Dich richtig verstehe, könntest Du nach
include "hidapi.h"
suchen. Da sind zumindest ein paar Quelltexte dabei.
include "hidapi.h"
suchen. Da sind zumindest ein paar Quelltexte dabei.
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: HID-Device
Diee habe ich auch schon gefunden, aber leider die hidapi.c nicht.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: HID-Device
Hmmm, auch auf die Gefahr hin, voll daneben zu liegen, suchst Du die?
hid.c: https://github.com/signal11/hidapi/blob ... inux/hid.c
hidapi.c: https://gitlab.cs.txstate.edu/jw1772/ma ... d/hidapi.c
hid.c: https://github.com/signal11/hidapi/blob ... inux/hid.c
hidapi.c: https://gitlab.cs.txstate.edu/jw1772/ma ... d/hidapi.c
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: HID-Device
Dank deiner Hilfe bin ich jetzt weiter gekommen, es braucht nirgends ein fpIOCtl, es geht alles mit fpWrite.
Siehe hier, bei MCP2221: viewtopic.php?f=12&t=10045&p=90931#p90931
Siehe hier, bei MCP2221: viewtopic.php?f=12&t=10045&p=90931#p90931
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: HID-Device
Sehr schön, ich war mir nicht ganz sicher, weil ich das sofort gefunden habe.
Ein Tipp noch zu Google, falls Du den noch nicht kennst: Wenn Du Suchworte in doppelte Anführungsstriche setzt ("hidapi.c"), wird (idealerweise) exakt diese Zeichenfolge gesucht/gefunden. Google sieht einen Punkt (Komma ...) sonst als Leerzeichen/Füllzeichen an und sucht dann nach hidapi und c, aber nicht unbedingt nach hidapi.c.
Nachtrag: Kurz noch zu include "hidapi.h": Das war nicht für die Suche nach hidapi.h gedacht, sondern um Beispielquelltexte zu finden, die dieses API einbinden.
Ein Tipp noch zu Google, falls Du den noch nicht kennst: Wenn Du Suchworte in doppelte Anführungsstriche setzt ("hidapi.c"), wird (idealerweise) exakt diese Zeichenfolge gesucht/gefunden. Google sieht einen Punkt (Komma ...) sonst als Leerzeichen/Füllzeichen an und sucht dann nach hidapi und c, aber nicht unbedingt nach hidapi.c.
Nachtrag: Kurz noch zu include "hidapi.h": Das war nicht für die Suche nach hidapi.h gedacht, sondern um Beispielquelltexte zu finden, die dieses API einbinden.
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: HID-Device
Ein Tipp noch zu Google, falls Du den noch nicht kennst: Wenn Du Suchworte in doppelte Anführungsstriche setz
Dies kenne ich, ich habe wahrscheinlich sonst falsch gesucht.
Ich musste feststellen, das hidapi.c schlussendlich auch nicht viel anderes macht als open und write.
Was es noch hat, sind sehr viel Überprüfungen und Variablen.
Was aber momentan das grössere Problem ist, ist wird zwingen Root-recht verlangt, sonst geht nichts.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: HID-Device
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 6164
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: HID-Device
Christian hat geschrieben:https://puredata.info/docs/faq/how-can-i-set-permissions-so-hid-can-read-devices-in-gnu-linux
Hier sehe ich nicht von /dev/hidraw? oder hängt dies mit /dev/input/event0 zusammen ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot