Проблемы с MQTT

Доброго вечера! Есть подозрение что с MQTT что то не так.
Я пытаюсь добавить термостат BHT006 из spruthub. Набросал черновое правило. Включение и выключение работает. Установка температуры работает. Данные о текущей температуры не подтягиваются.
Это результат запроса:
root@wirenboard-ASYGHYMY:~# sudo systemctl status mosquitto zigbee2mqtt -n10
"● mosquitto.service - Mosquitto MQTT Broker
Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mosquitto.service.d
└─override.conf
Active: active (running) since Sun 2025-05-11 20:55:55 UTC; 20s ago
Docs: man:mosquitto.conf(5)
man:mosquitto(8)
Process: 34544 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=exited, status=0/SUCCESS)
Process: 34555 ExecStartPre=/bin/chown mosquitto:mosquitto /var/log/mosquitto (code=exited, status=0/SUCCESS)
Process: 34558 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 34559 ExecStartPre=/bin/chown mosquitto:mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 34560 ExecStartPre=/bin/chown mosquitto:mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
Process: 34561 ExecStartPre=/bin/chmod g+x /run/mosquitto (code=exited, status=0/SUCCESS)
Main PID: 34562 (mosquitto)
Tasks: 1 (limit: 4676)
Memory: 5.2M
CPU: 919ms
CGroup: /system.slice/mosquitto.service
└─34562 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf

May 11 20:56:14 wirenboard-ASYGHYMY mosquitto[34562]: 1746996974: New client connected from 127.0.0.1:42056 as NodeRed-tmp-86030d73c7cfadcc (p2, c1, k60).
May 11 20:56:14 wirenboard-ASYGHYMY mosquitto[34562]: 1746996974: Bad socket read/write on client NodeRed-tmp-86030d73c7cfadcc: Quota exceeded
May 11 20:56:15 wirenboard-ASYGHYMY mosquitto[34562]: 1746996975: New connection from 127.0.0.1:32787 on port 1883.
May 11 20:56:15 wirenboard-ASYGHYMY mosquitto[34562]: 1746996975: New client connected from 127.0.0.1:32787 as 6mRac4tdifJVSx1HWK7q1G (p2, c1, k60).
May 11 20:56:15 wirenboard-ASYGHYMY mosquitto[34562]: 1746996975: New connection from 127.0.0.1:42066 on port 1883.
May 11 20:56:15 wirenboard-ASYGHYMY mosquitto[34562]: 1746996975: New client connected from 127.0.0.1:42066 as NodeRed-tmp-86030d73c7cfadcc (p2, c1, k60).
May 11 20:56:15 wirenboard-ASYGHYMY mosquitto[34562]: 1746996975: Bad socket read/write on client NodeRed-tmp-86030d73c7cfadcc: Quota exceeded
May 11 20:56:15 wirenboard-ASYGHYMY mosquitto[34562]: 1746996975: New connection from 127.0.0.1:42068 on port 1883.
May 11 20:56:15 wirenboard-ASYGHYMY mosquitto[34562]: 1746996975: New client connected from 127.0.0.1:42068 as NodeRed-tmp-86030d73c7cfadcc (p2, c1, k60).
May 11 20:56:15 wirenboard-ASYGHYMY mosquitto[34562]: 1746996975: Bad socket read/write on client NodeRed-tmp-86030d73c7cfadcc: Quota exceeded

● zigbee2mqtt.service - zigbee2mqtt
Loaded: loaded (/lib/systemd/system/zigbee2mqtt.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2025-05-11 20:56:04 UTC; 11s ago
Main PID: 34658 (npm start)
Tasks: 28 (limit: 4676)
Memory: 136.5M
CPU: 16.283s
CGroup: /system.slice/zigbee2mqtt.service
├─34658 npm start
├─34692 sh -c node index.js
├─34693 node index.js
└─34799 udevadm info -e

May 11 20:56:04 wirenboard-ASYGHYMY systemd[1]: Started zigbee2mqtt.
May 11 20:56:05 wirenboard-ASYGHYMY npm[34658]: > zigbee2mqtt@1.42.0 start
May 11 20:56:05 wirenboard-ASYGHYMY npm[34658]: > node index.js
May 11 20:56:06 wirenboard-ASYGHYMY npm[34693]: Starting Zigbee2MQTT without watchdog.
May 11 20:56:14 wirenboard-ASYGHYMY npm[34693]: [2025-05-11 20:56:14] info: z2m: Logging to console, file (filename: log.log)
lines 1-49"

Так же прилагаю правило и скрин с дашборда



BHT006_Термостат.txt (6,3 КБ)

Добрый день.
Пока не очень понятно.
Напишите пожалуйста - с каким топиком планируется взаимодействие, отслеживание?
Также - подпишитесь на тот топик и покажите как меняется его значение.
Соответствует ли топик конвенции? То есть имеет ли вид ``/devices/Device/controls/Control```?

Я беру информацию из топика который публикует Spruthub, поэтому у него другой вид. При подписке на него выдет следующие значения

root@wirenboard-ASYGHYMY:~# mosquitto_sub -v -t ‘Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/#’
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/type CurrentTemperature
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/minValue -1000.0
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/maxValue 1000.0
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/minStep 0.1
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/read true
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/write false
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/events true
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/additionalAuthorization false
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/timedWrite false
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/hidden false
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/writeResponse false
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/format float
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17/unit °C
Sprut.hub-6535EB0F093C07B5_1/accessories/80/13/17 24.5

В целом все верно получает. Сейчас 24.5 реальная температура

Wb-rules работают только с топиками соответствующими конвенции.
Если топик имеет другой вид - то изменения получить можно, конечно. Используя trackMqtt например.
When и WhenChanged работать (правильно) не будут.

А как тогда работают остальные устройства по такому же принципу? Датчики акара, розетка акара. Так же все реализовано и все показатели получает виртуальные устройства.

Пн, 12 мая 2025 г. в 20:14, Андрей Радионов через Wiren Board Support <info@wirenboard.com>:

Я говорю про то что When - предназначены только и исключительно но для работы со стандартными, соответствующими конвенции топиками. Если работает с неконвенционными - ну, никто не гарантирует что будет работать всегда и что работать будет правильно.

Подскажите пожалуйста как правильно в такой ситуации поступать? Я просто вообще запутался. Во всех видео и форумах говорят про то как через правила добавляют устройство добавленное через SprutStick. У СХ все адреса топиков такие. Зачем тогда все это мусолят везде?

Предположу что пишут специальные конверторы.
Для примера: wb-zigbee2mqtt/wb-zigbee2mqtt.js at master · wirenboard/wb-zigbee2mqtt · GitHub

Я не смотрел видео про “добавление топиков”. На этот вопрос не смогу ответить.