Найти в Дзене
Sprut

Немного горькой правды о Matter

⚡ Если вы надеялись, что Matter нас спасёт - забудьте. Чем Matter хорош, так это типизацией. Но она была и у HomeKit, и у Zigbee, и у Z-Wave - типизация была, а кривых устройств меньше не стало. Так же и тут. Мечтали - берём устройство, подключаем к хабу и оно работает с полным функционалом. В реальности: 🔸 Даже сертифицированные устройства могут спамить атрибутами без остановки, не соблюдая протокол 🔸 В устройствах может быть указан неверный тип - и ваша лампочка станет розеткой 🔸 Типы могут быть вообще не заполнены 🔸 Ну и куда же без кастомных кластеров и атрибутов «лично для себя», которые не прокидываются ни в одну стороннюю систему (скрин выше) Поэтому для полного функционала нам опять нужны шаблоны и реверс-инженеринг или вендорлок для доп возможностей. В SprutHub мы сделали многоступенчатый анализатор Matter-устройств: 1️⃣ Если есть шаблон для устройства - он в приоритете 2️⃣ Если нет - запускаем автоматический генератор шаблона 3️⃣ Разбираем по типу устройства, если ти

Немного горькой правды о Matter ⚡

Если вы надеялись, что Matter нас спасёт - забудьте.

Чем Matter хорош, так это типизацией. Но она была и у HomeKit, и у Zigbee, и у Z-Wave - типизация была, а кривых устройств меньше не стало. Так же и тут.

Мечтали - берём устройство, подключаем к хабу и оно работает с полным функционалом. В реальности:

🔸 Даже сертифицированные устройства могут спамить атрибутами без остановки, не соблюдая протокол

🔸 В устройствах может быть указан неверный тип - и ваша лампочка станет розеткой

🔸 Типы могут быть вообще не заполнены

🔸 Ну и куда же без кастомных кластеров и атрибутов «лично для себя», которые не прокидываются ни в одну стороннюю систему (скрин выше)

Поэтому для полного функционала нам опять нужны шаблоны и реверс-инженеринг или вендорлок для доп возможностей.

В SprutHub мы сделали многоступенчатый анализатор Matter-устройств:

1️⃣ Если есть шаблон для устройства - он в приоритете

2️⃣ Если нет - запускаем автоматический генератор шаблона

3️⃣ Разбираем по типу устройства, если типов нет - подбираем подходящие по кластерам

4️⃣ Далее собираем шаблон, попутно исправляя и дополняя недостающие части

5️⃣ Формируем дополнительные опции, например состояние после восстановления питания

А самое крутое, что автогенератор работает на нашей классической системе шаблонов, без хардкода в хабе, описывающего логику 🥳

В итоге получаем ультрагибкую систему, контролируем каждый узел и можем полностью переопределить устройство, т.е. у вас не будет розеток вместо лампочек, даже если производитель ошибся 💪