Neues vom RC-Framework

Schon vor einiger Zeit wurde hier →das RC-Framework auf der Basis von →XBees-Bausteinen vorgestellt. Auch auf →DoktorRail’s git repo kann man es herunterladen. Dieses Framework basiert auf relativ alten Modulen, der Serie S1. Zwischenzeitlich sind neue Serien erschienen; die neueste ist jetzt die Serie 3:

Xbee der Serie 3 in der Ausführung ‘Micro’ mit U.FL Antennenanschluss

Daher arbeite ich im Moment an einer verbesserten Version des Frameworks, welches auch mit diesen aktuellen, sehr günstigen und kleinen Modulen kompatibel ist bzw. deren Möglichkeiten ausnutzt. Diese Version wird endlich das Binding beinhalten sowie etliche Performance-Verbesserungen, eine verbesserte Codebasis, die Pro-Variante mit deutlich größerer Reichweite wird explizit unterstützt, und, und, und. Es wird sich also lohnen. Aber:

Ein kleiner Showstopper …

Im Rahmen von Tests habe ich nun ein unerwartetes Verhalten der XBee-Module festgestellt. Lt. →Datenblatt, S. 240 soll bei einem empfangenen Datenpaket (frame 0x90) die Id des Sender-Moduls ausgegeben werden. Das ist aber leider nicht der Fall, die Id ist immer gefüllt mit dem Wert 0xFF. Das Problem habe ich bereits an →digi kommuniziert. Das Verhalten konnte nachvollzogen werden und es ist tatsächlich ein Bug. Ein Fix soll in einem kommenden Firmware-Update ausgerollt werden, der Termin hierfür ist aber noch nicht bekannt.

Testaufbau mit zwei XBee 3. Diese sind per FTDI-Kabel mit dem PC verbunden. Der Test wird mit der Konsole von →XCTU durchgeführt.

Was hat das mit dem RC-Framework zu tun?

Der Hintergrund ist der, dass die oben beschriebene Funktionalität mit einem neuen Feature des RC-Frameworks zu tun hat: Der “Senderübergabe”. Dabei soll es möglich sein, ein aktives Modell von einem Sender zum anderen zu “übergeben”. D.h. das Modell kann on-the-fly von einem anderen Sender (der vorher auch auf das Modell gebunden wurde) übernommen werden. Der erste Sender ist so lange der “Master” für das Modell, bis er eine gewisse Zeit nicht mehr gesendet hat (z.B. 2 Sekunden). Dann übernimmt der zweite Sender, selbst wenn der erste Sender dann wieder eingeschaltet wird.

Und für dieses Feature ist es nun wichtig, die Id des Sender-XBees im Modell zu kennen. Denn ohne Weiteres ist es nicht einfach möglich, die Sender-Id ständig zu ermitteln. Laut der Herstellerbeschreibung alles machbar, aber in der Praxis hat sich hier eben ein Fehler eingeschlichen.

Ausblick

Das bedeutet nun erst einmal warten: Die Firmware muss seitens digi gefixt und released werden. Erst dann kann ich den Test wiederholen, hoffentlich mit besserem Ergebnis. Die neue Version des →RC-Frameworks sollte dann nicht mehr allzu lange auf sich warten lassen.

Bis dahin, euer



Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.