Алгоритм работы с контактами «сброс» на модуле

Здравствуйте! Будьте добры, объясните пожалуйста алгоритм работы с контактами «сброс» на модуле.
Выключить WB, замкнуть контакты (на сколько?), разомкнуть, включить WB
ИЛИ
Выключить WB, замкнуть контакты, не размыкая включить WB, разомкнуть (через сколько после включения WB?)

Насколько помню речь об opentherm?

Страница 14

2 лайка

Добрый день!
Удалось ли решить вопрос?

Здравствуйте. Нет, к сожалению сброс модуля ничего не изменил.

Покажите пожалуйста результаты опроса модуля с помощью Утилита «modbus_client» — Wiren Board

Вот, вроде так
root@wiren:~# modbus_client_rpc --debug -mrtu -b19200 -pnone -s1 /dev/ttyRS3 -a11 -t0x03 -r128
2025-06-16 16:42:27,328 [DEBUG] [0b][03][00][80][00][01][85][48]
2025-06-16 16:42:27,332 [DEBUG] Connecting to broker unix:///var/run/mosquitto/mosquitto.sock
2025-06-16 16:42:27,336 [DEBUG] RPC Client → {‘path’: ‘/dev/ttyRS3’, ‘baud_rate’: 19200, ‘parity’: ‘N’, ‘data_bits’: 8, ‘stop_bits’: 1, ‘response_size’: 7, ‘format’: ‘HEX’, ‘msg’: ‘0b03008000018548’, ‘total_timeout’: 1000} (1000 timeout ms)
2025-06-16 16:42:28,341 [ERROR] Mqtt-rpc client timeout error, timeout 1000 ms
root@wiren:~#

Добрый день
Для диагностики проблемы пришлите, пожалуйста, архив с диагностической информацией контроллера. Создание архива описано в документации.

Такого порта нет.
Если имеется в виду третий слот модулей расширения - то ttyMOD3.

Прошу прощения, тогда наверное так:
root@wirenboard-A3ROIVTR:~# modbus_client_rpc --debug -mrtu -b19200 -pnone -s1 /dev/ttyMOD3 -a11 -t0x03 -r128
2025-06-17 07:16:35,540 [DEBUG] [0b][03][00][80][00][01][85][48]
2025-06-17 07:16:35,543 [DEBUG] Connecting to broker unix:///var/run/mosquitto/mosquitto.sock
2025-06-17 07:16:35,547 [DEBUG] RPC Client → {‘path’: ‘/dev/ttyMOD3’, ‘baud_rate’: 19200, ‘parity’: ‘N’, ‘data_bits’: 8, ‘stop_bits’: 1, ‘response_size’: 7, ‘format’: ‘HEX’, ‘msg’: ‘0b03008000018548’, ‘total_timeout’: 1000} (1000 timeout ms)
2025-06-17 07:16:36,553 [ERROR] Mqtt-rpc client timeout error, timeout 1000 ms

root@wirenboard-A3ROIVTR:~# systemctl start wb-mqtt-serial
root@wirenboard-A3ROIVTR:~# modbus_client_rpc --debug -mrtu -b19200 -pnone -s1 /dev/ttyMOD3 -a11 -t0x03 -r128
2025-06-17 07:17:08,096 [DEBUG] [0b][03][00][80][00][01][85][48]
2025-06-17 07:17:08,102 [DEBUG] Connecting to broker unix:///var/run/mosquitto/mosquitto.sock
2025-06-17 07:17:08,106 [DEBUG] RPC Client → {‘path’: ‘/dev/ttyMOD3’, ‘baud_rate’: 19200, ‘parity’: ‘N’, ‘data_bits’: 8, ‘stop_bits’: 1, ‘response_size’: 7, ‘format’: ‘HEX’, ‘msg’: ‘0b03008000018548’, ‘total_timeout’: 1000} (1000 timeout ms)
2025-06-17 07:17:08,121 [DEBUG] Options: {‘debug’: True, ‘mode’: ‘rtu’, ‘slave_addr’: 11, ‘read_count’: 1, ‘start_addr’: 128, ‘func_type’: 3, ‘timeout’: 1000, ‘address_decrement’: False, ‘baudrate’: 19200, ‘data_bits’: 8, ‘stop_bits’: 1, ‘parity_port’: ‘N’, ‘mqtt_broker’: ‘unix:///var/run/mosquitto/mosquitto.sock’, ‘serialport_host’: ‘/dev/ttyMOD3’, ‘write_data’: }
ERROR occurred
2025-06-17 07:17:09,123 [DEBUG] Error message: Server error
2025-06-17 07:17:09,124 [DEBUG] Error code: -32000
2025-06-17 07:17:09,124 [DEBUG] Error data: Serial protocol error: /dev/ttyMOD3, can’t get termios attributes Input/output error (5)
root@wirenboard-A3ROIVTR:~#

приложен диагностический архив, доступен только сотрудникам поддержки
(172,2 КБ)

Но для MOD3 сконфигурирован wbe2-do-r3a модуль.
Куда именно установлен модуль opentherm?
В wb-mqtt-serial сконфигурирован на MOD2.

сейчас исправлю, в MOD2 установлен
systemctl stop wb-mqtt-serial нужно выполнять перед запросом?

root@wirenboard-A3ROIVTR:~# systemctl stop wb-mqtt-serial

root@wirenboard-A3ROIVTR:~# modbus_client_rpc --debug -mrtu -b19200 -pnone -s1 /dev/ttyMOD2 -a11 -t0x03 -r128
2025-06-17 07:39:47,668 [DEBUG] [0b][03][00][80][00][01][85][48]
2025-06-17 07:39:47,672 [DEBUG] Connecting to broker unix:///var/run/mosquitto/mosquitto.sock
2025-06-17 07:39:47,675 [DEBUG] RPC Client → {‘path’: ‘/dev/ttyMOD2’, ‘baud_rate’: 19200, ‘parity’: ‘N’, ‘data_bits’: 8, ‘stop_bits’: 1, ‘response_size’: 7, ‘format’: ‘HEX’, ‘msg’: ‘0b03008000018548’, ‘total_timeout’: 1000} (1000 timeout ms)
2025-06-17 07:39:48,681 [ERROR] Mqtt-rpc client timeout error, timeout 1000 ms

root@wirenboard-A3ROIVTR:~#

root@wirenboard-A3ROIVTR:~# systemctl start wb-mqtt-serial
root@wirenboard-A3ROIVTR:~# modbus_client_rpc --debug -mrtu -b19200 -pnone -s1 /dev/ttyMOD2 -a11 -t0x03 -r128
2025-06-17 07:41:45,580 [DEBUG] [0b][03][00][80][00][01][85][48]
2025-06-17 07:41:45,584 [DEBUG] Connecting to broker unix:///var/run/mosquitto/mosquitto.sock
2025-06-17 07:41:45,587 [DEBUG] RPC Client → {‘path’: ‘/dev/ttyMOD2’, ‘baud_rate’: 19200, ‘parity’: ‘N’, ‘data_bits’: 8, ‘stop_bits’: 1, ‘response_size’: 7, ‘format’: ‘HEX’, ‘msg’: ‘0b03008000018548’, ‘total_timeout’: 1000} (1000 timeout ms)
2025-06-17 07:41:46,591 [DEBUG] RPC Client ← {‘response’: ‘0b8302e0f3’}
2025-06-17 07:41:47,593 [DEBUG] Response: 0b8302e0f3
2025-06-17 07:41:47,594 [DEBUG] <0b><83><02>
2025-06-17 07:41:47,594 [ERROR] Error occurred while parsing modbus response:
Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/modbus_client_rpc/main.py”, line 184, in parse_modbus_response
data = lib.parse_response_adu(response_byte, bytearray.fromhex(request))
File “/usr/lib/python3/dist-packages/umodbus/client/serial/rtu.py”, line 190, in parse_response_adu
function = create_function_from_response_pdu(resp_pdu, req_pdu)
File “/usr/lib/python3/dist-packages/umodbus/functions.py”, line 132, in create_function_from_response_pdu
function_code = pdu_to_function_code_or_raise_error(resp_pdu)
File “/usr/lib/python3/dist-packages/umodbus/functions.py”, line 118, in pdu_to_function_code_or_raise_error
raise error_code_to_exception_map[error_code]
umodbus.exceptions.IllegalDataAddressError: The data address received in the request is not an allowable address for
the server.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/modbus_client_rpc/main.py”, line 262, in process_request
parse_modbus_response(lib, args.func_type, modbus_msg_str, modbus_resp_str)
File “/usr/lib/python3/dist-packages/modbus_client_rpc/main.py”, line 202, in parse_modbus_response
raise exceptions.ModbusParseError(response_byte) from error
modbus_client_rpc.exceptions.ModbusParseError: bytearray(b’\x0b\x83\x02\xe0\xf3’)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/bin/modbus_client_rpc”, line 7, in
sys.exit(main(sys.argv))
File “/usr/lib/python3/dist-packages/modbus_client_rpc/main.py”, line 463, in main
return process_request(options, lib, get_port_params)
File “/usr/lib/python3/dist-packages/modbus_client_rpc/main.py”, line 273, in process_request
result_code = handle_rpcumodbusparseerror(error)
File “/usr/lib/python3/dist-packages/modbus_client_rpc/main.py”, line 228, in handle_rpcumodbusparseerror
logger.error(“%s”, “”.join(f"[{x:02x}]" for x in bytearray.fromhex(error.modbus_message)))
TypeError: fromhex() argument must be str, not bytearray

root@wirenboard-A3ROIVTR:~#

Запрашиваете несуществующий на модуле регистр. Но - отвечает, так что связь есть.
Для проверки - запросите тот, который есть.

root@wirenboard-A3ROIVTR:~# modbus_client_rpc --debug -mrtu -b19200 -pnone -s1 /dev/ttyMOD2 -a11 -t0x03 -r212
2025-06-17 08:56:04,799 [DEBUG] [0b][03][00][d4][00][01][c4][98]
2025-06-17 08:56:04,803 [DEBUG] Connecting to broker unix:///var/run/mosquitto/mosquitto.sock
2025-06-17 08:56:04,807 [DEBUG] RPC Client → {‘path’: ‘/dev/ttyMOD2’, ‘baud_rate’: 19200, ‘parity’: ‘N’, ‘data_bits’: 8, ‘stop_bits’: 1, ‘response_size’: 7, ‘format’: ‘HEX’, ‘msg’: ‘0b0300d40001c498’, ‘total_timeout’: 1000} (1000 timeout ms)
2025-06-17 08:56:05,394 [DEBUG] RPC Client ← {‘response’: ‘0b03020001e185’}
2025-06-17 08:56:06,396 [DEBUG] Response: 0b03020001e185
2025-06-17 08:56:06,397 [DEBUG] <0b><03><02><00><01><85>
SUCCESS: read 1 elements:
Data: 0x0001

Так, отлично. Модуль, соответственно отвечает и отвечает без ошибок.
Сконфигурирован как

    {
      "baud_rate" : 19200,
      "data_bits" : 8,
      "devices" : 
      [
        {
          "device_type" : "WBE2-I-OPENTHERM-FW-1.7.3",
          "heating_options" : 1,
          "slave_id" : "11"
        }
      ],
      "enabled" : true,
      "parity" : "N",
      "path" : "/dev/ttyMOD2",
      "response_timeout_ms" : 1000,
      "stop_bits" : 1
    },

Обмен с ним идет:

Jun 17 07:22:21 wirenboard-A3ROIVTR wb-mqtt-serial[3603]: DEBUG: [port] /dev/ttyMOD2: Write: 0b 04 00 ce 00 01 50 9f
Jun 17 07:22:21 wirenboard-A3ROIVTR wb-mqtt-serial[3603]: DEBUG: [port] /dev/ttyMOD2: Sleep 4167 us
...
Jun 17 07:22:21 wirenboard-A3ROIVTR wb-mqtt-serial[3603]: DEBUG: [port] /dev/ttyMOD2: ReadFrame: 0b 04 02 00 00 21 31
Jun 17 07:22:21 wirenboard-A3ROIVTR wb-mqtt-serial[3603]: DEBUG: [serial client] </dev/ttyMOD2 19200 8 N 1>56765974: Wait until 56765974
Jun 17 07:22:21 wirenboard-A3ROIVTR wb-mqtt-serial[3603]: DEBUG: [port] /dev/ttyMOD2: Sleep 2500 us
Jun 17 07:22:21 wirenboard-A3ROIVTR wb-mqtt-serial[3603]: DEBUG: [port] /dev/ttyMOD2: Write: 0b 04 00 cf 00 01 01 5f
Jun 17 07:22:21 wirenboard-A3ROIVTR wb-mqtt-serial[3603]: DEBUG: [port] /dev/ttyMOD2: Sleep 4167 us
...
Jun 17 07:22:22 wirenboard-A3ROIVTR wb-mqtt-serial[3603]: DEBUG: [port] /dev/ttyMOD2: ReadFrame: 0b 04 02 00 00 21 31

То есть я не вижу необходимости его сброса - связь есть. А чего хотите добиться?

Собственно, после обновления контроллера через консоль “apt update && apt upgrade” пропала связь с котлом. Сейчас котел работает “самостоятельно” управляется с кнопок на корпусе. Целостность кабеля и надежность соединения проверил - все норм.

Судя по значению “ошибка связи с котлом” - связи все же нет.
Обновление ПО контроллера никак не влияет на прошивку и работу модуля opentherm.

Добрый день. Удалось ли разобраться?