Forum: Mikrocontroller und Digitale Elektronik Arduino Micro Pro als HID - "Rückantwort" möglich?


von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Für ein Info-Terminal soll ein Raspberry mit 24"-Bildschirm verwendet 
werden. Zur Bedienung ist ein zusätzliches Nextion-Display mit resitivem 
Touch an einem Arduino Micro Pro als eine Art dynamische Tatstaur 
vorgesehen.

Der Arduino Micro Pro wird per USB am Raspi angeschlossen und diesem 
gegenüber als USB-Tatstatur "auftreten". Erste Tests haben erwiesen, 
dass das im Prinzip auch funktioniert, mit dem Nextion ist der Arduino 
parallel dazu per Soft-Serial verbunden.

Was mich stört, ist das Fehlen einer Rückinfo, ob der jeweils gewünschte 
Status am Raspi durch die simulierten Tastendrücke auch tatsächlich in 
jedem Falle erreicht wird. Das Nextion-Display soll je nach Status sein 
Angebot an Touch-Buttons verändern, es wäre blöd, wenn da die 
Synchronität auseinander driftet ...

Sieht das HID-Protokoll irgend eine Form der Rückinfo vor? Ich habe als 
Basis für erste Tests das von in der Arduino-IDE mitgelieferte 
Keyboard-Beispiel genutzt und bin bisher nicht sonderlich tief in den 
Code eingedrungen.

Hat es Sinn in dieser Richtung weiter zu machen?

von Jim M. (turboj)


Lesenswert?

Frank E. schrieb:
> Sieht das HID-Protokoll irgend eine Form der Rückinfo vor?

Natürlich: USB Tastatur hat 3 LEDs, die auch über HID angesteuert werden 
können.

Schau Dir mal Literatur zum HID Report Deskriptor an.

von Dr. Sommer (Gast)


Lesenswert?

Frank E. schrieb:
> Der Arduino Micro Pro wird per USB am Raspi angeschlossen und diesem
> gegenüber als USB-Tatstatur "auftreten".

Aber warum? Warum nicht das Nextion direkt am PI anschließen, ggf per 
USB-Serial-Adapter? Warum überhaupt eines dieser sündhaft teuren 
Displays nehmen - du kannst auch eines dieser Raspberry Displays an die 
MIPI-Schnittstelle anschließen (ich denke mal die ist noch frei da der 
große screen am HDMI hängen wird), Touchscreen per USB, und dann hast du 
ein ganz normales Display welches du unter Linux nutzen kannst. Du 
konfigurierst X so dass es beide Displays ansteuert (wie Multi Monitor 
am PC), dann kannst du dir z.B. mit Qt eine Anwendung schreiben, welche 
direkt beide Screens nutzt. So kannst du problemlos beide Screens 
synchron halten, und sogar sowas wie eine Vorschau auf dem kleinen 
Screen machen - das wäre mit Arduino kaum möglich. Es entfällt:
- Implementation des Nextion Protokolls
- Der Arduino
- Die Kommunikation mit dem Arduino
- Die Pflege mehrerer Anwendungen (Arduino, Nextion, PI) parallel
- Teures Nextion Display
- Fummelei mit USB und HID
- Eventuell nicht konsistent wirkende GUI (Nextion sieht anders aus als 
z.B. Qt)

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.