piVCCU

piVCCU®

piVCCU is a project to install the original Homematic CCU3 firmware inside a virtualized container (lxc) on ARM based single board computers.

Goals

Donations Support me on Ko-fi Donate via Paypal

Keeping this project running is very expensive, e.g. I have to buy a lot of different test devices. If you like to support this project, please consider sending me a donation via Ko-fi, PayPal or you can send me a gift from my Amazon wishlist.

Prequisites

Prequisites for HM-MOD-RPI-PCB and RPI-RF-MOD on GPIO header

Pre-prepared sd card images

You can find pre-prepared sd card images here. The images are configured to use the HM-MOD-RPI-PCB or RPI-RF-MOD. If you like to use an other radio mode, please see below how to switch it. They are identical to the original distribution lite or server images but have piVCCU already installed like it is described below. Login to Raspbian based images using user ‘pi’ and password ‘raspberry’. Login to Armbian based images using user ‘root’ and password ‘1234’.

Manual installation

Updating piVCCU to latest version

Use the normal apt based update mechanism:

sudo apt update && sudo apt upgrade

Supported Radio modes

Backup

Starting with version 2.31.25-23 there is the tool pivccu-backup to create CCU2 compatible backups (inside the host). Be aware, that this is only a backup of the CCU, no settings of the host are saved.

To restore a backup file use the WebUI of the CCU.

Migrating from piVCCU (CCU2 firmware) to piVCCU3 (CCU3 firmware)

  1. Create a full backup of your SD card
  2. Create a CCU backup using the CCU web interface
  3. Update the apt repositories
    sudo apt update
    
  4. Remove the CCU2 firmware package
    sudo apt remove pivccu
    
  5. Install the CCU3 firmware package
    sudo apt install pivccu3
    
  6. Restore your CCU backup using the CCU web interface
  7. Reinstall all Addons using the CCU3/RaspberryMatic versions
  8. As the CCU3 firmware does a cherry picking of files beeing restored, you maybe need to restore some files by yourself (e.g. CUxD settings files).
  9. If you used hook scripts or a customized lxc config, you need to apply your changes in the new directory /etc/piVCCU3 by yourself.
  10. After successful migration you can delete the old piVCCU (CCU2 firmware) data using
       sudo apt purge pivccu
    

Migration from other systems

Using USB devices inside container (e.g. for CUxD)

You can configure the USB devices using the installer. You can change it later using

sudo dpkg-reconfigure pivccu3

Build packages by your own

If you like to build the .deb package by yourself

License

piVCCU itself – the source files found in this git repository – are licensed under the conditions of the Apache License 2.0. The kernel module source files (folder kernel) and the generated kernel .deb files (raspberrypi-kernel-pivccu) licensed under the GPLv2 license instead. The generated CCU container .deb files (pivccu) are containing the original CCU3 firmware, containing multiple different licenses. Please refer to eQ-3 for more information.

Acknowledgement

The base idea of piVCCU is inspired by YAHM and lxccu.