Показаны различия между двумя версиями страницы.
Следующая версия | Предыдущая версия | ||
интеграция_с_homeassistant [2020/04/15 18:03] 192.168.88.1 created |
интеграция_с_homeassistant [2023/11/23 19:50] Admin [Светильники] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
Контроллер LightHub прекрасно интегрируется в систему Home Assistant с использованием MQTT | Контроллер LightHub прекрасно интегрируется в систему Home Assistant с использованием MQTT | ||
+ | |||
В настоящее время, реализованы и используются следующие интеграции: | В настоящее время, реализованы и используются следующие интеграции: | ||
- | * Реле и дискретные выключатели | + | |
- | * Диммируемые одноцветные светильники | + | * Диммируемые одноцветные светильники |
- | * Диммируемые цветные светильники (RGB/ | + | * Диммируемые цветные светильники (RGB/RGBW/RGBWW) |
- | * Термостаты теплого пола | + | * Термостаты теплого пола, помещений |
- | * Кондиционер | + | * Кондиционер |
- | * Сенсоры температуры | + | * Увлажнитель |
- | * Сенсоры влажности | + | |
- | * Сенсоры CO2 | + | * Сенсоры влажности |
+ | * Сенсоры CO2 | ||
+ | * Любые устройства, | ||
+ | Документация скорректирована, | ||
+ | Параметры брокера теперь настраиваются только через пользовательский интерфейс в разделе Настройки/ | ||
+ | Теперь предполагается, | ||
+ | который подгружается директивой | ||
+ | < | ||
+ | mqtt: !include mqtt.yaml | ||
+ | </ | ||
+ | В файле configuration.yaml | ||
+ | Это, действительно, | ||
+ | Далее, даны примеры разделов файла mqtt.yaml, которые можно скорректировать и использовать для своих нужд | ||
+ | |||
+ | |||
+ | |||
+ | ===== Сенсоры ===== | ||
+ | В примерах ниже: | ||
+ | Имя контроллера: | ||
+ | |||
+ | Предположим, | ||
+ | |||
+ | " | ||
+ | " | ||
+ | | ||
+ | Также, на pin3 подключен сенсор температуры и влажности dht-22, расположенный в ванной, | ||
+ | |||
+ | " | ||
+ | |||
+ | ну и к шине 1-wire подключен термометр в прихожей | ||
+ | |||
+ | |||
+ | " | ||
+ | | ||
+ | |||
+ | В этом случае, | ||
+ | | ||
< | < | ||
- | # Sensors | ||
sensor: | sensor: | ||
- | | + | - name: " |
- | | + | |
- | - platform: mqtt | + | |
- | | + | |
icon: " | icon: " | ||
expire_after: | expire_after: | ||
- | state_topic: | + | state_topic: |
unit_of_measurement: | unit_of_measurement: | ||
availability_topic: | availability_topic: | ||
payload_available: | payload_available: | ||
payload_not_available: | payload_not_available: | ||
- | | + | |
- | | + | |
expire_after: | expire_after: | ||
- | state_topic: | + | state_topic: |
unit_of_measurement: | unit_of_measurement: | ||
availability_topic: | availability_topic: | ||
payload_available: | payload_available: | ||
payload_not_available: | payload_not_available: | ||
- | | + | |
- | | + | |
icon: " | icon: " | ||
expire_after: | expire_after: | ||
- | state_topic: | + | state_topic: |
unit_of_measurement: | unit_of_measurement: | ||
availability_topic: | availability_topic: | ||
payload_available: | payload_available: | ||
- | payload_not_available: | + | payload_not_available: |
- | + | ||
- | - platform: mqtt | + | |
- | | + | - name: " |
- | icon: " | + | |
- | expire_after: | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | availability_topic: | + | |
- | payload_available: | + | |
- | payload_not_available: | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | expire_after: | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | availability_topic: | + | |
- | payload_available: | + | |
- | payload_not_available: | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | icon: " | + | |
- | expire_after: | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | availability_topic: | + | |
- | payload_available: | + | |
- | payload_not_available: | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | icon: " | + | |
- | expire_after: | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | - platform: mqtt | + | |
- | name: "CO2 спальня" | + | |
- | icon: " | + | |
- | expire_after: | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | icon: " | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | icon: " | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | - platform: mqtt | + | |
- | name: "На улице" | + | |
- | icon: " | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | expire_after: | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | icon: " | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | expire_after: | + | |
- | - platform: mqtt | + | |
- | | + | |
icon: " | icon: " | ||
expire_after: | expire_after: | ||
state_topic: | state_topic: | ||
unit_of_measurement: | unit_of_measurement: | ||
- | | + | |
- | | + | |
icon: " | icon: " | ||
expire_after: | expire_after: | ||
state_topic: | state_topic: | ||
unit_of_measurement: | unit_of_measurement: | ||
- | | + | |
- | | + | |
icon: " | icon: " | ||
expire_after: | expire_after: | ||
state_topic: | state_topic: | ||
- | unit_of_measurement: | + | unit_of_measurement: |
- | + | ||
- | - platform: mqtt | + | </code> |
- | name: " | + | |
- | icon: " | + | |
- | expire_after: | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | name: " | + | |
- | icon: " | + | |
- | expire_after: | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | name: " | + | |
- | icon: " | + | |
- | expire_after: | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | name: " | + | |
- | state_topic: | + | |
- | icon: " | + | |
- | unit_of_measurement: | + | |
- | value_template: | + | |
- | - platform: mqtt | + | |
- | name: "Fan RPM" | + | |
- | icon: " | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | value_template: | + | |
- | - platform: mqtt | + | |
- | name: "Fan Current" | + | |
- | icon: " | + | |
- | state_topic: | + | |
- | unit_of_measurement: | + | |
- | value_template: | + | |
- | - platform: mqtt | + | |
- | name: "Fan Fault" | + | |
- | icon: " | + | |
- | state_topic: | + | |
- | value_template: | + | |
- | # - platform: mqtt | + | |
- | # name: "Fan Temp" | + | |
- | # state_topic: | + | |
- | # unit_of_measurement: | + | |
- | # value_template: | + | |
- | # - platform: mqtt | + | |
- | # name: "Fan Temp set" | + | |
- | # state_topic: | + | |
- | # unit_of_measurement: | + | |
- | # value_template: | + | |
- | + | ||
- | + | ||
- | # Text to speech | + | |
- | tts: | + | |
- | # - platform: google_translate | + | |
- | # service_name: | + | |
- | # Cloud | ||
- | cloud: | ||
- | |||
- | group: !include groups.yaml | ||
- | automation: !include automations.yaml | ||
- | script: !include scripts.yaml | ||
- | |||
- | # | ||
- | # nodered: | ||
- | # title: LightServ | ||
- | # icon: mdi:sitemap | ||
- | # url: http:// | ||
- | |||
- | zeroconf: | ||
- | |||
- | mqtt: | ||
- | broker: 192.168.88.2 | ||
- | port: 1883 | ||
- | client_id: home-assistant-1 | ||
- | keepalive: 60 | ||
- | # username: !secret mqtt_login | ||
- | # password: !secret mqtt_password | ||
- | protocol: 3.1 | ||
- | birth_message: | ||
- | topic: " | ||
- | payload: " | ||
- | qos: 1 | ||
- | retain: true | ||
- | will_message: | ||
- | topic: " | ||
- | payload: " | ||
- | qos: 1 | ||
- | retain: true | ||
+ | ===== Светильники ===== | ||
+ | < | ||
light: | light: | ||
- | - platform: mqtt | + | # дискретный выключатель света (вкл-выкл) |
- | name: "Приток" | + | - name: " |
- | state_topic: | + | |
- | command_topic: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | # qos: 1 | + | |
- | | + | |
- | - platform: mqtt | + | |
- | | + | |
state_topic: | state_topic: | ||
command_topic: | command_topic: | ||
qos: 1 | qos: 1 | ||
| | ||
- | - platform: mqtt | + | # Диммируемый одноцветный светильник |
- | name: Кухня точки | + | - name: Кухня точки |
command_topic: | command_topic: | ||
state_topic: | state_topic: | ||
- | | + | # |
brightness_command_topic: | brightness_command_topic: | ||
brightness_state_topic: | brightness_state_topic: | ||
| | ||
- | - platform: mqtt | + | # Цветной LED светильник |
- | name: Гостиная точки | + | |
- | command_topic: | + | |
- | state_topic: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | - platform: mqtt | + | - name: Кухня LED |
- | name: Ванна точки | + | |
- | command_topic: | + | |
- | state_topic: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | name: Ванна люстра | + | |
- | command_topic: | + | |
- | state_topic: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | name: Балкон спальня | + | |
- | command_topic: | + | |
- | state_topic: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | name: Балкон Вика | + | |
- | command_topic: | + | |
- | state_topic: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | name: Точки спальня | + | |
- | command_topic: | + | |
- | state_topic: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | name: Шкаф Вика | + | |
- | command_topic: | + | |
- | state_topic: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | | + | |
command_topic: | command_topic: | ||
state_topic: | state_topic: | ||
hs_command_topic: | hs_command_topic: | ||
hs_state_topic: | hs_state_topic: | ||
- | hs_value_template: | + | hs_value_template: |
- | | + | {% if a[1] -%} |
+ | {{a[0]+',' | ||
+ | {%- endif %}" | ||
brightness_command_topic: | brightness_command_topic: | ||
brightness_state_topic: | brightness_state_topic: | ||
brightness_value_template: | brightness_value_template: | ||
| | ||
- | - platform: mqtt | + | color_temp_value_template: "{{ value.split(',' |
- | | + | |
- | command_topic: | + | color_temp_state_topic: |
- | state_topic: | + | |
- | hs_command_topic: | + | |
- | hs_state_topic: | + | #Новая версия интеграции. Поддерживает не только HSV но и RGBW нотацию цвета. |
- | | + | # |
- | | + | #- то есть RGBW. В этом случае контроллер прозрачно транслирует такой цвет в статусный топик, добавляя признак RGB в начало payload |
- | | + | # предполагается имя контроллера light |
- | | + | |
- | | + | - name: Кухня по новому |
+ | command_topic: | ||
+ | state_topic: | ||
+ | hs_command_topic: | ||
+ | hs_state_topic: | ||
+ | | ||
+ | | ||
+ | | ||
+ | color_temp_state_topic: | ||
+ | | ||
+ | | ||
+ | hs_value_template: "{%if not value is match(' | ||
+ | | ||
+ | {%if a[1]%} | ||
+ | {{a[0]+',' | ||
+ | {%endif%} | ||
+ | {% endif %}" | ||
- | - platform: mqtt | + | brightness_value_template: "{%if not value is match(' |
- | name: Саша LED | + | {%set a=value.split(',' |
- | | + | {% if a[2] %} |
- | | + | {{ a[2] }} |
- | | + | {% endif %} |
- | | + | {% endif %}" |
- | | + | |
- | | + | |
- | | + | {%set a=value.split(',' |
- | | + | {% if a[3] %} |
- | | + | {{ a[3] }} |
+ | {% endif %} | ||
+ | {% endif %}" | ||
+ | |||
+ | | ||
+ | | ||
+ | {% endif %}" | ||
| | ||
- | - platform: mqtt | ||
- | name: Вика LED | ||
- | command_topic: | ||
- | state_topic: | ||
- | hs_command_topic: | ||
- | hs_state_topic: | ||
- | hs_value_template: | ||
- | brightness_scale: | ||
- | brightness_command_topic: | ||
- | brightness_state_topic: | ||
- | brightness_value_template: | ||
| | ||
- | - platform: mqtt | ||
- | name: Спальня LED | ||
- | command_topic: | ||
- | state_topic: | ||
- | hs_command_topic: | ||
- | hs_state_topic: | ||
- | hs_value_template: | ||
- | brightness_scale: | ||
- | brightness_command_topic: | ||
- | brightness_state_topic: | ||
- | brightness_value_template: | ||
| | ||
- | - platform: mqtt | + | </code> |
- | name: Ванна LED | + | |
- | command_topic: | + | |
- | state_topic: | + | |
- | hs_command_topic: | + | |
- | hs_state_topic: | + | |
- | hs_value_template: | + | |
- | brightness_scale: | + | |
- | brightness_command_topic: | + | |
- | brightness_state_topic: | + | |
- | brightness_value_template: | + | |
- | #TODO white cmd & state | + | |
- | # white_value_command_topic: | + | |
- | # white_value_scale: | + | |
- | # white_value_state_topic | + | |
+ | ===== Выключатели ===== | ||
+ | < | ||
switch: | switch: | ||
- | - platform: mqtt | + | - name: "Air heat" |
- | | + | |
icon: " | icon: " | ||
state_topic: | state_topic: | ||
command_topic: | command_topic: | ||
- | | + | |
- | name: "Air auto" | + | |
icon: " | icon: " | ||
state_topic: | state_topic: | ||
command_topic: | command_topic: | ||
- | - platform: mqtt | + | |
- | name: " | + | |
icon: " | icon: " | ||
state_topic: | state_topic: | ||
command_topic: | command_topic: | ||
qos: 1 | qos: 1 | ||
- | - platform: mqtt | + | |
- | name: " | + | |
icon: " | icon: " | ||
state_topic: | state_topic: | ||
command_topic: | command_topic: | ||
qos: 1 | qos: 1 | ||
- | - platform: mqtt | + | |
- | name: " | + | |
state_topic: | state_topic: | ||
command_topic: | command_topic: | ||
qos: 1 | qos: 1 | ||
- | - platform: mqtt | + | |
- | name: " | + | |
state_topic: | state_topic: | ||
command_topic: | command_topic: | ||
qos: 1 | qos: 1 | ||
- | - platform: mqtt | + | </code> |
- | name: " | + | |
- | # state_topic: | + | |
- | command_topic: | + | |
- | qos: 1 | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | # state_topic: | + | |
- | command_topic: | + | |
- | qos: 1 | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | # state_topic: | + | |
- | command_topic: | + | |
- | qos: 1 | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | # state_topic: | + | |
- | command_topic: | + | |
- | qos: 1 | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | # state_topic: | + | |
- | command_topic: | + | |
- | qos: 1 | + | |
- | - platform: mqtt | + | |
- | name: " | + | |
- | # state_topic: | + | |
- | command_topic: | + | |
- | qos: 1 | + | |
- | google_assistant: | + | ===== Климат и термостаты ===== |
- | project_id: lazy-home-aa5b4 | + | |
- | api_key: AIzaSyDt4DnAZJnKcBnWhUsPB8jVJGPyDkNnAYI | + | |
- | expose_by_default: | + | |
- | homekit: | + | < |
+ | climate: | ||
- | climate: | + | |
- | | + | |
- | name: Вентиляция | + | |
- | modes: | + | |
- | - " | + | |
- | - " | + | |
- | - " | + | |
- | - " | + | |
- | mode_command_topic: | + | |
- | mode_state_topic: | + | |
- | mode_state_template: | + | |
- | temperature_command_topic: | + | |
- | temperature_state_topic: | + | |
- | # temperature_state_template: | + | |
- | current_temperature_topic: | + | |
- | current_temperature_template: | + | |
- | + | ||
- | - platform: mqtt | + | |
- | | + | |
modes: | modes: | ||
- " | - " | ||
Строка 493: | Строка 253: | ||
current_temperature_topic: | current_temperature_topic: | ||
- | - platform: mqtt | + | - name: " |
- | | + | |
modes: | modes: | ||
- " | - " | ||
Строка 506: | Строка 265: | ||
current_temperature_topic: | current_temperature_topic: | ||
- | - platform: mqtt | ||
- | name: " | ||
- | modes: | ||
- | - " | ||
- | - " | ||
- | - " | ||
- | mode_command_topic: | ||
- | temperature_command_topic: | ||
- | mode_state_topic: | ||
- | mode_state_template: | ||
- | temperature_state_topic: | ||
- | current_temperature_topic: | ||
- | |||
- | - platform: mqtt | ||
- | name: " | ||
- | modes: | ||
- | - " | ||
- | - " | ||
- | - " | ||
- | mode_command_topic: | ||
- | temperature_command_topic: | ||
- | mode_state_topic: | ||
- | mode_state_template: | ||
- | temperature_state_topic: | ||
- | current_temperature_topic: | ||
- | |||
- | - platform: mqtt | ||
- | name: " | ||
- | modes: | ||
- | - " | ||
- | - " | ||
- | - " | ||
- | mode_command_topic: | ||
- | temperature_command_topic: | ||
- | mode_state_topic: | ||
- | mode_state_template: | ||
- | temperature_state_topic: | ||
- | current_temperature_topic: | ||
- | | ||
- | - platform: mqtt | ||
- | name: " | ||
- | modes: | ||
- | - " | ||
- | - " | ||
- | - " | ||
- | mode_command_topic: | ||
- | temperature_command_topic: | ||
- | mode_state_topic: | ||
- | mode_state_template: | ||
- | temperature_state_topic: | ||
- | current_temperature_topic: | ||
- | - platform: mqtt | + | - name: " |
- | | + | |
modes: | modes: | ||
- " | - " | ||
Строка 572: | Строка 279: | ||
temperature_state_topic: | temperature_state_topic: | ||
current_temperature_topic: | current_temperature_topic: | ||
- | | ||
- | - platform: mqtt | ||
- | name: " | ||
- | modes: | ||
- | - " | ||
- | - " | ||
- | - " | ||
- | - " | ||
- | - " | ||
- | mode_command_topic: | ||
- | temperature_command_topic: | ||
- | mode_state_topic: | ||
- | mode_state_template: | ||
- | temperature_state_topic: | ||
- | current_temperature_topic: | ||
- | - platform: mqtt | + | </ |
- | name: "Климат Саша" | + | |
+ | |||
+ | ===== Увлажнитель ===== | ||
+ | |||
+ | < | ||
+ | humidifier: | ||
+ | | ||
+ | command_topic: | ||
+ | state_topic: | ||
+ | target_humidity_command_topic: | ||
+ | target_humidity_state_topic: | ||
+ | current_humidity_topic: | ||
+ | max_humidity: | ||
+ | min_humidity: | ||
+ | </ | ||
+ | |||
+ | ===== Приточка ===== | ||
+ | < | ||
+ | climate: | ||
+ | |||
+ | - name: Вентиляция | ||
modes: | modes: | ||
- " | - " | ||
+ | - " | ||
- " | - " | ||
- " | - " | ||
- | - " | + | |
- | - " | + | mode_state_topic: |
- | | + | mode_state_template: |
- | temperature_command_topic: | + | temperature_command_topic: |
- | mode_state_topic: | + | temperature_state_topic: |
- | mode_state_template: | + | current_temperature_topic: |
- | temperature_state_topic: | + | current_temperature_template: |
- | current_temperature_topic: | + | |
| | ||
- | </code> | + | sensor: |
+ | |||
+ | - name: " | ||
+ | state_topic: | ||
+ | icon: " | ||
+ | unit_of_measurement: | ||
+ | value_template: | ||
+ | |||
+ | - name: "Fan RPM" | ||
+ | icon: " | ||
+ | state_topic: | ||
+ | unit_of_measurement: | ||
+ | value_template: | ||
+ | |||
+ | - name: "Fan Current" | ||
+ | icon: " | ||
+ | state_topic: | ||
+ | unit_of_measurement: | ||
+ | value_template: | ||
+ | |||
+ | - name: "Fan Fault" | ||
+ | icon: " | ||
+ | state_topic: | ||
+ | value_template: | ||
+ | # - platform: mqtt | ||
+ | # name: "Fan Temp" | ||
+ | # state_topic: | ||
+ | # unit_of_measurement: | ||
+ | # value_template: | ||
+ | # - platform: mqtt | ||
+ | # name: "Fan Temp set" | ||
+ | # state_topic: | ||
+ | # unit_of_measurement: | ||
+ | # value_template: | ||
| | ||
+ | </ |