Administration - jens-maus/RaspberryMatic GitHub Wiki

Firmware Update/Upgrade

Firmware-Update via WebUI

Der wichtigste Punkt zuerst: Vor jedem Firmware Update/Upgrade ein Backup erstellen und dieses sicher verwahren.

Ein reguläres Firmware-Update/Upgrade findet analog zur CCU2 bzw. CCU3 wie folgt statt:

  1. Auf der alten RaspberryMatic Version mittels WebUI einloggen und unter Einstellungen -> Systemsteuerung -> Sicherheit -> Backup erstellen ein Backup der aktuellen Einstellungen/Konfiguration, etc. durchführen und die heruntergeladene *.sbk Datei sicher verwahren.

  2. Über Einstellungen -> Systemsteuerung -> Zentralen-Wartung -> Herunterladen kommt man auf die Download-Seite für die Updates. Dort die passende Update-Datei herunterladen.

    Achtung: Darauf achten die richtige Version für die verwendete Plattform herunterzuladen.

  3. Unter Einstellungen -> Systemsteuerung -> Zentralen-Wartung -> Heruntergeladene Software auswählen die Zip-Datei auswählen und dann darunter Hochladen drücken.

    Achtung: Sicherstellen das wirklich die *.zip Datei hochgeladen wird und kein ausgepacktes Archiv oder ähnliches.

  4. Nun kann es je nach Netzwerkanbindung bis zu 30 - 60 Minuten dauern, bis das Update auf die RaspberryMatic übertragen wurde.

    Achtung: Nicht den Browser schließen oder die Seite neu laden.

  5. Wenn das Hochladen fertig ist kann man durch Drücken von Start Update das eigentliche Update anstoßen. Auch das kann ggf. nochmal etliche Minuten dauern und kann auch mitunter mehrere Neustarts erzwingen. Hier kann man aber bei Bedarf nach einigen Minuten einen Refresh der momentan angezeigten WebUI durchführen und sollte dann zu einer Textausgabe kommen die den Status des Firmware-Updates anzeigt oder aber aufgefordert werden zu warten bis RaspberryMatic neu gestartet wurde.

  6. Nach dem Update begrüßt einen irgendwann wieder der Login-Bildschirm der WebUI. Ein weiterer Indikator für ein wieder hochgefahrenes System ist bei RaspberryPi oder Tinkerboard die grüne LED des Boards selbst (nicht des Funkmodules), die bei betriebsbereitem System im sogenannten "Heartbeat"-Modus regelmäßig blinkt. Bei NUC bzw. OVA Variante hilft ggf. ein Blick auf die Konsole.

Sollte es nach dem Update zu Darstellungs- oder Funktionsfehlern in der WebUI kommen, sollte der Browser-Cache gelöscht werden.

Vorgehen bei fehlgeschlagenem Update/Upgrade

Sollte das Firmware Update/Upgrade einmal wider erwarten schief gehen oder nicht durchgeführt werden können, so kann man das Update auch problemlos über das sogenannte "Recovery System" durchführen lassen. Dieses erreicht man in dem man den Button Einstellungen -> Systemsteuerung -> Zentralen-Wartung -> In Recovery Modus neustarten) dazu nutzt das System neustarten zu lassen. Danach sollte es dann normal via Webbrowser erreichbar sein, jedoch eine andere WebUI zeigen bei der mann dann auch die Möglichkeit hat Administrative Dinge vorzunehmen, um eben auch darüber ein Firmware Update/Upgrade durchführen zu lassen.

Sollte auch dieser Update/Upgrade-Pfad fehlschlagen, hat man in jedem Falle dann noch die Möglichkeit wie bei einer Neuinstallation (bei Raspberry Pi und Tinkerboard am Besten mit einer neuen SD-Karte, bei OVA ggf. eine neue VM erstellen) vorzugehen, um anschließend wenn RaspberryMatic hochgefahren ist, das vorher sicher verwahrte Backup über Einstellungen -> Systemsteuerung -> Sicherheit -> Backup zurückzuspielen.

Backup & Restore

Ein Backup enthält alle Nutzungs-/Konfigurationsdaten der RaspberryMatic (Programme, Einstellungen, usw.) sowie alle installierten CCU-Add-Ons. Mittels eines zurückgespielten Backups kann also schnell wieder ein funktionierender Zustand hergestellt werden.

HINWEIS: Backups sollten regelmäßig - mindestens jedoch vor und nach größeren Änderungen bzw. vor jedem Update auf eine neue Version - durchgeführt werden.

Backup

Manuelles Backup via WebUI

  1. In der WebUI anmelden

  2. Zu Einstellungen -> Systemsteuerung -> Sicherheit navigieren

  3. Auf den Button Backup erstellen drücken

    Die RaspberryMatic wird nun je nach Backup-Größe und verwendeter Hardware einige Sekunden bis etliche Minuten brauchen, um im Hintergrund das Backup zu erstellen um es dann an den Browser zu senden. Die WebUI bzw. der Browser-Tab sollte solange nicht verlassen werden.

  4. Wenn das Backup erstellt wurde, bietet es der Browser zum Download an und man kann es sicher verwahren

Manuelles Backup via Kommandozeile (SSH)

Hier sollte vorher entweder ein USB-Stick mit einem unterstützten Dateisystem eingesteckt sein oder anderweitig ein Backup-Speicher gemountet sein (z.B. ein NAS via NFS).

  1. Wenn noch nicht geschehen SSH über die WebUI Einstellungen -> Systemsteuerung -> Sicherheit aktivieren und ein Passwort setzen

  2. Anmelden als Benutzer root per SSH oder direkt auf der Konsole

  3. Mit folgendem Befehl kann ein Backup zum gemounteten Ziel erstellt werden:

    /bin/createBackup.sh <BACKUPDIR>

    Wobei <BACKUPDIR> durch den eigentlichen Pfad, z.B. /mnt/usb0, ersetzt werden muss.

Automatisches Backup (CronBackup) auf USB-Stick / NAS Laufwerk

Ist ein USB-Stick an der RaspberryMatic dauerhaft angeschlossen und mit einem unterstützten Dateisystem formatiert wie FAT32, NTFS, EXT4 oder F2FS, wird automatisch jede Nacht um 00:07 ein Backup auf dem USB-Stick erstellt und dort verwahrt. Ist diese Funktion nicht gewünscht kann man diese durch das Anlegen einer leeren Datei /etc/config/NoCronBackup dieses automatische, nächtliche Backup deaktivieren. Zusätzlich dazu kann man in einer Datei /etc/config/CronBackupPath einen alternativen Pfad angeben wo das nächtliche Backup gespeichert werden soll. Dies bietet sich z.B. dann an, wenn man sein NAS System sowieso via NFS oder CIFS an RaspberryMatic angebunden hat und dort das nächtliche Backup ablegen lassen will. Standardmäßig ist bei diesem sogenannten "CronBackup" eine Rotationszeit von 30 Tagen eingestellt. D.h. er wird nach 30 erfolgten, nächtlichen Backups dann die älteste Datei entsprechend überschreiben. Möchte man diese Zeitspanne verändern kann man dies in der Datei /etc/config/CronBackupMaxBackups hinterlegen. Das eintragen einer 0 in diese Datei wird dann dafür sorgen, dass unendlich viele Backups in dem angegebenen Pfad abgelegt werden und keine automatische Löschung durchgeführt wird.

Restore / Wiederherstellung

Restore via WebUI

  1. In der WebUI anmelden
  2. Zu Einstellungen -> Systemsteuerung -> Sicherheit navigieren
  3. Im Bereich Backup-Verwaltung über den Button Durchsuchen die gewünschte Backup-Datei auswählen
  4. Durch Klick auf Backup einspielen den Restore-Prozess beginnen, es dauert nun einen Moment bis das Backup zur RaspberryMatic übertragen wurde Zu beachten: Hat man einen eigenen "Sicherheitsschlüssel" vergeben, muss dieser nun zusätzlich eingegeben werden.
  5. Ein Klick auf System-Backup einspielen startet die RaspberryMatic neu und übernimmt das zuvor ausgewählte Backup.

Restore via Kommandozeile (SSH)

Die Backup-Datei muss dafür entweder vorher z.B. per SCP auf die RaspberryMatic kopiert werden oder auf einem direkt angeschlossenen Datenträger wie z.B. einem USB-Stick oder NFS mount vom NAS vorhanden sein.

  1. Via SSH-Zugang (Nutzer: root) einloggen
  2. Folgenden Befehl ausführen: /bin/restoreBackup.sh <PFAD_ZUM_BACKUP> also z.B. /bin/restoreBackup.sh /mnt/usb0/Raspberrymatic-3.51.6.20200621-2020-07-22-0110.sbk für ein Backup vom angeschlossenen USB-Stick.
  3. Nach erfolgtem Restore einen Neustart über das Kommando reboot durchführen

Danach sollte dann RaspberryMatic neustarten und das ausgewählte Backup entsprechend zurückgespielt worden sein.

CCU-Addons / Zusatzsoftware

Folgende CCU Addon Pakete sind für die verschiedenen Hardwareversionen von RaspberryMatic voll- oder nur mit gewissen Einschränkungen kompatibel:

Addon min.
Version
CCU3/ELV-Charly
RaspberryPi/Tinkerboard
Virtuell/OVA
intelNUC
Bemerkung
CUxD 2.3.3 ✔️ ✔️ Spezielle Version für x86 (intelNUC + Virtuell)
XML-API 1.2.0 ✔️ ✔️
hm_pdetect 1.7 ✔️ ✔️
E-Mail Addon 1.6.8c ✔️ ✔️
CUxD-Highcharts 1.4.5 ✔️ ✔️
HQ-WebUI 2.5.7 ✔️ ✔️
DB-Access 2.0b4 ✔️ ✔️
QuickAccess 2.1b3 ✔️ ✔️
Script-Parser 1.8 ✔️ ✔️
WebMatic 2.2.3 ✔️ ✔️
Sonos-Player 2.7 ✔️ ✔️
hm2mqtt 0.18d ✔️ ✔️
CCU-Historian 2.4.0 ✔️ ✔️
Philipe HUE Addon 2.1.13 ✔️ ✔️
Velux Addon 0.9.15 ✔️ ✔️
LGTV Addon 0.8.12 ✔️ ✔️
homeputer CL Studio ? ✔️
Print / ProgrammeDrucken 2.1 ✔️ ✔️
Check-MK 1.3.0 ✔️ ✔️ Check-MK Agent Plugin für das Monitoring des RaspberryMatic
hm-tools 0.5.0 ✔️ ✔️
JB-HB-Devices - ✔️ ✔️
HB-UW-Sen-THPL Universalsensor - ✔️ ✔️
HB-TM-Devices - ✔️ ✔️
RedMatic 7.1.1 ✔️ ✔️ OVA/IntelNUC Kompatibel ab 3.53.34.20201121
Redis Addon 3.2.11+0 ✔️
CCU-Jack - ✔️ ✔️ Je Plattform ein Installationspaket
Mosquitto 1.5.8+2 ✔️
HomeMatic Virtual Interface - ✔️
ioBroker Addon - ✔️
HAP-HomeMatic 0.0.11 ✔️ ?
hm-watchdog - Funktionalität wurde in RaspberryMatic integriert.

Status LED Funktion

Je nach eingesetzter Hardware Platform (RaspberryPi, Tinkerboard, etc.) werden die verschiedenen LEDs auf diesen embedded Boards für gewisse Statusanzeigen verwendet. Hierbei hat sich folgendes Schema durchgesetzt:

Beim Hochfahren/Runterfahren:

  • grüne LED: blinkt bei jeder Aktivität mit der SD-Karte. D.h. gibt die Zugriffe auf die SD Karte wieder.
  • rote LED: ist im Timer-Modus und blinkt in regelmäßigen Abständen (nicht mit CPU korreliert). D.h. Es wird damit signalisiert das das System sich im administrativem Modus befindet.

Im fertig hochgefahrenem System:

  • grüne LED: Befindet sich im 'heartbeat' Modus. D.h. Diese blinkt mit zunehmender CPU Auslastung im sogn. Herzschlagmodus entsprechend schneller bis hin zu einem dauerhaften leuchten wenn alle CPU Ressourcen aufgebraucht sind. Diese gibt den Alivestatus bzw. die Auslastung des Systems wieder.
  • rote LED: blinkt bei jeder Aktivität mit der SD-Karte bzw. dem Medium. D.h. gibt die Zugriffe auf die SD Karte wieder.

Bei ordnungsgemäß heruntergefahrenem System:

  • grüne LED: blinkt im regelmäßigen Zyklus (kein Heartbeat). D.h. Alles OK.
  • rote LED: leuchtet dauerhaft. D.h. Korrekt Heruntergefahren, Stromquelle kann entfernt werden.

Bei ordnungsgemäß hochgefahrenem Recovery-System:

  • grüne LED: blinkt bei jeder Aktivität mit der SD-Karte. D.h. gibt die Zugriffe auf die SD Karte wieder.
  • grüne LED: Befindet sich im 'heartbeat' Modus. D.h. Diese blinkt mit zunehmender CPU Auslastung im sogn. Herzschlagmodus entsprechend schneller bis hin zu einem dauerhaften leuchten wenn alle CPU Ressourcen aufgebraucht sind. Diese gibt den Alivestatus bzw. die Auslastung des Systems wieder.

Darüberhinaus kann es noch LEDs auf dem jeweilig verwendeten Funkmodul (z.B. RPI-RF-MOD) geben die auch einen entsprechenden Status - jedoch bezogen auf die HomeMatic Funktionalität - wiedergibt.

⚠️ **GitHub.com Fallback** ⚠️