Wolf1216

WB-MAO4 после обновления перестали управлять приводами заслонками 0-10V. до этого все работало. напряжение выдает также при измерении мультиметром. заслонки работают проверил. отключаешь клеммы от WB-MAO4 заслонки уходят в другое положение. подключаешь и возвращаются на стандартное положение. но не подаются управлению ползунком 0-100%. то есть напряжение меняется но привода не двигаются

AIbot

Похоже, у вас сейчас выходы WB-MAO4 переключились в неверный режим после обновления или сбросились настройки. В базе есть известная проблема для WB-MAO4: у части устройств режим выходов мог стать PWM вместо 0–10 В, из‑за чего напряжение на мультиметре есть, но исполнительные механизмы ведут себя неправильно. Для таких случаев в документации указано проверить и вернуть режим выхода через веб-интерфейс контроллера или записать в регистр 10 (0x000A) значение 1 для режима 0–10 В.

Что стоит проверить в первую очередь:

  1. В веб-интерфейсе контроллера откройте шаблон WB-MAO4 и убедитесь, что для каналов выбран режим 0–10 V, а не PWM.
  2. Проверьте, что после обновления не сбросились параметры частоты PWM / режима канала.
  3. Если есть доступ по Modbus — проверьте регистр 10 (0x000A) и значение режима.
  4. Сравните поведение одного канала с другим: если на выходе напряжение меняется, а заслонка не реагирует, это часто указывает именно на неверный режим работы выхода, а не на сам привод.

Если хотите, я могу дальше подсказать, как именно проверить WB-MAO4 через веб-интерфейс или Modbus. Для точного ответа напишите ещё:

  • версию прошивки контроллера;
  • ревизию WB-MAO4;
  • через что вы управляете выходами: веб-интерфейс, MQTT или Modbus.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

да

AIbot

Тогда начните с проверки режима канала WB-MAO4.

Что сделать

  1. Откройте веб-интерфейс контроллера и найдите устройство WB-MAO4 в шаблонах.
  2. Проверьте, что для нужных выходов выбран режим 0–10 V, а не PWM.
  3. Если есть Modbus-доступ, запишите в регистр 10 (0x000A) значение 1 — это режим 0–10 В.
  4. После этого перезагрузите только устройство или обновите страницу и проверьте реакцию заслонок.

Почему это похоже на вашу ситуацию

  • напряжение на выходе есть и меняется;
  • при отключении клемм заслонки уходят в другое положение;
  • при подключении возвращаются на стандартное положение;
  • но на изменение ползунка 0–100% не реагируют.

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

Если после проверки режима всё останется без изменений, тогда нужны:

  • версия прошивки контроллера;
  • ревизия WB-MAO4;
  • как именно подключены приводы заслонок;
  • есть ли в веб-интерфейсе выставленный диапазон 0–10 V на каждом канале.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

запишите в регистр 10 (0x000A) значение 1 — это режим 0–10 В. можешь дать команду для устройства 232

AIbot

Да, для RTU на /dev/ttyRS485-2 команда будет такая:

modbus_client --debug -mrtu -b9600 -pnone -s2 /dev/ttyRS485-2 -a232 -t0x06 -r0x000A 1

Что здесь важно:

  • -a232 — адрес устройства 232;
  • -t0x06 — запись одного регистра;
  • -r0x000A — регистр 10;
  • 1 — значение режима 0–10 V.

Если у вас у WB-MAO4 другой Modbus-адрес или другой порт RS-485, замените их в команде.

Если хотите, я могу ещё дать команду для проверки текущего значения регистра 10 перед записью.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x06 -r0x000A 1
Data to write: 0x1
Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][06][00][0A][00][01][7E][F1]
Waiting for a confirmation…
<06><00><0A><00><01><7E>
SUCCESS: written 1 elements!

AIbot

Команда выполнена успешно: регистр 0x000A записан в 1 на адресе 232.

Что это значит:

  • устройство приняло запись;
  • режим канала должен стать 0–10 V;
  • если заслонки всё ещё не реагируют на изменение 0–100%, тогда проблема уже, скорее всего, не в этом регистре.

Что проверить дальше:

  1. Убедиться, что в веб-интерфейсе у нужного канала тоже выбран режим 0–10 V.
  2. Проверить, меняется ли фактическое значение выхода при движении ползунка.
  3. Если можно, пришлите:
    • модель контроллера;
    • ревизию WB-MAO4;
    • как именно подключён привод заслонки;
    • что показывает выход при 0%, 50% и 100%.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

до обновления работала все нормально. WB 8.5

Версия прошивки WB-MAO4 2.8.1

AIbot

Понял: до обновления всё работало, контроллер WB 8.5, прошивка WB-MAO4 2.8.1.

Это уже похоже не на ошибку записи регистра, а на изменение поведения после обновления. Я бы проверил в таком порядке:

  1. Считать обратно регистр 0x000A и убедиться, что там действительно 1.

    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000A 1
    
  2. Проверить, не поменялся ли режим в веб-интерфейсе WB-MAO4 после обновления: иногда значение в регистре есть, но UI/конфиг канала остаётся в другом режиме.

  3. Посмотреть, не изменились ли MQTT/правила, которые могли перезаписывать выход или режим после старта.

  4. Если после записи 1 и перезагрузки канала поведение не вернётся, то это уже похоже на несовместимость/изменение логики в прошивке, и лучше дать инженерам:

    • точную модель модуля;
    • вывод чтения регистра;
    • что именно изменилось после обновления;
    • при необходимости journalctl -u wb-mqtt -n 200 --no-pager и логи правил.

Если хотите, я могу сразу дать команду для чтения всего блока регистров вокруг 0x000A или помочь проверить, какой именно регистр сейчас отвечает за режим на вашей версии прошивки.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000A 1
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0A][00][01][07][31]
Waiting for a confirmation…
<04><02><00><01><25><27>
SUCCESS: read 1 of elements:
Data: 0x0001

после обновления было ШИМ с амплитудой 10в я поменял на 0-10в

AIbot

Чтение подтверждает: в регистре 0x000A сейчас действительно стоит 1 — режим 0–10 V.

Если после обновления у вас раньше был ШИМ с амплитудой 10 В, а сейчас вы переключили на 0–10 V, то здесь важный момент: для некоторых приводов это разные режимы управления, и после смены режима нужно проверить не только сам регистр, но и:

  1. Что именно ожидает привод заслонки — ШИМ или аналоговый 0–10 V.
  2. Выходной сигнал на клеммах — есть ли реально изменение напряжения при 0/50/100%.
  3. Не осталось ли старое правило/настройка, которое формирует ШИМ-логику в wb-rules или в MQTT-настройках.

Что бы я сделал дальше:

  • вернуть в веб-интерфейсе/настройках модуля то, что было до обновления, если именно с ним всё работало;
  • проверить реакцию привода на ШИМ и на 0–10 V отдельно;
  • посмотреть, не меняется ли поведение после перезапуска модуля или контроллера.

Если нужно, я могу помочь составить короткую проверку:

  • как понять, что на выходе именно PWM или 0–10 V,
  • и как безопасно сравнить оба режима на вашей схеме.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

команду для чтения всего блока регистров вокруг 0x000A

AIbot

Да, для WB-MAO4 карта регистров есть: https://wiki.wirenboard.com/wiki/WB-MAO4_Registers[1]

Для чтения блока вокруг 0x000A можно взять, например, 10 регистров начиная с 0x0000:

modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0000 10

Если нужен более узкий участок вокруг 0x000A, например с 0x0008 по 0x000C:

modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 5

Если хотите, могу помочь потом расшифровать вывод и понять, какие из этих регистров отвечают за режим выхода.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.


  1. Карта регистров модуля управления WB-MAO4 — Wiren Board ↩︎

Wolf1216
  • как понять, что на выходе именно PWM или 0–10 V,
AIbot

Понять можно по форме сигнала на выходе:

  1. PWM — на выходе будет импульсное напряжение, которое быстро переключается между 0 В и уровнем амплитуды.
    Мультиметр часто показывает усреднённое значение, поэтому для PWM он может ввести в заблуждение.

  2. 0–10 V — на выходе будет постоянное аналоговое напряжение, которое плавно меняется от 0 до 10 В.

Что проверить:

  • Осциллографом — самый надёжный способ:
    • PWM видно как прямоугольные импульсы;
    • 0–10 V видно как ровную линию с изменяющимся уровнем.
  • Мультиметром — только как косвенную проверку:
    • при 0–10 V показания обычно стабильные;
    • при PWM могут «плавать» или показывать усреднённое значение.

Если осциллографа нет, можно сделать так:

  • выставить 0%, 50%, 100%;
  • измерить напряжение;
  • если значение меняется плавно и стабильно — это похоже на 0–10 V;
  • если мультиметр показывает усреднение, а нагрузка работает иначе — это похоже на PWM.

Если хотите, я могу дать короткую пошаговую проверку именно для WB-MAO4/вашего выхода с безопасным порядком измерений.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0000 10
0x000a Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][00][00][01][27][33]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 5
0x0005 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a

AIbot

По вашему выводу видно, что регистры читаются, но запрос с -r0x0000 10 не проходит, а -r0x0008 5 возвращает 0x000a.

Это похоже на то, что:

  • устройство на адресе 232 отвечает;
  • регистры в районе 0x000A доступны;
  • ошибка на чтении большого блока может быть связана с неподдерживаемым диапазоном, длиной запроса или особенностью карты регистров.

Что сделать дальше:

  1. Прочитать по одному регистру вокруг нужного адреса:
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000A 1
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000B 1
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 1
    
  2. Посмотреть, меняется ли значение при переключении режима выхода через веб-интерфейс или wb-mqtt-serial.
  3. Если это WB-MAO4, то для определения PWM vs 0–10 V нужен именно регистр режима канала; по одному 0x000A пока видно только значение 0x000a, но не ясно, является ли оно режимом или другим параметром.

Если хотите, я могу помочь составить точную команду для чтения соседних регистров и по выводу определить, какой из них отвечает за режим канала.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0000 10
0x000a Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][00][00][01][27][33]
Waiting for a confirmation...
ERROR Connection reset by peer: read
ERROR occured!
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 5
0x0005 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation...
<E8><04><02><00><0A><64><E0>
SUCCESS: read 1 of elements:
        Data: 0x000a 
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000A 1
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000B 1
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 1
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0A][00][01][07][31]
Waiting for a confirmation...
ERROR Resource temporarily unavailable: read
ERROR occured!
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0B][00][01][56][F1]
Waiting for a confirmation...
<E8><04><02><FF><FE><24><97>
SUCCESS: read 1 of elements:
        Data: 0xfffe 
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
<60><F2><00><B7><EB>
ERROR CRC received 0xB7EB != CRC calculated 0x34BE
ERROR occured!
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000A 1
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000B 1
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 1
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0A][00][01][07][31]
Waiting for a confirmation...
<E8><04><02><00><01><25><27>
SUCCESS: read 1 of elements:
        Data: 0x0001 
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0B][00][01][56][F1]
Waiting for a confirmation...
<E8><04><02><FF><FE><24><97>
SUCCESS: read 1 of elements:
        Data: 0xfffe 
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
<E8><04><02><FF><FE><24><97>
SUCCESS: read 1 of elements:
        Data: 0xfffe 
AIbot

По этим чтениям уже видно, что выход не выглядит как фиксированный 0–10 V в лоб по одному регистру:

  • 0x000A у вас меняется: сначала 0x000A, потом 0x0001;
  • 0x000B и 0x000C стабильно дают 0xFFFE — это похоже на служебные/маркерные значения, а не на «уровень напряжения».

Из найденной документации по WB-MAO4 есть раздел с регистрами, и устройство действительно относится к 0–10 V Modbus Analog Outputs.
Ссылка: https://wiki.wirenboard.com/wiki/WB-MAO4_Registers[1]

Что это значит practically:

  1. Для понимания PWM или 0–10 V нужно смотреть не только значение, но и какой режим выставлен в регистре канала/настройки.
  2. Ваши чтения 0x000A..0x000C пока больше похожи на внутренние поля/состояния, чем на прямой измеряемый аналоговый уровень.
  3. Самый быстрый следующий шаг — прочитать таблицу регистров WB-MAO4 и найти именно регистр режима выхода или тип управления каналом.
  4. Если хотите, я могу по этой карте помочь составить точные modbus_client команды для поиска режима по соседним регистрами.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.


  1. Карта регистров модуля управления WB-MAO4 — Wiren Board ↩︎

Wolf1216

помоги составить

AIbot

Да. Давайте составим короткий и удобный план поиска регистра режима для WB-MAO4.

Попробуйте прочитать диапазон вокруг найденных адресов и сравнить значения в двух состояниях устройства:

modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0000 16
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0010 16

Если команда -r0x0000 16 снова даст ошибку, читайте по 1 регистру подряд:

for r in $(seq 0 16); do
  printf "REG 0x%04X\n" "$r"
  modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r"$r" 1
done

Что смотреть:

  • какой регистр меняется, когда вы переключаете режим канала;
  • какой регистр меняется, когда вы меняете заданное значение выхода;
  • если 0x000A меняется, а соседние 0x000B/0x000C нет, это может быть регистр состояния, а не сам режим.

Если хотите, пришлите вывод этого диапазона — я помогу отметить, какой регистр похож на режим, а какой на значение.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0000 16
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0010 16
0x0010 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][00][00][01][27][33]
Waiting for a confirmation…
ERROR Resource temporarily unavailable: read
ERROR occured!
0x0010 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][10][00][01][26][F6]
Waiting for a confirmation…
<04><02><00><00>
SUCCESS: read 1 of elements:
Data: 0x0000
root@wirenboard-ALSPTZPR:~# for r in $(seq 0 16); do
printf “REG 0x%04X\n” “$r”
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r"$r" 1
done
REG 0x0000
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][00][00][01][27][33]
Waiting for a confirmation…
ERROR Resource temporarily unavailable: read
ERROR occured!
REG 0x0001
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][01][00][01][76][F3]
Waiting for a confirmation…
<04><02><00><00>
SUCCESS: read 1 of elements:
Data: 0x0000
REG 0x0002
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][02][00][01][86][F3]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
REG 0x0003
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][03][00][01][D7][33]
Waiting for a confirmation…
<04><02><00><00>
SUCCESS: read 1 of elements:
Data: 0x0000
REG 0x0004
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][04][00][01][66][F2]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
REG 0x0005
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][05][00][01][37][32]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
REG 0x0006
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][06][00][01][C7][32]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
REG 0x0007
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][07][00][01][96][F2]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
REG 0x0008
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
REG 0x0009
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][09][00][01][F7][31]
Waiting for a confirmation…
<04><02><00>
SUCCESS: read 1 of elements:
Data: 0x00f0
REG 0x000A
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0A][00][01][07][31]
Waiting for a confirmation…
<04><00><01><25>
ERROR CRC received 0x125 != CRC calculated 0xF334
ERROR occured!
REG 0x000B
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0B][00][01][56][F1]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
REG 0x000C
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
REG 0x000D
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0D][00][01][B6][F0]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
REG 0x000E
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0E][00][01][46][F0]
Waiting for a confirmation…
ERROR Resource temporarily unavailable: read
<60>ERROR occured!
REG 0x000F
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0F][00][01][17][30]
Waiting for a confirmation…
ERROR Connection reset by peer: read
<04>ERROR occured!
REG 0x0010
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][10][00][01][26][F6]
Waiting for a confirmation…
<04><02><00><00>
SUCCESS: read 1 of elements:
Data: 0x0000

AIbot

По этому выводу видно главное: шина отвечает нестабильно, а часть чтений срывается или возвращает битые ответы. Поэтому сейчас лучше не искать «значение режима» по одному регистру, а сначала понять, какие адреса вообще читаются корректно.

Что уже видно:

  • 0x0001, 0x0003, 0x0008, 0x0010 читаются как 0x0000;
  • 0x0005, 0x0007, 0x000B, 0x000D0xFFFE;
  • 0x00090x00F0;
  • 0x000A и 0x000C дают ошибки/битые кадры;
  • ошибки Connection reset by peer, Resource temporarily unavailable, CRC received ... обычно означают не «не тот регистр», а проблему с чтением/ответом на линии или особенностями конкретного устройства/карты регистров.

Что я бы сделал дальше:

  1. Прочитать по 2–3 регистра за раз, а не по одному — так проще увидеть смежные поля:
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 4
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 4
    
  2. Повторить чтение одного и того же регистра 3–5 раз подряд и посмотреть, стабилен ли ответ.
  3. Если нужно найти именно режим выхода, читать только те адреса, где ответ стабилен, и сравнивать с поведением канала при смене режима.
  4. Если ошибки останутся, проверить ещё параметры линии и паузу между запросами: 115200, N81, адрес 232, и не опрашивается ли устройство слишком часто.

Если хотите, я могу следующим сообщением составить готовый короткий скрипт для проверки стабильности этих регистров и поиска того, который меняется при переключении режима.

Этот вопрос требует более тщательного анализа. Дождитесь инженера в рабочий день — для уверенного ответа мне может не хватить контекста. Если можете — приложите логи или результаты тестов, я смогу проверить гипотезы точнее.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation...
ERROR Connection reset by peer: read
<02><0A><E0>ERROR occured!
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
<E8><04><02><FF><FE><24><97>
SUCCESS: read 1 of elements:
        Data: 0xfffe 
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation...
<E8><04><02><00><0A><64><E0>
SUCCESS: read 1 of elements:
        Data: 0x000a 
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
<E8><04><02><FF><FE><24><97>
SUCCESS: read 1 of elements:
        Data: 0xfffe 
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation...
ERROR Connection reset by peer: read
ERROR occured!
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
<E8><04><02><FF><FE><24><97>
SUCCESS: read 1 of elements:
        Data: 0xfffe 
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation...
<E8><04><02><00><0A><64><E0>
SUCCESS: read 1 of elements:
        Data: 0x000a 
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
ERROR Connection reset by peer: read
ERROR occured!
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation...
<E8><04><02><00><0A><64><FF>
ERROR CRC received 0x64FF != CRC calculated 0x64E0
ERROR occured!
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
<E8><04><02><FF><FE><24><97>
SUCCESS: read 1 of elements:
        Data: 0xfffe 
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation...
ERROR Connection reset by peer: read
ERROR occured!
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
<E8><04><02><FF><FE><24><97>
SUCCESS: read 1 of elements:
        Data: 0xfffe 
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation...
<E8><04><02><00><0A><64><E0>
SUCCESS: read 1 of elements:
        Data: 0x000a 
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation...
ERROR Connection reset by peer: read
ERROR occured!
AIbot

Сейчас видно, что регистры 0x0008 и 0x000C читаются нестабильно, причём 0x0008 иногда даёт 0x000A, иногда ошибку, иногда битый CRC. Это уже похоже не на «не тот адрес», а на одну из двух ситуаций:

  • либо это специальный/временный регистр, который нельзя читать подряд так часто;
  • либо есть проблема на линии / в ответе устройства, из-за которой часть кадров портится.

Что полезно сделать дальше:

  1. Замедлить опрос и читать только один регистр за раз, с паузой 0.5–1 c:

    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
    sleep 1
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 1
    
  2. Проверить, меняется ли 0x0008 при действии с устройством:

    • включить/выключить канал;
    • сменить режим;
    • ещё раз прочитать 0x0008.
  3. Сравнить с соседними регистрами в стабильном диапазоне:

    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0007 4
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000B 4
    
  4. Если ошибки останутся, нужен короткий чек линии:

    • адрес устройства 232 верный;
    • режим порта 115200 8N2;
    • нет ли ещё одного мастера на этой RS-485 линии;
    • не слишком ли длинный кабель / нет ли плохого контакта.

Если хотите, я могу следующим сообщением дать готовую команду для серии из 10 чтений одного регистра с задержкой, чтобы сразу увидеть, какой ответ стабилен, а какой «плавает».

Этот вопрос требует более тщательного анализа. Дождитесь инженера в рабочий день — для уверенного ответа мне может не хватить контекста. Если можете — приложите логи или результаты тестов, я смогу проверить гипотезы точнее.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

Last login: Sat Jun 20 18:11:03 2026 from 127.0.0.1
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
sleep 1
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 1
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
sleep 1
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 1
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
sleep 1
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 1
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
sleep 1
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000C 1
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0C][00][01][E7][30]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0007 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000B 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][07][00][01][96][F2]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0B][00][01][56][F1]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0007 4
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x000B 4
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][07][00][01][96][F2]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe
0x0004 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][0B][00][01][56][F1]
Waiting for a confirmation…
<04><02><24><97>
SUCCESS: read 1 of elements:
Data: 0xfffe

AIbot

Теперь картина стала яснее:

  • 0x0008 стабильно читается как 0x000A;
  • 0x000C стабильно читается как 0xFFFE;
  • 0x000B тоже стабилен как 0xFFFE;
  • ошибки раньше были, но после паузы чтения ушли — значит, часть проблем была именно из-за слишком частого опроса или особенностей ответа устройства.

То есть сейчас у вас уже есть устойчивые значения, и дальше можно искать, что именно означает 0x0008 = 0x000A в карте регистров этого устройства.

Что я бы рекомендовал:

  1. Зафиксировать эти значения как базовые и проверить, меняются ли они при переключении режима/состояния устройства.
  2. Прочитать ещё соседние регистры в том же стабильном окне:
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 8
    
  3. Если задача — понять назначение регистра, нужен раздел документации именно по этой модели/модулю. По одним только ответам Modbus без карты регистров точно не расшифровать 0x000A и 0xFFFE.

Если хотите, я могу дальше помочь в одном из двух направлений:

  • составить короткий тест, чтобы понять, какой регистр меняется при действии на устройство;
  • или по названию устройства найти карту регистров / описание этих адресов.

Этот вопрос требует более тщательного анализа. Дождитесь инженера в рабочий день — для уверенного ответа мне может не хватить контекста. Если можете — приложите логи или результаты тестов, я смогу проверить гипотезы точнее.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 8
0x0008 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 8
0x0008 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 8
0x0008 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 8
0x0008 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 8
0x0008 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 8
0x0008 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a

AIbot

По этим логам видно главное: регистр 0x0008 отвечает нестабильно — иногда 0x000A, иногда таймаут/Connection reset by peer. Это уже похоже не на значение регистра, а на неустойчивый обмен по RS-485 или на устройство, которое не всегда отвечает на запросы.

Что сейчас имеет смысл проверить:

  1. Снизить частоту опроса ещё сильнее
    Подождите 2–3 секунды между запросами и проверьте, уйдут ли ошибки:

    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
    sleep 3
    modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
    
  2. Проверить физическую линию

    • адрес 232 верный;
    • 115200 8N2 действительно то, что нужно этому устройству;
    • нет ли второго мастера на этой шине;
    • клеммы A/B не перепутаны, контакт не «плавает».
  3. Сравнить с другим регистром на том же устройстве
    Если 0x000C стабильно читается, а 0x0008 нет — проблема может быть именно в этом регистре/режиме устройства, а не в линии целиком.

  4. Сделать короткий тест серии чтений с паузой
    Например 10 раз подряд с интервалом 2 секунды — так будет видно, есть ли закономерность:

    for i in $(seq 1 10); do
      date
      modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
      sleep 2
    done
    

Если хотите, следующим сообщением я могу помочь интерпретировать результат этого цикла и сказать, похоже ли это на линию, настройки опроса или особенность самого регистра.

Этот вопрос требует более тщательного анализа. Дождитесь инженера в рабочий день — для уверенного ответа мне может не хватить контекста. Если можете — приложите логи или результаты тестов, я смогу проверить гипотезы точнее.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.

Wolf1216

root@wirenboard-ALSPTZPR:~# modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
sleep 3
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
root@wirenboard-ALSPTZPR:~# for i in $(seq 1 10); do
date
modbus_client --debug -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a232 -t0x04 -r0x0008 1
sleep 2
done
Sat 20 Jun 2026 06:19:32 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
Sat 20 Jun 2026 06:19:34 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
Sat 20 Jun 2026 06:19:36 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
Sat 20 Jun 2026 06:19:38 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
Sat 20 Jun 2026 06:19:40 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
Sat 20 Jun 2026 06:19:42 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
Sat 20 Jun 2026 06:19:44 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Resource temporarily unavailable: read
<04><02><00><0A>ERROR occured!
Sat 20 Jun 2026 06:19:46 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Connection reset by peer: read
ERROR occured!
Sat 20 Jun 2026 06:19:48 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
<04><02><00><0A><64>
SUCCESS: read 1 of elements:
Data: 0x000a
Sat 20 Jun 2026 06:19:50 PM MSK
0x0001 Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 2)
[E8][04][00][08][00][01][A6][F1]
Waiting for a confirmation…
ERROR Resource temporarily unavailable: read
ERROR occured!

AIbot

По этому циклу видно, что значение регистра 0x0008 стабильно 0x000A, а ошибки — нерегулярные. То есть проблема сейчас не в самом значении, а в надёжности обмена: часть запросов проходит, часть — нет.

Что это обычно означает на практике:

  • либо шина RS-485/режим опроса нестабилен;
  • либо само устройство отвечает не на каждый запрос;
  • либо на линии есть помеха/конфликт/тайминг;
  • либо мастер опрашивает слишком агрессивно для этого устройства.

Что проверить дальше, без лишнего:

  1. Сравнить с другим регистром, который у вас уже читался стабильнее
    Если 0x000C тоже начнёт сбоить — это больше похоже на линию/тайминг.
    Если 0x000C стабилен, а 0x0008 нет — проблема локальна для этого регистра/режима.

  2. Снизить скорость или сменить параметры опроса только для теста
    Например попробовать 9600/19200, если устройство это поддерживает, и посмотреть, уйдут ли ошибки.

  3. Проверить, нет ли параллельного опроса
    Если этот же slave ID 232 читается ещё одним процессом/сервисом, будут именно такие плавающие ошибки.

  4. Если нужно понять причину точно — снять логи именно при опросе из wb-mqtt-serial или другого сервиса
    Тогда будет видно, это ошибка протокола, занятость порта или ответ устройства.

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

Этот вопрос требует более тщательного анализа. Дождитесь инженера в рабочий день — для уверенного ответа мне может не хватить контекста. Если можете — приложите логи или результаты тестов, я смогу проверить гипотезы точнее.

Примечание: я — ИИ-ассистент, а не сотрудник-человек; в ответе возможны неточности. Если пришлёте уточняющие данные/логи, я смогу проверить гипотезы точнее.