Homebridge plugin for integrating BTHome devices into HomeKit
homebridge-bthome
enables seamless integration of Bluetooth devices that communicate using the BTHome data format into your HomeKit setup.
It works locally — no gateways or cloud services are required. The plugin connects directly to supported devices.
Note: This project is in active early development and currently supports a limited set of sensor types.
See the Supported Features section for details.
To utilize this plugin, ensure that:
- Your Homebridge setup includes Bluetooth hardware.
- The necessary drivers for your Bluetooth hardware are installed and functioning correctly.
This plugin does not automatically add all discovered BTHome devices. Each device must be manually configured.
- Device MAC Address: The unique MAC address of the device must be specified.
- Encryption Key (if applicable): If the device payload is encrypted, you must provide the encryption key. Note that the plugin does not share or store this key outside the configuration file.
- Temperature
- Relative Humidity
- Battery Level
- Push Button
- Illuminance
- Motion detection
This is a list of devices that should work with this plugin. Some of them aren't tested (see table below).
If you own some of the untested devices and the plugin works for you, please let me know so I can update its status.
Device | Tested |
---|---|
Shelly BLU H&T | ✔️ |
Shelly BLU Button | ❌ |
Shelly BLU Wall Switch | ❌ |
Shelly BLU RC Button | ❌ |
Shelly BLU Motion | ✔️ |
Feature | Support Status |
---|---|
Encryption | ✔️ |
Occasional Sensor Data* | ✔️ |
Multiple Bluetooth Devices** | ❌ |
Multiple Sensor Readings of Same Type | ❌ |
- *Occasional Sensor Data: This refers to data not consistently present in the device payload. For instance, the Shelly BLU H&T device only reports its push button state when the button is pressed; this data is absent in periodic updates.
- **Multiple Bluetooth Devices: If your setup includes multiple Bluetooth devices, the plugin will default to using the first available device.
We welcome contributions! If you would like to contribute, please create an issue first, detailing the feature or functionality you intend to implement and the device you are working with.
Pull requests are encouraged and appreciated!