Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Allgemeine Info zu BiDiB:


Treiberinstallation:


Programme für BiDiB:


Das BiDiB-System:

One-Serie:

Addon-Module:

Ready-Line:

Beispielkonfigurationen:

Konfigurationsvorlagen:


Das OpenCarSystem:


Anwendungsunterstützung:


Kompatibilität:


Codehilfe für eigene BiDiBOne Entwicklungen:

onedriveturn:firmware_migration

Migration Firmware von Version 1 (OneDriveTurn) bzw. Version 2 (OneControl) auf Version 3

Es stehen unterschiedliche Versionen der Firmware für die Baugruppen OneDriveTurn und OneControl zur Verfügung. Die Firmware Varianten unterscheiden sich in ihrem jeweilicht Funktionsumfang (z.B. Anzahl Servos mit/ohne 16T, Anzahl Macros, Anzahl Accessorys, etc.).
Eine Übersicht dazu findet Ihr hier für die
- OneControl
- OneDriveTurn

Die Migration der FW erfolgt bei der OneDriveTurn-Baugruppe direkt von Version 1.x auf Version 3.x.
Die Zwischenversion wird übersprungen, da künftig die FW für beide Baugruppen OneDriveTurn und OneControl gemeinsam geführt werden.

Im Folgenden eine Schritt für Schritt Anleitung für die Migration am Beispiel der OneDriveTurn-Baugruppe mit 8 Servos (Alle anderen Varianten und auch die OneControl folgen dem gleichen Schema):

Wenn Servos an der Baugruppe angeschlossen sind, dann erst mal die Stecker der Servos abziehen! Ansonsten kann es zu ungewollten und unkontrollierten Stellbewegungen während des Update-Vorgangs kommen.

Neue gewünschte FW zip-Datei auswählen:

Abfrage mit „Ja“ bestätigen:

„Vollinstallation“ für OneDriveTurn (BiDiBOne-Prozessor) oder OneDriveTurn Plus (BiDiBOnePlus-Prozessor) anwählen und mit „Starten“ das Aufspielen beginnen:

Sicherheitsabfrage, ob eine Knotensicherung erfolgt ist, beherzigen.

Also ggf. erst mal abbrechen und eine Sicherung anlegen!
An der Stelle der Hinweis, dass nach dem Update und Import der zuvor gesicherten Daten einige Einstellung händisch korrigiert werden müssen, da die neue Firmware etliche Neuerungen mitbringt.
Das betrifft vor allem die Makros für die Motorausgänge und ggf. die Einstellungen der GPIO.
All das wird weiter unten in diesem Beitrag noch beschrieben und ist schneller getan als geschrieben.

Also, wenn ok, dann mit „OK“ bestätigen. Ab dann läuft die Installation

Das dauert eine kleine Weile. Nach abgeschlossenem Durchlauf mit „Schliessen“ das Dialogfenster schließen. Der Knotennamen sieht jetzt erst mal so aus:

Nur für den Fall, dass beim Update ein Fehler auftritt und der Knoten aus der Baumstruktur verschwunden ist: Versorgungsspannung der Baugruppe abschalten, ca. 30 Sekunden warten, dann die Taste auf der Baugruppe gedrückt gehalten und dabei die Spannung wieder einschalten. Dann ist die Baugruppe wieder da. Ggf. benötigt der Master noch einen Neustart (Rechtsklick auf den Knotennamen, Auswahl Neustart im Kontextmenü). Dann die Updateprozedur von oben noch einmal wiederholen.

Doppelklick mit der linken Maustaste auf den Knotennamen, um den Knoten wieder auszuwählen, ergibt folgendes Bild – alle Reiter sind wieder sichtbar:

Einmal mit der rechten Maustaste auf den Knoten klicken und im Kontextmenü „Importieren“ wählen.
Die folgende Abfrage mit „Nein“ ablehnen, denn die alten CV-Werte dürfen in diesem Fall nicht importiert werden.

Im nächsten Fenster die zuvor hoffentlich erstellte Knoten Sicherungsdatei auswählen und mit „Öffnen“ importieren:

Abfrage mit „OK“ bestätigen: Damit ist der Vorgang der FW Migration an sich abgeschlossen.

Beim Einlesen der Knotensicherung von einer niedrigeren Firmware-Version kann es zu folgender Fehlermeldung kommen. Dies Fehlermeldung kann mit der Schaltfläche „Ignorieren“ erst mal unterdrückt werden:

Je nach gewählter Firmware sind die Makros jetzt anzupassen:

Damit ist das Aufspielen der neuen Firmware abgeschlossen.

Jetzt wird noch nicht alles wie gewohnt funktionieren, da aufgrund der Portverschiebungen einige Daten nicht übernommen werden können.
Details zur Portverschiebung findet Ihr hier: GPIO Ports

Im Folgenden soll gezeigt werden, was praktisch zu tun ist um die Baugruppe nach Import einer Knotensicherung von einem älteren Firmwarestand wieder zur gewünschten Funktion zu bringen.


Anpassen der Makros für die Verwendung der Servo-Ports

Die Neueinrichtung der Servo-Ports ist hier beschrieben: Servo Ports

Nach dem Importieren einer Knotensicherung von einer älteren Firmware-Version ist für die Makros zur Ansteuerung der Servo-Ports keine Anpassung erforderlich.
Alle Daten für die Makros werden übernommen, dass sollte etwa so aussehen:

Im Reiter Servoausgänge sind ebenfalls die übernommenen Daten in den Spalten Stellgeschwindigkeit und Justagewert zu sehen:

Zur Spalte „Zielwert in %“: Dieser „Zielwert in %“ ist immer der aktuelle Wert an dem der Servo gerade steht und der wird im Knotenexport nicht gespeichert. Wenn der Servo per Makro an eine andere Stelle gefahren wird, dann wird hier der Wert angezeigt, sobald der Knoten das nächste Mal selektiert wird. Im Moment gibt es noch keinen „Aktuellen Wert vom Knoten laden“-Button. Dass die Schieberegler erst mal in Mittelstellung zu sehen sind, ist also ok.


Anpassen der Makros für die Verwendung der Motorausgänge

Details zur Neueinrichtung der Motor Ausgänge sind hier beschrieben: Power- bzw. Motor-Ausgänge

Mit der neuen Firmware werden die Motorausgänge nicht mehr wie bisher über die Auswahl der einzelnen Ausgänge, sondern über Schaltpaare angesteuert. Das vereinfacht die Makros deutlich. Im Folgenden eine Schritt für Schritt Anleitung wie die Neueinrichtung funktioniert.

Bisher wurden die einzelnen Motorausgänge 8 bis 23 (0 bis 7 sind ja die Servos) bei Erstellen eines Makros separat ausgewählt und dabei waren mehrere Makroschritte sinnvoll. Das sah z.B. so aus:

Jetzt funktioniert das über die neu eingeführten Schaltausgang-Paare, deshalb funktionieren die alten Makros nicht mehr und die Portausgänge werden auch nach Import der alten Knotendaten nicht mehr angezeigt.

Dafür gibt es im Wizard jetzt einen neuen Reiter „Schaltausgang-Paare“:

In dem Reiter sind erst mal keine Einstellungen erforderlich.
Es gehören immer ein gerader und der nächste ungerade Ausgang als Schaltpaar zusammen. Das ist auch durch die leicht hellere Darstellung der ungeraden Ausgänge kenntlich gemacht.
„einschalten“ schaltet jeweils den Ausgang mit der geraden Nummer ein und den mit der ungeraden aus, „ausschalten“ umgekehrt.

Im Reiter Makros sind für die Motorausgänge pro Weiche wieder je zwei neue Makros zu schreiben, das erste sieht z.B. wie folgt aus, wobei eben „einschalten“ den Ausgang mit der geraden Nummer einschaltet und den mit der ungeraden ausschaltet:

Das zweite Makro zur gleichen Weiche sieht dann so aus, wobei „ausschalten“ den Ausgang mit der geraden Nummer ausschaltet und den mit der ungeraden Nummer einschaltet:

Nach dem Erstellen der Makros noch in der Fußzeile auf „Schreiben“ klicken, dann sollte bei Klick auf „Testen“ die Weiche schon schalten.


Anpassen der Makros für die Verwendung der GPIO als Ausgänge

Details zur Neueinrichtung der GPIO als Ausgänge sind hier beschrieben: GPIO Ports

Beim Einlesen der Knotensicherung von einer niedrigeren Firmware-Version kann es zu folgender Fehlermeldung kommen. Dies Fehlermeldung kann mit der Schaltfläche „Ignorieren“ erst mal unterdrückt werden:

Anschließend kommt das gewohnte Pop Up Menü, das mit „OK“ bestätigt wird:

Der Vorgang dauert so ca. 5…6 s. Schaut man sich jetzt eines der Makros an, das z.B. eine Weiche über GPIO als Ausgang ansteuert, stellt man fest, dass kein Port angeboten wird. Das liegt daran, dass die GPIO erst wieder neu als Ausgang konfiguriert werden müssen:

Port-Typ umschalten

Die Umstellung der GPIO Ports erfolgt im Reiter „Schaltausgänge“. Öffnet man den Reiter das erste Mal, sind alle Schaltausgänge hellgrau als inaktiv markiert.
Mit einem Rechtsklick auf eine der Zeilen öffnet sich ein Kontextmenü, in dem man „Port umschalten“ auswählt. Dann wechselt die Zeile in die aktive Darstellung mit schwarzen Zeichen und das Schaltsymbol mit den gekreuzten Pfeilen ersheint in grün:

Den Vorgang mit „OK“ bestätigen:

Anschließend ist ein Neustart des Knotens erforderlich:

Rechtsklick auf den Knoten und aus dem Untermenü „Neustart“ auswählen und anschließend im nächsten Fenster noch mal mit „Neustart“ bestätigen:

Der Vorgang dauert wieder ein bisschen. Schaut man sich dann den Reiter „Eingänge“ an, stellt man fest, dass der GPIO Port, der zuvor als Ausgang konfiguriert wurde, nun als Eingang ausgegraut ist:

Im Reiter „Schaltausgänge lassen sich natürlich auch gleich mehrere GPIO Ports als Ausgang umschalten. Anschließend ist wieder ein Neustart des Knotens notwendig:

Schaut man sich jetzt wieder das Makro an, das oben am Beginn keine Ports aufweisen konnte, dann schtellt man zur Freude fest: Es sind bereits die passenden Portausgänge wieder zugeordnet!:

Es ist also tatsächlich weiter nichts zu tun, als die erforderlichen GPIO Ports als Ausgang zu konfigurieren und die alten Makros sind wieder funktionsfähig.


Verhalten der Accessorys

Nach dem Einrichten der Makros aus den vorherigen Schritten funktionieren auch die Accessorys wieder.
Da sind keine weiteren Einstellungen oder Korrekturen notwendig.


Neue Unique ID bei Verwendung in Steuerungsprogrammen

Die Knoten bekommen durch die neue Firmware auch eine neue Unique ID!

Es betrifft drei der vier Varianten. Die beiden neuen mit mehr (48) Makros und die mit GBM16T. Die ursprüngliche Variante mit 32 Makros und ohne GBM16T behält die alte Produkt-ID (OneControl 117, OneDriveTurn 122).

Die Änderung der ID ist Absicht, da die Varianten mit und ohne GBM16T immer schon als selbstständige Baugruppen behandelt wurden und es gab zu viele Missverständnisse beim Aufspielen der Firmware wie z.B. die Verschiebung der Port-Nummern. Konsequent wurden daher auch die neuen Vaianten mit der unterschiedlichen Anzahl Makros und Accessorys jeweils einer eigenen Baugruppe zugeordnet.

Da in den Steuerungsprogrammen die Adressierung über diese Unique ID läuft, funktioniert die Ansteuerung jetzt nicht mehr ohne Anpassung. Wenn man die neue Unique ID einträgt, ist alles wieder ok. Man muss das allerdings bei jeder Weiche, bzw. jedem Signal machen.

In rocrail wurde bereits eine Möglichkeit geschaffen mit einer einzigen "find and replace" Aktion die Unique ID's auszutauschen.

Eine Alternative zumindest bei rocrail ist die Verwendung des Baugruppennamens statt der Unique ID - der ändert sich nicht bzw. den kann man auf einer neuen Baugruppe leicht einstellen. Damit lässt sich das Problem hier vermeiden.


Viel Erfolg und viel Spaß mit den erweiterten Funktionen.

onedriveturn/firmware_migration.txt · Zuletzt geändert: 2018/10/09 20:09 von akuhtz