iPhones.ru

Как подключить любые гаджеты в умный дом Apple HomeKit через Raspberry Pi

Артём Суровцев avatar | 29
FavoriteLoading В закладки
Как подключить любые гаджеты в умный дом Apple HomeKit через Raspberry Pi

Продолжаем строить умный дом вместе.

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

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

Как настроить SSH на Raspberry Pi

SSH — это сетевой протокол для удаленного управления системой. С его помощью больше не потребуется подключать наш хаб к монитору или телевизору для внесения изменений или конфигурации ПО.

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

1. На Raspberry Pi необходимо перейти в консоль и ввести команду:

sudo raspi-config

2. В открывшемся меню конфигурации следует перейти в раздел Advanced Options.

3. Находим пункт SSH и активируем его.

4. Проверить успешную активацию протокола можно следующей командой в терминале:

sudo service ssh status

5. Для доступа по SSH используются такие учетные данные:

логин: pi
пароль: raspberry

6. В настройках Raspberry можно изменить эти данные.

Самый простой способ включения SSH:

Можно вообще обойтись без клавиатуры и монитора для Raspberry, но к сети её нужно подключить через кабель, а не по Wi-Fi.

1. На карте памяти с записанным образом для Raspberry Pi находим раздел Boot.

2. Создаем в ней файл ssh без расширения.

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

Спасибо читателю jBo!

Как подключиться по SSH

После того, как SSH подключение настроено, к «малинке» можно подключаться с других устройств внутри локальной сети. Монитор и клавиатура для Rasperry больше не потребуется.

Нужно лишь узнать IP-адрес устройства в сети. Сделать это можно из графического интерфейса микрокомпьютера, через приложение своего роутера, его веб-интерфейс или любым другим доступным способом.

Для получения доступа по SSH на Windows делаем следующее:

1. Устанавливаем приложение PuTTY.

2. В приложении на вкладке Session указываем IP-адрес Raspberry и порт 22.

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

Для получения доступа по SSH на macOS делаем следующее:

1. Запускаем приложение Терминал.

2. Вводим команду (используя IP-адрес своей «малинки»):

ssh [email protected]

3. Подтверждаем желание подключиться и вводим установленный пароль.

Для получения доступа по SSH на iOS делаем следующее:

1. Устанавливаем приложение Termius – SSH client из App Store.

2. Создаем новое подключение, указывая IP-адрес, порт, логин и пароль.

3. Подключаемся по настроенному соединению.

Теперь можно удаленно посылать команды «малинке», перезагружать её и менять файл конфигурации HomeBridge.

Запоминаем нужные команды:

sudo reboot – для перезагрузки Raspberry (SSH-соединение будет прервано)
sudo -n systemctl restart homebridge – для перезапуска сервера HomeBridge
nano ~/.homebridge/config.json – для открытия файла конфигурации HomeBridge

Как подключить умные устройства

Для работы умного девайса с HomeKit через прослойку в виде HomeBridge требуется две вещи:

  • установленный плагин
  • данные об устройстве в файле конфигурации

Искать плагин можно самостоятельно. На просторах GitHub можно найти файлы практически для любого умного устройства.

Просто впишите в Google: mi air purifier 2 homebridge (для очистителя воздуха Xiaomi Mi Air Purifier 2) и по одной из первых ссылок найдете нужный плагин.

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

На специальной вкладке Плагины можно осуществить поиск нужного дополнения, аналогично поиску в Google. Вписываем название девайса (с китайскими гаджетами от всевозможных суб-брендов придется повозиться) и выбираем один из предложенных плагинов.

Установка нужного плагина

На GitHub странице плагина или на другом сайте, где было найдено дополнение, первым делом описывается процесс установки.

Для установки непосредственно на Raspberry Pi или через SSH используется приведенная в описании плагина команда такого вида:

sudo npm install -g homebridge-mi-acpartner

Для установки через веб-интерфейс достаточно нажать кнопку Install возле найденного в поиске дополнения.

Изменение файла конфигурации

Файл конфигурации тоже может быть изменен на самом устройстве с сервисом HomeBridge, через SSH или через веб-интерфейс. В первом случае редактируем файл config.json командой nano ~/.homebridge/config.json, а во втором переходим в визуальный редактор на вкладке веб-интерфейс.

На странице с описанием плагина находим пример конфигурации:

"platforms": [{
"platform": "XiaoMiAcPartner",
"devices":{
"192.168.31.120":"your_token_here"
}]

Нужно интегрировать данный код в уже имеющуюся конфигурацию.

В большинстве случаев плагины интегрируются в разделы “platforms” или “accessories”. Особо сложные дополнения могут иметь части кода в обоих разделах.

Тем, кто сталкивался с программированием, не составит труда корректно внести нужные части кода, другим рекомендуем внимательно методом проб и ошибок научиться редактировать файл конфигурации. Без этого все равно ничего не получится.

Заполнение параметров устройства

Обратите внимание, что в большинстве случаев требуется указать два параметра подключаемого девайса: IP-адрес и токен. С поиском адреса в домашней сети проблем не возникнет (ищите через приложение роутера или его веб-интерфейс), а вот с токеном не так все просто.

Уникальный идентификатор умных устройств можно получить разными способами. Самый простой – воспользоваться модифицированным приложением Mi Home на Android. Если смартфона или планшета с нужной ОС на руках нет – устанавливаем эмулятор Android по инструкции.

1. Устанавливаем на Android модифицированное приложение Mi Home.

2. Авторизуемся в своей учетной записи с указанием правильного региона (в большинстве случаев это Материковый Китай).

3. Находим нужный девайс и в разделе Настройки – Общие параметры – Информация о сети видим поле с нужным нам токеном.

Здесь же можно найти IP-адрес.

Для устройств других производителей придется использовать другие способы добычи токенов.

Теперь можно заполнить данные девайса в конфигурации, сохранить файл и перезагрузить HomeBridge.

Если все было сделано верно, устройство появится в приложении Дом на iPhone и им можно будет управлять, как нативным девайсом с поддержкой HomeKit.

Проблемы и их решение

Если фай конфигурации был изменен с ошибками, то HomeBridge повторно не запустится. Об этом вы поймете по зависшему веб-интерфейсу или по «отвалившимся» устройствам в приложении Дом.

Не стоит паниковать! Порядок действий следующий:

1. Подключаемся к Raspberry Pi по SSH.

2. Открываем файл config.json для редактирования.

3. Пытаемся найти ошибку или просто удаляем последний внесенный блок кода.

4. Сохраняем файл (Comman+X при работе в терминале или по SSH).

5. Перезапускаем HomeBridge командой: sudo -n systemctl restart homebridge.

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

1 Звезд2 Звезды3 Звезды4 Звезды5 Звезд (26 голосов, общий рейтинг: 4.12 из 5)
undefined
iPhones.ru
Разложим все по полочкам.
Здесь можно оставить комментарий! Для этого авторизуйтесь или зарегистрируйтесь на iPhones.ru.

29 комментариев

Форум →
  1. BorMor avatar
    BorMor 30 марта 2019
    3

    Мммм умный дом, розетка для чайника да пара лампочек :)

    Войди на сайт, чтобы ответить
    Ответить
  2. StrongTequila avatar
    StrongTequila 30 марта 2019
    3

    предлагаю переместить задротский Raspberry сразу в ёмкость которая часто у всех под раковиной на кухне

    Артём Суровцев avatar
    Артём Суровцев30 марта 2019
    5

    @StrongTequila, в серверную?

    borsh avatar
    borsh30 марта 2019
    1

    @Артём Суровцев, у тебя серверная под раковиной?

    Войди на сайт, чтобы ответить
    Ответить
  3. Menzoberonzan avatar
    Menzoberonzan 30 марта 2019
    13

    Где нажать чтобы таких статей на Айфонсе стало больше?

    Артём Суровцев avatar
    Артём Суровцев30 марта 2019
    7

    @Menzoberonzan, Ваш комментарий – уже хороший стимул развивать тему. Спасибо!

    Войди на сайт, чтобы ответить
    Ответить
  4. blackhk avatar
    blackhk 30 марта 2019
    6

    Поддерживаю! Больше таких статей. Я когда разбирался с малинкой и ее pin-ами впервые собрал простую микросхему с ик излучателем датчиком влажности температуры для управления кондееями в доме. Понятно что есть уже куча устройств в коробке но эти устройства никогда не расскажу тебе как они работают, что надо ставить сопротивление, транзистор, как импульсами тока на пине малинки союздается ик излучение которые считывают тв кондеи и прочие. Для радиолюбителей ардуинка и малинка огонь.

    Войди на сайт, чтобы ответить
    Ответить
  5. iknyazhev avatar
    iknyazhev 30 марта 2019
    0

    Зал это в смысле большая комната? (%

    Артём Суровцев avatar
    Артём Суровцев30 марта 2019
    0

    @iknyazhev, гостиная)

    Войди на сайт, чтобы ответить
    Ответить
  6. i.v.kuznetsov avatar
    i.v.kuznetsov 30 марта 2019
    0

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

    IRT avatar
    IRT30 марта 2019
    0

    @i.v.kuznetsov, у меня homebridge работает месяцами стабильно. Запускаю через forever.

    Артём Суровцев avatar
    Артём Суровцев30 марта 2019
    0

    @i.v.kuznetsov, просто разберитесь, в чем проблема, откидывайте плагины по одному и тестируйте. Система на самом деле очень стабильная и проще найти причину сбоев, чем искать костыли для автоматического перезапуска

    i.v.kuznetsov avatar
    i.v.kuznetsov30 марта 2019
    0

    @Артём Суровцев, Да я понимаю что проблемы в плагинах. Сам хоумбридж конечно стабилен, но без плагинов в нем нет смысла. Задолбаешься каждый из них разбирать и допиливать до рабочего состояния. Если плагин гдето внутри крешит раз в пару дней проще сделать так чтобы хоумбридж перезапускался сам, чем искать где там что. Последний раз ставил себе 3 реле sonoff для освещения и вентилятора, и плагин написан так, что опрашивает синхронно все реле. И если вдруг одно реле не под питанием то вешается весь homebridge до тех пор пока не будет таймаут). И подобные косяки в каждом плагине есть. Они как бы работают в стерильных условиях, но если вдруг что не по плану, то все ломается.

    Soren Vakarian avatar
    Soren Vakarian30 марта 2019
    1

    @i.v.kuznetsov, полагаю, запустить его не как сервис, а как демон через systemctl.

    i.v.kuznetsov avatar
    i.v.kuznetsov30 марта 2019
    0

    @Soren Vakarian, Спасибо погуглю)

    Войди на сайт, чтобы ответить
    Ответить
  7. jBo avatar
    jBo 30 марта 2019
    1

    В прошлой статье писал, и сейчас напишу.
    Самый простой способ получить включить SSH на малине, без монитора/клавы:
    При записи образа на карту microSD на ней создаётся раздел Boot.
    Создаём в этом разделе файл с именем ssh без расширения. Все!
    Просто втыкаем питание и «витуху». Находим малину в сети и подключаемся к ней по SSH.
    Артем, добавьте в статю! Это самый простой способ!

    Артём Суровцев avatar
    Артём Суровцев30 марта 2019
    0

    @jBo, Спасибо! Добавил. Слышал и ранее про данный способ, но не пользовался из-за необходимости тянуть кабель к малине.

    jBo avatar
    jBo30 марта 2019
    0

    @Артём Суровцев, ну так подключить достаточно один раз, из консоли настроить WiFi. А образ можно поставить без GUI, что лучше для малины, если использовать ее как шлюз.

    jBo avatar
    jBo30 марта 2019
    0

    @Артём Суровцев, и ещё исправьте. Не ПАПКА boot, а раздел. После записи образа на карту этот раздел – единственный, который определяется системой.

    Войди на сайт, чтобы ответить
    Ответить
  8. Bubu52 avatar
    Bubu52 30 марта 2019
    0

    “к сети её нужно подключить через кабель, а не по Wi-Fi.” – вот так не понимай – у меня дома тока все через вайфай

    Войди на сайт, чтобы ответить
    Ответить
  9. lexx_ylt2 avatar
    lexx_ylt2 30 марта 2019
    0

    Познавательная статья. Но только скажите – пара лампочек и датчиков стоят этой ебли? Ну нафиг. :)

    Войди на сайт, чтобы ответить
    Ответить
  10. Konstanty Martyniuk avatar
    Konstanty Martyniuk 30 марта 2019
    0

    Годнота!
    Спасибо за интересный материал.

    Войди на сайт, чтобы ответить
    Ответить
  11. boshlin avatar
    boshlin 30 марта 2019
    0

    А ни у кого не было проблемы с третьей версией малинки, которая с вай фаем встроенным? У меня перестал работать на ней вай фай. Уже несколько раз перезаписывал убунту и всё никак. Просто перестал работать

    Артём Суровцев avatar
    Артём Суровцев30 марта 2019
    0

    @boshlin, попробуйте другую SD карту. Часто на негодных картах система криво работает. Если не поможет, тогда пробуйте другой образ поставить.

    Войди на сайт, чтобы ответить
    Ответить
  12. rubbersoul777 avatar
    rubbersoul777 30 марта 2019
    0

    Про SprutStick напишите. Это очень удобно. Без всяких gw от xiaomi. У само rb3 стоит с таким свистком. Все отлично работает. Спасибо Спруту.

    Войди на сайт, чтобы ответить
    Ответить
  13. Dobriys avatar
    Dobriys 31 марта 2019
    0

    Давайте больше таких статей!
    Расскажите людям про Home Assistant.

    Войди на сайт, чтобы ответить
    Ответить
  14. sergey@vanichkin.ru avatar
    [email protected] 31 марта 2019
    0

    Подскажите, а можно ли в этот хам воткнуть uzb stick от z-wave что бы получился полноценный z-wave контроллер-транслятор в HomeKit?

    Войди на сайт, чтобы ответить
    Ответить
  15. skrizl avatar
    skrizl 1 апреля 2019
    0

    SSH в Windows 10 работает в Power Shell

    Войди на сайт, чтобы ответить
    Ответить
  16. Валерий Романов avatar
    Валерий Романов 20 января 2022
    0

    Подскажите, можно как-то подключить кровать с поднимающимся изголовьем к HomeKit – есть ик-пульт и есть приложение для управления поднимающимся изголовьем? У пульта 6 кнопок
    Занимаетесь ли вы платно такими подключениями и настройками? Есть еще несколько задач…

    Войди на сайт, чтобы ответить
    Ответить
Помни о правилах — если начал оффтопить, то не удивляйся потом.

Нашли орфографическую ошибку в новости?

Выделите ее мышью и нажмите Ctrl+Enter.