В предыдущих статьях мы рассматривали зачем нам нужен Homebridge, как запустить нашу Raspberry Pi и как установить тот самый заветный Homebridge на нашу малинку.

Далее мы рассмотрим как же нам в итоге начать пользоваться нашими устройствами и подключить их к Homebridge. Для начала рассмотрим самое базовое и наиболее доступное по деньгам и богатое по функционалу — подключение шлюза от Xiaomi

Перед началом необходимо установить на свой телефон приложение MiHome и добавить наш шлюз, а также все имеющиеся устройства в приложение по инструкции, которые даны в самом приложении.

Далее мы займёмся непосредственной установкой плагина для управления шлюзом и его настройкой.

Для этого нам потребуется установить плагин homebridge-mi-aqara

1. Установка плагина

Заходим через терминал по ssh и набираем команду установки плагина homebridge-mi-aqara

sudo npm install -g homebridge-mi-aqara --unsafe-perm

2. Настройка плагина и редактирование конфигурации

Далее необходимо открыть файл с конфигурацией вашей системы.

Здесь вам потребуется сам config.json, который вы можете найти в папке с плагином или скачать его отсюда. Качаем config-sample.json, переименовываем его в config.json и кладем его сюда /home/pi/.homebridge.

Теперь же мы можем с уверенностью перейти к редактированию. В данном случае можно воспользоваться встроенным редактором и править конфиг прямо на малинке или же скопировать текущий config себе на рабочий компьютер, внести правки там и после чего перенести его по sftp протоколу в соответствующую папку (для примера можно воспользоваться FileZilla).
И так, если же вы выбрали первый путь, то вбиваем следующую команду

nano ~/.homebridge/config.json

Примерное содержимое, где нас интересует платформа MiAqaraPlatform

Для версии 0.6 и позднее

{
    "platforms": [{
        "platform": "MiAqaraPlatform",
        "gateways": {
            "sid": "password"
        }
    }]
}

Для версии 0.5.3 и ранее:

"platforms": [{
		"platform": "MiAqaraPlatform",
		"sid": ["xxxxxxxxxxxx"],
		"password": ["YYYYYYYYYYYYYYY"]

Для версии 0.6 и позднее, пример

MAC адрес (sid) в config.json необходимо заполнять строчными (маленькими) буквами, иначе не будет работать управление, а будет только видно состояние устройств. Пароль (password) необходимо переписать заглавными (большими) буквами.

xxxxxxxxxxxx и YYYYYYYYYYYYYYY необходимо переписать из приложения MiHome. Для этого необходимо включить режим разработчика для шлюза.

Для этого:

1. Открываем приложение

Открываем приложение

2. Заходим в добавленный ранее вами шлюз xiaomi

3. Нажимаем «…» в правом верхнем углу


4.Жмем на About


5. Несколько раз жмем на экран в нижней части под пунктом “Gameplay tutotial” до появления дополнительных пунктов на китайском языке

6. Заходим в 3й пункт снизу

7. Включаем опцию вверху и переписываем пароль — это и есть YYYYYYYYYYYYYYY

8. Теперь заходмм во 2й пункт снизу
Это ваш SID xxxxxxxxxxxx — переписываем без двоеточий маленькими буквами (например 34ce0088a13b)

В итоге полное содержимое файла config.json должно выглядеть так:

Для версии 0.6 и позднее

{
	"bridge": {
		"name": "HomeBridge",
		"pin": "031-45-154",
		"username": "97:99:77:E3:CE:28"
	},
	"platforms": [{
		"platform": "MiAqaraPlatform",
                "gateways": {
                    "34ce008d44b2": "F75FD945D6264B8F"
         }]
}

Для версии 0.5.3 и ранее:

{
	"bridge": {
		"name": "HomeVera",
		"pin": "031-45-154",
		"username": "97:99:77:E3:CE:28"
	},
	"platforms": [{
		"platform": "MiAqaraPlatform",
		"sid": ["34ce008d44b2"],
		"password": ["F75FD945D6264B8F"]
	}]
}

После этого вы можете задать дефолтные названия для ваших подключенных устройств или же просто сохранить конфиг и залить его к вам на Raspberry Pi.

3. Финальная настройка и проверка

Чтобы задать дефолтные значения достаточно найти необходимые устройства в списке на странице плагина и добавить их по типу

        {
            "platform": "MiAqaraPlatform",
            "gateways": {
                "34ce008d44b2": "F75FD945D6264B8F"
            },
            "defaultValue": {
                "34ce008d44b2": {
                    "Gateway_Lightbulb": {
                        "name": "Свет шлюза",
                        "serviceType": "Lightbulb"
                    },
                    "Gateway_LightSensor": {
                        "name": "Свет"
                    },
                    "Gateway_Switch_JoinPermission": {
                        "name": "Разрешение на подключение",
                        "disable": true
                    }
                },
                "158d000122b22": {
                    "PlugBase_Outlet_b442": {
                        "name": "Розетка"
                    }
                },
                "158d0001ddb013": {
                    "TemperatureAndHumiditySensor_TemperatureSensor": {
                        "name": "Температура"
                    },
                    "TemperatureAndHumiditySensor_HumiditySensor": {
                        "name": "Влажность"
                    }
                }
            }
        },

После чего перезапустить homebridge (используем сервис pm из прошлых инструкций)

pm2 restart 0

После перезапуска можем открыть лог и убедиться, что плагин запустился и обнаружил устройства.

pm2 logs 0

В итоге в логе должны появиться примерно такие строки

Также откроем наше приложение «Дом» на iOS и убедимся, что все наши устройства автоматически подключились в HomeKit и доступны для управления.

Author

Наш главный гайд-мастер. Инструкции и обзоры его конёк. Иногда перебарщивает с личным мнением.