Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



82 Commits

Repository files navigation


With this Homebridge plugin you can use RuuviTags with Apple HomeKit.



First, install Node.js Avahi (Homebridge might need this), Homebridge and this plugin:

# install Avahi if needed
sudo apt-get install libavahi-compat-libdnssd-dev

# install Node.js
curl -fsSL | sudo -E bash - &&\
sudo apt-get install -y nodejs

# install homebridge + homebridge-ruuvitag
sudo npm i -g homebridge
sudo npm i -g homebridge-ruuvitag

Find out Ruuvitag ID's

You can find out Ruuvitag ID's by running ruuvitag-debug:

npx ruuvitag-debug


Create a ~/.homebridge/config.json file (change ID's and add/remove tags as necessary):

  "bridge": {
    "name": "Ruuvi",
    "username": "CC:22:3D:E3:CE:30",
    "port": 51826,
    "pin": "031-45-154"

  "description": "RuuviTag bridge",

  "accessories": [
      "accessory": "Ruuvitag",
      "name": "Ruuvi 1",
      "id": "ca67bf52ca12"
      "accessory": "Ruuvitag",
      "name": "Ruuvi 2",
      "id": "fa81b4c6a891"
      "accessory": "Ruuvitag",
      "name": "Ruuvi 3",
      "id": "ac67df12bb34"

Socket option

You can listen to RuuviTag update events emitted from a socket server instead of using Bluetooth. This is signalled by adding a configuration parameter for the accessory.

"socket": "http://raspberrypi.local:8787"


Now you can run Homebridge:


Start on startup

Install pm2:

npm -g i pm2

Start with pm2 and save as daemon:

pm2 start homebridge
pm2 save
pm2 startup

Supported features

  • temperature
  • humidity
  • battery level
  • battery level alert
  • heat alert
  • cold alert
  • high humidity alert
  • low humidity alert
  • motion alert