Home Assistant, статья 3 (добавляем устройства)

25 августа 2018, 10:14

Сегодня мы разберемся как добавлять новые устройства в Home Asisstant (далее HA) на базе того, что есть у меня. Для добавления нового устройства определенной группы необходимо в нашем конфиге внести соответствующий раздел. При этом практически никогда вам не надо будет добавлять плагины для этого! В редких случаях, при использовании кастом компонентов необходимо скачать нужные файлы для их работы и поместить в соответствующие папки, но об этом чуть позже. Расскажу про добавление базовых вещей. По сути тут собраны все плагины устройств и сервисов, которые поддерживаются HA, можно поискать свой конкретный случай и посмотреть, есть ли поддержка девайса.


Xiaomi шлюз и Zigbee девайсы, подключенные к нему.

Если вы по моей предыдущей статье оставили раздел discovery: в конфиге, то все поддерживаемые устройства у вас автоматически появились и в HA:

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

!!!ВНИМАНИЕ!!!

Так как мы приступили к серьезной правке конфига, необходимо помнить, что HA очень чувствителен к лишним пробелам, следите за ними!


Что надо сделать для этого? Открываем наш конфиг на малинке:

cd /home/homeassistant/.homeassistant/
sudo nano configuration.yaml

После этого прописываем в конце нашего конфига следующее:

xiaomi_aqara:
  discovery_retry: 5
  gateways:
    - key: your_key_gateway

Ключ (он же пароль, не токен, не перепутайте) для гейтвея получаем например как тут. После сохранения конфига, можно проверить его на правильность в веб интерфейсе и перезагрузить HA. При желании можно отредактировать названия датчиков или кнопок нажатием на них, а после в новом окошке на шестеренку:

Samsung smart TV (Tizen)

У меня телевизор самсунг 2017го года на тайзоне, для его добавления необходимо добавить в конфиг следующее:

media_player:
  - platform: samsungtv
    host: 192.168.1.X
    port: 8001
    mac: mac_your_tv
    name: SamsungTV

Причем не важно как подключен телевизор, по кабелю или wifi к роутеру - команды на вкл и выкл будут отрабатывать в любом случае. Если у вас телевизор 2015го года или ранее, параметры port и mac можно не указывать, должно работать и так.


Xiaomi Philips Light

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

light:
  - platform: xiaomi_miio
    name: living_room
    host: 192.168.1.x
    token: your_token
    model: philips.light.bulb

Если необходимо добавить несколько устройств, делаем так:

light:
  - platform: xiaomi_miio
    name: living_room
    host: 192.168.1.x
    token: your_token_1
    model: philips.light.bulb
  - platform: xiaomi_miio
    name: bathroom
    host: 192.168.1.y
    token: your_token_2
    model: philips.light.bulb

Broadlink on/off устройства

Если у нас есть устройства, которые можно включить или выключить через ИК пульт и Broadlink rm mini или pro, их так же можно добавить. Для начала запустим сам плагин, для этого нужно знать IP адрес броадлинка и его мак адрес. Добавляем в конфиг следующие строчки:

switch:
  - platform: broadlink
    host: 192.168.1.x
    mac: 'your_mac_broadlink'
    timeout: 15

После этого проверяем конфиг на правильность и перезагружаем HA. Теперь можно добавлять наши устройства исправляемые по ИК. Коды сканированные ранее через плагин для Homebridge не подойдут, но их можно переделать в нужный формат используя конвертер HEX in base64 (говорим спасибо @samsonovs). Если же ИК кодов у вас нет, можно их получить используя HA. Как это сделать? Открываем веб морду HA и переходим по первой кнопке в разделе "Инструменты разработчика", в первом поле выбираем службу switch.broadlink_learn_command_*** и жмем кнопку "Call service":

После этого направляем пульт на broadlink и жмем на кнопку, код которой нам надо считать. Если затем перейти на главную страницу веб морды HA - там появится новое окошко со считанным кодом. Копируем его и сохраняем куда нибудь. Для считывания следующего кода процедуру необходимо повторить. Как только все необходимые коды будут прочитаны, возвращаемся к редактированию конфига и добавляем наш девайс. Должно получиться так:

switch:
  - platform: broadlink
    host: 192.168.1.28
    mac: '78:0f:77:28:00:9e'
    timeout: 15
    switches:
      name_your_device:
        friendly_name: "Ресивер"
        command_on: 'code1'
        command_off: 'code2'

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

homeassistant:
  # Name of the location where Home Assistant is running
  name: Home
  # Location required to calculate the time the sun rises and sets
  latitude: 0
  longitude: 0
  # Impacts weather/sunrise data (altitude above sea level in meters)
  elevation: 0
  # metric for Metric, imperial for Imperial
  unit_system: metric
  # Pick yours from here: http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
  time_zone: Europe/Volgograd
  # Customization file
  customize: !include customize.yaml

# Show links to resources in log and frontend
#introduction:

# Enables the frontend
frontend:

# Enables configuration UI
config:

http:
  # Secrets are defined in the file secrets.yaml
  api_password: your_key
  # Uncomment this if you are using SSL/TLS, running in Docker container, etc.
  # base_url: example.duckdns.org:8123

# Checks for available updates
# Note: This component will send some information about your system to
# the developers to assist with development of Home Assistant.
# For more information, please see:
# https://home-assistant.io/blog/2016/10/25/explaining-the-updater/
updater:
  # Optional, allows Home Assistant developers to focus on popular components.
  # include_used_components: true

# Discover some devices automatically
discovery:

# Allows you to issue voice commands from the frontend in enabled browsers
conversation:

# Enables support for tracking state changes over time
history:

# View all events in a logbook
logbook:

# Enables a map showing the location of tracked devices
map:

# Track the sun
sun:

# Weather prediction
sensor:
  - platform: yr

# Text to speech
tts:
  - platform: google

# Cloud
cloud:

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml

media_player:
  - platform: samsungtv
    host: 192.168.1.x
    port: 8001
    mac: tv_mac
    name: SamsungTV

xiaomi_aqara:
  discovery_retry: 5
  gateways:
    - key: your_key

light:
  - platform: xiaomi_miio
    name: living_room
    host: 192.168.1.x
    token: your_token1
    model: philips.light.bulb
  - platform: xiaomi_miio
    name: bathroom
    host: 192.168.1.y
    token: your_token2
    model: philips.light.bulb

switch:
  - platform: broadlink
    host: 192.168.1.x
    mac: 'mac_your_broadlink'
    timeout: 15
    switches:
      marantz_receiver:
        friendly_name: "Ресивер"
        command_on: 'code_1'
        command_off: 'code_2'

Переходим на главную страницу и видим наши устройства:

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


Все новости мира умных домов - t.me/SprutAI_News

Остались вопросы? Мы в Telegram - t.me/soprut

  1. Олег Челбаев (sprut)
    Олег Челбаев (sprut) 10 месяцев назад

    Я думаю многим будет полезна данная статья и естественно жду продолжения;)

  2. Gülahmet Müslim (axyskus)
    Gülahmet Müslim (axyskus) 10 месяцев назад

    всё чётко расписано. огромное спасибо 👍👍👍

  3. Алексей Новосельцев (novo)
    Алексей Новосельцев (novo) 10 месяцев назад

    Пошаговые статьи супер!

    Только не хватает отсылки к статьям как узнать mac и ip адрес, то что нужно фиксировать адреса и как.

    В конфигах ip 192.168.1.x многие по неопытности так и оставят или поменяют «х» на любую цифру, нужна сноски в таких местах, чтобы не застрять саму статью.

    Деда, а как при просмотре изображения увеличивать его на смартфоне?

  4. Алексей Новосельцев (novo)
    Алексей Новосельцев (novo) 10 месяцев назад

    У меня 2 телевизора появились, один автоматически при включении ТВ, а второй прописан в конфигурации. При выключении ТВ, первый (автоматический) пропадает

    Причём управляется телек только на включение, на выключение и остальные команды телек не реагирует

    2000x2000x_image.png?1535242366
    • Алексей Новосельцев (novo)
      Алексей Новосельцев (novo) 10 месяцев назад

      Нашёл свою ошибку, неправильно был прописан адрес в конфиге. Теперь один ТВ в HA и он включается и выключается. На изменение громкости после каждого включения ТВ требует разрешение для HA, этого можно избежать?

      • Александр Жабунин (OXOTH1K)
        Александр Жабунин (OXOTH1K) 10 месяцев назад

        Оба тв требуют разрешения? Попробуй оба добавить в конфиг. Мой 6й серии не запрашивает постоянно.

  5. Антон Самсонов (samsonovs)
    Антон Самсонов (samsonovs) 10 месяцев назад

    можно дополнить к статье:

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

     если у вас есть код в homebridg можно использовать конвертер HEX in base64


  6. Вячеслав Фетисов (Ziracul)
    Вячеслав Фетисов (Ziracul) 10 месяцев назад

    Спасибо за статью, не хватает одной инфо как объединить лампы Philips Xiaomi в группу.

  7. (GogaPit)
    (GogaPit) 9 месяцев назад

    Серия статей полезная и доступная для понимания. Спасибо. А автоматизацию ХА в среде Node-red не хотите показать? И графическое программирование, и к автоматизации на Homey близко...

  8. Александр Шотиди (Grek)
    Александр Шотиди (Grek) 9 месяцев назад

    Все по инструкции делал но не получается подключить МИ Хаб , выдает ошибку конфигурации  (

  9. (aleksc1976)
    (aleksc1976) отредактировано 4 месяца назад

    Статья дезинформирует людей и тратит их время.... автору необходимо обязательно исправить статью в части подключения aqara hub - его подключить невозможно с помощью этой статьи. Для подключения aqara хаба (именно aqara) нужен не токен, а так называемый ключ - - параметр - your_key_gateway. Получить его по всем инструкциям не представляется возможным.... (((

  10. (boxer530)
    (boxer530) месяц назад

    привет. я установил готовый образ. у меня нет в списке служб switchbroadlink, есть только broadlink_send и broadlinl-lurn. как можно установить switchbroadlink ? 

  11. (vortexiq)
    (vortexiq) 10 дней назад

    Использую HA 0.95.4 сопрягаю выключатели livolo RF через broadlink RM Pro

    1. Прописал в конфиге broadlink

    2. Через broadlink.learn получил ID нажатия радио-кнопки. На смартфоне в приложении IHC вызывал обучение кнопки и нажимал CALL SERVICE

    1000x_image.png?15629283191000x_image.png?1562928355

    3. Прописал ID в конфиге пробовал добавлять еще один знак равно в конце. Эффект тот же

    1000x_image.png?1562928405

     

    Во вкладке обзор не появились, только если нажать три точки и выбрать там пункт что-то наподобие "не размещенные устройства". Но если нажимать вкл\вкл ничего не происходи, на broadlink лампочка светодиода не загорается и действий с выключателем не происходит. Подскажите куда копать?

К списку статей

Похожие статьи

15 ноября 2018, 09:42
Способы автоматизации механических ворот
15 июня 2018, 12:13
Охранная система в гараж на ESP8266 с интеграцией в Apple HomeKit
24 августа 2018, 12:18
Пошаговая установка HomeAssistant
27 августа 2018, 10:14
Интегрируем ХА в HomeKit
04 апреля 2019, 17:48
Расскажу о том за ~1 час перевезти УД с 2мя USB стиками с Raspberry PI на Synology NAS.
01 ноября 2018, 09:27
Настройка Deconz USB стика ConBee от Dresden Elektronik в Hass.io и некоторые особенности эксплуатации
25 ноября 2018, 18:23
Умное зеркало добавляем модули Airplay и Google Calendar
03 октября 2018, 22:03
Как собрать и настроить Hyperion Ambilight - адаптивную подсветку ТВ.
20 октября 2018, 22:57
Теоретические основы протокола MQTT и описание того, как он работает и для чего используется
24 августа 2018, 10:15
Краткий экскурс в настройку Home Assistant