Homebridge MQTT-Thing is a plugin for Homebridge allowing the integration of many different accessory types using MQTT.
From version 1.1.x, raw JavaScript values for Boolean properties are passed to MQTT apply functions. This may change published message formats, e.g. when apply functions are used to build JSON strings.
For full details of changes please see the Release notes.
Follow the instructions in homebridge for the homebridge server installation. This plugin is published through NPM and should be installed "globally" by typing:
npm install -g homebridge-mqttthing
Installation through Homebridge Config UI X is also supported (and recommended).
Configure the plugin in your homebridge config.json
file. Most configuration settings can now also be entered using
Homebridge Config UI X.
MQTT topics used fall into two categories:
- Control topics, of the form
setXXX
, are published by MQTT-Thing in order to control device state (e.g. to turn on a light). - Status/notification topics, of the form
getXXX
, are published by the device to notify MQTT-Thing that something has occurred (e.g. that a sensor has detected something or a control topic action has been performed).
For further details, see docs/Configuration.md and docs/Codecs.md.
The following Homekit accessory types are supported by MQTT-Thing:
- Air Pressure Sensor
- Air Quality Sensor
- Carbon Dioxide Sensor
- Contact Sensor
- Doorbell
- Fan
- Garage door opener
- Heater Cooler
- Humidity Sensor
- Leak Sensor
- Light bulb
- Light Sensor
- Lock Mechanism
- Microphone
- Motion Sensor
- Occupancy Sensor
- Outlet
- Security System
- Speaker
- StatelessProgrammableSwitch
- Switch
- Television
- Temperature Sensor
- Thermostat
- Valve (Sprinkler, Shower, Faucet)
- Weather Station
- Window
- Window Covering (Blinds)
Tested and working configurations for devices are available on the Wiki. Please add your working configurations for others.