WB Engine (топик автора скрипта)

Что значит подвисает? У меня 2380 топиков и колесико крутится 10 секунд перед отображением настроек, wb-mqtt-serial.conf также открываются около 10-12 секунд, устройств не так много у меня. Подвисание на большом количестве устройств ожидаемое поведение, при запуске скрипт подписывается на все топики и из них строит конфигурацию для отображения внутри интерфейса.

В моем случае может крутиться пару минут, загружает 10-20 девайсов но управлять ими я не могу, нажимая на одно он может повиснуть и не переключиться вообще либо через пару минут отобразить. Такое поведение.

Какие действия после установки deb можно сделать для теста? пробовал перезагружать wb-rules - не помогло. И возможно ли разбивать как конфигуратор по 10-20-50 девайсов чтобы избежать такого поведения?

wb-mqtt-serial.conf в моем случае с таким большим количеством девайсов открывается также через 10 сек и все работает быстро и стабильно. Раньше год назад была такая же ситуация на wb-mqtt-serial.conf долго грузится и мог повисать, но после разбивки на разделы - прекратилось.

upd: проблема наблюдается только на Safari в MacOS, на Chrome подтянулось быстрее намного и дает возможность менять конфигурации.

В момент открытия конфигурации запускается wb-engine-helper, можно через консоль проверить работоспособность и замерить время:
time cat /etc/wb-rules/wb-engine.conf | /usr/bin/wb-engine-helper --json

А можно пример как это сейчас выглядит? У меня еще старая версия.

Я так понимаю проблема решилась? :slight_smile:

На скриншоте не вижу чтобы устройства разбивались на 10-20-30.

real 0m7,073s
user 0m4,911s
sys 0m0,630s

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

Ну вот данные скрипт выдал достаточно быстро, дальше уже работа JsonEditora который отображает форму, слабое звено получается сафари тут.

После > если нажать раскрывается огромный список девайсов на каждый порт RS485-1, TCP итд

Возможно, я лишь констатирую факт )) Если я нажму сейчас на одном девайсе добавить в HA - остальные он не создал вирутуальное устройство? Те появится только 1 тестовый?

Не очень хочется загнать 1000 девайсов и потом удалять.

Добавлять должно только те, у которых стоит галочка “Add control to HomeAssistant”.

А как при таком большом количестве устройств контроллер поживает? Load average сильно высокий?

Да вроде не плохо, там большую часть нагружает Spruthub, если его убрать то будет вообще прохлаждаться.

1 лайк

Проверил, заработало, все отлично. Было б неплохо добавить интеграцию Smartweb для отопления (это отдельная большая история которая покрывает все вопросы отопления, ГВС и тд) она передает все данные на WB через

https://gidrologo.ru/каталог/автоматика/управление/smartweb/wirenboard_6

В HomeKit на данный момент шаблон написал в виде термостата, было бы неплохо его сразу и на HA закинуть.

Поделитесь шаблоном, посмотрю что можно сделать.

smartweb-thermostat.json (8,2 КБ)

Подскажите Create cover in HomeAssistant завязан на распознавание определенных девайсов (типа шторы, ворота и тд), нельзя ли его привязать к виртуальному устройству уже существующему, например ворота (те написана своя логика на js и данное виртуальное устройство уже есть на WB) и от HA собственно нужно только управлять и отображать как ворота?

Пример

Те в данном случае имеется ввиду дать возможность заворачивать в cover если есть все неаобходимые сущности.

Такой возможности нет, попробуйте скрипт который есть, он умеет открывать по процентам, можно приоткрыть на 10% например. (Можно еще создать скрипт и потом в HA в устройствах будет пример в разделе “MQTT INFO” шаблона в формате .yaml)

Понял, спасибо, поковыряюсь.

Покажите еще полное имя топика связанного с устройством термостат

św THERMOSTAT ХХХ - он подставляет порядковый номер программы на Смартвебе.

Полный список что Smartweb передает на Wirenboard в виде MQTT топиков здесь:

Я пока задействовал у себя темрмостат (ROOM_DEVICE.json на ГХ) в обрезанными данными (тк передаем он их очень много и не нужно в работе.)

Там еще через пробел, это Вы можете поменять? Чтобы сделать как у WB по умолчанию идет имя устройства через дефис и номер через подчеркивание (wb-msw-v3_144). Вообще разовую задачу такую проще через конфиг сделать и быстрее будет.