Найти тему

SLS. Прошивка 16.04.2024. Что нового

Оглавление

Всем здрасте!

Прошивка 2024.04.16d1 принесла нам, среди прочего, несколько новых функций, которые мы так долго ждали:
- у каждого устройства теперь есть состояние
online, которое позволит контролировать их доступность, не прибегая как шаманствам в LUA (почти)
- теперь время шлюза можно задать вручную из LUA. Полагаю, это потребуется для автономных шлюзов - без интернета
- теперь в Info главной страницы
веб-интерфейса выводятся дополнительные данные по MCU и RAM

MCU и RAM Info

-2

Теперь отображается тип MCU и фрагментация памяти.

Online

Теперь устройство регулярно опрашивается шлюзом и при недоступности состояние online меняется на false. Поэтому, для важных устройств теперь можно, не прибегая к скриптам, сразу назначить действие при их отвале посредством правил SimpleBind. Например так будет отправлено сообщение в Telegram.

-3

Раньше я использовал такое шаманство с LUA

-4

Система контроля неплохо управляется. Период опроса устройств задается в меню Zigbee -> Config. Причем раздельно для роутеров и конечных устройств

-5

- Routers global timeout: период опроса роутеров (по умолчанию 10 минут)
-
EndDevices global timeout: период опроса конечных устройств (по умолчанию 25 часов)

Также, новое состояние может передаваться в MQTT:

- Add online to payload: включить отправку состояния online в MQTT

Если глобальные таймауты для некоторых устройств не подходят, то для каждого такого устройства можно период опроса настроить отдельно функцией LUA

zigbee.setTimeout(device, timeout)

Здесь:

- device: STR, FriendlyName, ieeeAddr или nwkAddr устройства
-
timeout: INT, тамаут опроса в секундах

Например, для устройства с адресом 0xA4C138D8A539DB0F, сделаем таймаут 30 секунд:

-6

Данная настройка не сохраняется после перезагрузки, поэтому не забудете добавить такую строчку в ваш init.lua для каждого устройства, требующего отличный от глобального таймаут.

Настройка времени шлюза из LUA

Теперь время можно установить вручную. Например, если имеются трудности с синхронизацией его из сети. Для этого добавлена функция

os.setTime(unixtime)

Здесь unixtime - это время в формате unixtime - количество секунд, прошедших с 1 января 1970 года. В сети полно конвертеров для получения времени в этом формате. Например такой

-7

Пока, пока!

----------
Листинги скриптов
Поддержать канал
Заказать обучение