Дигитална екипировка

HOME ASSISTANT — ЧАСТ 8

SHTF Dashboard — какво всъщност трябва да виждам?

HOME ASSISTANT — ЧАСТ 8

🖥️ SHTF Dashboard — какво всъщност трябва да виждам?

В предишните седем части постепенно натрупахме доста неща.

Започнахме съвсем невинно:

💡 лампи;

🤖 автоматизации;

🏠 LOCAL control;

🌐 Internet зависимости;

⚡ UPS и резервно захранване;

👁️ monitoring;

⚙️ автоматични реакции;

⛈️ мълнии, времето и събитията около нас.

И в един момент Home Assistant започна да знае ужасно много.

Температурата в хола.

Температурата във фризера.

Колко ток харчи NAS-ът.

Има ли Internet.

Колко процента е UPS-ът.

Има ли теч.

Какво е качеството на въздуха.

Има ли мълнии наблизо.

Има ли официално предупреждение.

Дали някой sensor е Unavailable.

Прекрасно.

Само че сега имаме нов проблем.

КАК, ПО ДЯВОЛИТЕ, ДА ВИДЯ ВСИЧКО ТОВА? 😂


📊 ДОБРЕ ДОШЛИ В DASHBOARD HELL

Всеки, който си е играл достатъчно дълго с Home Assistant, вероятно е минавал през тази фаза.

Имаме sensor.

Слагаме го на dashboard-а.

После още един.

И още един.

После graph.

После gauge.

После mushroom card.

После weather card.

После battery card.

После карта.

После CPU usage.

После температурата на процесора.

После свободната RAM.

После колко пакета е изпратил router-ът.

После фазата на Луната.

😂

И след няколко месеца имаме нещо, което изглежда сякаш:

УПРАВЛЯВАМЕ АЕЦ „КОЗЛОДУЙ“.

Само че искаме да разберем дали има теч под бойлера.


🧠 ПОВЕЧЕ ИНФОРМАЦИЯ ≠ ПО-ДОБРА ИНФОРМАЦИЯ

Това е ключът към цялата Част 8.

Мога да ви покажа:

137 стойности.

Но ако трябва да ги разглеждате една по една, за да разберете дали има проблем…

системата не ви помага особено.

Тя просто ви е прехвърлила работата.

Затова аз бих започнал проектирането на SHTF Dashboard не с въпроса:

„Какво мога да покажа?“

А с:

„КАКВО ТРЯБВА ДА РАЗБЕРА ЗА 5 СЕКУНДИ?“


👁️ ПЪРВИЯТ ЕКРАН ТРЯБВА ДА ОТГОВАРЯ НА ЕДИН ВЪПРОС

ВСИЧКО НОРМАЛНО ЛИ Е?

Това е.

Не ме интересува веднага дали:

температурата е 22.3°C;

UPS load е 17%;

PM2.5 е някаква конкретна стойност;

router uptime е 16 дни;

фризерът е −18.4°C.

Тези данни са полезни.

Но само когато ми потрябват.

Първо искам:

🏠 HOUSE STATUS

🟢 NORMAL

или:

🟡 ATTENTION

или:

🔴 PROBLEM

или нещо, което често забравяме:

⚪ UNKNOWN


⚪ UNKNOWN Е ИСТИНСКО СЪСТОЯНИЕ

В Част 7 стигнахме до:

UNKNOWN ≠ SAFE.

И това е изключително важно за dashboard-а.

Ако weather service не се е обновявала от два часа…

не трябва да виждам:

🟢 WEATHER NORMAL.

А:

⚪ WEATHER DATA UNAVAILABLE.

Ако leak sensor е Unavailable:

не искам:

🟢 WATER CLEAR.

Искам:

⚪ LEAK SENSOR OFFLINE.

Защото има огромна разлика между:

„Проверих и няма проблем.“

и:

„Нямам идея какво става.“


🚦 ЗАТОВА ЩЕ ИЗПОЛЗВАМЕ ЕДИН МНОГО ПРОСТ ЕЗИК

Не е стандарт.

Не е Home Assistant requirement.

Просто удобна логика за нашия dashboard:

🟢 NORMAL

Всичко, което наблюдаваме, е в очакваното състояние.

🟡 ATTENTION

Има отклонение, което заслужава внимание.

🟠 WARNING

Има проблем или развиваща се ситуация.

🔴 CRITICAL

Има ситуация, която изисква действие.

⚪ UNKNOWN

Нямаме надеждна актуална информация.

Пет състояния.

Достатъчно.


🏠 И СЕГА РАЗДЕЛЯМЕ КЪЩАТА НА СИСТЕМИ

Не искам 86 sensors.

Искам няколко смислени блока.

Например:

⚡ POWER

💧 WATER

🌫️ AIR

🧊 FOOD

🌐 COMMS

⛈️ WEATHER

🌍 EVENTS

🏠 HOUSE

И евентуално по-късно:

👨‍👩‍👧 FAMILY;

🔐 SECURITY;

🚗 VEHICLES;

📻 COMMS/LoRa;

☀️ SOLAR;

🔋 ENERGY RESERVE.

Но K.I.S.S.

Започваме с това, което реално ни трябва.


⚡ POWER

Този блок трябва да отговори:

„Имам ли ток и колко устойчиво е захранването ми?“

Не ми трябват веднага 17 графики.

Първият слой може да изглежда така:

⚡ POWER

GRID: 🟢 ONLINE
UPS: 🟢 ONLINE
BATTERY: 100%

Това е достатъчно.

Но токът спира:

⚡ POWER

GRID: 🔴 OFFLINE
UPS: 🟡 ON BATTERY
BATTERY: 82%

Ето.

За една секунда разбирам какво става.


🔋 А АКО НАТИСНА POWER?

Тогава вече може да видя:

UPS load;

battery charge;

estimated runtime;

input voltage;

output voltage;

energy consumption;

solar production;

battery storage;

история.

Това е:

PROGRESSIVE DISCLOSURE.

Първо ми показваш важното.

Подробностите са на второ ниво.


💧 WATER

Същото.

Не искам първоначално да виждам:

Leak Kitchen Sink: Dry
Leak Dishwasher: Dry
Leak Washing Machine: Dry
Leak Boiler: Dry
Leak Bathroom: Dry
Valve Position: 100%

Искам:

💧 WATER

🟢 CLEAR

Толкова.

Но ако стане нещо:

💧 WATER

🔴 LEAK DETECTED

Location: Boiler
Main valve: CLOSED

Ето това ме интересува.


👁️ NORMAL МОЖЕ ДА БЪДЕ СВИТО. ПРОБЛЕМЪТ ТРЯБВА ДА СЕ РАЗГЪНЕ.

Това е принципът, който бих използвал навсякъде.

Когато всичко е наред:

💧 WATER — 🟢 CLEAR

Когато има проблем:

💧 WATER — 🔴 LEAK

и автоматично показваме:

📍 къде;

⏱️ от кога;

🚰 състояние на вентила;

⚙️ какво е направила automation-ът;

📱 дали alert-ът е изпратен.

Тоест dashboard-ът сам започва да ни показва повече информация точно когато тя ни трябва.


🌫️ AIR

Тук лесно можем да създадем чудовище.

CO₂.

CO.

PM2.5.

PM10.

VOC.

Humidity.

Temperature.

Smoke.

И още куп показатели.

Но на основния екран?

🌫️ AIR

🟢 NORMAL

Ако има проблем:

🌫️ AIR

🟠 AIR QUALITY

PM2.5: ↑
Room: Living room
Trend: RISING

Ако сертифициран CO detector се активира:

☠️ CO

🔴 ALARM

Това вече трябва да е визуално невъзможно да бъде пропуснато.

И отново — Home Assistant е допълнителен информационен слой, не заместител на локалната сертифицирана аларма.


🧊 FOOD

Това е един от любимите ми блокове, защото е прост и практичен.

В нормално състояние:

🧊 FOOD

FRIDGE: 🟢 NORMAL
FREEZER: 🟢 NORMAL

Не ме интересува дали фризерът е −18.1 или −18.7°C.

Докато всичко е нормално.

Но ако:

температурата се покачва;

вратата е останала отворена;

няма захранване;

sensor-ът е offline…

тогава искам подробностите.

Например:

🧊 FREEZER

🟠 TEMPERATURE RISING

Current: −11.8°C
Trend: ↑
Power: ON
Door: CLOSED

Това вече е информация за решаване.


🌐 COMMS

След Част 3 вече знаем:

Wi-Fi ≠ Internet.

И:

LAN ≠ Internet.

Затова:

🌐 COMMS

LAN: 🟢 ONLINE
INTERNET: 🟢 ONLINE

При проблем:

🌐 COMMS

LAN: 🟢 ONLINE
INTERNET: 🔴 OFFLINE

Вече знам:

локалната инфраструктура е жива.

Външната връзка я няма.

Съвсем различно от:

„Няма мрежа.“


📡 ТУК ПО-КЪСНО МОЖЕМ ДА ДОБАВИМ И ДРУГИ КОМУНИКАЦИИ

Например:

📻 LoRa;

📡 Meshtastic;

📡 MeshCore;

📶 LTE/5G backup;

🌐 secondary WAN;

📻 други gateways.

И тогава COMMS може да изглежда така:

LAN: 🟢
WAN: 🔴
LTE: 🟢
LoRa: 🟢

И изведнъж:

„Internet падна.“

не означава:

„Нямаме комуникация.“

Това е съвсем различен начин на мислене.


⛈️ WEATHER

След Част 7 вече имаме и външната обстановка.

Основният екран може да казва:

⛈️ WEATHER

🟢 NORMAL

Но при промяна:

⛈️ WEATHER

🟠 ACTIVITY NEARBY

⚡ Lightning: 21 km
🚨 Official warning: ACTIVE
🌧️ Rain: Approaching

И ако искам повече:

натискам блока.


⚡ ТУК НЕ ИСКАМ ВСЯКА МЪЛНИЯ

Помните ли?

Ако Home Assistant ми покаже 300 разряда…

получавам много данни.

Но не непременно повече полезна информация.

Затова на основния dashboard:

⚡ LIGHTNING — 21 km

може да е напълно достатъчно.

После отделната Lightning view може да има:

🗺️ карта;

⚡ strikes;

📍 distance;

🧭 azimuth;

📈 activity;

⏱️ history.


🌍 EVENTS

Тук можем да събираме външни събития:

🚨 официални предупреждения;

🌍 geo_location events;

🌎 земетресения;

🌊 наводнения;

🔥 пожари, ако имаме подходящ източник;

други данни, които реално са релевантни за нас.

Нормално:

🌍 EVENTS

🟢 NONE

И това е всичко.

Ако има нещо:

🌍 EVENTS

🟡 1 EVENT NEARBY

И чак тогава разгъваме.


🏠 HOUSE STATUS Е ОБОБЩЕНИЕТО

Тук става интересно.

Ако всички основни системи са:

🟢

тогава:

🏠 HOUSE — 🟢 NORMAL

Но ако:

POWER = 🟢
WATER = 🟢
AIR = 🟢
FOOD = 🟠
COMMS = 🟢
WEATHER = 🟢
EVENTS = 🟢

тогава:

🏠 HOUSE — 🟠 ATTENTION

И dashboard-ът веднага трябва да насочи погледа ми към:

🧊 FOOD.

Не аз да търся проблема.

ПРОБЛЕМЪТ ДА НАМЕРИ МЕН.


🧠 ТОВА Е ЦЯЛАТА ФИЛОСОФИЯ

Представете си два dashboard-а.

Първият:

67 зелени икони.

19 gauges.

14 graphs.

32 числа.

Изглежда невероятно.

Вторият:


🏠 HOUSE

🟡 ATTENTION

⚡ POWER

🟢 NORMAL

💧 WATER

🟢 CLEAR

🌫️ AIR

🟢 NORMAL

🧊 FOOD

🟠 FREEZER TEMP RISING

🌐 COMMS

🟢 ONLINE

⛈️ WEATHER

🟢 NORMAL

🌍 EVENTS

🟢 NONE


Кой ми е по-полезен?

За мен отговорът е очевиден.


📱 И ТОВА ТРЯБВА ДА РАБОТИ И НА ТЕЛЕФОН

Това е нещо, което лесно забравяме.

На 27-инчов монитор мога да направя прекрасен command center.

Само че когато ми потрябва…

много вероятно е да държа:

телефона.

Затова основният dashboard трябва да бъде:

📱 четим;

👆 лесен за натискане;

⚡ бърз;

🧠 разбираем без анализ.

Не искам да zoom-вам.

Не искам да скролвам през три километра карти.

Не искам да търся кой sensor е червен.


🎨 ЦВЕТОВЕТЕ СЪЩО ТРЯБВА ДА ИМАТ СМИСЪЛ

Ако всичко е:

🔴🟡🟢🔵🟣🟠

цветът вече не означава нищо.

😂

Затова бих пазил силните цветове за състояние.

🟢 normal;

🟡 attention;

🟠 warning;

🔴 critical;

⚪ unknown.

И бих държал останалата част от интерфейса сравнително спокойна.

Така когато нещо стане червено…

окото веднага отива там.


🚨 ЧЕРВЕНОТО ТРЯБВА ДА Е РЯДКО

Ако половината dashboard е червен постоянно…

след три дни:

ЧЕРВЕНОТО СТАВА ТАПЕТ.

Същото важи и за notifications.

Critical трябва да означава:

CRITICAL.

Не:

„Батерията на sensor-а в килера е 39%.“

😂


🧠 А КАК ПРАВИМ ТЕЗИ ОБОБЩЕНИ СЪСТОЯНИЯ?

Тук Home Assistant ни дава няколко подхода.

Можем да използваме:

helpers;

template entities;

groups;

binary sensors;

automations;

scripts;

и логика, която превръща няколко отделни състояния в едно обобщено.

Например концептуално:

WATER STATUS

ако всички leak sensors са dry:

🟢 CLEAR.

Ако един е wet:

🔴 LEAK.

Ако един критичен sensor е unavailable:

⚪ UNKNOWN.

Така dashboard-ът не трябва да мисли за пет различни sensors.

Получава:

ЕДНО СЪСТОЯНИЕ.


⚠️ НО ВНИМАВАЙТЕ С „ВСИЧКО Е ЗЕЛЕНО“

Това е може би най-важната техническа грешка, която бих искал да избегнем.

Имаме пет leak sensors.

Четири казват:

DRY.

Петият:

UNAVAILABLE.

Ако логиката ни е:

„Няма sensor, който казва WET → значи CLEAR.“

ще покажем:

🟢 CLEAR.

Грешка.

Правилното заключение е:

⚪ UNKNOWN / SENSOR OFFLINE.

Защото:

ЛИПСАТА НА АЛАРМА НЕ Е ДОКАЗАТЕЛСТВО ЗА ЛИПСА НА ПРОБЛЕМ.

Това е много важна разлика.


⏱️ ИНФОРМАЦИЯТА ИМА СРОК НА ГОДНОСТ

Още един проблем.

Sensor казва:

−18°C.

Чудесно.

Но:

кога го каза?

Ако последният update е преди 30 секунди — чудесно.

Ако е преди 9 часа…

вече не ме интересува толкова самата стойност.

Интересува ме:

ЗАЩО НЕ СЕ ОБНОВЯВА?

Следователно един добър dashboard трябва да мисли не само:

VALUE.

А и:

AVAILABILITY + FRESHNESS.


🕐 LAST UPDATED МОЖЕ ДА Е ПО-ВАЖНО ОТ VALUE

Например:

Freezer: −18°C

изглежда прекрасно.

Но:

Last update: 7h 42m ago

😐

Сега вече имаме съвсем различна картина.

Затова при важните sensors бих следил и:

„Жив ли си?“


🔋 СЪЩОТО ВАЖИ ЗА БАТЕРИИТЕ

Не искам основният dashboard да показва:

Sensor 1 — 87%
Sensor 2 — 63%
Sensor 3 — 42%
Sensor 4 — 91%
Sensor 5 — 28%…

Искам:

🔋 SENSOR HEALTH

🟢 OK

А ако някой започне да изисква внимание:

🟡 2 DEVICES NEED ATTENTION

Натискам.

Тогава виждам кои.


📊 А ГРАФИКИТЕ?

Разбира се, че имат място.

Графиките са страхотни за:

📈 тенденции;

🔋 battery discharge;

🌡️ температури;

⚡ consumption;

🌫️ air quality;

⚡ lightning activity;

☀️ solar production.

Но според мен те принадлежат основно на:

ВТОРИЯ СЛОЙ.

Не на основния situation screen.

Основният екран трябва да отговаря:

„Има ли проблем?“

Графиката помага да отговорим:

„Как се развива проблемът?“


🖥️ ТРИ НИВА НА ИНФОРМАЦИЯ

Аз бих организирал системата приблизително така:

НИВО 1 — STATUS

За 5 секунди:

Всичко наред ли е?


НИВО 2 — DETAILS

Къде е проблемът?

Каква е текущата стойност?

Какво се е променило?


НИВО 3 — ANALYSIS

Графики.

История.

Logs.

Trends.

Automation traces.

Диагностика.

Това е много по-разумно от всичко на един екран.


📺 А МОЖЕ ЛИ ДА ИМА ОТДЕЛЕН „COMMAND CENTER“?

Разбира се.

И тук вече може да си поиграем. 😁

Стар tablet на стената.

Монитор.

Touchscreen.

Телевизор.

Raspberry Pi display.

И можем да имаме голям:

🏠 SHTF STATUS

който постоянно показва основното състояние.

Но отново:

нека бъде полезен.

Не просто красив.


🌙 А ПРЕЗ НОЩТА?

И тук може да има логика.

Когато всичко е:

🟢 NORMAL

екранът може да бъде:

затъмнен;

минимален;

дори изключен.

Но ако:

🔴 CRITICAL

може да светне;

да покаже проблема;

да промени изгледа;

да даде ясна информация.

Отново:

ИНФОРМАЦИЯТА ИДВА ПРИ НАС, КОГАТО Е НУЖНА.


🧠 А МОЖЕ ЛИ DASHBOARD-ЪТ ДА СЕ ПРОМЕНЯ СПОРЕД СИТУАЦИЯТА?

Ето тук става много интересно.

NORMAL MODE:

показва основните блокове.

BLACKOUT MODE:

POWER се качва най-горе.

Показваме:

🔋 UPS;

⏱️ runtime;

⚡ load;

🌐 communications;

☀️ solar/battery, ако има.

При:

💧 LEAK

WATER става основният panel.

При:

⛈️ WEATHER WARNING

WEATHER и EVENTS излизат отпред.

Тоест dashboard-ът може да бъде:

КОНТЕКСТЕН.

Не просто статична картинка.


🎯 ТОВА Е „ПРИОРИТИЗИРАЙ“

И забележете как пак се връщаме към нашия алгоритъм:

👁️ ВЪЗПРИЕМИ

Sensors и външни източници.

↓

🧠 ОЦЕНИ

Home Assistant сравнява състояния, thresholds, availability, trends.

↓

🎯 ПРИОРИТИЗИРАЙ

Dashboard-ът показва най-важното.

↓

⚙️ ДЕЙСТВАЙ

Automation или човек.

↓

🔄 ПРЕОЦЕНИ

Състоянието се обновява.

↓

🧩 АДАПТИРАЙ СЕ

Системата преминава в друг режим.

Изведнъж dashboard-ът вече не е просто интерфейс.

Той е част от процеса.


🏠 МОЯТ ИДЕАЛЕН SHTF DASHBOARD?

Вероятно би изглеждал доста скучно през 99% от времето.

И това е прекрасно.

😂

Нещо от типа:


🏠 HOME

🟢 ALL SYSTEMS NORMAL

⚡ POWER — 🟢
💧 WATER — 🟢
🌫️ AIR — 🟢
🧊 FOOD — 🟢
🌐 COMMS — 🟢
⛈️ WEATHER — 🟢
🌍 EVENTS — 🟢
🔋 SENSORS — 🟢


Толкова.

Ако го погледна за две секунди:

всичко е наред.

Продължавам си деня.


Но ако нещо се промени:

🏠 HOME

🟠 ATTENTION

⚡ POWER — 🟢
💧 WATER — 🟢
🌫️ AIR — 🟢
🧊 FOOD — 🔴 FREEZER
🌐 COMMS — 🟢
⛈️ WEATHER — 🟡 LIGHTNING 24 km
🌍 EVENTS — 🟢
🔋 SENSORS — 🟢

Сега вече имам причина да погледна.


😁 И НЕ — НЕ НИ ТРЯБВА NASA MISSION CONTROL

Това е много лесен капан.

Когато имаме възможност да покажем всичко…

искаме да покажем всичко.

Но добрият интерфейс не показва всичко.

Показва това, което има значение В МОМЕНТА.

Същото е и с екипировката.

Можеш да носиш 37 инструмента.

Но когато трябва да отрежеш въже…

искаш да знаеш:

къде е ножът.

😂


🧩 ИМА ОБАЧЕ ЕДИН ПОСЛЕДЕН ПРОБЛЕМ

Вече построихме чудесна система.

Имаме:

Home Assistant.

Sensors.

Zigbee coordinator.

Router.

Switch.

UPS.

Automations.

Dashboards.

External services.

Notifications.

Всичко прекрасно.

Само че…

какво става, ако самият Home Assistant умре?

😏


☠️ SINGLE POINT OF FAILURE

Това е въпросът, който трябва да зададем.

Защото колкото повече функции даваме на една система…

толкова по-важна става тя.

И ако:

SSD-то умре;

хардуерът се повреди;

database се повреди;

update счупи нещо;

coordinator спре;

router умре;

конфигурацията се обърка…

може внезапно да загубим много повече от:

„лампите не се включват сами“.

И това ще бъде следващата ни тема.


👉 В ЧАСТ 9:

☠️ КОЛКО ТЪП СТАВА УМНИЯТ ТИ ДОМ, КОГАТО HOME ASSISTANT УМРЕ?

Ще говорим за:

💾 backups;

🖥️ резервен хардуер;

🐝 Zigbee coordinator;

🌐 network dependencies;

🔋 UPS;

💡 физически ключове;

🚰 manual override;

🤖 automations;

☁️ off-site backup;

🔧 възстановяване след повреда.

И най-вече за един принцип, който вече споменахме:

SMART НЕ ТРЯБВА ДА ПРЕМАХВА NORMAL.

Защото ако Home Assistant умре…

искам къщата ми да стане:

по-малко умна.

Не:

НЕИЗПОЛЗВАЕМА. 😂


В крайна сметка SHTF Dashboard не е екран с много информация.

Точно обратното.

Той е начин огромно количество информация да бъде сведено до няколко ясни решения.

🟢 Всичко е наред.

🟡 Погледни това.

🟠 Имаме развиващ се проблем.

🔴 Действай.

⚪ Не знам — провери защо.

И ако трябва да запомните само едно изречение от тази част:

НЕ МИ ПОКАЗВАЙ ВСИЧКО. ПОКАЖИ МИ КОЕ НЕ Е НОРМАЛНО.

Тогава вече Home Assistant не е просто dashboard.

Той започва да прави точно това, към което се стремим от началото:

ПО-ДОБРА ИНФОРМАЦИЯ → ПО-ДОБРИ РЕШЕНИЯ.

SHTF.BG
Оцелявай умно, а не трудно.

Свързани статии

Back to top button