[2026-09-17] eagle: family/how-to/gitea-config.md family/how-to/home-automation.md family/how-to/zont-config-compiler.md family/tech/t610-hang-investigation.md family/tech/t610-hw-metrics-addon.md family/tech/t610-relay-off-log-forensics.md family/tech/zont-api.md family/tech/zont-config-object-types.md family/tech/zont-scenario-logic-11109.md personal/projects/zont-config-compiler.md
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
title: "🔴 t610: зависания — диагностика (незакрыто)"
|
||||
aliases: [t610 hang, t610 зависание, t610 freeze, RCU stall investigation, MemTotal деградация, UMA frame buffer, BIOS update t610, CMOS батарейка]
|
||||
tags: [family, tech, smarthome, t610, incident]
|
||||
updated: 2026-09-17b
|
||||
updated: 2026-09-17c
|
||||
---
|
||||
|
||||
# 🔴 t610 — зависания: состояние расследования
|
||||
@@ -11,6 +11,8 @@ updated: 2026-09-17b
|
||||
> ✅ **2026-09-17: следы больше не теряются** — заведён сбор метрик аддоном `local_hw_metrics`:
|
||||
> 11 датчиков в HA + строка на диск со `sync` каждые 60 с → **[[family/tech/t610-hw-metrics-addon]]**.
|
||||
> Каждый следующий инцидент оставит данные за последнюю минуту жизни хоста.
|
||||
> 🆕 **2026-09-17: ВТОРОЙ рестарт за сутки** — HA Core стартовал 02:44:33 UTC (09:44:33 +07),
|
||||
> причина **неизвестна**. Разбор ложного «выключения реле котла» — **§1.1**.
|
||||
> **Три кандидата:** (A) 🔴 **память** — стоит 4 ГБ, оба слота заняты, видно 1.44 ГБ
|
||||
> (§3.1.0) + 🔑 **UMA Frame Buffer в BIOS** как документированный механизм потери (§3.1.3)
|
||||
> + 🔑 **батарейка CMOS** (§3.1.4) · (B) деградация носителя → SQLite disk I/O (§5).
|
||||
@@ -34,6 +36,61 @@ updated: 2026-09-17b
|
||||
Alex перезапустил t610 вручную (сброс питанием) **2026-09-17 ~09:38 +07**.
|
||||
Хост поднялся заново; HA Core стартовал ~09:41–09:43.
|
||||
|
||||
### 1.1. 🔴 Второй инцидент за сутки: рестарт HA Core 2026-09-17 02:44:33 UTC (09:44:33 +07)
|
||||
|
||||
> **Повод:** Alex спросил «посмотри в логе, почему последний раз выключалось реле адаптера котла».
|
||||
> Разбор — фактом по логбуку, **без версий**.
|
||||
|
||||
**Симптом:** `switch.boiler_controller_power` (розетка питания контроллера котла) — выключилось.
|
||||
|
||||
**Что показал логбук (окно 02:30–02:48 UTC):**
|
||||
|
||||
```
|
||||
02:44:26 sensor.sm_s931b_battery_state → discharging ← телефон Alex, не связано
|
||||
02:44:32.658 switch.boiler_controller_power → unavailable
|
||||
02:44:33.033 switch.recirculation_pump → off
|
||||
02:44:33.663 - (null) message=started ← 🔑 ЗАПУСК HA CORE
|
||||
02:44:40.946 switch.sauna → off
|
||||
02:44:42.104 switch.heating_cable_plug → off
|
||||
02:44:42.172 light.dushevaia_night_light → off
|
||||
02:45:09.291 switch.boiler_controller_power → on ← вернулось САМО через 36 с
|
||||
02:45:10.254 switch.boiler_controller_power_child_lock → off
|
||||
```
|
||||
|
||||
> ✅ **ВЫВОД: реле физически НЕ выключалось.** Выключился/перезапустился **HA Core**,
|
||||
> ZHA на время потеряла связь с Zigbee-устройствами, и HA записала дефолтные состояния.
|
||||
>
|
||||
> **Доказательства (четыре независимых):**
|
||||
> 1. **`message=started`** в 02:44:33 — запись о **старте HA Core** вклинилась ровно
|
||||
> между пропаданием и возвратом реле.
|
||||
> 2. **Все Zigbee-реле ушли в `off`/`unavailable` одним окном** 02:44:33–42
|
||||
> (`recirculation_pump`, `sauna`, `heating_cable_plug`, `dushevaia_night_light`) —
|
||||
> это потеря связи, а не выключение каждого реле.
|
||||
> 3. **`boiler_controller_power` вернулось в `on` само через 36 с** без команды.
|
||||
> Реальное выключение реле так себя не ведёт.
|
||||
> 4. В атрибутах `select.boiler_controller_power_power_outage_memory` = **`LastState`** —
|
||||
> Zigbee-реле при потере связи **сохраняют последнее состояние**. Котёл продолжал питаться.
|
||||
|
||||
**Практический вывод для Alex:** реле адаптера котла всё время оставалось под питанием,
|
||||
отопительный контур не прерывался. Тревога ложная по существу.
|
||||
|
||||
> 🔴 **Что осталось неизвестным:** **почему HA Core перезапустился в 02:44:33 UTC.**
|
||||
> Логбук фиксирует факт старта, но не причину. Копать: `ha core logs`,
|
||||
> `ha supervisor logs`, журнал рестартов ядра.
|
||||
> ⚠️ Это **второй рестарт за сутки** (первый — ручной сброс питанием ~09:38 +07, §1).
|
||||
> Совпадение по времени с общей нестабильностью хоста — **кандидат в общее расследование.**
|
||||
|
||||
> 📌 **Метод (воспроизводимо, оба способа дали результат):**
|
||||
> ```bash
|
||||
> # история с АТРИБУТАМИ (без minimal_response — иначе нет деталей)
|
||||
> curl -s -H @/tmp/h1 "$B/api/history/period/<ISO>+00:00?end_time=<ISO>%2B00:00&filter_entity_id=switch.boiler_controller_power" | jq -r '.[] | .[] | "\(.last_changed) \(.state)"'
|
||||
>
|
||||
> # логбук по окну — видно .message ("started") и весь контекст дома
|
||||
> curl -s -H @/tmp/h1 "$B/api/logbook/<ISO>+00:00?end_time=<ISO>%2B00:00" | jq -r '.[] | "\(.when) \(.entity_id // "-") \(.state) \(.message // "")"'
|
||||
> ```
|
||||
> 🔑 **Логбук по ВСЕМУ дому, а не по одной сущности** — именно так нашлась запись
|
||||
> `message=started`, которой нет в истории отдельной сущности.
|
||||
|
||||
### 1.0. 📋 ФОРМУЛИРОВКА ЗАДАЧИ (согласованная формулировка сессии)
|
||||
|
||||
> Alex несколько раз требовал переписать формулировку — без ссылок на доки, только
|
||||
|
||||
Reference in New Issue
Block a user