Home Assistant

Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
Ответить
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18794
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Есть энтузиасты этой темы?
Я вот примкнул, интенсивно осваиваю, аж мозги кипят. Огромное количество информации обо всем и ни о чем одновременно... Может, кто-то еще есть, погруженный в тему, чтобы можно было делиться решениями и задавать вопросы?
Мне вот пока особо хвастаться нечем, кроме того, что с горем пополам заставил Tuya-розетки и IR-передатчики работать без интернета... И вот сейчас бьюсь над тем,чтобы освещать двор, когда приезжаю ночью... Почти сделал, тестирую, если получится - готов поделиться.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Родился
Аватара пользователя
Сообщения: 7
Зарегистрирован: Вс янв 09, 2011 17:42:57
Откуда: North Carolina, US

Сообщение R2-D2 »

Доброго времени суток, есть энтузиасты :)
атоматизирую в доме все до чего дотягиваются руки, и хватает времени.
Мои дашборды (на фотках), конечно там только самое важное для мониторинга и взаимодействия, тч пишите если интересно, расскажу что и как делал.
Много датчиков изготовил сам, в основном сенсоры присутсвия (свч) с zigbee на борту.
Изображение
Изображение
Изображение
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18794
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

А расскажите, что именно вы автоматизируете? Ну, наблюдение за температурой это как бы первое, что все делают, а еще что? И на каком железе это?

Я поставил HAOS на отдельный мини-ПК 8 Гб ОЗУ Intel i3-7100T, для видеонаблюдения Frigate, и имею среднюю загрузку процессора около 15% днем и 40-50% ночью. Хотел бы понять, хорошо это или плохо, и что делать, если плохо... Единственная камера без ИК-подсветки ночью сильно грузит проц...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Родился
Аватара пользователя
Сообщения: 7
Зарегистрирован: Вс янв 09, 2011 17:42:57
Откуда: North Carolina, US

Сообщение R2-D2 »

Мой стек упрощенно выглядит так: HA OS бежит на ODROID-N2+/4 GB RAM/64 GB eMMC, для коннета zeegbe девайсов - Sonoff Zigbee Coordinator ZBDongle-E, дальше Zigbee2MQTT gateway с Mosquitto - MQTT брокером, ну и дальше собственно HA.
Вся автоматизация/оркестрация посторена в Node-RED. Кроме zigbee девайсов есть ESPHome самоделки которые конектятся напрямую к HA мимо MQTT ну и есть много wifi девайсов которые ходят через Integrations или напрямую к MQTT.
В качестве повседневного интерфейсв основной дашборд (андроид планшет на стене), Alexa для голосовых команд и есть еще монитор с браузером через который тоже мониторю всякие детали не для ежедневного использования но важные типа где там батарейки уже пора менять и тд.
Автоматизированы в остовном ежедневные рутины, все входные двери и гаражные (открыто/закрыто дверь и сам замок), свет по присутствию людей к помещении или отдельной зоне (с понимание достаточно ли естественного света из окон или нужно вкючить), в душевых вытяжка если влажно, общая сигнализация, оповешения когда открываются входные двери или гараж, куча всяких репортов/комманд через телеграмм, авто полив газона, автополив грядок с датчиками влажности, внешнее освещение дома, куча всяких сенсоров - температура, влажность, освещенность, протечки, качество воздуха, дым, газ, уровень радиации (живу в регионе где есть АЭС). В электрораспределительном щитке на все лини одел токовые трансформаторы (кольца) мониторить нагрузки, видеть включены/отключены основные потребители типа печки, духовки, микроволновки, стиралки, сушилки и тд.
Всего в сети постоянно подключенных/используемых 53 zigbee девайса а общее колличество девайсов больше сотни.
Много zigbee и wifi девайсов разрабатывал сам, под конкретные размеры и логику. Если интересует какойто конкретный сценарий из перечисленных пишите, поделюсь. Просто все рассказать в деталях в одном посте не реально :)
Пару картинок для примера, вариант zigbee датчика присутствия человека в зоне (чувствительность, дистанция задержки и тд. настраиваются).
Изображение
Изображение

Frigate штука прожлрливая, после непродолжительных экспериментов пару лет назад я от нее отказался. У меня было пару идей с камерами которые в итоге реализовал на условно бесплатном функионале от Azure (Microsoft). Мне нужно было определять когда в кадре есть люди а когда нет, В итоге я просто оправлял скриншот на их сервис (computervision) и получал процентную вероятность, на ней и строил автоматизацию. У сервиса есть ежемесячный бесплатный лимит в который я прекрасно укладываюсь чт по факту сервис распознования людей в кадре бесплатный, хотя конечно не локальный.
Основная загвоздка с Frigate когда я его пытался использовать была именно в требуемых ресурах. Но основном хосте (ODROID с 4Gb) это без шансов, нужен был отдельный комп. Я попробовал поднять Frigate в докере на своем сетевом NAS Synology для чего увеличел ему оперативку до 18Gb, в итоге он так грузил проц что все остальные сервисы сильно тупили. В то время решением мог быть доп акселератор для распознования объектов от Google (Coral TPU), но покупать я его не стал, плюнул и пошел по пути который описал выше. Сейчас почитал что изменилось за последние время, пожалуй можно попробовать еще раз все поднять но уже сделать по другому.
В вашем случае хостить Frigate на основном процессоре вместе с HA думаю можно, хотя я бы не рекомендовал, особенно если всего 8Gb на все и планируете добавлять плагины, девайсы автоматизацию и тд. Предел здесь в первую очередь определяется тем, как настроены потоки камер и распознование объектов.
У вашего i3-7100T есть Intel HD 630 + Quick Sync поэтому декодирование камер надо обязательно отдать iGPU через VAAPI. Frigate сам такое рекомендует - аппаратное декодирование для снижения нагрузки на CPU (https://docs.frigate.video/configuratio ... hatgpt.com).
Такой вариант для 1-2 камер наверное сойдет если сам HA и его другие сервисы не очень загружены, и при этом видеопоток 4К только для записи, а отдельный поток (не более 720p) для распознование объектов. В итоге настроенный iGPU для декодирования видео и например OpenVINO (https://github.com/openvinotoolkit/openvino) для распознования объектовб чтобы не покупать отдельный TPU.
Но конечно лучшим решением было бы запускать Frigate как отдельный сервис в локальной сети (отдельный комп, современный Core i3/i5), всеже для него нужны приличные ресурсы. И если нужно процессить 3-5 камер то прикупить Hailo-8L M.2 (https://hailo.ai/products/ai-accelerato ... 2-overview) Frigate официально поддерживает Hailo-8/Hailo-8L для object detection и YOLO-моделей (https://docs.frigate.video/configuratio ... hatgpt.com).
Реклама
Эиком - электронные компоненты и радиодетали
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18794
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Я перешел на HASS именно ради того, чтобы отказаться от любых облачных сервисов, ибо из-за блокировок они практически делают умный дом тупым. От того и Frigate. Если верить монитору ресурсов, то сейчас памяти едва 50% используется, 4К-видео у меня нет, экономлю на камере... GPU включил, это заметно снизило нагрузку днем, но ночью увы... Так-то оно вроде и не мешает...

У вас есть Zigbee - IR-пульты? Интеграция LocalTuyaIR Remote Control работает нестабильно, а покупной Zigbee пульт система видит, как датчик климата...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Родился
Аватара пользователя
Сообщения: 7
Зарегистрирован: Вс янв 09, 2011 17:42:57
Откуда: North Carolina, US

Сообщение R2-D2 »

IR zigbee пультов нету, тч по этой теме рассказать особо нечего.
Проблема с покупным пультом скорее всего в интеграции. Для конкретной модели может не быть правильного converter/device handler, устройство может сообщать неподходящие clusters/endpoints или иметь тот же manufacturer/model ID, что и какоето другое устройство. В итоге система видит, например, climate/temperature cluster и ошибочно определяет IR пульт как датчик климата например.
Это конечно догадки, но думаю полезно посмотреть у пульта modelID и manufacturerName и проверить, есть ли вообще для этой пары нормальный конвертер. Если есть, попробовать обновить z2m, и сделать re-pair с нуля с обязательной очисткой кэша. Если нет, написать свой external конвертер с явным указанием всего, что нужно (endpoints/clusters, команды ir и тд), но это поле для экспериментов, проб и ошибок
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18794
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Это хорошие советы, но надо перевести их на русский язык😂
Мой Zigbee - пульт содержит в себе термогигрометр, и только он и виден в HASS. В бумажонке, что с ним в комплекте была, написано, что он работает с Mosquitto, а у меня что-то другое, и я не разобрался, что к чему...
Темя настолько новая для меня, что я абсолютно не понимаю, с какого бока к ней подступиться.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Родился
Аватара пользователя
Сообщения: 7
Зарегистрирован: Вс янв 09, 2011 17:42:57
Откуда: North Carolina, US

Сообщение R2-D2 »

Ах, ну это возможно объясняет вашу проблему. В начале немного теории, просто чтобы мы одинаково понимали как все устроено.
По дефолту работа с zigbee выглядит так: zigbee device -> zigbee coordinator -> ZHA -> HA
С девайсом все понятно, ваш пульт. Он отправляет данные zigbee координатору. Не знаю какое железо у вас, наверняка какойто usb "свисток" с антенной. Координатор принимает zigbee-пакеты от устройств. Дальше данные передаются ZHA (Zigbee Home Automation). ZHA это встроенная в HA интеграция для работы с zigbee, она создает и управляет zigbee-сетью, понимает zigbee clusters и endpoints и превращает данные устройств в сущности HA. Например датчик температуры отправил zigbee-пакет, ZHA понимает что это значение температуры 23.5C и создает или обновляет в HA -> sensor.living_room_temperature
Проблема в этой связке в том что ZHA плохо понимает zigbee устройства, особенно кастомные, редкие, китайские... короче те, конфигурация которых отличаются от стандартов zigbee. хорорший пример девайсы Tuya.
Но выход есть :)
zigbee device -> zigbee coordinator -> Zigbee2MQTT (Z2M) -> Mosquitto -> MQTT -> HA
Z2M получает от координатора "сырые" zigbee данные и понимает, что они означают.
например получает чтото вроде -

Код: Выделить всё

temperature = 23.4 
battery = 87% 
и превращает в

Код: Выделить всё

{ 
	"temperature": 23.4, 
	"battery": 87 
}
и публикует это в MQTT topic, например

Код: Выделить всё

zigbee2mqtt/kitchen_sensor
Mosquitto сам ничего про zigbee не понимает, его задача просто принять сообщение -

Код: Выделить всё

topic: zigbee2mqtt/kitchen_sensor
и раздать его тем, кто подписан на этот topic. Подписантов может быть одновременно несколько, например Home Assistant, Node-RED, ваша программа, логгер
Home Assistant - получает MQTT-сообщения и создает

Код: Выделить всё

entities: sensor.kitchen_temperature, sensor.kitchen_battery
и после этого их уже можно использовать в dashboard, automation и т.д.
Такой подход дает очень много преимуществ по сравнению с ZHA:
  • Шире поддержка устройств, особенно Tuya и менее стандартных девайсов
    Больше настроек устройства - reporting, power-on state, sensitivity, calibration и т.д.
    Лучше диагностика - видно endpoints, clusters, link quality, маршруты, raw Zigbee данные
    Проще поддержать новое устройство через custom/external converter (про это чуть позже)
    Независимость от Home Assistant: zigbee-сеть продолжает жить как отдельный сервис
    MQTT дает гибкость - теми же Zigbee-данными могут пользоваться HA, Node-RED, свои скрипты и другие системы
Минус один - компонентов больше.

Как это связанно с вашей проблемой?
Если пульт очень "китайский" то он просто не поддерживается полностью на стороне ZHA, расспознается какойто знакомый ендпоинт ("как датчик климата...") и на этом все.
Что делать?
переехать на описанный выше сетап, поставить и сконфигурить Zigbee2MQTT, Mosquitto, MQTT
Бывает так что Z2M сам по себе не решает проблемму, если zigbee девайс совсем уж "особенный", тогда на помощь приходит гибкость описанной архетиктуры - можно добавить собственный кастомный внешний конвертор в Z2M (custom/external converters)
Это по сути маленький JavaScript-модуль, который объясняет Z2M, как работать с девайсом, которого он ещё не знает или поддерживает не полностью.
Например, новое Tuya-устройство подключается к сети, Z2M видит:

Код: Выделить всё

manufacturer: _TZ1234_abcd1234, model: TS12345
но не знает, что его zigbee-поля означают. Конвертор говорит примерно следующее:

Код: Выделить всё

поле 1 -> temperature, 
поле 2 -> humidity, 
поле 3 -> battery, 
команда ON -> отправить такой zigbee command
Вот купили вы новый zigbee IR пульт. Z2M его видит, но определяет неправильно или вообще показывает

Код: Выделить всё

Unsupported device
Можно написать converter и определить

Код: Выделить всё

IR Send, Learn IR, Temperature, Battery
После этого устройство начинает нормально появляться в Z2M/HA не дожидаясь, пока поддержку добавят официально.
Вот это одна из сильнейших сторон Z2M по сравнению с ZHA, кастомную поддержку устройства довольно удобно добавить самому.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18794
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Вот спасибо! Несколько строк от человека знающего заменяют недели самостоятельных копаний не пойми в каких дебрях!
Буквально после прочтения вашего сообщения поставил Z1M и Mosquitto, и сразу нашелcя мой пульт, и со всеми плюшками, да еще и с картинкой :))) И релюшка тоже нашлась с настройками способа переключения внешнеим выключателем, что тоже приятно. Неприятно только то, что теперь придется по всему дому лазить по люстрам переподключать ZigBee-релюшки снова...
Или можно как-то из конфигов ZHA перенести все, что есть, в Z2M?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Родился
Аватара пользователя
Сообщения: 7
Зарегистрирован: Вс янв 09, 2011 17:42:57
Откуда: North Carolina, US

Сообщение R2-D2 »

Рад что у вас все заработало
Или можно как-то из конфигов ZHA перенести все, что есть, в Z2M?
напрямую импортировать список устройств из ZHA в Z2M обычно нельзя. ZHA и Z2M хранят свою базу и метаданные по-разному.
Zigbee-устройство привязано не к ZHA или Z2M как к программе, а к конкретной zigbee-сети со всеми атрибутами типа PAN ID, Extended PAN ID, network key, координатор и его состояние.
При переходе ZHA -> Z2M вы создаёте новую zigbee-сеть, устройства придётся reset + pair заново. Но в этом есть свой плюс, Z2M и его device converter иначе интерпретируют и публикуют возможности устройства как результат в системе появится больше служебных атрибутов и настроек девайса которые по дефолту не поддерживает ZHA, типа linkquality/LQI -> качество zigbee-связи, battery/voltage, last_seen, power source, manufacturer/model, иногда даже RSSI-подобные диагностические данные, но чаще LQI.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18794
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

RSSI и LQI во всех ZHA устройствах есть, но по умолчанию не активированы. А вот то, как в реле обнаружилась казавшаяся навсегда недоступной настройка - это здорово. Выходные посвящу перенастройке своих устройств и переписыванию скриптов.

Дальше посмотрим :))

Кстати, я-таки сделал в ESPHome свой персональный девайс, отслеживающий появление BLE-брелока, чтобы по этому событию ночью включать освещение. Через зоны и GPS ничего не работает из-за глушилок, а это решение автономное.

Проверю еще идею с MAC-адресом не в прошивке, а в настройках, и похвастаюсь подробностями :)))
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18794
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Мои приключения с домашним асистентом продолжаются...
В мини-ПК, на котором крутится HAOS (вот же ж название для оси вышло - нарочно не придумаешь!) есть два диска: SSD NVME 128Gb и SATA HDD 320Gb. Cистема установлена на SSD, а HDD до последнего дня был недоступен. То есть его было видно в глубинах /dev, но никуда он не был примонтирован, и соответственно, никак не использовался.
И, внезапно, оказалось, что примонтировать его в систему практически невозможно! Ну, какие-то профи, конечно, могли бы это сделать, но не я.

Всё эти докеры, что б им... Оказалось, что HASS - это не просто слегка отрихтованная убунта, это куча докер-контейнеров, и в каждом контейнере крутится своя "убунта", которая знать не знает о том, что рядом с нею есть еще что-то. И в одном из этих контейнеров сам ассистент крутится, а, например, консоль - уже в другом. И, раз на этапе запуска докера HDD не был примонтирован (почему - это отдельный вопрос), то каждый отдельный контейнер теперь просто не имеет прав для его монтирования! Видит око, да зуб неймет.
Все виды ИИ не смогли ничего посоветовать лучше, чем заняться настройками докера. Это не мой путь явно - я в этих убунтах права на папку поставить могу только после многочасовых мучений... а тут - дрокер какой-то... Тем более что нет никаких средств его настройки, кроме командной строки и чего-то типа vim. Я скорее упьюсь вусмерть, чем в это влезу.

Но тут случайно натыкаюсь на сторонние аддоны (слава богу, их великое множество!), которые что-то там могут монтировать... И вот на третьем из найденных я остановился: Samba NAS2 - эта штука позволяет делать с дисками всё то, что должна уметь вякая убунта: монтировать/размонтировать, раздавать юзерам в зависимости от их прав и т.п. Так что если кто не знал - рекомендую. Интерфейс управления хоть и не русифицирован, но вполне дружелюбный, все понятно.

А все это началось с того, что Frigate по умолчанию (и без умолчания) пишет все свои медиафайлы в папку /media, которая на SSD. А SSD не резиновый, да и лишние записи ему не на пользу. Вот и задумал я выделить HDD для этих целей. И на этом пути достиг примерно 50% успеха: теперь диск в HAOS есть, но добавлен туда он несколько кривоватыми средствами, и поэтому науськать Frigate на смонтированную папку мне не удалось. И я не уверен, что без плясок с докерами это вообще возможно...

Зато теперь у меня фактически есть "бесплатный" домашний NAS, хоть и небольшого размера. Однако... Вчера пришло уведомление от Облака Мэйл, что с 3 ноября объем бесплатного облака станет 8 Гб. Вот прикиньте: сейчас бесплатный объем 1Тб, а через 4 дня станет 8 Гб - в 125 (125, Карл!!!) раз меньше. И это при том, что злой вражеский Google-диск до сих пор, не смотря на санкции и блокировки, ДАРОМ даёт 16 Гб. Нам врагов не надо, мы сами справимся... Так вот, в облаке мэйла у меня 56Гб всякого накопилось - теперь я смогу всё это перенести на свой домашний NAS, и пусть они там подавятся своими хотелками срубить с меня лишнюю тыщу в год! А на бесплатных 8Гб я буду хранить только публичные проекты свои.

P.S. Всё-таки логика у разработчиков HASS (и тут явно прослеживается логика линукс-разработчиков вообще) странная: почему-то изначально монтирование дисков в систему не было добавлено, как часть ОС. Вот почему? Какие мотивы были этого не делать? А теперь у них в качестве планов есть намерение это внедрить...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Ответить

Вернуться в «Умные мысли»