|
Caution
|
▷ Überprüfe in regelmäßigen Abständen, ob Updates zur Verfügung stehen. ▷ Installiere Updates zeitnah, um mögliche Sicherheitslücken zu schließen. |
Auf RevPi I/O-Modulen und RevPi Gateways ist eine eigene Firmware installiert. Neue Firmware-Versionen beheben Fehler und verbessern die Funktion der Erweiterungsmodule. Das Update wird vom RevPi Basismodul über die PiBridge auf das Erweiterungsmodul mit der Applikation piTest übertragen.
Funktionsweise des Updates #
-
Während eines Firmware-Updates wird der zyklische Datenaustausch mit allen Erweiterungsmodulen angehalten. Das Prozessabbild wird nicht aktualisiert und Ausgänge werden nicht mehr angesteuert, bis das Update abgeschlossen ist.
-
Ein Update dauert wenige Sekunden bis eine Minute pro Erweiterungsmodul.
-
Jedes Erweiterungsmodul wird einzeln aktualisiert. So kann das Update gezielt für jedes Gerät ausgeführt werden.
-
Das Firmware-Update beeinflusst die auf dem Basismodul gespeicherte PiCtory Konfiguration des RevPi Systems nicht. Modulspezifische Daten wie die Seriennummer bleiben auf dem Gerät erhalten.
Erweiterungsmodul aktualisieren #
|
Caution
|
Beschädigung der Gerätesoftware durch Trennung von der Spannungsversorgung während des Updates
Wenn das Gerät während des Updates von der Spannungsversorgung getrennt wird, kann es irreversibel blockieren. ▷ Trenne das Gerät während eines Firmware-Updates nicht von der Spannungsversorgung. ▷ Unterbreche die Spannungsversorgung auch nicht nach einem fehlgeschlagenen Update. Starte stattdessen das Update erneut. |
Firmware-Version abfragen #
▷ Logge dich über ein Terminal am RevPi ein.
▷ Überprüfe die Adressen und Firmware-Versionen der angeschlossenen Geräte mit:
piTest -d
❯ Für jedes konfigurierte Gerät werden Adresse, Typ und Firmware-Version ausgegeben:
Address: 31 module type: 96 (0x60) RevPi DIO V1.7
Module is present
input offset: 0 length: 70
output offset: 70 length: 18
Firmware aktualisieren #
✓ Führe das Update in einer Betriebsphase durch, in der der Datenaustausch zwischen den Geräten unterbrochen werden darf.
✓ Stelle sicher, dass das Erweiterungsmodul ordnungsgemäß mit dem RevPi Basismodul verbunden ist.
✓ Stelle sicher, dass das Erweiterungsmodul Teil deiner PiCtory Konfiguration ist und von piTest -d angezeigt wird.
Die Firmware-Dateien werden mit dem Paket revpi-firmware ausgeliefert und liegen im Verzeichnis /lib/firmware/revpi/.
▷ Installiere die aktuellen Firmware-Dateien mit:
sudo apt update
sudo apt install revpi-firmware
▷ Starte das Firmware-Update mit:
piTest --module <Adresse> -f
▷ Bestätige den Start des Updates mit yes.
❯ Die Firmware wird auf das Erweiterungsmodul übertragen und es startet mit der neuen Version neu. Der Vorgang dauert einige Sekunden.
Die Firmware wird nur geschrieben, wenn die verfügbare Version neuer als die aktuell verwendete Version ist.
In Ausnahmefällen kann es nötig sein, die Firmware erneut zu schreiben, auch wenn die Version identisch oder älter ist.
▷ Erzwinge das Update mit:
piTest --module <Adresse> --force -f
|
Note
|
RevPi Gateways mit Firmware-Versionen, die das Auslesen der Geräteinformationen noch nicht unterstützen, werden als nicht vorhanden gemeldet. Sie lassen sich trotzdem auf diesem Weg aktualisieren. |
Rescue-Update #
Schlägt eine Update-Übertragung fehl, wiederholt piControl sie automatisch.
Schlagen alle automatischen Wiederholungsversuche fehl, bleibt das Erweiterungsmodul in einem Update-Modus und kann wiederhergestellt werden.
Im Update-Modus antwortet das Erweiterungsmodul nicht auf den Modul-Scan und piTest -d meldet es als nicht vorhanden.
Das Erweiterungsmodul ist nicht beschädigt, es wartet auf einen weiteren Update-Versuch.
Erweiterungsmodul wiederherstellen #
✓ piControl Version 2.8.0 oder höher
Die installierte piControl Version kannst du mit modinfo piControl auslesen.
Siehe auch Software-Updates installieren.
▷ Starte das Firmware-Update erneut mit:
piTest --module <Adresse> -f
❯ In den meisten Fällen wird das Update erfolgreich durchgeführt.
Erkennt piTest das Erweiterungsmodul weiterhin nicht, gibt es einen Rescue-Befehl aus, z. B.:
The module might be stuck in firmware update mode, retry with: piTest --module 31 --rescue 1 -f
▷ Führe den ausgegebenen Befehl aus oder erstelle ihn selbst nach dem Schema:
piTest --module <Adresse> --rescue <Hardware-Revision> -f
❯ Nach einem erfolgreichen Rescue-Update startet das Erweiterungsmodul neu und wird wieder erkannt.
Fehlerbehebung #
| Problem | Ursache | Lösung |
|---|---|---|
Das Update meldet, die Firmware sei bereits aktuell. |
Die verfügbare Firmware-Version ist nicht neuer als die Version auf dem Gerät. |
Verwende die Option |
piTest meldet |
Typische Ursachen sind eine fehlende Firmware-Datei, ein nicht erkanntes Erweiterungsmodul oder Kommunikationsfehler bei der Übertragung. |
Prüfe das Kernel-Log mit |
Das Kernel-Log zeigt |
Für deine Kombination aus Gerätetyp und Hardware-Revision liegt keine Firmware-Datei in |
Installiere das aktuelle Paket |
Das Update wird mit |
Das Erweiterungsmodul ist konfiguriert, wurde aber nicht erkannt. |
Prüfe, ob das Erweiterungsmodul ordnungsgemäß angeschlossen ist. |
Die Power-LED eines Erweiterungsmoduls leuchtet nach einem fehlgeschlagenen Update rot. |
Das Erweiterungsmodul wartet im Update-Modus. |
Führe ein Rescue-Update durch. |
Ein RevPi Gateway ist nicht mehr erreichbar, nachdem andere Erweiterungsmodule aktualisiert wurden. |
Gateways mit älterer Firmware können Update-Kommandos falsch interpretieren und versehentlich in den Update-Modus wechseln. |
Schalte die Spannungsversorgung des RevPi Gateways aus und wieder ein, um es neu zu starten. |