Arduino Mega -> Tastaturanschläge für Mini-Game

Servus Arduino-Freunde,

ich habe vor einem Jahr ein Projekt mit Drucksensoren verwirklicht. Unter einer gelagerten Platte sind vier Sensoren, ähnlich wie bei einer Waage. Je nachdem auf welches Eck der Platte ich drücke wird ein Sensor stärker belastet als der andere.
Die Daten werden über ein Bluetooth HC05-Modul Seriell an den PC gesendet. Die Daten kann ich live mit dem Programm "SerialPlot" visualisieren.
Mein nächster Schritt ist, mit diesen Daten ein Mini-Game zu steuern. Dabei kann ich mir "Blobby Volley" vostellen.

Hardware: Arduino Mega

Mein erster Versuch:

  • Buchstabe wird über Serial.plot an PC gesendet
  • Programm "232Key" erkennt Buchstaben und gibt ihn als Tastenanschlag aus.
    Problem:
  • Es wird die Flanke des Tastenanschlags nicht angegeben. Bei live Spiele macht es Sinn die Dauer des Tastenanschlags wiederzugeben.

Meine Frage an euch:

  • Wie kann ich mit einem Arduino Mega Tastenanschläge und die Dauer der Tastenanschläge "live" übergeben?
  • Welche Software bzw. Hardware-Lösungen wisst ihr dafür?

Keyboard.press() funktioniert ja leider nicht mit dem Mega.

Danke im Voraus Grüße
Michi

Das sollte funktionieren, wenn du die Flanke auswertest und anschließend die Dauer der gedrückten Taste misst.

Das kann man sicher gut selbst programmieren.

Hi

Da der Mega (Uno/Nano) nur als COM-Port am PC sichtbar werden - zumindest nicht direkt.
Du könntest in einer beliebigen Sprache auf dem PC die COM auslesen und in dieser Sprache Tastaturbefehle generieren.

Oder Du nimmst einen Arduino, Der als Tastatur erkannt werden kann - Der kann dann selber die Tasten drücken.

MfG

Danke für eure Antworten.

@HotSystems: Ich möchte nicht die Dauer eines Tastendrucks messen sondern einen Tastendruck auf einer PC-Tastatur mit einer gewissen Dauer simulieren.

@postmaster-ino: Vielen Dank. Eignet sich "Processing" dafür?

Kann ich dabei ein Startbit für "Taste-gedrückt" und ein Stoppbit für "Taste-losgelassen" senden und dies als Tastenanschlag live ausgeben?

Könnt ihr euch vorstellen, dass dabei ein ruckelfreier Spielfluss möglich ist?

Grüße
Michi

Hier habe ich was gefunden:
Könnte der vierte Post (von Calsign) mein Thema lösen?

Ich möchte mich nur ungern in Processing einlernen wenn ich damit die Aufgabe nicht zielstrebig lösen kann.

Grüße
Michi

mayerstro:
Danke für eure Antworten.

@HotSystems: Ich möchte nicht die Dauer eines Tastendrucks messen sondern einen Tastendruck auf einer PC-Tastatur mit einer gewissen Dauer simulieren.

Na dann habe ich dein Problem wohl falsch verstanden.

Hi

Wie hier so oft - WAS willst Du wirklich?
Klar kann man einen Arduino, Der sich als HID ausgeben kann, auch verschiedenste Tastendrücke zu definierten Zeiten senden lassen - mit Drücken und Loslassen - dann ist der per USB angeschlossene Arduino eine USB-Tastatur!
Nur halt blöd, daß Du keine neuen Daten - also Was Du Wann für Wie Lange drücken willst, in den Käfer rein bekommst, ohne Diesen neu zu flashen - oder Du häkelst einen andere nArduino an Diesen dran, Der per I²C/Seriell/WhatEver mit dem HID-Arduino schwätzt und Dem So neues Wissen übermitteln kann.
Dann hast Du einen 'normalen' Arduino, Dem Du ganz normal Befehle zusenden kannst - Der schickt Die zum HID-Arduino und Der baut Die in Seinen Ablauf ein.

Da aber auch hier die Tastenanschläge vorher definiert sind, kann ich mir kaum vorstellen, daß Das Was werden kann, Was keinen unfeinen Hintergrund hat, lasse mich aber gerne überzeugen.

Wenn man mit Processing Tastaturanschläge auslösen kann, sollte Das Damit gehen.

MfG

postmaster-ino:
Wenn man mit Processing Tastaturanschläge auslösen kann, sollte Das Damit gehen.

Nach dieser Diskussion sollte es funktionieren.

Gruß Tommy

Hallo Zusammen,
ich werde wohl die Processing-Variante probieren. Kann aber noch Zeit durchs Land ziehen bis ich soweit bin. Ich berichte ob es funktioniert hat.
Danke