Боюсь, что проблема может быть не в китайском железе, а в российском. Проверил этот же датчик на WirenBoard 5 - всё прекрасно работает
root@wirenboard-A5Q6XVOE:~# wb-mqtt-serial -c /etc/wb-mqtt-serial.conf -d
address: 0
address: 1
Setting up devices at </dev/ttyAPP1 9600 8 N1 timeout 500>
CreateDevice: temp-humidity-sensor_0x05 (Temperature and humidity sensor) @ 0x05 – protocol: modbus
AddRegister: 0x7ff9b820
AddRegister: 0x7ff9bb58
Warning: no devices defined for port </dev/ttyAPP4 9600 8 N2 timeout 500> . Skipping.
Adding range: 2 holding(s) @ 0 of device modbus:5
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 Connected with code 0
02 c5 8f
ReadFrame: 05 03 04 00 F4 00 7F BF E1
new val for Subscription succeeded.
<modbus:5:holding: 0>: f4
register value change: <modbus:5:holding: 0> <- 24.4
channel Temperature device id: temp-humidity-sensor_0x05 – topic: /devices/temp-humidity-sensor_0x05/controls/Temperature <-- 24.4
new val for <modbus:5:holding: 1>: 7f
register value change: Subscription succeeded.
<modbus:5:holding: 1> <- 12.7
channel Humidity device id: temp-humidity-sensor_0x05 – topic: /devices/temp-humidity-sensor_0x05/controls/Humidity <-- 12.7
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 02 c5 8f
ReadFrame: 05 03 04 00 F4 00 7F BF E1
235386: Wait until 235434
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 02 c5 8f
ReadFrame: 05 03 04 00 F4 00 7F BF E1
235476: Wait until 235535
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 02 c5 8f
ReadFrame: 05 03 04 00 F4 00 7F BF E1
235565: Wait until 235635
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 02 c5 8f
ReadFrame: 05 03 04 00 F4 00 7F BF E1
235665: Wait until 235735
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 02 c5 8f
ReadFrame: 05 03 04 00 F3 00 7F 0E 20
new val for <modbus:5:holding: 0>: f3
register value change: <modbus:5:holding: 0> <- 24.3
channel Temperature device id: temp-humidity-sensor_0x05 – topic: /devices/temp-humidity-sensor_0x05/controls/Temperature <-- 24.3
235781: Wait until 235835
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 02 c5 8f
ReadFrame: 05 03 04 00 F3 00 7F 0E 20
235866: Wait until 235936
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 02 c5 8f
ReadFrame: 05 03 04 00 F3 00 7F 0E 20
235966: Wait until 236036
modbus: read 2 holding(s) @ 0 of device modbus:5
Write: 05 03 00 00 00 02 c5 8f
ReadFrame: 05 03 04 00 F3 00 7F 0E 20
Прошивку на wb5 обновил до последней 201810040755_emmc_wb58_stretch.img.zip
Версия wb-mqtt-serial та же
root@wirenboard-A5Q6XVOE:~# dpkg -s wb-mqtt-serial
Package: wb-mqtt-serial
Status: install ok installed
Priority: optional
Section: misc
Installed-Size: 1097
Maintainer: Evgeny Boger boger@contactless.ru
Architecture: armel
Version: 1.44
Replaces: wb-homa-modbus (<< 1.14.1)
Depends: libc6 (>= 2.4), libgcc1 (>= 1:3.5), libjsoncpp1 (>= 1.7.4), libmosquitto1 (>= 1.0), libmosquittopp1 (>= 1.0), libstdc++6 (>= 6), libwbmqtt0 (>= 1.7), bsdutils
Breaks: wb-homa-modbus (<< 1.14.1), wb-mqtt-confed (<< 1.0.2), wb-mqtt-homeui (<< 1.7)
Conffiles:
/etc/init.d/wb-mqtt-serial 1cfd1f4e29c3502bc6eac8ccbd9986ec
/etc/wb-configs.d/11wb-mqtt-serial 5325e375bc486e31384ed908b8ceae0e
/etc/wb-mqtt-serial.conf.sample c8c1adbf630e6fd7ec871b1b5c4a5e0f
Description: Wiren Board Smart Home MQTT serial protocol driver.
root@wirenboard-A5Q6XVOE:~# cat /etc/wb-mqtt-serial.conf
{
“debug”: false,
“ports”: [
{
“path”: “/dev/ttyAPP1”,
“devices”: [
{
“slave_id”: “0x05”,
“device_type”: “Temperature and humidity sensor”,
“enabled”: true
}
],
“port_type”: “serial”,
“baud_rate”: 9600,
“parity”: “N”,
“data_bits”: 8,
“stop_bits”: 1,
“poll_interval”: 100,
“enabled”: true
},
{
“path”: “/dev/ttyAPP4”,
“devices”: [],
“baud_rate”: 9600,
“parity”: “N”,
“data_bits”: 8,
“stop_bits”: 2,
“poll_interval”: 10,
“enabled”: true
},
{
“path”: “/dev/ttyAPP2”,
“devices”: [],
“baud_rate”: 9600,
“parity”: “N”,
“data_bits”: 8,
“stop_bits”: 2,
“poll_interval”: 10,
“enabled”: false
},
{
“path”: “/dev/ttyAPP3”,
“devices”: [],
“baud_rate”: 9600,
“parity”: “N”,
“data_bits”: 8,
“stop_bits”: 2,
“poll_interval”: 10,
“enabled”: false
}
]
}
device_ttype - опечатка.