Получилось ли у кого уже интегрировать шлюз Hisense HCPC-H2M1C в Wirenboard? Нашел похожую тему( Интеграция усиройсва управления кондиционерами Hisense HCPC-H2M1C - Поддерживаемые устройства - Wiren Board Support)
но попробовав интегрировать его получил следующие результаты:
Могу читать любой регистр, вижу в нем изменения, но при попытке записи получаю следующую ошибку в логах WARNING: [register handler] failed to write: <</dev/ttyRS485-2 9600 8 N 2> modbus:50:holding_multi: 40009>: Serial protocol error: illegal function.
В мануале нашел информацию, что чтение и запись производится разными кодами, 0х03 на чтение и 0х10 на запись. При попытках написать шаблон использовал тип регистра Holding_multi, так как я натыкался где-то на форуме, что как раз этот тип регистра и имеет нужные мне коды на чтение и запись как раз. Или я что-то неправильно делаю?
Добрый день.
Покажите пожалуйста запись этого регистра с помощью modbus_client, результаты выполнения команды.
Ну и лог wb-mqtt-serial, с включенным debug.
То есть - сравните что отправляется-принимается в первом и во втором случаях.
Добрый день! Если я правильно вас понял, то команда должна быть такой, верно?
root@wirenboard-AAZBLHYN:~# systemctl stop wb-mqtt-serial
root@wirenboard-AAZBLHYN:~# modbus_client --debug -mrtu -b9600 -pnone -s1 /dev/ttyRS485-2 -a0x32 -t0x10 -r40009 31
Data to write: 0x001f
Opening /dev/ttyRS485-2 at 9600 bauds (N, 8, 1)
[32][10][9C][49][00][01][02][00][1F][F5][39]
Waiting for a confirmation…
<32><90><01><7D>
ERROR Illegal function
ERROR occured!
Если устройство возвращает 0x80 код ошибки - то функция не поддерживается. А как производитель рекомендует записывать в этот регистр?
А по тем адресам и именно с теми же значениями что в примере? вот по адресу 0x9c8e?