[2026-09-14] eagle: family/documents/home-automation-wishlist.md family/plans/t610-home-automation.md
This commit is contained in:
@@ -1,22 +1,121 @@
|
|||||||
---
|
---
|
||||||
title: "🏡 Умный дом — хотелки"
|
title: "🏡 Умный дом — хотелки и роадмап автоматизаций"
|
||||||
aliases: [Умный дом, Умный дом хотелки, Home automation, Smart home, home-automation-wishlist]
|
aliases: [Умный дом, Умный дом хотелки, Home automation, Smart home, home-automation-wishlist]
|
||||||
tags: [family, lists, smart-home, tech]
|
tags: [family, lists, smart-home, tech]
|
||||||
updated: 2026-05-16
|
updated: 2026-09-14
|
||||||
related: "[[family/how-to/kraken-access]]"
|
related:
|
||||||
|
- "[[family/plans/t610-home-automation]]"
|
||||||
|
- "[[family/how-to/home-automation]]"
|
||||||
|
- "[[family/how-to/nodered-ventilation]]"
|
||||||
|
- "[[family/documents/home-wishlist]]"
|
||||||
|
---
|
||||||
|
|
||||||
|
# 🏡 Умный дом — хотелки и роадмап автоматизаций
|
||||||
|
|
||||||
|
> **Это документ идей и приоритетов, НЕ план работ.** Технические каноны, карта Modbus, состояние хоста — в [[family/plans/t610-home-automation]] и [[family/how-to/home-automation]]. Здесь — **что можно сделать дальше и в каком порядке**.
|
||||||
|
> Составлен 2026-09-14 по факту разбора доков. **Ничего не реализовано** — только предложения, ждут выбора Alex.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1. Что УЖЕ есть (отправная точка)
|
||||||
|
|
||||||
|
| Контур | Состав | Состояние |
|
||||||
|
|---|---|---|
|
||||||
|
| **Вентиляция** | AT2 ×2 (slave 10) + 32 заслонки (relay 11/12) + реле вытяжек (relay 13/14 в ZONT) | ✅ железо работает; ❌ исполнительный контур AT2 **отключён** (slave 10 закомментирован) |
|
||||||
|
| **Отопление** | ZONT: радиаторы 2 эт. (relay 13), тёплый пол (relay 14), 8 ZONT-реле (конвекторы, радиаторы, насос ТП 7) | ✅ работает целиком в ZONT |
|
||||||
|
| **Датчики воздуха** | 3 × 485-датчика (гостиная=1, детская=2, спальня=3) → виртуальные slave 101/102/103 в ZONT | ✅ все три публикуются (после фикса `3748feb`) |
|
||||||
|
| **Zigbee (z2m)** | **15 устройств**: свет/лестница/диммер, розетки (насос обратки, греющий кабель, питание котлов), радар присутствия (душевая), датчик протечки (котельная), t°/влажность ×2 | ✅ координатор EmberZNet 7.4.5 |
|
||||||
|
| **Камера** | Logitech `046d:0825` на газовом счётчике BK-G4T → go2rtc → RTSP H.264 + поворот 90° | ✅ WebRTC работает |
|
||||||
|
| **Автоматизации HA** | **16 шт.** (15 `on` / 1 `off`) | ⚠️ по сути только 2 содержательные: ночной свет душевой, кнопка стола |
|
||||||
|
|
||||||
|
**🔑 Ключевая асимметрия:** сенсорика и исполнительные механизмы есть, **автоматики на них почти нет**. Основная работа — не покупать железо, а включать логику на существующем.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2. Предложения по приоритету
|
||||||
|
|
||||||
|
> Порядок — рекомендация агента (отдача / стоимость). Финальный порядок — за Alex.
|
||||||
|
|
||||||
|
### 1. ⭐ Вентиляция по CO₂ — доехать до конца
|
||||||
|
Логика **уже написана** в Node-RED ([[family/how-to/nodered-ventilation]]): Demand Aggregator → Intake Allocation → Discretization → Damper Outputs → Exhaust Arbitration → Fans → Kitchen Hood.
|
||||||
|
**Блокер:** `fan.fan_at2_1/2` и `switch.fan_3_*` (slave 10) — `unavailable`, блок закомментирован в `configuration.yaml`.
|
||||||
|
**Что нужно:** раскомментировать slave 10 и убедиться, что AT2 отвечает (в §5 доки плана зафиксировано: прямой `nc` на slave 10 даёт `OK`, значение 100 → железо живо).
|
||||||
|
**⚠️ Конфликт:** задача по slave 10 **снята Alex'ом 2026-09-14**. Если решаем не трогать — вентиляция остаётся ручной, и весь CO₂-алгоритм простаивает. **Требует решения.**
|
||||||
|
|
||||||
|
### 2. ⭐ Протечки — полный контур (не только датчик)
|
||||||
|
Сейчас есть **только датчик** `boiler_water_leak` (котельная). Нет крана, нет сирены, нет автоматизации.
|
||||||
|
**Добавить:** Zigbee-кран на ввод воды + сирена + автоматизация «протечка → перекрыть + сирена + пуш в TG».
|
||||||
|
**Почему первым:** для дома с котельной и тёплым полом — самая дешёвая страховка из возможных. Датчик уже стоит, нужен только исполнитель.
|
||||||
|
|
||||||
|
### 3. Учёт воды/газа по камере → графики
|
||||||
|
Камера **уже смотрит ровно на счётчик BK-G4T** — это была её исходная задача.
|
||||||
|
**Логика:** OCR цифр по расписанию (2×/сутки) → `sensor` в HA → история расхода + алерт «аномальный расход / капает ночью».
|
||||||
|
**Железо:** ноль вложений — камера и t610 на месте. Опционально — импульсный датчик на счётчик.
|
||||||
|
|
||||||
|
### 4. Дым/газ + сирена — безопасность
|
||||||
|
Сейчас **нет ни одного датчика дыма** в HA и, судя по докам, нет CO-датчика у котла.
|
||||||
|
**Добавить:** Zigbee дымовые (Honeywell/Heiman) по комнатам + CO + газовый клапан + сирена.
|
||||||
|
**Почему:** газовый котёл + тёплый пол. Это обязательный минимум, а не «интересная автоматизация».
|
||||||
|
|
||||||
|
### 5. Погодозависимое отопление
|
||||||
|
Координаты дома в HA есть (`55.257328, 83.048234`), погодная интеграция `met` (`track_home: true`) — тоже.
|
||||||
|
**Логика:** прогноз на 12 ч + фактические датчики → понижать уставки на ночь/отсутствие, превентивно разогревать перед похолоданием.
|
||||||
|
**Отдача:** экономия газа. Сейчас отопление живёт целиком в ZONT по его уставкам, HA в контур не вмешивается.
|
||||||
|
|
||||||
|
### 6. Сценарий «Уезжаем / приехали»
|
||||||
|
Всё уже есть в HA (свет, отопление, вентиляция, котлы, насос обратки), но разрознено.
|
||||||
|
**Логика:** одна кнопка → понизить отопление, выключить вентиляцию AT2, выключить насос обратки, свет по датчикам. Плюс зеркальный «приехали».
|
||||||
|
**Железо:** покупать нечего.
|
||||||
|
|
||||||
|
### 7. Энергетика — что реально жрёт
|
||||||
|
ZONT-реле котлов уже дают статусы; 2 Zigbee-розетки с мониторингом есть (`recirculation_pump`, `heating_cable_plug`).
|
||||||
|
**Добавить:** токовые клещи (Zigbee) на ввод/котёл → видно, где деньги.
|
||||||
|
|
||||||
|
### 8. Дашборд + алерты в Telegram
|
||||||
|
Без этого автоматика «невидима». Один экран + пуш на всё критичное. Частично уже в вишлисте UI (см. §4).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3. Дешёвые устройства, которые стоит добавить первыми
|
||||||
|
|
||||||
|
| # | Устройство | Зачем | Почему сейчас |
|
||||||
|
|---|---|---|---|
|
||||||
|
| 1 | **Zigbee дымовой датчик × N** | нет ни одного, а газовый котёл есть | безопасность |
|
||||||
|
| 2 | **Zigbee кран + сирена** | под протечки | датчик уже стоит, не хватает исполнителя |
|
||||||
|
| 3 | **Zigbee-кнопки** | на любую сцену сейчас нужен телефон | 15 Zigbee-устройств и **ни одной** произвольной кнопки |
|
||||||
|
| 4 | **Датчики CO₂ ещё в 2 комнаты** | алгоритм Node-RED рассчитан на `bedroom/kids/living` | физически 3 × 485 стоят по другому разбиению |
|
||||||
|
| 5 | **Реле на хозблок/улицу** | свет участка, полив | — |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4. UI / софт (из прежней версии доки, сохранено)
|
||||||
|
|
||||||
|
- [ ] Kiosk mode
|
||||||
|
- [ ] Timebar card
|
||||||
|
- [ ] Card mode
|
||||||
|
- [ ] Mushroom board
|
||||||
|
- [ ] Bubble card
|
||||||
|
- [ ] Frosted glass theme
|
||||||
|
- [ ] C.A.F.E. scenarios editor
|
||||||
|
- [ ] docker:Homer (home page organizer)
|
||||||
|
- [x] Portainer container manager
|
||||||
|
- [x] Watchtower (container updater)
|
||||||
|
- [x] duplicati (backup containers)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 5. Порядок, рекомендованный агентом
|
||||||
|
|
||||||
|
**1 → 2 → 4 → 5 → 3 → 6**
|
||||||
|
|
||||||
|
Обоснование: сначала **запустить уже написанное** (вентиляция — п.1), затем **закрыть риски** (протечки, дым/газ — п.2, 4), затем **экономика** (погодозависимость — п.5), затем «приятное» (камера-OCR, сценарии — п.3, 6).
|
||||||
|
|
||||||
---
|
---
|
||||||
- [ ] Kiosk mode
|
|
||||||
- [ ] Timebar card
|
|
||||||
- [ ] Card mode
|
|
||||||
- [ ] Mushroom board
|
|
||||||
- [ ] Bubble card
|
|
||||||
- [ ] Frosted glass theme
|
|
||||||
- [ ] C.A.F.E. scenarios editor
|
|
||||||
- [ ] docker:Homer (home page organizer)
|
|
||||||
- [x] Portainer container manager
|
|
||||||
- [x] Watchtower (container updater)
|
|
||||||
- [x] duplicati (backup containers)
|
|
||||||
|
|
||||||
## Связанные заметки
|
## Связанные заметки
|
||||||
|
|
||||||
- [[family/how-to/kraken-access]]
|
- [[family/plans/t610-home-automation]] — **единственный рабочий документ** по техчасти: хост, доступ, аддоны, Modbus, Zigbee, питфоллы
|
||||||
|
- [[family/how-to/home-automation]] — карта железза: AT2 (параметры/PWM), Slave ID, регистры заслонок/реле, ZONT relays
|
||||||
|
- [[family/how-to/nodered-ventilation]] — алгоритм вентиляции по CO₂ (Node-RED)
|
||||||
|
- [[family/documents/home-wishlist]] — хотелки по дому и участку (не автоматизация)
|
||||||
|
- [[family/index]] — топик-карта family/
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
updated: >-
|
updated: >-
|
||||||
2026-09-14 (ночь-15: добавлен §2 «Внешний доступ к t610» — SSH снаружи нет,
|
2026-09-14 (ночь-16: §2 — железо хоста + канон чтения температуры CPU
|
||||||
jump через TrueNAS запрещён)
|
`k10temp`; питфоллы: пустой `thermal_zone`, нет бинарника `sensors`)
|
||||||
namespace: family
|
namespace: family
|
||||||
status: works
|
status: works
|
||||||
---
|
---
|
||||||
@@ -71,6 +71,29 @@ status: works
|
|||||||
| IP | **192.168.2.176** (DHCP-имя `homeassistant`, MAC `9c:8e:99:ef:3f:c5`). **✅ Static-привязка ЗАКРЕПЛЕНА 2026-09-14 (вечер-8) на роутере `192.168.2.2`** — см. §5-кватер-И |
|
| IP | **192.168.2.176** (DHCP-имя `homeassistant`, MAC `9c:8e:99:ef:3f:c5`). **✅ Static-привязка ЗАКРЕПЛЕНА 2026-09-14 (вечер-8) на роутере `192.168.2.2`** — см. §5-кватер-И |
|
||||||
| Web UI | **`http://192.168.2.176`** — порт **80**. Порт 8123 закрыт |
|
| Web UI | **`http://192.168.2.176`** — порт **80**. Порт 8123 закрыт |
|
||||||
| SSH | `ssh -i ~/.ssh/id_rsa root@192.168.2.176` — только через аддон `core_ssh` (порт 22) |
|
| SSH | `ssh -i ~/.ssh/id_rsa root@192.168.2.176` — только через аддон `core_ssh` (порт 22) |
|
||||||
|
| Процессор | **AMD G-T56N** (2×1.65 ГГц, TDP 18 Вт). Idle-частота ~823 МГц |
|
||||||
|
| Температура CPU | **57.5–58.0 °C** при холостой нагрузке (замер 2026-09-14). Порог `max` = **70 °C**, `crit` = **100 °C** |
|
||||||
|
|
||||||
|
### 🌡 Чтение температуры CPU на t610 (канон, проверено 2026-09-14)
|
||||||
|
|
||||||
|
Датчик — **`k10temp`** (AMD). **Читать ТОЛЬКО так:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ssh root@192.168.2.176 \
|
||||||
|
'awk "{printf \"%.1f C\n\", \$1/1000}" /sys/class/hwmon/hwmon0/temp1_input'
|
||||||
|
```
|
||||||
|
|
||||||
|
> 🔴 **ПИТФОЛЛ 1: `/sys/class/thermal/thermal_zone*` на этом хосте НЕ СУЩЕСТВУЕТ** (вывод пустой, exit 0 — выглядит как «датчика нет»). Температура живёт **только** в `hwmon0` (= `k10temp`). Не делать вывод «датчик недоступен» по пустому `thermal_zone`.
|
||||||
|
> 🔴 **ПИТФОЛЛ 2: бинарника `sensors` (lm-sensors) в SSH-аддоне НЕТ** — `sensors` → `command not found`. Читать напрямую из sysfs.
|
||||||
|
> ⚠️ **Значения в миллиградусах** — делить на 1000 (`57500` = 57.5 °C).
|
||||||
|
> ⚠️ `/sys/class/thermal/*` в HA OS **не персистентен** — номер `hwmonN` может измениться после ребута; надёжнее искать по `name`:
|
||||||
|
> ```bash
|
||||||
|
> for d in /sys/class/hwmon/hwmon*; do
|
||||||
|
> [ "$(cat $d/name)" = "k10temp" ] && awk '{printf "%.1f C\n", $1/1000}' $d/temp1_input
|
||||||
|
> done
|
||||||
|
> ```
|
||||||
|
|
||||||
|
**Ориентиры (G-T56N, пассивное охлаждение):** 55–65 °C — норма; **70 °C** (`temp1_max`) — повод проверить обдув/пыль; 100 °C — throttling. Под нагрузкой (ffmpeg-транскод камеры, `ha apps rebuild`, опрос шины) температура растёт — замер 58 °C сделан при `load 0.2` (холостой), это **не потолок**.
|
||||||
|
|
||||||
**Про SSH:** в HA OS SSH выключен по умолчанию. Включается аддоном `core_ssh` (Terminal & SSH): положить публичный ключ в `authorized_keys`. Пароля root не существует, вход только по ключу.
|
**Про SSH:** в HA OS SSH выключен по умолчанию. Включается аддоном `core_ssh` (Terminal & SSH): положить публичный ключ в `authorized_keys`. Пароля root не существует, вход только по ключу.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user