[2026-09-14] eagle: family/how-to/t610-access.md family/plans/home-automation-migration-t610.md family/plans/t610-addons-deployment.md

This commit is contained in:
Alexey Martemyanov
2026-09-14 10:02:52 +06:00
parent d2022c6112
commit 9ce79baab4
3 changed files with 140 additions and 8 deletions
+56 -1
View File
@@ -4,7 +4,7 @@
> План переноса: [[family/plans/home-automation-migration-t610]]
> Развёртывание сервисов: [[family/plans/t610-addons-deployment]]
> ✅ **Состояние на 2026-09-14 (Этап 2 закрыт):** z2m (16 устройств), mbusd (порт 502), modbus-bridge (MQTT + HA-опрос) — все развёрнуты аддонами и **работают**. В HA добавлена **MQTT-интеграция** (её не было → z2m/bridge не создавали сущности; стало 104 сущности, 69 Zigbee). Далее — Этап 3 (перенос HA-конфига с TrueNAS).
> ✅ **Состояние на 2026-09-14 (Этап 2 закрыт, Этап 3 в работе):** z2m (16 устройств), mbusd (порт 502), modbus-bridge (MQTT + HA-опрос) — все развёрнуты аддонами и **работают**. В HA добавлена **MQTT-интеграция** (её не было → z2m/bridge не создавали сущности; стало 104 сущности, 69 Zigbee). Этап 3 перенос HA-конфига с TrueNAS (разведка выполнена, решения приняты, ждём ответа Alex по HACS / схеме Zigbee-имён).
## Основное
@@ -298,6 +298,61 @@ ha apps uninstall local_<slug> && ha store reload && ha apps install local_<slug
> 📌 В HA 2026.x аддоны в UI называются **Settings → Apps** (не «Add-ons»). Пункта «Add-ons» в меню больше нет.
## Работа с данными z2m на t610 (2026-09-14)
**Файлы в `/config/zigbee2mqtt/`:**
| Файл | Что это |
|---|---|
| `database.db` | база z2m (устройства, endpoints, keys) |
| `configuration.yaml` | конфиг z2m: `network_key`, `pan_id`, `ext_pan_id`, `channel`, `serial`, `mqtt`, **секция `devices:` с `friendly_name`** |
| `coordinator_backup.json` | бэкап координатора |
| `state.json` | runtime-состояние |
| `log/<ts>/log.log` | логи запуска |
**⚠️ ПИТФОЛЛ: `database.db` — это НЕ SQLite, а JSON Lines** (по одному JSON-объекту на строку, расширение `.db` обманчиво).
- `sqlite3 database.db "SELECT ..."`**`Error: in prepare, file is not a database (26)`** — не тратить на это время.
- Читать через `jq` построчно (каждый объект = устройство):
```bash
scp root@192.168.2.176:/config/zigbee2mqtt/database.db /Users/admin/tmp-t610/z2m-live.db
jq -r 'select(.type!="Coordinator") | [.ieeeAddr, .type, (.manufName // "-")] | @tsv' /Users/admin/tmp-t610/z2m-live.db
# .ieeeAddr, .type (EndDevice/Router/Coordinator), .manufName (модель Tuya, напр. _TZ3000_gjnozsaz)
```
- В SSH-аддоне **нет `sqlite3`** — базу копировать на Mac (`scp`) и разбирать там.
> 📌 **`modelID` в `database.db` пустой** (не заполнился при переносе базы 1:1), но `manufName` даёт модель Tuya — по ней определяется тип устройства.
> ⚠️ **`friendly_name` устройств z2m = hex-адрес.** Все 16 устройств в `configuration.yaml → devices:` имеют `friendly_name: '0xa4c138...'` — это состояние с TrueNAS. Отсюда технические `entity_id` в HA (`sensor.0xa4c138..._temperature`). Исправление — Этап 3, [[family/plans/t610-addons-deployment]] §«Zigbee friendly_name».
## HA-конфиг: что где лежит (TrueNAS → t610, разведка 2026-09-14)
**На TrueNAS** конфиг HA: `/mnt/RED_2TB/docker/ha/` (доступ: `ssh truenas_admin@mallexxx.duckdns.org`).
**Состав (для переноса в Этапе 3):**
- `configuration.yaml` (~30 КБ), `automations.yaml`, `scripts.yaml` (~30 КБ), `secrets.yaml`
- `www/``card-mod.js` + `floorplan/floor1_ha.svg`, `floor2_ha.svg`
- `.storage/`**35 файлов**, переносить **выборочно** ⚠️
- `custom_components/``hacs` (2.0.5, репо пусто), `localtuya` (5.2.3, **используется**), `tuya_local` (2026.7.2, не используется)
- `home-assistant_v2.db` — 142 МБ, **не переносится** (решение: история с нуля)
**⚠️ `.storage/` НЕ копировать целиком** — смешаны системные файлы t610 и контентные TrueNAS:
-**НЕ трогать:** `core.uuid` (подменит `instance_id`), `auth`, `auth_provider.homeassistant` (сломает логин), `http`, `http.auth`, `onboarding`, `core.config`, `core.config_entries`
-**Переносить:** `core.entity_registry` (критично!), `core.device_registry`, `core.area_registry`, `core.floor_registry`, `core.restore_state`, `lovelace.home_plan`, `lovelace_dashboards`, `lovelace_resources`, `person`, `zone`
**Порядок критичен:** сначала реестры, **потом** (после старта HA) правка `friendly_name` в z2m и `entity_id` в HA. Переименование до переноса реестров пропадёт — HA перезапишет реестр.
**Полезные команды разведки конфига (из SSH-аддона на t610):**
```bash
ls -la /config/ # состав HA-конфига
ls /config/.storage/ | wc -l # число файлов реестра
jq -r '.data.entries[].domain' /config/.storage/core.config_entries | sort | uniq -c # какие интеграции подключены
jq -r '.data.entities | length' /config/.storage/core.entity_registry # число сущностей
cat /config/.HA_VERSION # версия HA
```
На TrueNAS аналогично, путь `/mnt/RED_2TB/docker/ha/` (читать под `truenas_admin`).
> 📌 **Как узнать, используется ли интеграция:** `jq -r '.data.entries[].domain' core.config_entries` — если домена нет, компонент не подключён (напр. `tuya_local` стоял в файлах, но config entry отсутствовал → не использовался).
## Связанные заметки
- [[family/plans/home-automation-migration-t610]] — план миграции (родительский)
- [[family/plans/t610-addons-deployment]] — развёртывание аддонов