Да, вроде бы все верно, но все равно не работает ) Давайте чуть подробнее напишу.
При вот такой конфигурации wb-mqtt-mbgate
{
"scale": 1,
"byteswap": false,
"format": "signed",
"max": 0,
"address": 51342,
"enabled": true,
"topic": "wb-mdm2_108/Channel 1",
"meta_type": "range",
"unitId": 104,
"wordswap": false,
"size": 2
},
через modbus poll на соответствующий ID и порт отправляю значение 35, при этом на консоли вижу, что команда прилетает, но ничего не происходит:
root@wirenboard-AITWMGFU:/etc# mosquitto_sub -t "/devices/wb-mdm2_108/controls/Channel 1/#" -v
/devices/wb-mdm2_108/controls/Channel 1/meta/type range
/devices/wb-mdm2_108/controls/Channel 1/meta/max 100
/devices/wb-mdm2_108/controls/Channel 1/meta/order 2
/devices/wb-mdm2_108/controls/Channel 1 0
/devices/wb-mdm2_108/controls/Channel 1 35
/devices/wb-mdm2_108/controls/Channel 1 35
^C
root@wirenboard-AITWMGFU:/etc# mosquitto_sub -t "/devices/wb-mdm2_108/controls/Channel 1/#" -v
/devices/wb-mdm2_108/controls/Channel 1/meta/type range
/devices/wb-mdm2_108/controls/Channel 1/meta/max 100
/devices/wb-mdm2_108/controls/Channel 1/meta/order 2
/devices/wb-mdm2_108/controls/Channel 1 0
При этом, если изменить яркость из веб-интерфейса, она меняется и в консоли видно:
root@wirenboard-AITWMGFU:/etc# mosquitto_sub -t "/devices/wb-mdm2_108/controls/Channel 1/#" -v
/devices/wb-mdm2_108/controls/Channel 1/meta/type range
/devices/wb-mdm2_108/controls/Channel 1/meta/max 100
/devices/wb-mdm2_108/controls/Channel 1/meta/order 2
/devices/wb-mdm2_108/controls/Channel 1 0
/devices/wb-mdm2_108/controls/Channel 1/on 12
/devices/wb-mdm2_108/controls/Channel 1 12
/devices/wb-mdm2_108/controls/Channel 1/on 49
/devices/wb-mdm2_108/controls/Channel 1 49
/devices/wb-mdm2_108/controls/Channel 1/on 0
/devices/wb-mdm2_108/controls/Channel 1 0
Соответственно, если из консоли сделать:
root@wirenboard-AITWMGFU:/etc# mosquitto_pub -t "/devices/wb-mdm2_108/controls/Channel 1/on" -m 35
то работает, а если
root@wirenboard-AITWMGFU:/etc# mosquitto_pub -t "/devices/wb-mdm2_108/controls/Channel 1" -m 35
то нет
Логично предположить, что нужно заменить топик в конфиге /etc/wb-mqtt-mbgate.conf ‘wb-mdm2_108/Channel 1’ на ‘wb-mdm2_108/Channel 1/on’ , но если это сделать, то все остается без изменений и в конфиге не пойму откуда появляется новый топик:
{
"scale": 1,
"byteswap": false,
"format": "signed",
"max": 0,
"address": 51342,
"enabled": true,
"topic": "wb-mdm2_108/Channel 1/on",
"meta_type": "range",
"unitId": 104,
"wordswap": false,
"size": 2
},
{
"scale": 1,
"byteswap": false,
"format": "signed",
"max": 0,
"address": 58421,
"enabled": false,
"topic": "wb-mdm2_108/Channel 1",
"meta_type": "range",
"unitId": 104,
"wordswap": false,
"size": 2
}
Я пробовал меня и через веб-интерфейс, и через консоль с перезапуском /etc/init.d/wb-mqtt-mbgate restart
результат одиноковый:
root@wirenboard-AITWMGFU:/etc# mosquitto_sub -t "/devices/wb-mdm2_108/controls/Channel 1/#" -v
/devices/wb-mdm2_108/controls/Channel 1/meta/type range
/devices/wb-mdm2_108/controls/Channel 1/meta/max 100
/devices/wb-mdm2_108/controls/Channel 1/meta/order 2
/devices/wb-mdm2_108/controls/Channel 1 0
/devices/wb-mdm2_108/controls/Channel 1 35
/devices/wb-mdm2_108/controls/Channel 1 35
/devices/wb-mdm2_108/controls/Channel 1 35
При вот таком конфиге:

Что еще можно попробовать сделать?