Created with Sketch.

This is release of RaspberryMatic which is a major maintenance release including the following new features, bug and security fixes:

Downloads License Donate

🚧 Changes:

CCU/HomeMatic service changes:

  • updated OCCU firmware to 3.51.6-5 version which comes with the following changes:
    • updated ReGaHss logic engine R1.00.0388.0218 (Jun 9 2020) version with the following changes:
      • fixed the parsing/escaping of the super string (^) for being able to define strings without having to escape single or double quotations (#225).
      • implemented a functionality to specify an offset time and duration for the sunrise/sunset astro functions. Now TimeSeconds() and CalDuration() can be used together with all already existing SunOffsetType() values to specify the offset and duration accordingly. Note, that to specify a negative time offset one has to use the sotBeforeSunXXXX rather than sotAfterSunXXX with SunOffsetType(). Furthermore, a pure sotSunrise or sotSunset timer offset will always use a timer offset of zero.
      • integrated a fix for certain @time@ strings which did not convert supplied times correctly because they should have assumed local time instead.
      • replaced all gettimeofday()/time() calls with proper clock_gettime() uses as e.g. gettimeofday() was defined obsolete in POSIX 2008. In addition, we use CLOCK_MONOTONIC where relative time calculations are performed so that time operatins are more immune to time changes. This change should slightly improve timer reliability in case of time changes performed by users or other applications.
      • fixed some potential undefined string copy operations.
      • fixed a minor potential crash bug in low memory conditions.
  • updated integrated mediola NEO SERVER CCU-Addon package version to latest 2.5.3.
  • slightly improved RPI-RF-MOD recognition by checking for 0x..ffff rather than 0x00ffff because newer models seem to have different address ids than expected (cf. alexreinert/debmatic@abf4862)
  • added support for HB-RF-USB-2 PCB (https://github.com/alexreinert/PCB/tree/master/HB-RF-USB-2) and updated generic_raw_uart kernel module version to latest version available.

WebUI changes:

  • implemented a new WebUI patch that allows to set an offset and duration time for the astro timer functions. That means that one can create astro timers now where a user can set something like e.g. “at sunrise minus/plus X minutes”. In addition, a user can now limit the astro timer duration if wanted and not having it automatically ended at the opposite astro time (#221).
  • fixed 0037-WebUI-DevConfig-RSSI patch by explicitly using a catch{} statements to query for the devname of a HmIP device because it seems that under some circumstances this array is not populated correctly and thus otherwise ends up in an error when the set rssi_list is executed (#845).
  • integrated a minor WebUI style fix which provides a white background in the device thumbnail table cells of the service message view for a slightly nicer display.

Operating system changes:

  • bumped Linux kernel versions to new major LTS 5.4.x version (5.4.44) for all supported platforms and updated RaspberryPi firmware files to matching versions available.
  • updated buildroot/Linux environment to latest 2020.05 version.
  • updated U-Boot version to 2020.01 and adapted environment/patches accordingly.
  • updated java AZUL version to latest for ARM targets.
  • added support for new 8GB hardware version of RaspberryPi4b model (d03114).
  • added ‘wireguard’ as an directly integrated buildroot package so that users/services can setup/provide own wireguard VPN solutions in future (#776).
  • added a new unclean shutdown watchdog job that identifies any unexpected system crash or unclean shutdown situation (user unplugs power or a power outage) and notifies a user upon the next boot via a standard WebUI alarm message.
  • integrated a new cron-based fstrim execution to support reclaiming of freed disk space for devices supporting the TRIM/DISCARD operations.
  • added /etc/config/NoFSRIM and /etc/config/NoBadBlocksCheck status file checks so that the weekly fstrim and daily backblocks check can be more easily disabled by users.
  • added a workaround for potentially slow or broken /dev/hwrng devices which might either block the rng daemon startup for an unacceptable amount of time due to head -c1 access test stalling. Now we wait a maximum of 5 seconds for the test to complete or we use /dev/urandom right away to work around this matter. This fixes issues where newer versions of Synology VMM seem to provide slightly broken /dev/hwrng devices to guest systems (#831).
  • added a global /usr/etc/npmrc to set the npm cache to /tmp/npm-cache and thus have it located on a writeable path so that npm install won’t complain anymore. In addition, a /root/.npmrc link to /usr/local/etc/npmrc will allow users to put an own user configurable npmrc file and use npm config set/get accordingly (#823).
  • we use a lsblk call to identify the main mmcX device number of the rootfs. This should fix issues where upon using an eMMC with a tinkerboard the red led was constantly blinking because an incorrect mmcX device number was selected. Now the number will be automatically identified upon startup.

👪 Contributors (alphabetically):

📝 Support:

For support on installation and help please visit the following (german speaking) help fora:

RaspberryMatic – Installation/Update Guide 🇩🇪
RaspberryMatic – Forum 🇩🇪

📦 Download:

The following installation archives (.zip files) can be downloaded for selected hardware platforms (including a .tgz update archive to upgrade from a CCU3 firmware to RaspberryMatic). To verify their integrity a sha256 checksum is listed as well. Please upload these zip files using the WebUI-based update mechanism available: