โ† All packages
๐Ÿ 

homekit-bridge

Your GPIO devices in the Apple Home app, natively. Built directly on hap-nodejs (the HomeKit Accessory Protocol library that powers Homebridge), so there's no Homebridge, no Matter, and no hub in between. Declare devices in one JSON file; the bridge drives them through your agents' REST API.

๐ŸŸข Node 18+ ยท hap-nodejs ๐Ÿ“ก Webhook listener :8316 ๐Ÿ Pairs straight into Apple Home ๐Ÿ–ฅ๏ธ Runs on Pi / Mac / Linux โš–๏ธ MIT
View on GitHub ๐Ÿ“ฆ @ctrlpi/homekit-bridge

Quick start

git clone https://github.com/ctrlpi/homekit-bridge.git
cd homekit-bridge
npm install
cp config.json.example config.json   # name your agents and devices
node bridge.js                        # prints the HomeKit setup code + X-HM:// URI

Scan the setup code with the Home app and every declared device appears, individually automatable. Pairing state persists in .homekit/; node bridge.js -c clears it for a fresh pairing.

Declare devices, not code

{
  "name": "MyBridge",
  "agents": [{ "name": "garage", "ip": "192.168.1.20", "api-key": "..." }],
  "devices": [
    { "id": "light1", "name": "Porch Light",  "type": "light",      "gpio": 17, "agent": "garage" },
    { "id": "door1",  "name": "Garage Door",  "type": "garagedoor", "gpio": 27, "agent": "garage" },
    { "id": "pir1",   "name": "Hall Motion",  "type": "motion",     "gpio": 22, "agent": "garage", "pull": "up" }
  ]
}

Device types โ†’ HomeKit services

Config typeHomeKit service
lightLightbulb
plug / outletOutlet
fanFan
lockLock Mechanism
garagedoorGarage Door Opener, real open/close states
valve / shadesValve / Window Covering
contact / motion / occupancyContact / Motion / Occupancy Sensor
smokeco / waterleakSmoke / Leak Sensor
switchStateless Programmable Switch, single, double & long press

How it drives the pins

๐ŸŒPrefer Google Home or Alexa? The matter-bridge sibling exposes the same config file to every Matter ecosystem, run both side by side if you like (they use different webhook ports).

In the family

Same device vocabulary and config schema as matter-bridge; drives any mix of Pi and Pico W agents.