README.md 2.1 KB

CUL2MQTT

Connector for CUL RF-Transceiver to MQTT written in Python.

Designed as a bridge between more modern MQTT, HomeAssistant and ESP8266/Tasmota based home automation solutions and old fashioned 433 MHz RF remotes (and also some RF relay plugs). I developed this as I moved to Home Assistant, MQTT and Node-RED for all of my home automation tasks, and still wanted to use these tiny, handy and cheap RF remotes, although none of their counterparts (RF plugs) were still used. Apart from that, there is a number of cheap RF controlled ceiling fan controllers available that can be integrated with this solution.

Features:

  • integrate 433MHz RF remote controls in MQTT based home automation systems like Home Assistant and Node-RED
  • control RF remote plugs and other devices such as ceiling fan controllers with MQTT messages while getting state updates whenever the original remote is used
  • full integration of InterTechno fixed code protocol (receiving, sending and automatic TX code generation supported)
  • supports InterTechno compatible learning code protocols, i.E. EV1527 based remotes (receiving, sending and automatic TX code generation supported)
  • basic support for other 433 MHz RF remotes - including many self learning models (for receiving only)
  • developed for use with CUL transceivers with firmware a-culfw
  • supports 2 CUL transceivers concurrently - one connected directly via UART, and another one via MQTT-UART-Bridge using an ESP8266 device running the great Tasmota firmware, in order to improve site coverage and reliability, where preferred TX interface can be defined per device More info on Tasmota as an MQTT-Serial-Bridge: Tasmota Serial-MQTT-Bridge for MQTT-CUL
  • intended for running on a Raspberry Pi or similar
  • devices configuration using YAML file, base configuration using INI file

Installation:

(on Raspberry Pi as "pi" in folder /home/pi)

git clone URL

Prerequisits:

  • Python 3
  • Python 3 modules (install via pip3):
    • pyyaml
    • pyserial
    • paho-mqtt