/homebridge-mqttthing

A plugin for Homebridge allowing the integration of many different accessory types using MQTT.

Primary LanguageJavaScriptApache License 2.0Apache-2.0

npm npm Discord verified-by-homebridge

Homebridge MQTT-Thing

Homebridge MQTT-Thing is a plugin for Homebridge allowing the integration of many different accessory types using MQTT.

Alternatives

MQTT-Thing allows a wide range of Homekit accessory types to be integrated using MQTT, and has some quite flexible configuration options which are very helpful in many scenarios. However, if you want quick and simple integration with Zigbee devices exposed through Zigbee2MQTT you should also consider the z2m plugin.

Compatibility with previous versions

From version 1.1.45, MQTT-Thing requires Node.js 16 or later.

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.

Installation

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).

Configuration

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.

Supported Accessories

The following Homekit accessory types are supported by MQTT-Thing:

Tested Configurations

Tested and working configurations for devices are available on the Wiki. Please add your working configurations for others.