Arduino-Keyboard: Shiftkey-Event wird manchmal ignoriert

Hast Du Probleme mit Hardware, die durch die anderen Foren nicht abgedeckt werden? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Spindoctor
Beiträge: 308
Registriert: 22.04.2011 10:34:00

Arduino-Keyboard: Shiftkey-Event wird manchmal ignoriert

Beitrag von Spindoctor » 10.09.2020 09:59:26

Hallo!

Ich bastel gerade an einem Arduino-Projekt, das mir in bestimmten Situationen eine Keyboard-Eingabe machen soll. Dabei habe ich das merkwürdige Problem, dass am Beginn des Programmablaufs fast immer Großbuchstaben zu Kleinbuchstaben werden - mit anderen Worten: der Shift-Key wird ignoriert. In der Mitte des Ablaufs passiert das nicht so oft, aber auch manchmal.

Ich habe versucht, das Problem Arduino-seitig zu lösen (siehe hier). Dank dem Hinweis von Edgar Bonet habe ich mir nun die Events mal in xev angesehen.

Es wirkt auf mich, als hätte ich den falschen Baum (oder Prozessor) angebellt und als wäre der Arduino gar nicht unbedingt schuld sondern mein Host-System.

Mein Skript soll "ON" vom Arduino an den PC schicken. In den meisten Editoren (ich nutze z.B. gedit) kommt aber "oN" an. Die XEV-Events sind hier zu finden und sehen für mich so aus, als ob der Arduino ganz richtig "ON" geschrieben hätte.

Habt ihr einen Tipp für mich, warum Debian (bzw. gedit) trotzdem "oN" liest und wie ich das verhindern kann?

Danke schon jetzt!

DeletedUserReAsG

Re: Arduino-Keyboard: Shiftkey-Event wird manchmal ignoriert

Beitrag von DeletedUserReAsG » 10.09.2020 12:26:16

Du könntest versuchen, den Buchstaben vor der Shifttaste „loszulassen”, wie es beim Schreiben auf einer Tastatur passieren würde, statt wie im Mitschnitt ›Shift aktivieren‹ → ›Buchstabe drücken‹ → ›Shift loslassen‹ → ›Buchstabe loslassen‹. Auch kann es helfen, „Tastendrücke“ deutlicher zeitlich voneinander zu trennen: du hast da welche mit gleichem Timestamp.

Spindoctor
Beiträge: 308
Registriert: 22.04.2011 10:34:00

Re: Arduino-Keyboard: Shiftkey-Event wird manchmal ignoriert

Beitrag von Spindoctor » 10.09.2020 12:49:04

danke niemand!

Das wäre mein Notfallplan. Das eigenartige ist nur: ich verwende die Standard-Arduino-Keyboard-Library. Also eine Library, die eigentlich schon echt gut erprobt ist oder sein sollte. Wenn die das so macht, sollte es passen, oder?

DeletedUserReAsG

Re: Arduino-Keyboard: Shiftkey-Event wird manchmal ignoriert

Beitrag von DeletedUserReAsG » 10.09.2020 12:57:01

Ehrlich gesagt, ist dieser Arduinokram oft sehr unsauber zusammengestrickt, um es höflich auszudrücken. Beispiel: das Standard-„delay“ kann bei gleichen übergebenen Zahlen unterschiedliche Längen haben – was zur lustigen Fehlersuche führen kann, wenn man drauf angewiesen ist, präzise getaktete Signale zu haben.

Außerdem sind hier zwei Seiten im Spiel. Wie gesagt, ich würde die beiden Sachen ins Auge fassen. Insbesondere das Timing kann durchaus schon das Problem verursacht haben.

Um welchen Arduino geht’s denn, wenn ich fragen darf?

Spindoctor
Beiträge: 308
Registriert: 22.04.2011 10:34:00

Re: Arduino-Keyboard: Shiftkey-Event wird manchmal ignoriert

Beitrag von Spindoctor » 10.09.2020 13:18:55

Es ist ein Arduino Pro Micro Beetle SS.

Das unangenehme an der Selbermach-Lösung ist, dass ich selbst die Unterscheidung von Zeichen mit Shift und ohne Shift-Key machen muss. Abgesehen davon ist es nicht so schwer.

Spindoctor
Beiträge: 308
Registriert: 22.04.2011 10:34:00

Re: Arduino-Keyboard: Shiftkey-Event wird manchmal ignoriert

Beitrag von Spindoctor » 10.09.2020 13:41:40

Btw, hier ist die Implementierung ind er Standard-Library
https://github.com/arduino-libraries/Ke ... yboard.cpp

Antworten