Mit dem RX Controller Omniwheels fernsteuern? (MQTT)
Forumsregeln
Bitte beachte die Forumsregeln!
Bitte beachte die Forumsregeln!
Mit dem RX Controller Omniwheels fernsteuern? (MQTT)
Welcher Sender kann sich mit dem TXT 4.0 Controller auf dem Modell verbinden, um es fernzusteuern?
Mit einem zweiten TXT 4.0 als Sender ist das über MQTT möglich.
Mit Calliope als Sender ist das mit einem WLAN Modul möglich. Calliope hat die erforderliche serielle Schnittstelle RX/TX. (Siehe mein Profilbild.)
Um das selbe WLAN Modul an den RX Controller anzuschließen, ist dazwischen noch ein I²C - UART Modul erforderlich.
Damit kann der RX Controller WLAN, TCP/IP und MQTT über AT Befehle (wie bei einem Modem) über I²C.
Der Joystick hat I²C und passt überall dran.
Das ROBO Pro Coding Projekt (Sender) kann für RX und TXT 4.0 konvertiert werden und funktioniert auf beiden ohne Code zu ändern.
Einfach I²C Kabel an EXT anstecken und fertig.
Mit einem zweiten TXT 4.0 als Sender ist das über MQTT möglich.
Mit Calliope als Sender ist das mit einem WLAN Modul möglich. Calliope hat die erforderliche serielle Schnittstelle RX/TX. (Siehe mein Profilbild.)
Um das selbe WLAN Modul an den RX Controller anzuschließen, ist dazwischen noch ein I²C - UART Modul erforderlich.
Damit kann der RX Controller WLAN, TCP/IP und MQTT über AT Befehle (wie bei einem Modem) über I²C.
Der Joystick hat I²C und passt überall dran.
Das ROBO Pro Coding Projekt (Sender) kann für RX und TXT 4.0 konvertiert werden und funktioniert auf beiden ohne Code zu ändern.
Einfach I²C Kabel an EXT anstecken und fertig.
I²C für Calliope, TXT 4.0 und RX Controller.
https://git.fischertechnik-cloud.com/users/i2c/projects
https://git.fischertechnik-cloud.com/users/i2c/projects
- fishfriend
- Beiträge: 2554
- Registriert: 26 Nov 2010, 11:45
Re: Mit dem RX Controller Omniwheels fernsteuern? (MQTT)
Hallo...

Ich mache (neben 1000 anderen Sachen) gerade was in der Richtung.
Ich hab mir mal ein preiswertes Gamepad geholt. Erst dachte ich, man könnte "nur" die Firmware ändern.
Aber so einfach geht es leider auch nicht.
Die Idee die dahinter steckt, ist die 18 Tasten/Joysticks für fischertechnik Modelle zu nutzen.
Über MQTT kann man halt soviel Taster nutzen wie man will, da ja nur die Daten übertragen werden.
Die zweite Problem ist, das meine Boards wenige I/Os haben die man nutzen kann.
Ich muss mal schauen, wie man die Taster über I2C einlesen kann und dann über den ESP32 übertragen kann.
Mit freundlichen Grüßen
Holger
Ich mache (neben 1000 anderen Sachen) gerade was in der Richtung.
Ich hab mir mal ein preiswertes Gamepad geholt. Erst dachte ich, man könnte "nur" die Firmware ändern.
Aber so einfach geht es leider auch nicht.
Die Idee die dahinter steckt, ist die 18 Tasten/Joysticks für fischertechnik Modelle zu nutzen.
Über MQTT kann man halt soviel Taster nutzen wie man will, da ja nur die Daten übertragen werden.
Die zweite Problem ist, das meine Boards wenige I/Os haben die man nutzen kann.
Ich muss mal schauen, wie man die Taster über I2C einlesen kann und dann über den ESP32 übertragen kann.
Mit freundlichen Grüßen
Holger
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro
TX-Light: Arduino und ftduino mit RoboPro
Re: Mit dem RX Controller Omniwheels fernsteuern? (MQTT)
Ich programmiere nie irgend welche Firmware von den Modulen sondern ausschließlich ROBO Pro Coding mit Blöcken. Die Module können alle I2C und dafür brauche ich nur 2 Blöcke: an eine I2C Adresse Bytes senden und Bytes empfangen.
Hier mal ein paar Beispiele für Tastaturen und für die Ausgabe Relais und das Display mit 128x128 Pixeln (16 Zeilen x 16 Zeichen).
Der Joystick ist nicht mit auf dem Foto. Motor Treiber gibt es auch, wenn die 4 am Controller nicht reichen.
Alles passt an den I2C Anschluss der fischertechnik Controller. (Die 4 Relais brauchen allerdings 5V und viel Strom.)
Und die I2C Module sind billiger als ein Stück Draht mit Steckern von fischertechnik: https://santjohanser.de/fischertechnik/ ... ft-stecker
Hier mal ein paar Beispiele für Tastaturen und für die Ausgabe Relais und das Display mit 128x128 Pixeln (16 Zeilen x 16 Zeichen).
Der Joystick ist nicht mit auf dem Foto. Motor Treiber gibt es auch, wenn die 4 am Controller nicht reichen.
Alles passt an den I2C Anschluss der fischertechnik Controller. (Die 4 Relais brauchen allerdings 5V und viel Strom.)
Und die I2C Module sind billiger als ein Stück Draht mit Steckern von fischertechnik: https://santjohanser.de/fischertechnik/ ... ft-stecker
I²C für Calliope, TXT 4.0 und RX Controller.
https://git.fischertechnik-cloud.com/users/i2c/projects
https://git.fischertechnik-cloud.com/users/i2c/projects
Re: Mit dem RX Controller Omniwheels fernsteuern? (MQTT)
Links wird die WLAN und MQTT Verbindung aufgebaut und rechts der Joystick eingelesen und mit mqtt_publish laufend gesendet.
I²C für Calliope, TXT 4.0 und RX Controller.
https://git.fischertechnik-cloud.com/users/i2c/projects
https://git.fischertechnik-cloud.com/users/i2c/projects
- fishfriend
- Beiträge: 2554
- Registriert: 26 Nov 2010, 11:45
Re: Mit dem RX Controller Omniwheels fernsteuern? (MQTT)
Hallo...
Ich gebe zu, es echt ein technisch interessantes Thema.
Leider hab ich zuwenig Ahnung, wie man andere Hardware an den TXT 4.0 über BT/USB anbindet.
Ich vermute mal das das OS schon z.B. auch über die USB die Möglichkeit hat einen Gamecontroller anzusprechen.
Da stellt sich dann die Frage, wie man über einen OS-Zugriff in Python, an die Daten des Gamecontrollers rankommt.
Die Variablen sind ja global und somit kein Problem.
Was man aber machen kann ist über MQTT und einem ESP32 einen Gamecontroller über BT anzusprechen.
U.a. gibt es da eine LIB bluepad32 auf Github https://github.com/ricardoquesada/bluepad32 die viele Gamepads ansteuern kann.
Der ESP32 ist dann als Client über MQTT an dem TXT 4.0 verbunden.
Mal schuen...
Mit freundlichen Grüßen
Holger
Ich gebe zu, es echt ein technisch interessantes Thema.
Leider hab ich zuwenig Ahnung, wie man andere Hardware an den TXT 4.0 über BT/USB anbindet.
Ich vermute mal das das OS schon z.B. auch über die USB die Möglichkeit hat einen Gamecontroller anzusprechen.
Da stellt sich dann die Frage, wie man über einen OS-Zugriff in Python, an die Daten des Gamecontrollers rankommt.
Die Variablen sind ja global und somit kein Problem.
Was man aber machen kann ist über MQTT und einem ESP32 einen Gamecontroller über BT anzusprechen.
U.a. gibt es da eine LIB bluepad32 auf Github https://github.com/ricardoquesada/bluepad32 die viele Gamepads ansteuern kann.
Der ESP32 ist dann als Client über MQTT an dem TXT 4.0 verbunden.
Mal schuen...
Mit freundlichen Grüßen
Holger
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro
TX-Light: Arduino und ftduino mit RoboPro
Re: Mit dem RX Controller Omniwheels fernsteuern? (MQTT)
Nach meiner Beobachtung hat das (hier im Forum) auch noch nie jemand gemacht. Eine Ausnahme wäre technika scratch, da wird aber nur das selbe gemacht, was die fischertechnik Apps auch machen. "andere Hardware an den TXT 4.0 über BT/USB" geht nicht.fishfriend hat geschrieben: ↑18 Jul 2026, 18:16Leider hab ich zuwenig Ahnung, wie man andere Hardware an den TXT 4.0 über BT/USB anbindet.
Ich unterscheide für mich in geht und geht nicht. Dann noch die Frage, soll das "Anbinden" verkabelt sein oder drahtlos?
Das was immer geht ist I2C. Man kann nur keine zwei Controller damit verbinden. Das wäre mit einer seriellen Schnittstelle (UART RX/TX) möglich aber die hat kein fischertechnik Controller. Mit dem I²C UART SC16IS752 kann man das aber auch (verkabelt) machen. https://www.amazon.de/dp/B0DBZRPSZ4
Ich verstehe auch nicht, warum ich mit einem nicht kompatiblen Game Controller kämpfen soll, wenn seit Jahren der I2C Joystick funktioniert.
Ist das Ziel, dass es geht ... oder welches Design ich in der Hand halte?
Kleiner Zusatznutzen ist bei I2C, dass die ROBO Pro Coding Blöcke auch auf dem RX Controller laufen.
I²C für Calliope, TXT 4.0 und RX Controller.
https://git.fischertechnik-cloud.com/users/i2c/projects
https://git.fischertechnik-cloud.com/users/i2c/projects
- fishfriend
- Beiträge: 2554
- Registriert: 26 Nov 2010, 11:45
Re: Mit dem RX Controller Omniwheels fernsteuern? (MQTT)
Hallo...
Es gibt auch "Bausätze" von Gamecontrollern als Platine, wo teilweise auch ein ESP32 drauf ist.
Statt den mit BT an der Console zu verbinden, kann man den über WLAN als MQTT Client an den TXT 4.0 anbinden.
Den Vorteil von den billigen Spiele Controllern ist, das man viele Tasten hat und die Kinder/Jugendlichen meist den Umgang schon kennen.
Man hat auch keine physische Verbindung (Kurzschlüsse/Fremdspannungen...).
Man "könnte" auch ft-Modelle mit dem Controller betreiben. Im Grunde als I/O Erweiterung. Also die Tasten als Endschalter (Eingänge), Leuchtdioden und Motoren als Ausgänge mehmen. Im Grunde könnte man so an einem TXT 4.0 viele verschiedene Modelle hintereinander oder sogar gleichzeitig betreiben ohne die Kabel umstecken zu müssen. Ist aber auch die Frage wie Zeitkritisch das Ganze ist.
Der Aufwand dafür ist aber schon größer, als wenn man mit einem ESP32 Board und entsprechenden Treibern das macht.
Die I2C Anbindung würde dann auch über den ESP32 laufen und nur die Daten über MQTT laufen.
Die Gamecontroller sind nicht mit dem TXT 4.0 kompatibel, aber mit dem ESP32 Modulen, wo es mehrere LIBs dazu gibt.
Der ESP32 hat ja nun auch eine Anbindung an den TXT 4.0. Man muss nur die Daten auf dem TXT 4.0 auswerten.
In manchen Beispielen von ft wurden OS Zugriffe gemacht. Inzwischen sind ja auch neue Blöcke hinzugekommen. Beispiel ist z.B. die Systemzeit.
Es muss also noch mehr Zugriffe geben. Nur welche?
Ich gebe zu, das wird wohl nur 0,01% (wenn überhaupt) der ft-Fans interessieren, aber man kann halt viel viel mehr mit dem Controller machen, als nur die Baukastenmodelle zu bereiben.
Danke für den Tipp mit dem SC16IS752. Den werde ich noch mal genauer anschauen, ob man den mit dem "Serial Bus Servo Board" direkt verbinden kann. Ich hatte vor längerer Zeit mal nach genau sowas gesucht.
Der Vorteil ist dabei, dass man nur eine Software am TXT 4.0 hat. Das dürfte für Anfänger nur noch eine kleine Hürde sein, das mal nachzumachen.
Zumal man statt der Servomotoren dann auch ft-Motoren nehmen könnte. Die hätten dann autake PD-Regelung, Überstromabschaltung, Servofunktion usw...
Aber das sprengt hier den Rahmen.
Wie gesagt, ein technisch faszinierendes Thema, finde ich.
Mit freundlichen Grüßen
Holger
PS Ich habe mir die Online-Übertragung vom TXT 4.0 zum PC noch nicht angeschaut. Ich vermute mal, das man den auch wieder mit einem Datensatz ähnlich der Vorgänger betreibt.
Mir stellt sich die Frage, ob wir uns auf eine Art (Grund-) Daten/Verzeichnisse einigen können, um nicht verschidene System zu haben.
Wobei ich mir die Frage stelle wie überhaupt, viele Übertragen für einzelne Tasten a,b,c... andere Bytes.
Eventuell ist das Ganze aber auch oversized und ich mache mir dazu zu viele Gedanken...
Es gibt auch "Bausätze" von Gamecontrollern als Platine, wo teilweise auch ein ESP32 drauf ist.
Statt den mit BT an der Console zu verbinden, kann man den über WLAN als MQTT Client an den TXT 4.0 anbinden.
Den Vorteil von den billigen Spiele Controllern ist, das man viele Tasten hat und die Kinder/Jugendlichen meist den Umgang schon kennen.
Man hat auch keine physische Verbindung (Kurzschlüsse/Fremdspannungen...).
Man "könnte" auch ft-Modelle mit dem Controller betreiben. Im Grunde als I/O Erweiterung. Also die Tasten als Endschalter (Eingänge), Leuchtdioden und Motoren als Ausgänge mehmen. Im Grunde könnte man so an einem TXT 4.0 viele verschiedene Modelle hintereinander oder sogar gleichzeitig betreiben ohne die Kabel umstecken zu müssen. Ist aber auch die Frage wie Zeitkritisch das Ganze ist.
Der Aufwand dafür ist aber schon größer, als wenn man mit einem ESP32 Board und entsprechenden Treibern das macht.
Die I2C Anbindung würde dann auch über den ESP32 laufen und nur die Daten über MQTT laufen.
Die Gamecontroller sind nicht mit dem TXT 4.0 kompatibel, aber mit dem ESP32 Modulen, wo es mehrere LIBs dazu gibt.
Der ESP32 hat ja nun auch eine Anbindung an den TXT 4.0. Man muss nur die Daten auf dem TXT 4.0 auswerten.
In manchen Beispielen von ft wurden OS Zugriffe gemacht. Inzwischen sind ja auch neue Blöcke hinzugekommen. Beispiel ist z.B. die Systemzeit.
Es muss also noch mehr Zugriffe geben. Nur welche?
Ich gebe zu, das wird wohl nur 0,01% (wenn überhaupt) der ft-Fans interessieren, aber man kann halt viel viel mehr mit dem Controller machen, als nur die Baukastenmodelle zu bereiben.
Danke für den Tipp mit dem SC16IS752. Den werde ich noch mal genauer anschauen, ob man den mit dem "Serial Bus Servo Board" direkt verbinden kann. Ich hatte vor längerer Zeit mal nach genau sowas gesucht.
Der Vorteil ist dabei, dass man nur eine Software am TXT 4.0 hat. Das dürfte für Anfänger nur noch eine kleine Hürde sein, das mal nachzumachen.
Zumal man statt der Servomotoren dann auch ft-Motoren nehmen könnte. Die hätten dann autake PD-Regelung, Überstromabschaltung, Servofunktion usw...
Aber das sprengt hier den Rahmen.
Wie gesagt, ein technisch faszinierendes Thema, finde ich.
Mit freundlichen Grüßen
Holger
PS Ich habe mir die Online-Übertragung vom TXT 4.0 zum PC noch nicht angeschaut. Ich vermute mal, das man den auch wieder mit einem Datensatz ähnlich der Vorgänger betreibt.
Mir stellt sich die Frage, ob wir uns auf eine Art (Grund-) Daten/Verzeichnisse einigen können, um nicht verschidene System zu haben.
Wobei ich mir die Frage stelle wie überhaupt, viele Übertragen für einzelne Tasten a,b,c... andere Bytes.
Eventuell ist das Ganze aber auch oversized und ich mache mir dazu zu viele Gedanken...
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro
TX-Light: Arduino und ftduino mit RoboPro