Интеграция Nest и Home Assistant

12 апреля 2019, 11:41
Итак, у нас уже есть термостат Nest, подключенный к котлу при помощи трансформатора и реле на 24 вольта, и настроенный Home Assistant (далее HA).

Сначала просто подключим Nest к HA. Делаем это по официальной документации отсюда.

Идем на сайт Nest Developers.  Справа сверху жмем кнопку Go to console.  Заходим под своей учетной записью Nest.  Если у Вас еще её нет - жмем внизу Sign up и регистрируемся.

Вошли! Теперь жмем кнопку Create new Oauth client. Вводим свои данные как на картинке ниже:

Выставляем разрешения:

При отметке разрешений описание вводим как на картинке ниже:

Нажимаем Create. Появится такая страница:

Копируем отсюда Client ID и Client Secret и вставляем их в configuration.yaml НА. У меня это выглядит так:

nest:
  client_id: !secret nest_client_id
  client_secret: !secret nest_client_secret
Перезагружаем НА. Идем в Настройки > Интеграции, выбираем Nest > Настроить. Жмем на ссылку в открывшемся окне и логинимся в свой аккаунт Nest. Копируем появившийся PIN и вводим его в окне НА.

Поздравляю, Вы подключили Nest к НА! 

Теперь подключим кондиционер к НА с помощью custom component StartIR:
switch:
  - platform: broadlink
    host: rmmini.local
    mac: 'XX:XX:XX:XX:XX:XX'
    friendly_name: Broadlink RM mini 3
    
climate:
  - platform: smartir
    name: ac
    device_code: 1234
    controller_send_service: switch.broadlink_send_packet_rmmini_local
    temperature_sensor: sensor.termostat_temperature
    humidity_sensor: sensor.termostat_humidity
    power_sensor: binary_sensor.ac_power
И создадим переменную input_boolean для возможности отключать управление Nest кондиционером: 
input_boolean:
  nest_control_ac:
    name: Nest управляет кондиционером
    icon: mdi:link-variant
Дальше создаем карточку в Lovelace:
entities:
  - entity: climate.termostat
  - entity: input_boolean.nest_control_ac
  - entity: climate.ac
  - entity: sensor.termostat_hvac_state
    name: HVAC состояние
    secondary_info: last-changed
  - entity: binary_sensor.termostat_has_leaf
    name: Эко режим
  - entity: sensor.boiler_on_today_value
  - entity: sensor.ac_on_today_value
show_header_toggle: false
title: Климат
type: entities
Ура! Теперь мы можем управлять Nest и кондиционером из НА. Но хочется большего, например, управлять кондиционером с помощью самого Nest. Сейчас мы это попробуем сделать.

Для начала нам нужно заставить Nest поверить, что он подключен к кондиционеру. Это очень просто - нужно в клемму Y просто вставить кусочек провода. Подключать провод никуда не надо!

И вуаля - у нас появился режим "Охлаждение"! И даже совмещенный режим Авто!
Осталось только написать несколько простых автоматизаций в НА:
- id: ac_on
  alias: Включение кондиционера
  initial_state: 'true'
  trigger:
  - platform: state
    entity_id: sensor.termostat_hvac_state
    to: cool
  condition:
  - condition: state
    entity_id: input_boolean.nest_control_ac
    state: 'on'
  action:
  - service: climate.set_operation_mode
    data:
      entity_id: climate.ac
      operation_mode: cool

- id: ac_off
  alias: Выключение кондиционера
  initial_state: 'true'
  trigger:
  - platform: state
    entity_id: sensor.termostat_hvac_state
    from: cool
  condition:
  - condition: state
    entity_id: input_boolean.nest_control_ac
    state: 'on'
  action:
  - service: climate.set_operation_mode
    data:
      entity_id: climate.ac
      operation_mode: 'off'

- id: ac_set_temp
  alias: Установка температуры кондиционера
  initial_state: 'true'
  trigger:
  - platform: event
    event_type: state_changed
    event_data:
      entity_id: sensor.termostat_target
  - platform: state
    entity_id: sensor.termostat_hvac_state
    to: cool
  condition:
  - condition: state
    entity_id: input_boolean.nest_control_ac
    state: 'on'
  action:
  - service: climate.set_temperature
    data_template:
      entity_id: climate.ac
      temperature: "{{states('sensor.termostat_target')|int}}"
Хочу сразу предупредить - в боевых условиях управление кондиционером еще не проверялось. Пока холодно и кондиционер включать не надо. Но я думаю, что принцип интеграции Nest и кондиционера понятен.

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


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

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

Хочешь умный дом но нет времени разбираться?
Посмотри примеры работ и выбери себе интегратора.
  1. Александр Жабунин (OXOTH1K)

    Спасибо за статью! Когда нибудь я его себе возьму)

  2. Максим Манцев (Maxwell)
    Максим Манцев (Maxwell) 4 месяца назад

    Отличная статья! Хотелось бы еще прочитать/посмотреть инфу про именно подключение неста к котлу и еще интересна инфа про опрокидывание в кит с помощью хоумбриджа.

  3. Станислав Тороповский (stast)
    Станислав Тороповский (stast) отредактировано 4 месяца назад
    Комментарий был удален
  4. Григорий Абрамов (grishmanCH)

    Правильно ли я  понял, что теоретически можно термостат вообще никуда не подключать, а просто напихать ему проводков и использовать как пульт? 

    • Станислав Тороповский (stast)

      Ну надо на него хотя бы питание подать - переменка 24 вольта. Там есть micro-usb для аварийной зарядки аккумулятора, но я не знаю, можно ли от него питать термостат постоянно.

  5. Артем Виноделов (martiniman)
    Артем Виноделов (martiniman) 4 месяца назад

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

  6. Станислав Тороповский (stast)

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

    А так да, можно обойтись датчиками и реле...

  7. (etingov)
    (etingov) 3 месяца назад

    Огромное спасибо за статью:) давно уже думал, как бы, помимо котла, заставить Нест управлять кондиционером. Идея использовать НА как посредник между broadlink и nest прям то что нужно. Все купил, настроил, работает:) Но так как своего кондиционера не нашел в списке поддерживаемых StartIR, то пришлось обойтись без него:)

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

Скидки для сообщества

УЮТНЫЙ ДОМ

+7 495 797-21-74
Промокод:
SPRUT
Размер скидки:
5%

Z-Wave Ukraine

+380 68 641 9670
Промокод:
Sprut-UA
Размер скидки:
15%

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

15 ноября 2018, 09:42
Способы автоматизации механических ворот
27 октября 2018, 12:20
Нативный Термостат для котла на ESP8266 с поддержкой Apple HomeKit
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
20 октября 2018, 22:57
Теоретические основы протокола MQTT и описание того, как он работает и для чего используется
03 октября 2018, 22:03
Как собрать и настроить Hyperion Ambilight - адаптивную подсветку ТВ.