Homebridge is a lightweight Node.js server you can run on your home network to emulate the HomeKit Accessory Protocol (HAP). It supports plugins, which are community-contributed modules that provide a basic bridge from HomeKit to various 3rd-party APIs provided by manufacturers of "smart home" devices. From v2, plugins can also expose accessories over Matter for use with Apple Home, Google Home, Amazon Alexa, SmartThings and other Matter-capable controllers.
Homebridge is a free, non-commercial, community-driven open-source project. It is not affiliated with Apple, Google, Amazon, or the Connectivity Standards Alliance, and no part of it is offered as a paid or certified product.
Since Siri supports devices added through HomeKit, this means that with Homebridge you can ask Siri to control devices that don't have any support for HomeKit at all. For instance, using just some of the available plugins, you can say:
You can explore all available plugins at the NPM website by searching for the keyword homebridge-plugin.
The official Homebridge Discord server and Reddit community are where users can discuss Homebridge and ask for help.
HomeKit communities can also be found on both Discord and Reddit.
Official Homebridge Raspberry Pi Image
Install Homebridge on Raspbian
Debian or Ubuntu Linux |
Red Hat, CentOS or Fedora Linux | Arch / Manjaro Linux|Install Homebridge on Arch Linux
Install Homebridge on Windows 10 / 11 Using Hyper V
Install Homebridge on Docker
Synology | Unraid | QNAP | TrueNAS Scale
Install Homebridge on Synology DSM 7
app on your device.
.If the bridge does not have any accessories yet, you may receive a message saying Additional Set-up Required, this is ok, as you add plugins they will show up in the Home app without the need to pair again (except for Cameras and TVs).
Cameras and most TV devices are exposed as separate accessories and each needs to be paired separately. See this wiki article for instructions.
Once your device has been added to HomeKit, you should be able to tell Siri to control your devices. However, realize that Siri is a cloud service, and iOS may need some time to synchronize your device information with iCloud.
One final thing to remember is that Siri will almost always prefer its default phrase handling over HomeKit devices. For instance, if you name your Sonos device "Radio" and try saying "Siri, turn on the Radio" then Siri will probably start playing an iTunes Radio station on your phone. Even if you name it "Sonos" and say "Siri, turn on the Sonos", Siri will probably just launch the Sonos app instead. This is why, for instance, the suggested name for the Sonos accessory is "Speakers".
Homebridge v2 introduces optional support for the Matter smart home standard, allowing plugins to expose their devices to any Matter-capable controller — Apple Home, Google Home, Amazon Alexa, Samsung SmartThings and others — alongside (or instead of) HomeKit.
Homebridge's Matter support is not certified by the Connectivity Standards Alliance (CSA) and Homebridge is not a "Matter product" in any commercial sense. It is a community, non-profit implementation that re-uses the open-source matter.js library to speak the protocol. Matter-certified controllers may treat uncertified bridges as "uncertified accessories" and display a warning during pairing — this is expected.
@matter/main npm package) as its protocol engine.matter block to bridge (the main bridge) and/or to a plugin's _bridge (a child bridge) in your config, and Homebridge will start a separate Matter server on its own port and advertise it on your LAN. Bridges without a matter block keep working exactly as before.api.matter API — analogous to the existing api.hap API. Plugins that don't opt in are unaffected.For setup instructions and the latest list of supported device types, see the developer docs at https://github.com/homebridge-plugins/homebridge-matter/wiki.
The https://developers.homebridge.io website contains the Homebridge API reference, available service and characteristic types, and plugin examples.
The Homebridge Plugin Template project provides a base you can use to create your own platform plugin.
There are many existing plugins you can study; you might start with the Homebridge Example Plugins or a plugin that already implements the device type you need.
When writing your plugin, you'll want Homebridge to load it from your development directory instead of publishing it to npm each time. Run this command inside your plugin project folder so your global installation of Homebridge can discover it:
npm link
You can undo this using the npm unlink command.
Then start Homebridge in debug mode:
homebridge -D
This will start up Homebridge and load your in-development plugin. Note that you can also direct Homebridge to load your configuration from somewhere besides the default ~/.homebridge, for example:
homebridge -D -U ~/.homebridge-dev
This is very useful when you are already using your development machine to host a "real" Homebridge instance (with all your accessories) that you don't want to disturb.
To fix this, Reset Homebridge.
Try the following:
Bonjour HAP and Ciao mDNS Advertiser options. See the wiki for more details.Technically, the device manufacturers should be the ones implementing the HomeKit API. And I'm sure they will - eventually. When they do, this project will be obsolete, and I hope that happens soon. In the meantime, Homebridge is a fun way to get a taste of the future, for those who just can't bear to wait until "real" HomeKit devices are on the market.
Homebridge is maintained on a volunteer basis by a community of contributors. There is no company behind it, nothing is sold, and no part of the project is certified or endorsed by Apple, Google, Amazon, the Connectivity Standards Alliance, or any device manufacturer. If a plugin or page asks you to pay for "Homebridge" itself, it isn't us.