Homekit Siri — Domoticz на Raspberry Pi 3

Статья подразумевает наличие у вас Raspberry Pi 3 (с Raspbian Jessie на борту)  и с установленным сервером для автоматизации умного дома Domoticz.

    • Коннектимся к Raspberry Pi по SSH (предварительно включаем SSH в настройках Raspberry Pi):
ssh pi@192.168.1.18
    • Обновляем систему
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install git make
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -

sudo apt-get install -y nodejs
sudo apt-get install libavahi-compat-libdnssd-dev

sudo npm install -g -—unsafe-perm homebridge hap-nodejs node-gyp

cd /usr/lib/node_modules/homebridge/
sudo npm install -—unsafe-perm bignum

cd /usr/lib/node_modules/hap-nodejs/node_modules/mdns
sudo node-gyp BUILDTYPE=Release rebuild

cd $home
  • Устанавливаем плагин Domoticz для Homebridge
sudo npm install -g homebridge-edomoticz

Создаем файл конфигурации:

cd ~/.homebridge/
nano config.json

Если директории .homebridge не существует, создаем ее:

mkdir .homebridge

Вставляем:

{
    "bridge": {
        "name": "Homebridge",
        "username": "CC:21:3E:E4:DE:33",
        "port": 51826,
        "pin": "031-45-154"
    },
    "description": "Configuration file for (e)xtended Domoticz platform.",
    "platforms": [
        {
            "platform": "eDomoticz",
            "name": "eDomoticz",
            "server": "127.0.0.1",
            "port": "8080",
            "ssl": 0,
            "roomid": IDX, 
            "mqtt": 1
        }
    ],
    "accessories": []
}

* IDX заменить на индекс вашей комнаты в domoticz c устройствами, которые хотите использовать в iOS (у меня 2)
Предварительно необходимо создать план комнаты в Domoticz и добавить нужные устройства
Жмем Control+O потом Control+X

Если позже потребуется обновить плагин, используем:

sudo npm update -g homebridge-edomoticz
  • Запускаем для проверки
 homebridge
  • Если все ок, homebridge запускается, в iOS видит, то добавляем в автозапуск:
sudo nano /etc/default/homebridge

Вставляем:

# Defaults / Configuration options for homebridge
# The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others)
HOMEBRIDGE_OPTS=-U /home/pi/.homebridge
# If you uncomment the following line, homebridge will log more
# You can display this via systemd's journalctl: journalctl -f -u homebridge
# DEBUG=*

Жмем Control+O потом Control+X

sudo nano /etc/systemd/system/homebridge.service

Вставляем:

[Unit]
Description=Node.js HomeKit Server
After=syslog.target
[Service]
Type=simple
User=pi
EnvironmentFile=/etc/default/homebridge
ExecStart=/usr/lib/node_modules/homebridge/bin/homebridge $HOMEBRIDGE_OPTS
Restart=on-failure
RestartSec=10
KillMode=process
[Install]
WantedBy=multi-user.target

Control+O потом Control+X

sudo systemctl daemon-reload
sudo systemctl enable homebridge
sudo systemctl start homebridge

смотрим статус работы

systemctl status homebridge

Командуем Сири: Включи свет в команте на 50%, выключи свет в коридоре и т.д., все зависит от ваших устройств и настроек дома.

Пин-код моста Homebridge по умолчанию:

031-45-154