Somfy RTS and Intertechno switches via CUL transceiver and MQTT

I have a CUL868 USB transceiver stick to control my blinds, shades and switchable power sockets. The hardware is based on the CC1101 and is available since a long time, e.g. from Busware (I believe it was developed for FHEM initially.) The firmware interface is documented well.

In order to connect it to Home Assistant, I wrote a small daemon that talks to the hardware and provides an MQTT interface. At the moment, only Somfy RTS and Intertechno support is implemented.

As a bonus, I implemented MQTT discovery as defined by Home Assistant. As soon as you configure the daemon to handle your hardware and connect it to the MQTT broker, the devices directly show up in HA :slight_smile:

If you are interested, you can find the software here: https://github.com/bbock/mqtt_cul_server. Any feedback is appreciated.

2 Likes

Hello Bernhard,

I tried to install your project, but there was an error displayed.
First I would say, Iā€™m a newbee working with Home Assistant.

I copied the url from GitHub to supervisor/ add-on store/ repositories, klick on add and became this error. ā€œNot a valid add-on repositoryā€

The system log displayed:
20-10-26 16:34:09 ERROR (MainThread) [supervisor.store] Canā€™t load data from repository https://github.com/bbock/mqtt_cul_server.git
20-10-26 16:34:09 ERROR (MainThread) [supervisor.utils.json] Canā€™t read json from /data/addons/git/664dfb63/repository.json: [Errno 2] No such file or directory: ā€˜/data/addons/git/664dfb63/repository.jsonā€™
20-10-26 16:34:09 WARNING (MainThread) [supervisor.store.data] Canā€™t read repository information from /data/addons/git/664dfb63/repository.json

Is this the right way to add your great tool or is there a bug?

Regards

Steffen

Well, at the moment this is a standalone Linux/Python software that cannot be installed via supervisor / GUI. It can connect to Home Assistant via MQTT, but apart from that it needs to run completely separately.

As you cannot run ā€œplainā€ (i.e. non-containerized) software in Home Assistant OS, thereā€™s currently no way to run it on the same device as Home Assistant. You can run it on a Raspberry PI or and other Linux device, but thereā€™s no automated installation yet. I guess you need to have some command line skills to clone the repo, install python and run the software.

Having said that, Iā€™m investigating converting it to a proper add-on to run it from within the supervisor, because I want to convert my installation from HA core to a Home Assistant OS based installation in the forseeable future. Not yet, thoughā€¦

Hi Bernhard,

is this project still alive? I have a CC1101 in my CCU2 and I want to get it work directly in HA. Is there any documentation, how to install and configure your integration?

Thanks a lot! Regards
Horst

Hi Horst,

the project is still alive and driving my HA setup very reliably.

I havenā€™t had the motivation to convert it to a HA Addon yet, but it is packaged as Docker container with a pre-built container image for PC and Raspberry Pi (x86 and arm) on GitHub. You can use the provided docker-compose file as a starting point.

The documentation is limited, thereā€™s nothing available outside of the GitHub repository. Basically, you need an existing MQTT broker setup (can be provided by the respecitve HA Addon) and deploy this container with a config file. I donā€™t have a generic how-to for deploying containers, but you should find something in the interwebs. The config-file and the pairing docs should be sufficiently clear I hope, but feel free to ask if something is unclear.

regards
Bernhard

1 Like

Hello Bernhard,

I was trying to install your project with the docker-compose file, but I am getting the below error.
What am I doing wrong?

Many thanks
Alex

Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting ā€œ/opt/mqtt_cul_server/mqtt_cul_server.iniā€ to rootfs at ā€œ/mqtt_cul_server/mqtt_cul_server.iniā€: mount /opt/mqtt_cul_server/mqtt_cul_server.ini:/mqtt_cul_server/mqtt_cul_server.ini (via /proc/self/fd/6), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type