Homebridge для windows 10

Как подключить умные гаджеты Xiaomi с Apple HomeKit. Простое руководство

Система управления умным домом HomeKit развивается не так быстро, как хотелось бы. На данный момент найти поддерживающий её гаджеты сложновато, а ценник на них в разы дороже проверенных устройств с AliExpress.

Ходят слухи, что Xiaomi в ближайшем будущем предоставит возможность подключать свои устройства к HomeKit. Пока неясно, как это будет реализовано, насколько просто будет происходить подключение, какие хабы и шлюзы для этого понадобятся.

Прямо сейчас есть относительно несложный способ подружить гаджеты Xiaomi (и не только) с системой HomeKit и приложением Дом на iOS. Об этом способе и поговорим ниже.

HomeBridge – это специальная служба, позволяющая «подружить» всевозможные гаджеты с HomeKit, которые изначально не поддерживают систему умного дома от Apple.

Сервис HomeBridge должен быть постоянно запущен на любом компьютере в домашней сети, чтобы передавать сигналы с техники Apple на неподдерживаемую умную электронику.

Если дома есть постоянно работающий компьютер или медиасервер, можно развернуть HomeBridge на нем, если же такого устройства нет, можно обзавестись простой «малинкой» (одноплатным компьютером Raspberry Pi) и запустить сервис на нем.

В данном материале я расскажу, как организовать подобный сервис на macOS или Windows и познакомлю с общими принципами подключения гаджетов Xiaomi к нему.

Как настроить HomeBridge на macOS

1. Скачиваем и устанавливаем необходимые для работы сервиса компоненты:

2. Устанавливаем HomeBrigde при помощи команды в терминале:

sudo npm install -g —unsafe-perm homebridge

3. Для запуска HomeBridge используем команду:

Как настроить HomeBridge на Windows

Рекомендуем производить установку и настройку HomeBridge в той учетной записи, в которой в дальнейшем и будет работать сервис. Некоторые компоненты будут установлены таким образом, что доступа к ним может не быть у других пользователей Windows.

1. Устанавливаем необходимые для работы сервиса компоненты:

  • Bonjour SDK для Windows (потребуется подтвердить бесплатное участие в программе Apple Developer);
  • OpenSSL 64-bit;
  • Nodejs для Windows (на последнем шаге следует выбрать место сохранения DLL OpenSSL. Указываем «Каталог двоичных файлов OpenSSL»).

2. Запускаем командную строку от имени админимтратора (именно командную строку cmd, а не облегченный аналог Windows PowerShell).

3. Вводим команду для загрузки и установки необходимых модулей:

4. Производим установку HomeBridge командой:

5. После окончания установки запускаем Homebridge в командной строке:

Что делать дальше

Теперь для работы сервиса нужно повторять последний пункт после перезагрузки компьютера и держать запущенной командную строку/терминал с работающим HomeBridge.

Можно настроить автоматический запуск сервиса любым доступным способом.

После того, как HomeBridge настроен и запущен, следует перейти к настройке сервиса и добавлению дополнительных модулей.

В теории большую часть умных гаджетов можно подружить с HomeKit при помощи HomeBridge. Нужно лишь загрузить и настроить соответствующие плагины.

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

Файл с конфигурацией HomeBridge config.json должен располагаться по пути:

%userprofile%\.homebridge для Windows

/usr/local/lib/node_modules/homebridge для macOS

Его придется создать вручную при помощи любого текстового редактора и добавлять все части из примеров с GitHub для запуска соответствующих плагинов и дополнений.

Читайте также:  Прикольные штуки для windows

Сам HomeBridge будет восприниматься HomeKit как отдельный независимый блок. Для его подключения потребуется добавить устройство в приложении Дом на iOS, отсканировав выводимый в командной строке QR-код либо введя отображаемый там же номер.

Когда девайс появится в приложении Дом, установку и настройку HomeBridge можно считать завершенной.

Наконец-то, подключаем Xiaomi к HomeKit

Если вы проделали описанное выше, дальше проблем практически не будет.

Установка различных гаджетов Xiaomi происходит по одному и тому же алгоритму:

1. Находим страницу с плагином для нужного устройства на GitHub.

Вот, например, плагин для умной розетки Xiaomi.

2. Устанавливаем плагин через командную строку или терминал.

В нашем примере следует использовать команду:

3. Вносим соответствующий код в файл конфигурации.

В приведенном примере плагин поддерживает сразу несколько девайсов. Умную розетку разных поколений и несколько сетевых фильтров.

Для нашей розетки нужен такой кусок кода конфигурации:

«platforms»: [
<
«platform»: «MiOutletPlatform»,
«deviceCfgs»: [
<
«type»: «MiPlugBase»,
«ip»: «192.168.31.149»,
«token»: «XXXXXXXXXXXXXXXXXXXXXXX»,
«outletName»: «Розетка Xiaomi»,
«outletDisable»: false,
«temperatureName»: «Температура розетки»,
«temperatureDisable»: true,
«switchLEDName»: «Диод на розетке»,
«switchLEDDisable»: true
>
]
]

Определить IP-адрес розетки будет несложно, в этом поможет приложение или веб-интерфейс используемого дома роутера. Как видите, через HomeBridge получится даже отдельно управлять светящимся диодом на розетке и определять температуру внутри устройства.

При необходимости переключатели добавляются и убираются из HomeKit изменением параметров true/false.

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

Подробно останавливаться на этом не буду, для получения токена существует множество способов, в зависимости от наличия тех или иных девайсов. Например, его можно запросто получить через модифицированное приложение Mi Home для Android, а, если нужного смартфона под рукой нет, всегда придет на помощь виртуальная машина.

Вносить токены требуется не для всех устройств Xiaomi, например, среди моих девайсов такое пришлось проделать лишь для умной розетки. Светильник, настольная лампа и ночник подключаются без этого.

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

Как установить веб-интерфейс

Управление через командную строку понравится не всем. Намного удобнее добавить простой, но наглядный веб-интерфейс и производить все манипуляции через него.

«Веб-морда» позволяет отслеживать статистику и журнал событий HomeBridge, управлять подключенным устройствами прямо из браузера, добавлять или удалять плагины, менять конфигурацию и перезагружать сервис. Есть возможность создать несколько учетных записей для доступа к веб-интерфейсу.

Для установки делаем следующее:

Это далеко не единственный вариант добавления веб-интерфейса для HomeBridge. Можете остановиться на нем или поискать подобные от других разработчиков. Возможности в большинстве случаев будут идентичными, отличается лишь внешний вид модуля.

2. Запускаем командную строку или терминал и используем команду для установки модуля:

npm install -g —unsafe-perm homebridge-config-ui-x

3. В файл конфигурации HomeBridge следует добавить такой код:

4. После успешной установки перезапускаем HomeBridge и пробуем перейти на страницу в браузере http://localhost:8080.

Для авторизации используем логин и пароль «admin». В дальнейшем рекомендуем сменить учетные данные.

5. Чтобы в веб-интерфейсе отображался раздел для управления подключенными гаджетами, следует запускать сервис с параметром «-I».

Читайте также:  При запуске windows пропадает изображение

Так команда для запуска HomeBridge будет выглядеть следующим образом:

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

Что в итоге

Теперь вы знаете, как подключить практически любой умный гаджет к HomeKit и управлять им с iPhone или iPad. Можно даже привлекать ассистент Siri.

Все это добавляет весомое преимущество гаджетам Xiaomi по сравнению с HomeKit-ready девайсами. Так определить, какая розетка лучше, будет сложнее.

Сервис HomeBridge может работать на постоянно запущенном компьютере, а в идеале для него приобретается миниатюрный Raspberry PI, который отлично подходит для подобных целей. Если интересно, расскажу подробно о том, как настраивал свою «малинку» для работы с HomeKit.

Homebridge для windows 10

Homebridge is a lightweight NodeJS server you can run on your home network that emulates the iOS HomeKit API. 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.

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:

  • Siri, unlock the back door. [pictured to the right]
  • Siri, open the garage door.
  • Siri, turn on the coffee maker.
  • Siri, turn on the living room lights.
  • Siri, good morning!

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.

The Homebridge Wiki contains step-by-step instruction on how to install Node.js and setup Homebridge and the Homebridge UI as a service so it automatically starts on boot:

On other platforms, ensure you have Node.js v10.17.0 or later installed and run:

Then start Homebridge in your terminal window by running:

Plugins are Node.js modules published through NPM and tagged with the keyword homebridge-plugin . They must have a name with the prefix homebridge- , like homebridge-mysmartlock.

Plugins can publish Accessories and/or Platforms. Accessories are individual devices, like a smart switch or a garage door. Platforms act like a single device but can expose a set of devices, like a house full of smart lightbulbs.

You install Plugins using the Homebridge UI, or the same way you installed Homebridge — as a global NPM module. For example:

You can explore all available plugins at the NPM website by searching for the keyword homebridge-plugin .

Adding Homebridge to iOS

  1. Open the Home app on your device.
  2. Tap the Home tab, then tap .
  3. Tap Add Accessory, then scan the QR code shown in the Homebridge UI or your Homebridge logs.

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.

Читайте также:  Remote access windows with mac

Interacting with your Devices

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».

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 install of Homebridge can discover it:

You can undo this using the npm unlink command.

Then start Homebridge in debug mode:

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:

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.

Home App Says Accessory Already Added

My iOS App Can’t Find Homebridge

Try the following:

  1. Swap between the Bonjour HAP and Ciao mDNS Advertiser options. See the wiki for more details.
  2. iOS DNS cache has gone stale or gotten misconfigured. To fix this, turn airplane mode on and back off to flush the DNS cache.
  • One bridge can only expose 150 accessories due to a HomeKit limit. You can however run your plugins as a Child Bridge or run Multiple Homebridge Instances to get around this limitation.
  • Once an accessory has been added to the Home app, changing its name via Homebridge won’t be automatically reflected in iOS. You must change it via the Home app as well.

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 was originally created by Nick Farina.

The original HomeKit API work was done by Khaos Tian in his HAP-NodeJS project.

Оцените статью