Servus, ich stehe gerade vor der Frage der generellen Machbarkeit. Ist es möglich, einen Flight-Control Joystick, wie er zum spielen von PC-Flugsimulatoren verwendet wird, ohne große hardwareseitige Umbauten an einen Uno anzuschließen und das Signal auszulesen?
So wie ich es verstanden habe, ist Input über den verbauten USB-Port nicht möglich.
Mir geht es darum, mit dem Joystick den Uno, den ich schon habe, anzusteuern. Ich würde u gerk n neues board kaufen. Das ganze soll also kein Eingabegerät am pc werden, sondern Stand-alone. Kann man das mittels einers USB-TTL Konverters lösen?
Ich sag nein, zumindest nicht so einfach wie du dir das aktuell vorstellst.
Besorg dir die innereien eines Analog-Joysticks - das lässt sich relativ einfach mit zwei AnalogPins am Arduino Uno auslesen. Oder einen alten Joystick mit 15poliger Buchse, oder ein "digital Joystick" mit 9poliger Buchse.
Um eine USB Slave (den Joystick) auszulesen braucht es einen USB Host.
Die USB zu seriel Adapter sind allesamt Slaves.
Meist wird dazu ein MAX3421 verwendet. Einen Sketch zum Betreiben des jostiks kann ich Dir jetzt nicht verlinken.
Ein Detail am Rande:
I2C ---- Master/Slave
SPI ---- Master/Slave
USB ---- Host/Device
TCP/IP ---- Client/Server
Und ja, Der Arduino muss ein USB Host sein/werden um einen USB Joystick (HumanInterfaceDevice) daran anschließen zu können.
Oder OTG fähig sein. (Händis können das meist, Arduinos und Joysticks eher nicht)
Der Leonardo und der UNO nur mit Host Shield
Der DUE kann Host spielen.
Einige aus dem Randbereich eben so, z.B. der RP2040
Nein!
Host Shield (oder vergleichbares) muss sein.
Nachtrag: Master/Slave
Ich bin nicht sonderlich politisch.
Und die meisten Datenblätter/Bücher bisher auch nicht.
Aber ok, ich werde darüber nochmal nachdenken, wenn die Geräte Personalausweise bekommen und Wahlrecht erhalten.
Wenn es die Geräte eiliger haben, sollen sie mich anzeigen.
bzw. diesen Beitrag einem Moderator melden