4 роки як моя розумна квартира це Home Assistant на Raspberry Pi 2, пряме керування з GPIO модулями реле для освітлення, кількома датчиками температури, вологості, присутності, через CAN шину. Це була моя ідея - запустити свою систему, повністю провідну, на CAN шині. Жодного WiFi, стабільність і безвідмовність. Але з часом змінив свою думку, то хочу поділитись новими ідеями.
Перш за все, розробка нового рішення, якого немає на ринку, це колосальна кількість потрібного часу. Я це не врахував у повній мірі, то і розробка зупинилась.
CAN шина ніби і надійний вибір, але не універсальний. Треба виділити окреме підключення із специфічними конекторами, щоб мати "захист від ідіота" і помилково не включити Ethernet прилад в мережу CAN. Та й місця воно у підрозетниках забирає багато.
Керувати частиною системи силами самого Raspberry Pi це економія ресурсу і місця, але сильна залежність від платформи. Буквально, маючи потужніші SoC під руками, не можу на них налаштувати стабільну роботу CAN трансівера, а з тим втрачається сенс CAN мережі. Виходить, якщо не Raspberry Pi, то потрібно на вихід CAN мережі ставити ще й перехідник CAN - Ethernet чи CAN - USB. З ним тоді отримаємо вузьке місце у системі і потенційні проблеми. Ба більше, коли відмовитись від SoC та поставити будь який x86 сервер, то там будуть ще більші танці з бубном. Так не піде.
Використання реле для керування перехрестів - цікаве рішення, яке не працює як слід. Звучить просто - з одного боку перехресного вимикача старий-добрий фізичний перемикач, а з іншого - реле. Але зразу же постійний конфуз про стан вимикача. Оце виключив освітлення з допомогою реле, а тоді дивишся на вимикач, і розум тобі такий: "ну диви, він догори, значить увімкнений, щось не так". І це вже 4 роки так, що у мене, що в дружини. Про гостей взагалі мовчу, в них постійне здивування.
Є ще одна проблема - це нагрів реле. Буває так, що фізичним вимикачем не користуєшся днями і вся робота на реле. А це значить, що якщо вимикач увімкнений, то реле теж повинно бути увімкнене, що вимкнути освітлення. Як наслідок, реле працює увімкненим більшу частину доби, замість тільки періодів роботи освітлення. Від чого воно нагрівається, закипає і деколи не спрацьовує.
І останнє. Розумію, що колись буду продавати цю квартиру і тому власнику може бути абсолютно плювати на систему. Тому є величезний шанс, що складна унікальна система зробить тільки проблему при продажі, а не буде йому сприяти.
З цього всього, зробив собі наступні висновки.
Геть прив'язування до SoC. Home Assistant може крутитись на будь-чому, хоч у хмарі. Не потрібно розраховувати на GPIO та інші можливості SoC. Тому всю периферію потрібно зробити автономною.
На чому тоді організувати всю периферію? Після тестів з ESPHome, вирішив що ось воно. Універсальність, простота, а головне - модульність. І нічого видумувати не потрібно, просто налаштувати.
Замість CAN мережі використати ethernet з активним PoE. Тобто не 12+ вольт на двох парах витої пари, а з перетворювачем. Таким чином, якщо хтось підключить кабель в світч без PoE, нічого не станеться.
На другому кінці модулі LILYGO T-ETH-Lite
https://www.aliexpress.us/item/1005006021822040.html. Це найменші модулі ESP32 + Ethernet + PoE, які я знайшов. Довжина всього 59 мм. При глибині підрозетника 60 мм, вони чудово мали б поміститись. Можливо, навіть без випаювання порта RJ45. Чекаю кінця китайського нового року щоб замовити.
Відповідно, всі потрібні сенсори - температура, вологість, присутність - чудово співпрацюють з ESPHome. А більшого мені і не потрібно. Так, не саморобна монолітна друкована плата з моїм підписом, але проте можна без проблем оновлювати.