A HomeBridge plugin for MQTT motion sensors.

Usage no npm install needed!

<script type="module">
  import homebridgeMqttSonoffrfReceiver from 'https://cdn.skypack.dev/homebridge-mqtt-sonoffrf-receiver';



Get Motion Sensor status via MQTT in Homebridge using Sonoff RF Bridge 433 with TasmOTA firmware. Motion sensor is activated when received RF code matches for rfcode or RF key stored in Sonoff RF Bridge. Open Sonoff RF Bridge console to read out received RF codes as hexadecimal values in DATA field. Use these values in rfcode parameter or use rfkey if you have already defined RF codes in Sonoff RF Bridge. Value 'any' will activate the sensor if any RF code received. Use rfcodeon and rfcodeoff parameters if your sensor sends both on and off states. Sensor can be motion sensor or RF button or any other RF sensor.


sudo npm install -g homebridge-mqtt-sonoffrf-receiver

Sample HomeBridge Configuration

  "bridge": {
    "name": "HomeBridge",
    "username": "CC:33:3B:D3:CE:32",
    "port": 51826,
    "pin": "321-45-123"

  "description": "",

  "accessories": [
      "accessory": "mqtt-sonoffrf-receiver",
      "name": "Living Room",
      "url": "mqtt://localhost",
      "topic": "tele/sonoff_rf/RESULT",
      "username": "username",
      "password": "password",
      "rfcode": "1..7FFFFF or 'any'",
      "rfkey": "1..16 or 'any'",
      "ondelay": "time in ms while the sensor is active, the default is 10000",
      "rfcodeon": "1..7FFFFF",
      "rfcodeoff": "1..7FFFFF",
      "accessoryservicetype": "'MotionSensor' (default) or 'StatelessProgrammableSwitch'"

  "platforms": []


Use homebridge-mqtt-sonoffrf-transmitter to control RF devices in Homebridge.