Arduino Leonardo als Tastaturersatz - Fehlersuche

Da immer mehr Zusi User von einem 1:1 Führerstand mit träumen, soll es zumindest an Datenaustausch nicht hapern.
Nachricht
Autor
Benutzeravatar
Thomas B
Beiträge: 411
Registriert: 28.03.2007 16:41:08
Wohnort: Bergisch Gladbach
Kontaktdaten:

Re: Arduino Leonardo als Tastaturersatz - Fehlersuche

#21 Beitrag von Thomas B »

Kevin1897 hat geschrieben: 21.08.2023 15:14:20 Grundsätzlich ist dein Gedankenansatz schon richtig, aber wird in ZUSI eh nur ein Befehl akzeptiert?
Kann schon sein, aber wenn der Arduino hunderte Tastenanschläge pro Sekunde verschickt, flutet das auf jeden Fall die Event-Queue am USB, was halt auch merkwürdiges Verhalten erzeugen kann. Deshalb besser nur bei Flankenänderung was schicken.
Das von meinem Namensvetter sieht gut aus, das könnte man als Fleißarbeit noch mit einem schönen Debounce-Filter garnieren :)
https://docs.arduino.cc/built-in-exampl ... l/Debounce

***Edit***
p.S.:
Wenn du das hier machst

Code: Alles auswählen

    Keyboard.releaseAll();
Verlierst du darüber hinaus auch die Möglichkeit mehrere Schalter gleichzeitig zu drücken.
Grüße,
Thomas (eh. ElektrikTrick)

Kevin1897
Beiträge: 56
Registriert: 07.10.2022 21:53:59

Re: Arduino Leonardo als Tastaturersatz - Fehlersuche

#22 Beitrag von Kevin1897 »

***Edit***
p.S.:
Wenn du das hier machst

Code: Alles auswählen

    Keyboard.releaseAll();
Verlierst du darüber hinaus auch die Möglichkeit mehrere Schalter gleichzeitig zu drücken.
[/quote]

Soll heißen, wenn ich Keyboard.releaseAll wegnehme überall, bestünde die Möglichkeit dass es dann Mehrfach Tastendrücke akzeptiert wird.

Nur jetzt steh ich an einem Punkt, ich kann das Programm alleine nicht mehr umbauen ohne dass das im Chaos endet :wand
BR620/622/642 BR8442 ;-)

Benutzeravatar
Thomas B
Beiträge: 411
Registriert: 28.03.2007 16:41:08
Wohnort: Bergisch Gladbach
Kontaktdaten:

Re: Arduino Leonardo als Tastaturersatz - Fehlersuche

#23 Beitrag von Thomas B »

Am besten du fängst einen neuen Sketch an. Dann nimmst du den Code von Thomas U

Code: Alles auswählen

  if(Frei != digitalRead(A0))
  {
    Frei = digitalRead(A0);
    if(Frei == 0)
    {
      Keyboard.press(KEY_KP_DOT);
    }
    else
    {
      Keyboard.release(KEY_KP_DOT);
    }
    delay(100);
  }
kopierst ihn und ersetzt die Tasten und Pins durch die gewünschten. Und jeweils eine Variable wie "Frei" unterhalb von "#include <Keyboard.h>" erzeugen.
Grüße,
Thomas (eh. ElektrikTrick)

Benutzeravatar
F. Schn.
Beiträge: 6697
Registriert: 24.10.2011 18:58:26

Re: Arduino Leonardo als Tastaturersatz - Fehlersuche

#24 Beitrag von F. Schn. »

Konzentrier dich zu allererst mal auf einen Taster. Und dann versuchst du, den Taster mal elektrisch und digital zum Laufen zu bekommen. (Z.B. Sifa und Pfeife)

Als Test kannst du einfach mal eine Textdatei aufmachen, und beobachten, was deine selbst gebastelte Tastatur so macht.

Der Code von Thomas U ist da mal ein guter Anfang.

Ergänzung: Meine Überlegung von der vorherigen Seite ist wohl nicht nötig, wenn man in der Doku nicht nach Numpad sondern Keypad sucht, dann tauchen ein paar Special Keys auf, die in der Doku von press nicht erwähnt sind. Thomas U hat die auch gefunden: https://www.arduino.cc/reference/en/lan ... ric_keypad
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Antworten