RX Controller: MicroPython Import für I2C Programmierung

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
Benutzeravatar
calliope
Beiträge: 39
Registriert: 11 Mär 2025, 12:02

RX Controller: MicroPython Import für I2C Programmierung

Beitrag von calliope » 11 Mär 2025, 19:29

Ich möchte eigene I2C Module an den RX Controller anschließen und programmieren. Ich habe Erfahrung mit MakeCode und TypeScript, aber nicht mit Python. Mit der Verdrahtung habe ich kein Problem. Ich möchte wissen, was ich im Python Code importieren muss.

Mit dem Beispiel könnte ich etwas anfangen, allerdings scheint es smbus2 nur für den TXT40 Controller zu geben.
https://pypi.org/project/smbus2/

I2C kann beim TXT 4.0 Controller in Python3 und beim RX Controller mit MicroPython verwendet werden.

Da scheint es einen Unterschied zwischen den Controllern in der selben App ROBO Pro Coding zu geben.

Was muss ich also beim RX Controller im Python importieren und ggf. welche Pins und Frequenz einstellen?

Vielen Dank!

Benutzeravatar
fishfriend
Beiträge: 2245
Registriert: 26 Nov 2010, 11:45

Re: RX Controller: MicroPython Import für I2C Programmierung

Beitrag von fishfriend » 13 Mär 2025, 17:04

Hallo...
Hast du mal das Beispiel vom RX un dem Programm RX_test-gesture-sensor angeschaut? Das ist auf Libs von ft selbst aufgebaut. Wenn man diesen sensor drann hat, ist der I2C aktiv und man kann auch andere Sachen machen.

Ich habe es auf dem RX selbst nicht ausprobiert aber im Grunde sollte das Beispiel auch auf dem RX laufen:
viewtopic.php?f=8&t=8439
Mit freundlichen Grüßen
Holger
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Benutzeravatar
calliope
Beiträge: 39
Registriert: 11 Mär 2025, 12:02

Re: RX Controller: MicroPython Import für I2C Programmierung

Beitrag von calliope » 14 Mär 2025, 16:40

Hallo Holger,
vielen Dank für das Beispiel. Genau so etwas ist mein Plan. Mit dem RX Controller funktioniert das aber nicht, weil es schon kein import smbus gibt.

Mit
import fischertechnik.factories as rx_factory
import fischertechnik.controller.I2C as I2C

gibt es nur die Methoden und kein write_byte u.a.:

['__class__', '__name__', '__file__', '__path__', 'controller_factory', 'input_factory', 'output_factory', 'motor_factory', 'i2c_factory', 'init_controller_factory', 'init_input_factory', 'init_motor_factory', 'init_output_factory', 'init_i2c_factory']

['__class__', '__module__', '__qualname__', '__dict__', 'create_environment_sensor', 'create_combined_sensor', 'create_gesture_sensor']

Hat jemand eine andere Idee oder geht das mit dem RX nicht, bzw. ist es nicht gewollt andere I2C Module anzuschließen?

Mit freundliche Grüßen
Lutz

Benutzeravatar
fishfriend
Beiträge: 2245
Registriert: 26 Nov 2010, 11:45

Re: RX Controller: MicroPython Import für I2C Programmierung

Beitrag von fishfriend » 14 Mär 2025, 22:31

Hallo...
ich bin mir nicht sicher. Ich habe es auch noch nicht ausprobiert.
Soweit ich das verstanden habe, greift auch die Lib von ft über den smbus auf den I2c zu - zumindest beim TXT 4.0.
Somit würde auch ein -anderer- I2C Sensor mit am Bus funktionieren - wenn der Gestensensor mit drann hängt.
Unter anderem weil die Initialisierung damit gemacht wird.

Ich gebe zu, dass ich jetzt nicht verstanden habe warum mit MicroPython und nicht mit Python 3 (Robo Pro Coding) beim RX programmieren.
Pass auf, das du den richtigen I2C nimmst, weil du eventuell auf den Speicher direkt am RX schreibst.
Ich kenne MicroPython auch dazu zu wenig um das zu machen.
Mit freundlichen Grüßen
Holger
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Antworten