Настройка сервера умного дома (часть3)
Также можете послушать:
Я планирую настроить новый сервер умного дома на базе микрокомпьютера Orange Pi 3, я там установлю Home Assistant, но все остальные настройки тоже нужно будет слегка сделать, конечно я возьму образ и не буду все с нуля настраивать, но достаточно много изменений нужно делать, и если такие изменения возникают, то я делаю следующим образом.
Этот микрокомпьютер может работать как c SD карты по аналогии с Raspberry, так и у него есть и встроенная память 8 ГБ, по большому счету я сначала на этой SD карте настраиваю всю систему, то есть все большие изменения вношу тоже найти это карте, устанавливаю библиотеки, нужный софт и только после этого делаю перенос уже во внутренняя память, там есть в биосе, так сказать, этого микрокомпьютера специальная команда, которая позволяет просто перенести с этой SD карты во внутреннюю память все данные, операционную систему со всеми настройками это конечно очень удобно и единственное там ограничение, что если SD карта используется большая, то нужно смотреть чтобы не было превышения размера, то есть не больше 8 гигабайт, если вносить изменения сразу потом во внутренней памяти, то возникают разные проблемы связанные с тем, что есть там функция сделать резервную копию внутренней памяти на внешнюю SD-карту, но сколько раз я пытался запустить она ни разу не заканчивалась успешно,она очень медленно делается, и при этом надо чтобы на SD-карте было как раз места достаточно, чтобы туда скопировать весь образ внутренней памяти, он фактически сохраняется как полный image, и конечно размер его будет ровно 8 гигабайт, ну и дальше даже если он будет сохранен, чтобы им как-то пользоваться и его допустим изменить и снова залить, то нужно будет просто брать этот образ еще раз его устанавливать на SD карту и потом с этой карты переносить во внутреннюю память, конечно это все не очень удобно.
Ну и принципе когда я SD карту использую и с неё надо тоже сделать копию, например перед большими сложными исправлениями, апдейтами, я делаю копию этой SD карты, потому что много раз было когда там после обновление что-то перестает работать либо совсем серьезно перестает работать и нужно сначала разобраться прежде чем продолжать и иногда просто не хватает времени там долго-долго разбираться,или например часто было что это известная ошибка, она точно неисправлена, то есть не работает, и просто нужно откатить систему назад, но уже если копии нет это практически сделать невозможно, но если использовать большую карту, то возникает другая проблема, при копировании этой карты образ получается полностью размером с эту карту и конечно можно принудительно сделать ограничение например сразу форматировать на меньший объем, но в принципе если так не делать, то размер будет большой и потом нужно специальной утилитой, она под Linux работает, которую можно использовать и тогда всё свободное место на SD карте, ну на этом образе, оно будет исключено и размер станет в принципе нормальный, но это просто очень долго делается, и поэтому лишний раз запускать эту функцию конвертации этого имиджа не очень удобно, а дальше конечно можно вообще ее просто там каким-нибудь архиватором сжать, размер становится аналогичным, то есть только занятая информация реально остается, но потом всё-равно надо будет разворачивать это, иметь место на компьютере достаточно чтобы развернуть, ну и запись на SD карту уже будет выполняться дольше, если это большой образ.
При переносе готовой настроеной операционной системы, со всеми уже там программами, во внутреннюю память часто тоже возникают разные ошибки, они конечно нигде не задокументированы и приходится их искать самому, одна из ошибок это то что сервис Zigbee2MQTT сам не запускается при переносе его нужно один раз зайти вручную запустить прямо из соответствующей директории, после этого он уже будет запускаться как сервис нормально работать, есть еще проблема связанная с подключенными колонками Bluetooth, но у меня это не колонки, а усилители работающие по Bluetooth, и при переносе во внутреннюю память тоже они вроде видятся, но на самом деле система не может к ним подключиться, нужно один раз зайти, причем нужно сделать именно через визуальное подключение, то есть через VNC, и там уже делать все настройки, то есть зайти там в параметры адаптера Bluetooth и заново каждое устройство переподключить, и только после этого там все начнет отправляться автоматически и разные скрипты смогут уже подключать устройства, отключать устройства, и будет все работать хорошо.
У меня там используются скрипты для управления Bluetooth устройствами, которые при нажатии определенно кнопки запускает сценарий, который отключает все другие блютус устройства, включает нужное и дальше запускается MPD плеер, который по сути на этот Bluetooth канал выводит музыку, и раз подключена определенная колонка, то она и инграет, это очень удобно, я уже очень давно этот функционал использую, конечно были разные сложности, сначала там было почему-то решено разработчиками использовать отдельную библиотеку для управления аудио Pulse audio, и она конечно во-первых там достаточно сложнее настраивается, ну и поскольку она встроена в саму операционную систему, она там запускается специфическим образом, то есть ее нельзя не выключить, не включить, уже никакими командами, это не очень хорошо конечно сделали, ломать систему не хотелось бы и для того чтобы там настроить допустим вывод именно по Bluetooth пришлось очень много специфических делать действий, которые повторять каждый раз совсем не хочется, там надо отключить загрузку определенного сервиса, потом определенные библиотеки, в общем сделать так чтобы они не запускались, причем сделать так чтобы они не дублировались теми которые есть в операционной системе, еще сделать так что еще отдельная группа автозапуска, которую тоже нужно там все повыключать правильно, я все это прошел несколькими способами несколько раз, все задокументировал, но конечно повторно это делать не очень удобно и я просто возьму готовый образ и его использую.
Конечно иногда хочется перейти на более свежую свежую версию Linux и это реально большая проблема, то есть проходить весь этот квест еще раз каждый раз это очень много времени занимает, и даже там элементарно установка того же Home Assistant это в принципе очень не быстро, потом поставить HACS, это отдельный модуль для управления и установки дополнительных библиотек которые не являются стандартными в Home Assistant, а просто разработчики делают, тоже очень медленно, потом все модули устанавливать тоже очень медленно и поэтому конечно, особенно какой-нибудь там Zigbee2MQTT настраивать это еще тоже очень долго и сложно, и гораздо проще конечно использовать уже наработанный готовый образ.
И для настройки разных устройств, этого допустим Zigbee стик, его тоже нужно перепрошивать я нашел определенную прошивку, которая у меня сейчас на нескольких таких стиках прошитых есть, пока не планирую их переделывать на более свежие версии, но очень часто бывает так что по какой-то причине там верстия Zigbee2MQTT не совместима и нужно прошивку стик менять, но вроде пока прошивка старая она вполне совместима с новым версиями этого сервиса, и по сути можно ее использовать.
Конечно у этих стиков есть ограничения, они не поддерживают Zigbee 3.0 и устройства некоторые конечно могут не работать с ним, у меня есть другие стики от Sonoff, которые подороже стоят, и вроде там помощнее немножко, но их можно и не использовать если все что покупается, все устройства и датчики работают корректно.
Из настроек Home Assistant это нужно будет еще сделать возможность подключения по API, там дается ключ разовый и дальше можно будет уже там из скриптов разных на Bash или на Python подключаться и в принципе выполнять все те же команды которые и внутри доступны, для OpenHAB, я тоже планирую его устанавливать на этот сервер, конечно он в первую очередь для того чтобы иметь удаленный доступ к этому серверу, точнее к датчикам и устройствам, потому что у OpenHAB есть бесплатное облако, оно полностью функционально и соответствует локальной версии, то есть там по сути ничего нигде не хранится в облаках и просто предоставляется доступ, и если например подключаться через приложение с телефона или с планшета, то он автоматически определяет какой тип подключения облачное или локальное, и подключается к серверу, и дальше конечно там нужно будет прокинуть разные устройства в OpenHAB, я использую вообще там свой модуль и своё специальное правило для интеграции, они у меня автоматически подтягиваются из системы умного дома, которую я собственно сделал, там на базе локального сервера на Python написано, но по большому счету есть конечно в OpenHAB и все необходимые интеграции базовые c MQTT и с Zigbee и их тоже можно использовать и тогда эти устройства будут доступны, их тоже можно будет также там по разным комнатам распределить, по разным группам, и в принципе интерфейс недавно обновился, он стал посвежее, там позволяет делать разные дашборды в OpenHAB, это тоже интересная система и ее тоже планирую настраивать.
Автоматизация в умном доме должна быть полезной и создавать дополнительный комфорт, но иногда всё идет не так… Причины этого, и как всё настроить смотри на моём канале.
You may also read
Read Also
Перейти на Дзен!

Discuss about post