Не работает правило

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

defineRule(“tmp”, {
whenChanged: “wb-w1/28-00000b60afb8”,
then: function(newValue)
{
if(newValue < 30)
dev.FH_1.K1 = 1;
if(newValue >= 30)
dev.FH_1.K1 = 0;
}
});

WB 6.5 обновления 1.7.2

Добрый день!

Тут стандартный совет по отладке: добавьте отладочную печать через log(), нажмите гаечный ключ, и смотрите, куда доходит ваш скрипт.

Пробовал. В логе отображается только то что правило создано и все.
111
Так же пытался вывести и параметр newValue. С другими устройствами работает.

  1. Оставьте в самом правиле только log("Test");
  2. В этом правиле в whenChanged укажите другой параметр, с которым работает. Убедитесь, что Test появляется.
  3. Потом верните нынешнее устройство. Убедитесь, что Test не появляется.
  4. Пришлите скриншот с нынешним устройством из Devices.

defineRule(“tmp”, {
whenChanged: “FH_1/K1”,
then: function()
{
log(“Test”);
}
});

Включил и выключил реле, в лог все вышло.
111

defineRule(“tmp”, {
whenChanged: “wb-w1/28-00000b60afb8”,
then: function()
{
log(“Test”);
}
});

Может еще схема подключения влияет (но тогда и значения в Devices не показывалоб).
Датчик подключен “+” и “-” к БП MeanWell, “S” к W1 контроллера. “-” БП и контроллера соединены.

[UPD]
Заметил еще странность.
В Settings у датчика нет типа значения.

Можно в “…/meta/type” датчика прописать “temperature” и тогда работает, сообщения в debug приходят.


Но через некоторое время “…/meta/type” сново пустой.

[UPD #1]
Сменил датчик. Другой завелся без проблем. “meta/type” - temperature и правило срабатывает. Видимо брак в датчике. Надо остальные 13 проверить…

[UPD #2]
Подключил все датчики разом (и тот что барахлил).
15 мин. полет нормальный. Буду наблюдать далее.

У нас такая же ерунда.
Есть два датчика - после старта системы оба отображались с пустым полем Type и не работают в скриптах, соответственно.
( dev[“wb-w1/xxxxxxxxx”] возвращает null, а в GUI/Devices видим сырые значения, без значка градусов )
Отключил датчики,
сделал mqtt-delete-retained ‘/devices/wb-w1/#’
подключил обратно.
Теперь один датчик оторажается с Type - temperature, в GUI появились градусы, а второй по-прежнему пустой.