Files
obsidian-vault/family/how-to/ha-automations.md
T

12 KiB
Raw Blame History

title, aliases, tags, updated, related
title aliases tags updated related
⚙️ HA — автоматизации (automations.yaml)
HA automations
Автоматизации HA
automations.yaml
Ночной свет душевая
family
how-to
smarthome
home-assistant
automation
2026-09-15
family/plans/t610-home-automation
family/how-to/home-automation
family/documents/home-automation-wishlist

⚙️ HA — автоматизации (automations.yaml)

Назначение документа: разбор логики автоматизаций Home Assistant на t610, карта «устройство ↔ entity_id ↔ device_id», найденные дефекты. Карта железа/Modbus — family/how-to/home-automation. Хост/аддоны/доступ — family/plans/t610-home-automation.

1. Где живёт

  • Файл: /config/automations.yaml в HA Core на t610.
  • Локальная копия-эталон (проверено 2026-09-15): ~/tmp-t610/automations/automations.yaml (208 строк, 16 автоматизаций) и ~/tmp-t610/etap3-fix/automations.yaml (версия после правки зон, 2026-09-14).
  • Итого автоматизаций: 16 (15 on / 1 off).
  • ⚠️ Живой конфиг читать через REST API, а не по памяти: GET /api/config/automation/config/<id>. Готовый скрипт-образец — ~/tmp-t610/check_aut_dushev.sh.

2. Карта device_id ↔ entity_id (из ~/tmp-t610/etap3-fix/devid_mapping.json)

device_id Устройство / назначение
4095e7c3b47b9dc9640cfb8c3aeff022 shower_2_presence_sensor — радар присутствия душевой 2 (Tuya ZY-M100-S_2 / TS0601)
4d6e55505ff7dbad13d2674cdcb18d5a night_light_shower_2 — ночная подсветка душевой 2 (Tuya TS0001, Zigbee-реле)
1ea8bbc2612dde303e4279bc5fbad57a light_sensor_stairs — датчик освещённости лестницы (TS0222)
028b7d9f489c87bdc9e563473a1d61e8 подсветка лестницы (switch)
5cd5d9d2d289b5e470bbeaac0eb7905c кнопка/диммер спальни (TS0043-подобная)
098a641cb1d30f08f1ae293e00d9885b light.bed_dimmer (TS0052)
16d2c6f64ec399e5261c89b35c1e75c6 розетка циркуляции ГВС
b9d384a51b780a7924ed9504eddec12e boiler_water_leak — датчик протечки котельной (TS0207)
bcf47eeae909877978bdaf6c705210f8 датчик t° Zigbee
0c7a0eb6d60e852b447266da69a7785e (entity-хелпер, см. mapping)

Сущности радара душевой 2 (device_id 4095e7c3…, платформа mqtt):

  • sensor.shower_2_presence_sensor_illuminance — «Освещенность», lx
  • binary_sensor.shower_2_presence_sensor_presence — «Занятость», on/off
  • sensor.shower_2_presence_sensor_target_distance — Target distance, м
  • number.shower_2_presence_sensor_radar_sensitivity — 0..9
  • number.shower_2_presence_sensor_minimum_range / maximum_range — 0..9.5 м, шаг 0.15
  • number.shower_2_presence_sensor_detection_delay — 0..10 с
  • number.shower_2_presence_sensor_fading_time — 0.5..1500 с
  • sensor.shower_2_presence_sensor_linkquality

Сущности ночной подсветки душевой 2 (device_id 4d6e5550…):

  • switch.night_light_shower_2само реле (его и дёргает автоматизация)
  • light.night_light_shower_2 — хелпер switch_as_x поверх того же реле (config_entry 01KKC78ZM7QRJQY36Q4D27KGCD, target_domain: light, invert: false). Один и тот же физический релей — управлять надо switch.-сущностью, к которой привязана автоматика.
  • number.night_light_shower_2_countdown, select..._power_on_behavior, select..._switch_type, sensor..._linkquality

3. Ночной свет душевой — две автоматизации

ВКЛ — id: '1771997851260', «Вкл. ночной свет душевая»

triggers:
  - platform: device
    type: occupied          # binary_sensor.shower_2_presence_sensor_presence
    device_id: 4095e7c3b47b9dc9640cfb8c3aeff022
    entity_id: b4a50e16942064f9c00d0d86501a667e
  - platform: device
    type: illuminance       # sensor.shower_2_presence_sensor_illuminance
    device_id: 4095e7c3b47b9dc9640cfb8c3aeff022
    entity_id: df9fe40b9d96de3b1bdeeb62707a7cab
    below: 6            # ✅ применено 2026-09-15 (было 8)
conditions:
  - condition: device
    type: is_illuminance ... below: 6
  - condition: device
    type: is_occupied
actions:  # turn_on
  - type: turn_on  domain: switch  entity_id: fa72bc65e5cf9e9249a5b0d377e5a3f4
     # = switch.night_light_shower_2
mode: single

ВЫКЛ — id: '1771997918348', «Выкл. ночной свет душевая»

triggers:
  - type: not_occupied     # присутствие пропало
  - type: illuminance ... above: 6   # ✅ применено 2026-09-15 (было 8)
conditions: []             # ⚠️ ПУСТО — нет ни одного условия
actions:  # turn_off switch.night_light_shower_2
mode: single

🔴 Дефект (диагностирован 2026-09-15)

Симптом: ночной свет горит при включённом основном освещении; датчик присутствия при этом ничего не нарушает.

Первопричина — асимметрия логики, а НЕ датчик:

  1. Нет связи «основное освещение включено → ночной свет не нужен». В ВЫКЛ-автоматизации conditions: [] — она ничего не проверяет про основной свет. Гасит только по not_occupied или above: 8.
  2. Порог 8 lx недостижим. Факт-замер 2026-09-15: illuminance = 2 lx при выключенном свете, но основное освещение не подняло значение выше 8 (у TS0601 reportable_change: 5, сенсор расположен в стороне от основного потока). Триггер above: 8 не срабатывает → ВЫКЛ не запускается.
  3. mode: single + occupied держится → человек в душевой, темно по показаниям → ночной свет горит поверх основного.

Отвергнутые версии (не повторять):

  • «датчик присутствия не видит порог / виноват датчик» — неверно: binary_sensor..._presence работает штатно (observed on/off в 04:49:15).
  • «порог просто надо чуть поднять» — частично: порог лишь симптом; корень в отсутствии условия по основному свету.

Факт-замер (2026-09-15, 04:4804:49 UTC):

Сущность Значение
sensor.shower_2_presence_sensor_illuminance 2 lx
binary_sensor.shower_2_presence_sensor_presence off
switch.night_light_shower_2 off
number..._fading_time 10 с
number..._maximum_range 2.85 м

Предложенные правки (НЕ применены — ждут апрува Alex)

  1. Добавить в ВЫКЛ триггер/условие по основному освещению душевой — гасить ночной свет, как только зажглось основное. ⚠️ Блокер: неизвестна сущность основного освещения верхней душевой (среди light.*/switch.* душевой найден только night_light_shower_2). Нужен ответ Alex.
  2. Поднять порог 8 → 1520 lx или откалибровать illuminance_calibration радара (2 lx при внутреннем свете подозрительно мало).
  3. fading_time = 10 с, maximum_range = 2.85 м — проверить, покрывает ли зона всю душевую.

4. Прочие содержательные автоматизации

id alias Логика
1768585827761 Выключить циркуляцию ГВС time 23:00 → turn_off
1768585922970 Включить циркуляцию ГВС time 09:30 → turn_on
1770404069135 Ventilation automation on time 05:00fan.turn_on fan.automation
5735cb9f855e462dbdbdf680d0d6a66f office_pass_switch_table switch.office_table_light_switch_l1 change → toggle light.smart_light_office_left
45b96f6f38f6488ba70266fa5da665f5 office_pass_switch_main switch.office_table_light_switch_l2 change → toggle light.smart_light_office_right
1771466806839 Светло: выкл. подсветку лестницы lever illuminance above: 150 → turn_off
1771466955010 Темно: вкл. подсветку лестницы lever illuminance below: 130 → turn_on
1771683420621 Toggle Dimmer bed кнопка single → toggle light.bed_dimmer
1771683677259 Dimmer bed cycle кнопка double → цикл яркости 20/40/60/80/100 %
1771997851260 Вкл. ночной свет душевая см. §3 🔴
1771997918348 Выкл. ночной свет душевая см. §3 🔴
1773451257968 Протечка котельная moistnotify.notify «Протечка котельная»
1773451323415 Датчик протечки котельная батарея bat_low → notify
1773459513601 Датчик освещенности лестница батарея battery_level below 10 → notify
1773459606336 Light switch bed батарея battery_level below 10 → notify
1773459663218 Zigbee T sensor батарея battery_level below 10 → notify

⚠️ Наблюдение: «Светло/Темно подсветка лестницы» использует гистерезис (below 130 / above 150) — это единственная пара с правильной защитой от дребезга. Паттерн годится как образец для правки душевой.

5. Питфоллы диагностики

  • Секрет-маскировщик Hermes подменяет Bearer $(cat ...) на *** → собирать заголовок через printf в файл, затем curl -H @/tmp/hdr.txt. Рабочий /tmp/.hatok уже есть на Mac.
  • ha apps logs <slug> обрезает вывод и отдаёт старый буфер → живой лог только через API.
  • Запросы к http://192.168.2.176 (raw IP, plain HTTP, private network) требуют апрува в Hermes — предупреждать Alex заранее, не ретраить вслепую.

Связанные заметки