Skip to content

Releases: jens-maus/RaspberryMatic

RaspberryMatic 3.47.10.20190713

13 Jul 12:44
3c82366
Compare
Choose a tag to compare

This is release 3.47.10.20190713 of RaspberryMatic which is a major feature release including the following new features and minor bugfixes:

Downloads License Donate

🚧 Changes:

General changes:

  • updated OCCU firmware to 3.47.10-4 version with full compatibility to the CCU3 3.47.10 firmware which comes with the following changes:
    • Integrated the following new Homematic devices: HmIP-ASIR-2, HmIPW-STHD, HmIPW-STH, HmIPW-WTH, HmIP-FALMOT-C12, HmIPW-FAL24-C6, HmIPW-FAL230-C6, HmIPW-FAL24-C10, HmIPW-FAL230-C10, HmIP-MIO16-PCB.
    • Channels of the virtual remote control (HmIP-RCV-50) could not be deleted from rooms and maintenance groups.
    • When adding a direct connection to a HmIP-MP3P from a wind sensor a color selection was displayed rather than a sound selection.
    • The button "Geräte-Firmware" on the page "Einstellungen" was renamed to "Geräte-Firmware-Übersicht".
    • Integrated a WebUI patch to prevent remote HTML injections during Add-on version requests.
    • Fixed a problem where under certain circumstances a session ID could be generated without a valid login.
    • The displayed amount of rain for a HmIP-SWO-* were accidentally doubled on each CCU restart.
    • JSON-API: The access level for get-/setMetadata calls were now set to GUEST and ADMIN accordingly.
    • A dialog was added for a HmIP-MP3P to configure playlists within WebUI programs.
    • Integrated a WebUI patch to prevent the web server from sending any Server: response header.
    • In direct connections between a motion sensor and a switching/dimming actor the actor should not be switched off anymore if there is still identified motion in place if the actor reacts upon ambient light brightness.
    • HM-ES-TX-WM - Integrated the changed behavior if firmware version > 2.x.y is used and which comes with SML protocol compatibility to read out electric smart meters. With firmware version 2.x.y only ES-IEC sensor is supported anymore and no IR, Gas or LED sensor can be used with a HM-ES-TX-WM device.
    • Added new functionality (week programme) for HmIP-MIOB.
    • Added new functionality (MIOB switching for heating/cooling support) for all HmIP-FAL devices.
    • Added automatic transmission of location and timezone data to supported HmIP devices with astro functionality included.
    • Added some security relevant HTTP response headers to generally improve the WebUI security.
  • updated Linux kernel version to 4.19.58 for ASUS Tinkerboard and to 4.19.57 for RaspberryPi including the corresponding firmware files.
  • updated U-boot boot loader version to 2019.01 version coming with Buildroot.
  • updated buildroot/Linux version to latest stable 2019.05.1 version.
  • integrated all third-party changes from https://github.com/alexreinert/piVCCU/tree/master/kernel where
    eq3_char_loop and rx8130 was modified and dts changes proposed. Also adapted the RTC clock setup accordingly. Furthermore we use the latest generic_raw_uart sources for upcoming builds now (@alexreinert).
  • changed the DutyCycle system variable update interval from every 3 minutes to every minute to be in sync with the new WebUI way of displaying the DutyCycle using a progress bar.
  • slightly improved /dev/urandom random number initialisation by executing a helper tool signalling the kernel that there is somewhat more entropy available after having seeded urandom correctly.

WebUI changes/fixes:

  • integrated a new WebUI patch to display more than a single DutyCycle ProgressBar on the WebUI start page where the regularly queried DutyCycle values of all interfaces are extracted using the updateDCVars.tcl helper script and then used to display the progress bars (@jp112sdl, https://homematic-forum.de/forum/viewtopic.php?f=65&t=51583&start=70#p517536).
  • integrated a smoother timezone/utcOffset/utcOffsetDST calculation routine which doesn't require to maintain an own utcOffset list in addition to the anyway mostly obsolete timezone list implemented in cp_time.cgi. Now the utcOffset and position sync functionality in latest WebUI doesn't require this utcOffset list anymore while allowing to set way more time zones.
  • integrated an upstream WebUI fix for incorrect "NaN" displays in the WebUI for energy/power meters (@jp112sdl, https://homematic-forum.de/forum/viewtopic.php?f=65&t=51583&p=517276#p517276).
  • integrated a new WebUI fix for preserving the active/inactive state of WebUI programs when editing them (#235, @jp112sdl).

Bugfixes:

  • fixed checkHmIPdevices.sh helper script to use a better search pattern and only move away ap/apkx files if the regadom already contains HmIP-RCV devices which means that there are references to the RF module at all. This should fix issues where people were coming from earlier versions of RaspberryMatic not containing HmIP-RCV devices already and thus the ap/apkx of the GPIO rf modules were accidentally moved away leaving no HmIP devices in the WebUI at all.
  • fixed another bug in checkHmIPdevices.sh which accidentally moved away *.ap and *.apkx files from HmIPW-DRAP devices. Now it will check metaData.conf for a reference to a HmIPW-DRAP and if it identifies it it will skip the found SGTIN (#655).
  • integrated a workaround for a problem with the Mediola NEO Server add-on web configuration pages which could not be accessed if the WebUI itself was accessed via https.
  • added nofail mount options where appropriate so that upon startup the system doesn't complain if a certain filesystem is missing during boot.
  • changed the syslog file limit for /var/log/messages to automatically rotate rather than potentially filling the tmpfs until the logrotate daemon rotates it once per day due to excessive logging settings in the WebUI.

👪 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:

  • CCU3, ELV-Charly, RaspberryPi3 Model B+, RaspberryPi3 Model B, RaspberryPi3 Model A+, RaspberryPi2 Model B, RaspberryPi Compute Module 3, RaspberryPi Compute Module 3 lite:
    📦 RaspberryMatic-3.47.10.20190713-rpi3.zip
    SHA256: 69a92a611cd1ac02e0a754d0069ce7a21d01291d875c4e1182ecfd381a70598f

  • RaspberryPi Zero W, RaspberryPi Zero, RaspberryPi Compute Module 1, RaspberryPi1 (A+/B+):
    📦 RaspberryMatic-3.47.10.20190713-rpi0.zip
    SHA256: f0ff3dcf3398c4c712a0345068c3a6bfe3e63d7751398cf65adbbd4c02e4345f

  • Tinker Board S, Tinker Board:
    📦 RaspberryMatic-3.47.10.20190713-tinkerboard.zip
    SHA256: 6dec97dded11992e91bba1ab20444a576c7674c5c1a0fe4806e8858e75867307

  • CCU3 (only required once for switching from original CCU3 firmware to RaspberryMatic):
    📦 RaspberryMatic-3.47.10.20190713-ccu3.tgz
    SHA256: 2c6b7f8a747381a6b48a0eeac6b4b3f14b484fbaf1588e1f8bb8d286bbb48db3

RaspberryMatic 3.45.7.20190622

22 Jun 21:09
4ed7a7c
Compare
Choose a tag to compare

This is release 3.45.7.20190622 of RaspberryMatic which is a feature release including the following new features and minor bugfixes:

Downloads License Donate

🚧 Changes:

General changes:

  • updated OCCU firmware to 3.45.7-5 version with full compatibility to the CCU3 3.45.7 firmware and incorporating the following changes:
    • added new ReGaHss logic engine R1.00.0388.0208 (Jun 16 2019) version with the following changes:
      • modified State() scripting function to be able to specify a delay time in milliseconds which will delay the set operation for the specified amount of time. In addition, with a third boolean parameter a user can disable the retriggering/cleaing of an already scheduled event (#262).
      • modified scheduler to work with milliseconds precision and also changed the tick count routines to ensure that the queried time is not influenced by time changes (manual, NTP).
      • a time to query via SunAzimuth/SunElevation/SunsetTime/SunriseTime can now be specified as an additional parameter to these system functions so that users can now use these functions with a specific time.
      • implemented a new rega.conf setting (SchedulerListSize) for changing the maximum number of scheduled events in the scheduler list and changed the default to 10000 due to sufficient performance.
      • fixed session ID generation to only generate a new session ID for selected pages like index.htm and login.htm and make sure to prevent any further sessionID generation for other pages.
  • added a new checkHmIPdevices.sh helper script which will be automatically started before starting HMIPServer and which will try to check if a *.dev, *.ap, *.apkx file should be moved away into an "old" folder so that upon HMIPServer startup only device files which are actually correctly referenced in the global homematic.regadom database are present (#613).
  • added explicit detection of HmIP-RFUSB-TK so that only compatible firmware updates will be applied to it (#641, @alexreinert).
  • added soft-link /etc/rc.local pointing at /usr/local/etc/rc.local so that a user can more easily create a rc.local file for own shell commands being executed during startup.
  • modified standard syslogd options to not enforce any maximum logfile length because we are relying on logrotate to actually rotate all logfiles to keep the memory clean/slim. In addition the standard logrotate configuration will now take care of all *.log files no matter where they are coming from.
  • updated integrated Mediola NEO server Addon to version 2.4.5.
  • updated buildroot/Linux version to latest stable 2019.05 version.
  • updated Linux kernel version to 4.19.51 for ASUS Tinkerboard and to 4.19.42 for RaspberryPi (raspberrypi-kernel_1.20190517-1) including the corresponding firmware files.
  • updated Java version to latest stable 1.8.0_212-8.38.0.163.

WebUI changes/fixes:

  • fixed a bug in the new sticky filters WebUI patch which resulted in some filter to lose their red signaling color (#617, @psi-4ward).

Bugfixes:

  • fixed bug in the global logrotate configuration where a log file rotation was always force each night rather than only be performed once the log file reached a certain limit.
  • fixed dtoverlay and dtparam command use by integrating missing libfdt support in the RaspberryPi builds (#648, @fhirschmann)

👪 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:

RaspberryMatic 3.45.7.20190511

11 May 10:10
ba22312
Compare
Choose a tag to compare

This is release 3.45.7.20190511 of RaspberryMatic which is a hotfix release fixing some important issues revealed in the previous update. This includes the following changes:

Downloads License Donate

🚧 Changes:

Bugfixes:

  • fixed bug in the monit configuration where the wlan0 check even triggered a reinit of the wlan0 interface if the eth0 interface was used and the /etc/config/wpa_supplicant.conf file exists (#624).
  • fixed problem with certain Addons not working anymore due to too strict CSP response headers by temporarily disabling them again (#620, #619).
  • fixed CloudMatic support by integrating an updated Addon version (v20190507) which should fix issues with the reverse proxy service not working with the latest RaspberryMatic versions (#589).
  • integrated kernel fixes by having updated the Linux kernel for ASUS Tinkerboard to version 4.19.40.

👪 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:

RaspberryMatic 3.45.7.20190504

04 May 19:22
bf9ee7c
Compare
Choose a tag to compare

This is release 3.45.7.20190504 of RaspberryMatic which is a feature release including the following new features and minor bugfixes:

Downloads License Donate

🚧 Changes:

General changes:

  • updated OCCU firmware to 3.45.7-4 version with full compatibility to the CCU3 3.45.7 firmware
  • added new ReGaHss logic engine R1.00.0388.0207 (May 1 2019) version which comes with the following changes:
    • fixed another minor timer module issue where during winter->summer dst change a periodic timer could have been executed twice with the same begin time. In addition, even timers outside the start/stop times of the dst change were incorrectly executed.
    • fixed another issue in the begin time calculation of period timers which could result in unexpected segfaults under certain conditions.
    • the history buffer size can now be specified/modified using /etc/rega.conf by specifying a HistoryBufferSize setting.
    • implemented new system.SunAzimuth() and system.SunAltitude() script functions which will return the current sun position in degrees relative to the current position and time.
    • integrated another time module fix where upon startup all periodic timers fired a single time even though their time didn't match the actual time they should fire.
    • moved scheduler thread startup to be started earlier so that timer evaluations can be performed more early.
    • fixed minor bug where in case a system variable was connected to a channel this reference wasn't cleared correctly upon removal of the channel/device (https://homematic-forum.de/forum/viewtopic.php?f=31&t=50077)
    • the embedded web server of ReGaHss will not output any Server: response header anymore to reduce the probability to use search engines to find CCU installations insecurely connected via port forwarding.
    • fixed a bug in the astro day/night calculation routines where on a DST switch day from midnight till the switch time an incorrect sunrise/sunset time was returned.
    • if any output is put to the console a timestamp will now be added and the output will be properly synchronized throughout the different used threads.
  • updated buildroot/Linux version to latest stable 2019.02.2 version coming with only minor changes and important security fixes compared to the previous version.
  • raised maximum number of history/protocol entries from 3000 to 10000 so that external applications (e.g. PocketControl) or the WebUI can maintain more history entries.
  • bumped linux kernel version to 4.19.36 for ASUS Tinkerboard and RaspberryPi including the corresponding firmware files.
  • added an under-voltage monitoring check using vcgencmd (RaspberryPi only) and monit so that users are warned if their connected power supply is not capable of providing enough voltage to the system.
  • added strace, tcpdump, ser2net and libnetfilter conntrack as new default packages which should better match the default package set like in a CCU2.
  • integrated basic exFAT filesystem support for e.g. mounting external USB devices.

WebUI changes/fixes:

  • added a new major WebUI feature patch introducing functionality providing sticky filters. Now filters for table displays in the WebUI will keep the filter rules if a WebUI user returns to the table display (e.g. listing devices). This should considerably improve usability when working with the WebUI (#601, #243, @psi-4ward).
  • added new WebUI patch to add IANA conform timezones (e.g. Europe/Berlin) and to also have more locations and more detailed GPS coordinates defined so that users can more easily install a RaspberryMatic system worldwide (#602).
  • integrated a protection against cross site scripting (XSS) attacks by forcing Content-Security-Policy: response headers and masking lighttpd to not output any Server: response header at all to improve security (#597, @psytester).
  • integrated more WebUI related security fixes for the ESP remote script API where for some functions no user level check had been performed and thus non-admin users could easily perform admin operations.
  • enhanced the "Equal than" WebUI patch to also fix a problem in incorrectly setting the condition type thought no condition was changed when saving a WebUI program with string comparisons.
  • added new WebUI patch fixing an incorrect reference to nfs_datepicker.css in the help page, which isn't required anymore and just resulted in font size errors if included.
  • added a new WebUI bugfix patch which fixes an issue when generating the usrAckInstallWizard files in case a username contains more than plain ASCII characters (#600).
  • updated javascript-based CodeMirror WebUI Scripteditor engine to latest stable 5.45.0 version.

Bugfixes:

  • fixed bug where monitoring the health of the wlan0 interface did not work correctly on platforms not having any wifi interface at all (#587).
  • fixed triggerAlarm.tcl to generate an alarm system variable will now make sure to correctly set the system viable meta data as well and re-create it if not setup correctly.
  • fixed network setup to not incorrectly flush IPv6 connectivity parameters upon IPv4 DHCP setup and also integrated some minor changes to use /sbin/ip instead of ifconfig where applicable.
  • fixed monit to not monitor irqbalance if only one CPU is present and thus using irqbalance would not make any sense (#596).
  • fixed monit to only trigger an internet connectivity alarm after 5 minutes of constant downtime. This should reduce the probability of alarm messages in case an internet provider performs nightly reconnects which should not be critical.
  • fixed problem where restoreBackup.sh did stop/start services without considering the new monitoring service (#612).
  • fixed the monit monitoring interval from 3s to 13s and generally increased the network port check limits to 5 cycles so that monit will only alarm users after ~65 seconds if a service is down (#604).

👪 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:

RaspberryMatic 3.45.5.20190330

29 Mar 23:04
14374d3
Compare
Choose a tag to compare

This is release 3.45.5.20190330 of RaspberryMatic which is a major feature release including the following new features and minor bugfixes:

Downloads License Donate

🚧 Changes:

  • updated OCCU firmware to 3.45.5 version with full compatibility to the CCU3 3.45.5 firmware which brings the following changes compared to the previous version included in RaspberryMatic:
    • updated ReGaHss logic engine R1.00.0388.0206 (Mar 28 2019) with the following changes:
      • fixed DST/non-DST switching issues in timer module which could have resulted in a segfault if a time interval over the DST switching time was created by a user.
      • implemented a new sunrise/sunset calculation routine which is fully compatible to the way sunrise/sunset is calculated on other homematic devices (e.g. HmIP-HAP, Cloud Service, etc.). Now sunset/sunrise times in the WebUI should match the times calculated throughout all homematic devices/services.
      • fixed some compiler warnings and reduced probability of potential buffer overflows in certain situations.
      • replaced more buffer overflow prone function uses with buffer overflow safe variants which should catch some known issues in the handling of large http requests.
      • fixed bug in session clearance where a logout didn't completely invalidate all session relevant information.
      • improved login security by preventing unauthorized users from logging into WebUI and using the scripting engine at all.
      • optimized logging output in various areas so that bug reports can be more easily tracked down. Also changed some messages that were previously flagged as "error" messages to be flagged as "warnings" only now that we have that additional category.
      • fixed minor bug where for interfaces with an empty URL the init method was still tried to be executed.
      • added possibility to log warnings instead of just error messages to syslog & co. This should help to better differentiate between real problems and warning messages that are just pure informational messages.
    • fixed problem that after an update of a homematicIP device firmware the device was automatically deleted and routed in the incoming folder. Now HmIP devices should automatically get channels updated once a firmware update contains differences in the channel setup. This should also remove the requirement to manually delete and re-teach a HmIP device after its firmware was updated.
    • added AutoIP fallback support for network environments without any DHCP server.
    • changed time synchronization interval for the RF-coprocessor to "every 6 hours" rather than being executed every 30 minutes. This should slightly reduce the DutyCycle in mostly non-busy environments.
    • integrated support for new HmIP-ASIR-O (homematicIP alarm siren - outside)
    • it is possible now to react on actual valve state changes of the HmIP-eTRV/eTRV-2/eTRV-C in WebUI programs.
    • with newer firmware versions (2.0.2+) for the HmIP-eTRV/eTRV-2/eTRV-C a new "ultra-silent" mode can be set in the channel parameters which should make these devices more silent during normal operations.
    • fixed a minor bug related to delivery of UPnP-based status messages.
    • a problem was fixed when trying to delete direct connections with the HmIP-RCV-50 (virtual remote control) device.
    • the filter for the device list could not filter for "BidCos-RF/Wired" devices in the WebUI.
    • fixed problem where the switch on/off duration within easymode profiles could be switched to "not active" while other settings are already set in the WebUI.
    • fixed WebUI issue with not displaying the channel parameters for HmIP-FCI1/6 devices.
    • fixed WebUI issue with HmIP-BSL not being able to be switched in the weekly program definitions.
  • integrated some quick fixes for issues which showed up with the recent CCU 3.45.5 firmware release:
    • fix for the broken channel parameter display for HmIP heating groups.
    • fix for the broken CCU addon installation routines.
    • WebUI fix for broken off-profile display for the long keypresses in the virtual receiver switch parameter display.
  • implemented a process/service watchdog/monitoring implementation using Monit. This process watchdog automatically takes care if a service (e.g. ReGaHss) crashes and then automatically restarts it and also notifies the user of the occurred restart event using an alarm message in the WebUI. This should greatly improve service reliability (NOTE: Users of the third-party hm-watchdog CCU add-on are asked to remove this addon because this internal watchdog functionality is a replacement for it). Please note that Addon developers can add own Monit configuration files in /usr/local/etc/ with pattern monit*.cfg to add their own services to the Monit monitoring engine. Currently, this new process/service watchdog monitors the following services and events per default:
    • HomeMatic specific services:
      • ReGaHss logic engine daemon (/bin/ReGaHss)
      • HMIPServer homematicIP daemon (/opt/HMServer/HMIPServer.jar)
      • rfd BidCos-RF daemon (/bin/rfd)
      • hs485 BidCos-Wired daemon (/bin/hs485dLoader)
      • multimac daemon (/bin/multimacd)
      • LED control daemon (/bin/hss_led)
      • eq3config daemon (/bin/eq3configd)
      • ssdp UPnP daemon (/bin/ssdpd)
      • LAN gateway mode daemon (/bin/hmlangw)
    • Linux-system services:
      • lighttpd web server daemon (/usr/sbin/lighttpd)
      • cronjob daemon (/usr/sbin/crond)
      • hardware control watchdog daemon (/sbin/watchdog)
      • syslog/klog daemon (/sbin/syslogd, /sbin/klogd)
      • udev control daemon (/sbin/udevd)
      • irqbalance control daemon (/usr/sbin/irqbalance)
      • random number generator daemon (/usr/sbin/rngd)
      • dbus message bus daemon (/usr/bin/dbus-daemon)
      • network interface plug/unplug daemon (/usr/sbin/ifplugd)
      • chrony/NTP network time synchronization daemon (/usr/sbin/chronyd)
      • SSH daemon (/usr/sbin/sshd)
    • Additional alarm notifications are emitted
      • if the NTP offset time is > 1 second for more than 1 minute
      • if HTTPS certificate is about to expire in < 30 days
      • if high CPU usage (> 95%) is detected for more than 1 minute
      • if high memory usage (> 95%) is detected for more than 1 minute
      • if high system temperature (> 80 deg) is detected for more than 1 minute
      • if root filesystem (/) is running on low disk space (< 5%) for more than 1 minute
      • if user filesystem (/usr/local) is running on low disk space (< 5%) for more than 1 minute
      • if connected USB device (/media/usb1) is running on low disk space (< 5%) for more than 1 minute
      • if ethernet interface (eth0) has link down or changes link speed unexpectedly
      • if wifi interface (wlan0) has link down but should be enabled
      • if internet connection is down for more than 1 minute
  • fixed bug in restoreBackup.sh helper script which accidentally required a signature.sha256 file to be present (#560).
  • integrated a general fix for control_panel.cgi so that Add-on button column sorting is correct even if some buttons are disabled due to missing features in the various CCU generations/feature sets.
  • modified ntpdate calls to use an unprivileged port for outgoing packets, as chrony already does. This should prevent NTP packets get filtered by some snake-oil security filtering on UDP packets with same src and dst port (@hoedlmoser).
  • updated libfirewall.tcl to use correct icmpv6 types. This should solve certain errors when setting up the firewall (@libertyx82).
  • retired the additional cryptool type checking of backup archive consistency when using restoreBackup.sh script (#566).
  • performed minor optimizations to backup/restore routines where incorrect file modification times could have caused an invalid extraction/creation of a firmware or backup archive.
  • raised Linux kernel version for RaspberryPi and ASUS Tinkerboard to the new major LTS 4.19.x kernel line and also added full device tree overlay support for ASUS Tinkerboard as well as updated the RaspberryPi firmwares accordingly.
  • updated buildroot/Linux version to latest stable 2019.02 version.
  • updated java version to latest stable JAVA8 version (1.8.0_202-8.36.0.152)
  • modified default linux kernel config and added define CONFIG_DEBUG_USER. This allows to use the kernel command-line user_debug=X now to enable/disable certain segfault debugging messages in the linux kernel itself.
  • modified recovery system startup to only wait a maximum of 20 seconds while trying to mount the rootfs (e.g. if it is stored on an external USB device) so that startup should not stall endlessly.
  • fixed HMIPServer startup to start HMServer.jar in case no RF-module is installed. This should fix the typical VirtualDevices error messages if RaspberryMatic is used without any GPIO-based RF-module.
  • modified recovery system to also use chrony as the main network time synchronization daemon (NTPd).
  • modified SetInterfaceClock cronjob execution to be performed 4x per day (every 6 hours) rather than only once so that the interface clock of ...
Read more

RaspberryMatic 3.43.15.20190223

22 Feb 23:21
870ba2d
Compare
Choose a tag to compare

This is release 3.43.15.20190223 of RaspberryMatic which is a feature release including the following new major features and minor bugfixes:

Downloads License Donate

🚧 Changes:

  • updated OCCU firmware to 3.43.15-1 version with full compatibility to the CCU3 3.43.15 firmware and the following changes compare to previous RaspberryMatic versions:
    • finalized homematicIP-Wired functionality with the following new HmIP-Wired devices supported:
      • HmIPW-DRAP (Homematic IP Wired Access Point)
      • HmIPW-DRD3 (Homematic IP Wired Dimmaktor – 3-fach)
      • HmIPW-DRS4 (Homematic IP Wired Schaltaktor – 4-fach)
      • HmIPW-DRS8 (Homematic IP Wired Schaltaktor – 8-fach)
      • HmIPW-FIO6 (Homematic IP Wired IO Modul Unterputz – 6-fach)
      • HmIPW-DRI16 (Homematic IP Wired Eingangsmodul – 16-fach)
      • HmIPW-DRI32 (Homematic IP Wired Eingangsmodul – 32-fach)
      • HmIPW-DRBL4 (Homematic IP Wired Jalousieaktor – 4-fach)
    • Integration of HmIP-RCV-50 device (virtual remote control for HmIP)
    • Integration of HmIP-FCI6 (Homematic IP Kontakt-Schnittstelle Unterputz – 6-fach)
    • Integration of HmIP-WT (Homematic IP Wandthermostat)
    • Integration of HmIP-ASIR-B1
    • Integration of Hm-RC-2-PBU-FM-2 (Funk-Sender 2-fach für Markenschalter, Unterputzmontage)
    • added config parameter "Optimal Start/Stop" for HmIP-WT/WTH/WTH2.
    • added config parameter "valve offset" for HmIP-eTRV/-2/-B/-C.
    • added plausibility tests for ip addresses (IPv4 / IPv6) in the WebUI.
    • changed term "relais" to "output" in WebUI.
    • the button "device firmware" will now switch to the device overview page instead.
    • device firmware updates can only be triggered from the device overview page anymore.
    • fixed bug for display of the upper device button for the HmIP-BSL
    • fixed bug where no lammelle position could be configured for the HmIP-FBL/BBL (weekly programs or WebUI).
    • fixed missing configuration pages for RGBW controller.
    • fixed missing easy modes for HmIP-FCI1/6.
    • fixed missing "action on power" for HmIP-MP3P and dimm actors.
    • removed unsupported "event delay" config setting for HmIP-FCI1/6.
    • fixed incorrectly loaded "device firmware overview" page if a Philips HUE Gateway is connected.
    • fixed problem where the CCU value for energy devices doubled its value upon reboot.
    • added missing location config setting for HmIP-PCBS2 so that weekly programs work correctly.
  • integrated some fixes for large file uploads in default lighttpd configuration which otherwise could result in all memory being eaten.
  • integrated a minor fix for a cosmetic issue in sorting the WebUI buttons of CCU addons in the system configuration UI which only happened if the DevConfig tweak was enabled.
  • integrated a fix for a buffer overflow problem in the ReGaHss user authentication lighttpd module which otherwise could result in issues with correct authentication against the XMLRPC services (#556, @alexreinert).
  • slightly optimized the restoreBackup.sh helper script to check for included sha256 checksum files and to make sure that only files in /usr/local will be overwritten by the restore operations. In addition, restoreBackup.sh will now also restart all necessary services automatically instead of requiring a manual reboot afterwards (which is still advised, thought).
  • in addition to specifying an output folder in the createBackup.sh helper script a full path to a file can also be specified now. In addition, a sha256 checksum file is now added to every backup file for future consistency checks (#543, @methodus).
  • fixed a minor bug in the firmware update routines in the recovery system which resulting in the firmware update to require an unnecessary amount of time due to udev taking care of local lofs mounts.
  • optimized memory management in low memory conditions so that critical Homematic services will be killed as one of the last steps before the underlying hardware runs out of memory (#540).
  • updated buildroot/Linux environment to latest stable 2018.11.2 version.
  • updated RaspberryPi Linux kernel to 4.14.98 including corresponding RaspberryPi firmware files.
  • updated armbian-based Tinkerboard Linux kernel + U-Boot patchset and raised kernel version to 4.14.101 accordingly.
  • added global robots.txt file to WebUI returning a general Disallow: / response so that any sensible web spider should stop indexing any web pages of the CCU if it had been accidentally connected to the internet (e.g. via port forwarding).
  • performed a general cleanup in the root filesystem by removing obsolete unused WebUI files resulting in a reduced amount of filesystem space to be used.
  • minor bugfixes and cosmetic changes.

👪 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:

RaspberryMatic 3.41.11.20190126

26 Jan 18:52
b2f9719
Compare
Choose a tag to compare

This is release 3.41.11.20190126 of RaspberryMatic which is a maintenance release including the following bugfixes and minor feature enhancements:

Downloads License Donate

🚧 Changes:

  • fixed a major bug where RF communication to homematicIP devices was partly not working when using a RaspberryPi while not having the HDMI port connected to anything. This seem to have resulted in (partly) unreliable RF communication to homematicIP devices due to the unused HDMI port resulting in certain RF interferences. Now the HDMI port is automatically powered down/disabled upon boot up if no cable is connected at all. In addition, the HDMI console will now automatically blank after 2 minutes of inactivity also potentially reducing RF interferences if a HDMI monitor is connected (#500).
  • fixed the RF module GPIO reset functionality for the RPI-RF-MOD during boot up so that upon a CCU reset the RF module should start with a zeroed DutyCycle counter.
  • fixed bug in new CodeMirror-based ScriptEditor where under certain circumstances a text selection resulted in dragging the script editor window instead (#534).
  • added support for third-party USB-based HB-RF-USB adapter PCB developed by @alexreinert for connecting/using a HM-MOD-RPI-PCB or RPI-RF-MOD using a USB cable with kind support by @alexreinert (see Discussion).
  • added timeout command to default BusyBox configuration so that users can write scripts/tools that are using this timeout command to automatically cancel commands after a certain amount of time not having finished.
  • slightly reworked the general RF module setup routines to catch more RF module combination cases and should make the init routines more reliable.
  • improved new HTTP/XMLRPC-based authentication routines to not require any authentication if the request is coming from localhost. This should remove the requirement for authentication of processes running on the CCU/RaspberryMatic itself while not putting security at risk (#533, @alexreinert).
  • switched from using the partly obsolete NTPd daemon and tools for syncing to and querying external NTP servers to the modern and new standard chrony NTP daemon/client package. This should also partly improve NTP syncing and NTP related information querying.
  • updated RaspberryPi Linux kernel to 4.14.81 including corresponding RaspberryPi firmware and onboard WiFi-firmware files.
  • updated armbian-based Tinkerboard Linux kernel + U-Boot patchset and raised kernel version to 4.14.94 accordingly.
  • minor bugfixes and cosmetic changes.

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

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

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:

RaspberryMatic 3.41.11.20181222

21 Dec 23:08
62a9f4e
Compare
Choose a tag to compare

This is release 3.41.11.20181222 of RaspberryMatic which is a major enhancement release including several bugfixes as well:

Downloads License Donate

🚧 Changes:

  • updated OCCU firmware to 3.41.11-6 coming with the following major changes:
    • updated ReGaHss logic engine R1.00.0388.0204 (Dec 12 2018) with the following changes:
      • fixed string backslash unescaping routines to correctly unescape double backslash uses and thus allow to define e.g. \t by using a \\t string which were not possible before (#514).
      • implemented missing break and continue statements to break out of while() and foreach() loops and to also continue with the next iteration like this is commonly performed in other script languages (#224).
      • fixed bug where elseif() within a while()/foreach() loop didn't work as expected but was quiting the loop too early (#404).
      • fixed webserver to only create and reserve a session ID in case a successful user login is performed (either manual or autologin). This should prevent from Denial-of-Service (DoS) situations where certain internal service could send multiple web requests to identify if a http server is running and thus could eat up all available session slots ending up in "Zu viele gleichzeitige Verbindungen" errors.
      • fixed http response to manage more than 800kb of response payload so that the internal web server of ReGaHss can manage way larger http response data. This should finally allow to, e.g. serve larger system variables http displays at Settings -> Systemvariables with, e.g. ~1k of system variables or with longer device list web pages.
    • updated/fixed support for new HmIP devices (e.g. HmIP-FCI1).
    • integrated fixed SetInterfaceClock tool correctly using default IP and port information with a force command-line parameter.
    • integrated fixed hs485dLoader to forward the config file path to the main hs485d daemon on execution.
    • updated hmip-copro-update.jar to use the latest version available.
  • optimized NTP startup to reset to the default NTP server string in case ntp.homematic.com is still used which is not reliable enough anymore. Also added checks for valid NTP servers after having called "ntpdate" so
    that the NTP startup also uses the default NTP servers as a fallback.
  • reworked DutyCycle query script to read out ReGaHss and HmIPServer port settings from the corresponding files in /etc and to also correctly updated the "Wired-Status" system variable for BidCos-Wired installations.
  • fixed problem that the recovery system could not update installations where the rootfs is located on a USB driven device that requires more time to be initialized. Now the recovery system will wait until the
    device is properly setup (#377).
  • reduced SetInterfaceClock execution to be performed only once per day. This should slightly reduce the DutyCycle by 1-2% compared to the 3.37.x and earlier firmware versions.
  • integrated slightly fixed firewall setup script which also take care of correctly setting up firewall settings for HmIP-Wired Gateway connections.
  • modified firewall to use a final REJECT rule so that not allowed packages are rejected rather than simply dropped. This should improve response times for services trying to access blocked ports which seems to be more adequate for an internal network use-case of a CCU (#486).
  • removed CUxD specific cuxd.ini patch since the latest CUxD 2.2.0+ version integrated an automatic port identification mechanism. Thus, CUxD 2.2.0 and newer should be used now.
  • updated recovery system to also start ssdpd and eq3configd to provide basic CCU search mechanisms so that a CCU device in recovery mode can also be found using the eQ3 NetFinder tool.
  • updated mediola NEO server package to latest 2.4.1 version.
  • updated standard update_script to use more verbose/easier output messages when performing the update using the ccu3 update archive.
  • fixed support for only connecting a HM-CFG-USB-2 usb stick as a BidCos-RF module so that HmIPServer & co still work correctly and allow to manage virtual groups, etc.
  • fixed bug where upon enabling/disabling the "Authentication" settings under "Settings->Security->Authentication" required to completely restart the CCU device rather than correctly reloading all lighttpd configurations.
  • added new WebUI bugfix patch to fix Session.login JSON rpc calls which does not work with the latest ReGaHss session ID generation anymore. Now it will retrieve a new session ID right after having authenticated a user rather than first getting a session ID (which isn't possible anymore without any authentication).
  • added WebUI fix for fixing two security vulnerabilities (CVE-2018-7296, CVE-2018-7300) by changing the access levels for certain public JSON rpc functions from NONE to USER and removing obsolete ones.
  • updated buildroot/Linux environment to latest stable 2018.11.1 version.
  • updated RaspberryPi Linux kernel to 4.14.79 (raspberrypi-kernel_1.20181112-1) including corresponding RaspberryPi firmware files.
  • updated armbian-based Tinkerboard Linux kernel + U-Boot patchset and raised kernel version to 4.14.89 accordingly.
  • minor bugfixes and cosmetic changes.

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

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

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:

RaspberryMatic 3.41.11.20181126

26 Nov 21:38
2f914cd
Compare
Choose a tag to compare

This is release 3.41.11.20181126 of RaspberryMatic which is a major bugfix release fixing certain last minute issues found in the last major release version:

Downloads License Donate

🚧 Changes:

  • fixed problem of hs485d not starting up with the correct config file and thus leaving BidCos-Wired support broken (#479).
  • integrated patch to not use an "iframe" for downloading CCU Addon version information on the browser side, but use a XMLHttpRequest() to force the right "text/plain" content-type. This should prevent a forced download of "update-check.cgi" files when listing the installed Addons (#480).
  • applied fix for mixed up control button display when selecting "Settings -> System control".
  • improved firewall setup to only block 3xxxx ports for the XMLRPC/REGA firewall definitions and not in general (#484).
  • fixed firewall setup script to correctly identify IPv6 addresses (#485, #488).
  • added fe80::/10 IPv6 addresses to the default unblocked IPv6 range of addresses for improved default IPv6 functionality.
  • fixed DutyCycle query/update script to work with the new internal (3xxxx) port variants so that an enabled authentification setting does not stop it from working.
  • minor bugfixes and cosmetic changes.

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

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

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:

RaspberryMatic 3.41.11.20181124

24 Nov 20:52
11f2219
Compare
Choose a tag to compare

This is release 3.41.11.20181124 of RaspberryMatic which is a major enhancement release including several bugfixes as well:

Downloads License Donate

🚧 Changes:

  • updated OCCU firmware to 3.41.11-2 coming with the following major changes:
    • updated ReGaHss logic engine R1.00.0388.0203 (Nov 14 2018) with the following changes:
      • applied changes to raise the limit for the maximum number of ISE objects from 2^16 to 2^31 so that we can support way larger installations in future.
      • implemented SHA512-based password storage with automatic conversion of old MD5 encoded user passwords once a successful login had been processed.
      • we use dynamic string arrays all over the place now. This finally removes all obsolete string boundaries regarding text length. This e.g. enables to use large texts in DPInfo(), etc.
      • upon loading the interfaces on startup non-existing interfaces are now flagged invalid by wiping the URL parameter so that xmlrpc calls to still existing devices of these non-existing interfaces are returned immediately instead of potentially resulting in long timeouts in trying to contact these interfaces.
      • fixed bug which caused a double execution of State() events on HSSdp device objects (#466).
    • integrated new ssdpd binary version potentially fixing some problems/crashes due to non-RFC conform UPnP requests.
    • all remote API XMLRPC ports (8181, 1999, 2010, 9292, 2001, 2000) for external applications to access HomeMatic services (e.g. ReGaHss, HMIPServer, etc.) on the CCU are now proxied through the lighttpd web server implying the following security related changes in accessing these remote APIs:
      • possibility to establish secured connections (TLSv1.2/TLSv1.3) to access the XMLRPC services using dedicated secured ports (48181, 41999, 42010, 49292, 42001, 42000) equivalent to the unsecured ports listed above.
      • integrated lighttpd-based authentication against ReGaHss which allows to perform a basic authentication with username+password (e.g. https://USERNAME:PASSWORD@IP:PORT/) against all XMLRPC servers (rfd, HMIPServer, etc.) if enabled in a new WebUI option under "Settings -> Security".
      • remote ReGaHss scripting is now correctly blocked on port 80 and 433 leaving the only possibility to send rega script requests on port 8181 or 48181 respectively.
    • improved security/firewall settings including a security wizard which allows to harden a CCU in terms of external accessible ports using mainly 3 levels (maximum, restricted or relaxed security).
    • updated mediola NEO Server Addon to version 2.4.0
  • integrated new major WebUI patch to provide functionality to permanently disable generation of service messages for selected devices. Now a user can disable all service messages for a device by unchecking a checkbox in the "Settings -> Devices -> Device" popup. Such "disabled" devices will then show a NO SERVICEMSG tag in the device list to warn that for these devices no service message is generated at all. This finally allows to "disable" devices, e.g. during summer/winter seasons (#222).
  • integrated a new major WebUI patch implementing a much improved source code editor functionality for the "Test script" and general Script Editor functionality when creating WebUI programs using ReGa-scripts (#470). The new javascript-based script editor is based on CodeMirror and provides the following additional functionality now:
    • display of line numbers in the editor.
    • ReGa-script specific syntax highlighting.
    • editor internal search&replace functionality including regex-based search capabilities as well as match display on the scrollbar.
    • internal command completion based on already existing words in the currently edited script.
    • brackets-based code folding capabilities.
    • brackets matching display to highlight all opening/closing brackets while editing.
    • auto adding of closing brackets while editing.
    • switchable fullscreen mode.
    • Advanced editor keyboard shortcuts:
      • F11: enable fullscreen mode
      • Esc: disable fullscreen mode
      • Ctrl-Space: autocompletion of current word.
      • Ctrl-Q: auto folding/un-folding of brackets ({, }) on coding blocks.
      • Ctrl-F / Cmd-F: start search.
      • Ctrl-G / Cmd-G: find next search match.
      • Shift-Ctrl-G / Shift-Cmd-G: find previous search match
      • Shift-Ctrl-F / Cmd-Option-F: replace next match.
      • Shift-Ctrl-R / Shift-Cmd-Option-F: replace all matches.
      • Alt-F: persistent search (dialog doesn't autoclose, enter to find next, Shift-Enter to find previous).
      • Alt-G: jump to line
  • integrated new WebUI patch to be able to sort user system variable favorites alphabetically (#448).
  • integrated new WebUI patch kindly provided by alchy which allows to always select a system variable for display in favorites no matter if this variable has already been assigned to a device channel.
  • modified StatusColumn WebUI patch to also display the status of OPERATING_VOLTAGE, SABOTAGE, ERROR_OVERHEAT and UPDATE_PENDING data points (if present for a certain device).
  • enhanced WebUI patch to fix certain newline (\r,\n) related issues resulting in non-working system variables popup to also remove newlines in value list system variables because they also resulted in non-working system variables popup if such variables contained newlines in the value list.
  • fixed StatusColumn WebUI patch to correctly display the device table for devices consisting of a device group (#468).
  • modified WebUI patch to show battery+valve state to also show the valve state for HmIP heating devices in "State and control -> Device" display. The battery state has to be displayed in the "Settings -> Devices" display instead (#457).
  • fixed WebUI patch to show battery+valve state of heating devices to just show this information if not readonly (#455).
  • fixed bug in WebUI patch to display the RSSI status column which didn't update the status values upon closing a device/channel dialog or when filtering the device tables (#474).
  • fixed a bug in DevConfig tools page which crashed if some devices returned stringified boolean values.
  • modified SNMP daemon startup and setup to use a fixed global snmpd.conf configuration file, but provide the possibility for users to put own configurations into /etc/config/snmp/snmpd-user.conf and /etc/config/snmp/snmptrapd-user.conf.
  • added hardware support for new RaspberryPi3 Model A+ model.
  • updated buildroot/Linux environment to latest stable 2018.08.2 version.
  • updated Java Runtime Environment to latest 1.8.0_192-8.33.0.134 version.
  • updated RaspberryPi Linux kernel to 4.14.80 including corresponding RaspberryPi firmware files also fixing some kernel related issues (#449).
  • updated armbian-based Tinkerboard Linux kernel + U-Boot patchset and raised kernel version to 4.14.80 accordingly.
  • fixed boot-up problem with ASUS Tinkerboard if an SD card or eMMC was freshly flashed with one of the latest versions (#472).
  • enhanced recovery system to be able to also update the U-Boot boot loader for the ASUS Tinkerboard in case the new partition layout is used with a fixed position of the bootfs so that there is enough space to flash even larger U-Boot boot loader binaries in future. Please note, that for this feature to work the SD card or eMMC of an Tinkerboard has to be freshly reflashed with the latest *.img or otherwise U-Boot boot loader updates coming with future versions cannot be applied.
  • the recovery system will now display/use a RaspberryMatic specific logo while starting up.
  • added fix for problem with trying to restore backups that carry a future timestamp in the backup archive.
  • fixed problem in segfaulting /bin/passwd uses in main and recovery system (#469).
  • fixed minor problem with S.USV default config which should use higher sleep parameter values to provide a more reliably input voltage check.
  • minor bugfixes and functional changes.

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

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

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:

  • 💼RaspberryPi3+, RaspberryPi3, RaspberryPi2, RaspberryPi Compute Module 3 (lite):
    [RaspberryMatic-3.41.11.20181124-rpi3.zip](https://github.com/jens-maus/...
Read more