Skip to content
Jens Maus edited this page Jul 9, 2021 · 6 revisions

Firmware update / upgrade

Firmware update via WebUI

_The most important point first: _ Before every firmware update / upgrade [create a backup] (# backup - restore) and store it in a safe place.

A regular firmware update / upgrade takes place analogously to the CCU2 or CCU3 as follows:

  1. Log in to the old RaspberryMatic version using the WebUI and make a backup of the current settings / configuration, etc. under Settings -> Control Panel -> Security -> Create backup and keep the downloaded * .sbk file safe.

  2. Via Settings -> Control Panel -> Central Maintenance -> Download you get to the [download page] (https://github.com/jens-maus/RaspberryMatic/releases/latest) for the updates. Download the appropriate update file there.

    ** Attention: ** Be sure to download the correct version for the platform you are using.

  3. Under Settings -> Control Panel -> Central Maintenance -> Select downloaded software, select the zip file and then press Upload below.

    ** Attention: ** Make sure that the * .zip file is actually uploaded and not an unpacked archive or something similar.

  4. Now, depending on the network connection, it can take up to 30 - 60 minutes until the update has been transferred to the RaspberryMatic.

    ** Warning: ** Do not close the browser or reload the page.

  5. When the upload is finished you can start the actual update by pressing Start Update. This can also take several minutes and sometimes force several restarts. Here, however, you can refresh the currently displayed WebUI after a few minutes if necessary and should then come to a text output that shows the status of the firmware update or you are asked to wait until RaspberryMatic has been restarted.

  6. After the update, you will be greeted by the login screen of the WebUI again. Another indicator of a restarted system is the RaspberryPi or Tinkerboard's green LED on the board itself (not on the radio module), which flashes regularly in the so-called "Heartbeat" mode when the system is ready for operation. With the NUC or OVA variant, a look at the console may help.

If there are display or function errors in the WebUI after the update, the browser cache should be deleted.

What to do if the update / upgrade fails

If, contrary to expectations, the firmware update / upgrade goes wrong or cannot be carried out, the update can also be carried out using the so-called "recovery system" without any problems. This can be reached by using the button _Settings -> Control Panel -> Central Maintenance -> Restart in Recovery Mode) _ to restart the system. After that it should then be normally accessible via web browser, but show a different WebUI where you then have the opportunity to do administrative things in order to have a firmware update / upgrade carried out.

If this update / upgrade path should also fail, you still have the option of a [new installation] (installation) (with Raspberry Pi and Tinkerboard best with a new SD card, with OVA possibly a new VM create), in order to then, when RaspberryMatic has started up, play back the previously safely stored backup via Settings -> Control Panel -> Security -> Backup.

Backup & Restore

A backup contains all usage / configuration data of the RaspberryMatic (programs, settings, etc.) as well as all installed CCU add-ons. With a restored backup, a functioning state can be quickly restored.

NOTE: Backups should be carried out regularly - at least before and after major changes or before every update to a new version.

backup

Manual backup via WebUI

  1. Log into the WebUI

  2. Navigate to Settings -> Control Panel -> Security

  3. Press the "Create backup" button

    Depending on the size of the backup and the hardware used, the RaspberryMatic will now need a few seconds to several minutes to create the backup in the background and then send it to the browser. The WebUI or the browser tab should not be exited for this period.

  4. When the backup has been created, the browser offers it for download and it can be stored safely

Manual backup via command line (SSH)

Either a USB stick with a supported file system should be plugged in here beforehand or a backup storage device should be mounted in some other way (e.g. a NAS via NFS).

  1. If you haven't already done so, activate SSH via the WebUI Settings -> Control Panel -> Security and set a password

  2. Log in as user root via SSH or directly on the console

  3. The following command can be used to create a backup to the mounted target:

    /bin/createBackup.sh <BACKUPDIR> ``

    Whereby <BACKUPDIR> has to be replaced by the actual path, e.g. / mnt / usb0.

Automatic backup (CronBackup) on USB stick / NAS drive

If a USB stick is permanently connected to the RaspberryMatic and formatted with a supported file system such as FAT32, NTFS, EXT4 or F2FS, a backup is automatically created on the USB stick every night at 00:07 and stored there. If this function is not required, you can deactivate this automatic, nightly backup by creating an empty file / etc / config / NoCronBackup. In addition, you can specify an alternative path in a file / etc / config / CronBackupPath where the nightly backup should be saved. This is useful, for example, if you have connected your NAS system to RaspberryMatic via NFS or CIFS anyway and want to store the nightly backup there. By default, a rotation time of 30 days is set for this so-called "CronBackup". This means that after 30 nightly backups have taken place, it will overwrite the oldest file accordingly. If you want to change this time span you can save this in the file / etc / config / CronBackupMaxBackups. Entering a 0 in this file will ensure that an infinite number of backups are stored in the specified path and that no automatic deletion is carried out.

Restore

Restore via WebUI

  1. Log into the WebUI
  2. Navigate to Settings -> Control Panel -> Security
  3. In the Backup management area, use the Browse button to select the desired backup file
  4. Start the restore process by clicking on Import backup. It now takes a moment for the backup to be transferred to the RaspberryMatic Please note: If you have assigned your own "security key", this must now also be entered.
  5. A click on Import system backup restarts the RaspberryMatic and takes over the previously selected backup.

Restore via command line (SSH)

The backup file must either be copied to the RaspberryMatic beforehand, e.g. via SCP, or it must be available on a directly connected data carrier such as a USB stick or NFS mount from the NAS.

  1. Log in via SSH access (user: root)
  2. Run the following command: /bin/restoreBackup.sh <PFAD_ZUM_BACKUP> `` e.g. /bin/restoreBackup.sh / mnt / usb0 / Raspberrymatic-3.51.6.20200621-2020-07-22-0110.sbk for a backup from the connected USB stick.
  3. After the restore has been completed, restart using the reboot command

Then RaspberryMatic should restart and the selected backup should have been restored accordingly.

CCU add-ons / additional software

The following CCU add-on packages are fully compatible or only compatible with certain restrictions for the various hardware versions of RaspberryMatic:

| Addon | min.
version | CCU3 / ELV-Charly
RaspberryPi / Tinkerboard | Virtual / OVA
intelNUC | comment | ----------- | : ------: | : -------: | : ---------: | : ---------------: | | [CUxD] (https://github.com/jens-maus/cuxd/releases/latest) | 2.3.3 | : heavy_check_mark: | : heavy_check_mark: | Special version for x86 (intelNUC + virtual) | [XML-API] (https://github.com/jens-maus/XML-API/releases/latest) | 1.2.0 | : heavy_check_mark: | : heavy_check_mark: | | [hm_pdetect] (https://github.com/jens-maus/hm_pdetect/releases/latest) | 1.7 | : heavy_check_mark: | : heavy_check_mark: | | [E-Mail Addon] (https://github.com/jens-maus/hm_email/releases/latest) | 1.6.8c | : heavy_check_mark: | : heavy_check_mark: | | [CUxD-Highcharts] (https://github.com/homematic-community/CUxD-Highcharts/releases/latest) | 1.4.5 | : heavy_check_mark: | : heavy_check_mark: | | [HQ-WebUI] (https://github.com/homematic-community/hq-webui/releases/latest) | 2.5.7 | : heavy_check_mark: | : heavy_check_mark: | | [DB-Access] (https://github.com/jens-maus/dbaccess/releases/latest) | 2.0b4 | : heavy_check_mark: | : heavy_check_mark: | | [QuickAccess] (https://github.com/jens-maus/quickaccess/releases/latest) | 2.1b3 | : heavy_check_mark: | : heavy_check_mark: | | [Script parser] (https://github.com/litti/scriptparser/releases/latest) | 1.8 | : heavy_check_mark: | : heavy_check_mark: | | [WebMatic] (https://github.com/ldittmar81/webmatic/releases/latest) | 2.2.3 | : heavy_check_mark: | : heavy_check_mark: | | [Sonos player] (https://github.com/jens-maus/hm-sonos/releases/latest) | 2.7 | : heavy_check_mark: | : heavy_check_mark: | | [hm2mqtt] (https://github.com/owagner/hm2mqtt/releases/latest) | 0.18d | : heavy_check_mark: | : heavy_check_mark: | | [CCU-Historian] (https://github.com/mdzio/ccu-historian/releases/latest) | 2.4.0 | : heavy_check_mark: | : heavy_check_mark: | | [Philipe HUE Addon] (https://github.com/jan/homematic-addon-hue) | 2.1.13 | : heavy_check_mark: | : heavy_check_mark: | | [Velux Addon] (https://github.com/jan/homematic-addon-velux) | 0.9.15 | : heavy_check_mark: | : heavy_check_mark: | | [LGTV Addon] (https://github.com/jan/homematic-addon-lgtv) | 0.8.12 | : heavy_check_mark: | : heavy_check_mark: | | [homeputer CL Studio] (https://www.cl-control.de/software/downloads.html) | ? | : heavy_check_mark: | : heavy_exclamation_mark: | | [Print / ProgramDrucken] (https://github.com/litti/hm-print/releases/latest) | 2.1 | : heavy_check_mark: | : heavy_check_mark: | | [Check-MK] (https://github.com/alexreinert/homematic_check_mk) | 1.3.0 | : heavy_check_mark: | : heavy_check_mark: | [Check-MK] (https://checkmk.de/) Agent plug-in for monitoring the RaspberryMatic | [hm-tools] (https://github.com/fhetty/hm-tools/releases/latest) | 0.5.0 | : heavy_check_mark: | : heavy_check_mark: | | [JB-HB-Devices] (https://github.com/jp112sdl/JP-HB-Devices-addon/releases/latest) | - | : heavy_check_mark: | : heavy_check_mark: | | [HB-UW-Sen-THPL universal sensor] (https://github.com/jp112sdl/Wettersensor/tree/master/Contrib/CCURM) | - | : heavy_check_mark: | : heavy_check_mark: | | [HB-TM-Devices] (https://github.com/TomMajor/SmartHome/tree/master/HB-TM-Devices-AddOn) | - | : heavy_check_mark: | : heavy_check_mark: | | [RedMatic] (https://github.com/rdmtc/RedMatic/releases/latest) | 7.1.1 | : heavy_check_mark: | : heavy_check_mark: | OVA / IntelNUC Compatible from 3.53.34.20201121 | [Redis Addon] (https://github.com/hobbyquaker/ccu-addon-redis) | 3.2.11 + 0 | : heavy_check_mark: | : heavy_exclamation_mark: | | [CCU-Jack] (https://github.com/mdzio/ccu-jack/releases/latest) | - | : heavy_check_mark: | : heavy_check_mark: | One installation package per platform | [Mosquitto] (https://github.com/hobbyquaker/ccu-addon-mosquitto/releases/latest) | 1.5.8 + 2 | : heavy_check_mark: | : heavy_exclamation_mark: | | [HomeMatic Virtual Interface] (https://github.com/thkl/Homematic-Virtual-Interface) | - | : heavy_check_mark: | : heavy_exclamation_mark: | | [ioBroker Addon] (https://github.com/zautrix/hm-iobroker) | - | : heavy_check_mark: | : heavy_exclamation_mark: | | [HAP-HomeMatic] (https://github.com/thkl/hap-homematic) | 0.0.11 | : heavy_check_mark: | ? | | [hm-watchdog] (https://github.com/jens-maus/hm-watchdog) | - | : heavy_exclamation_mark: | : heavy_exclamation_mark: | Functionality was integrated in RaspberryMatic.