Добрый день! Вчера по непонятным причинам произошёл сбой в 3х установленных модулях из 4х WB-MR6C v.3. Перестала читаться версия прошивки и серийный номер. Произошло это ориентировочно после того как я увидел значок, предлагающий автоматическое обновление одного из них. При этом один модуль обновился до 1.22.0, а остальные начали сбоить. При сбое отключился свет. Теперь вместо серийника я вижу постоянно увеличивающее значение. Версия прошивки нечитаема. Какая версия модулей была я не знаю, так как не обращал на это внимания. LED-модули на этой же линии опроса RS-485 впорядке. Сейчас “неисправные” модули работают, в том числе управляются с веб-интерфейса, проблема на первый взгляд только с нечитаемым серийником и прошивкой, а значит невозможность дальнейшего автоматического обновления. Что можно сделать для их восстановления? Провести ручную перепрошивку утилитой wb-mcu-fw-flasher по сигнатуре устройства? Перезагрузка ПЛК и самих модулей не помогла.
Добрый день!
Попробуйте восстановить загрузчик и прошивку в ручном режиме через wb-mcu-fw-flasher.
Предварительно скачайте файлы из репозитория по считанной из устройств сигнатуре.
Пока сложно предположить почему такое могло произойти.
После перепрошивки проблема осталась?
Пожалуйста, несколько раз считайте серийный номер через modbus_client.
Например:
root@wirenboard-AJBAI2J6:~# modbus_client -mrtu -b9600 -pnone -s2 /dev/ttyRS485-1 -a178 -t0x03 -r270 -c2
SUCCESS: read 2 of elements:
Data: 0x0003 0x834e
0x3834e => 230222
Будут ли считываться различные значения?
Для диагностики проблемы пришлите, пожалуйста, архив с диагностической информацией контроллера. Создание архива описано в документации.
Сигнатуру устройства или же версию прошивки считать невозможно. Один из повреждённых модулей выдаёт при попытке прочитать сигнатуру:
> root@wirenboard-AGPNY6O2:~# echo -e $(modbus_client -mrtu -pnone -s2 -b115200 /dev/ttyRS485-1 -a187 -t3 -r 290 -c 12 | grep Data | sed -e 's/.*Data://' -e 's/ 0x00/\\x/g')
0x5eb8 0x5eb8 0x5eb8 0x5eb8 0x5eb8 0x5eb8 0x5eb8 0x5eb8 0x5eb8 0x5eb8 0x5eb8 0x5eb8
При попытке прочитать версию прошивки:
root@wirenboard-AGPNY6O2:~# echo -e $(modbus_client -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a187 -t0x03 -r250 -c 16 | grep Data | sed -e 's/.*Data://' -e 's/ 0x00/\\x/g') 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3 0x5ec3
root@wirenboard-AGPNY6O2:~# wb-mcu-fw-flasher -d /dev/ttyRS485-1 -b115200 -pN -s2 -a187 --get-device-info /dev/ttyRS485-1 opened successfully.
Bootloader version: ▒▒▒▒▒▒▒▒
Firmware version: ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
Firmware signature (fw-sig): ▒▒▒▒▒▒▒▒▒▒▒▒
Download firmwares: https://fw-releases.wirenboard.com/?prefix=fw/by-signature/▒▒▒▒▒▒▒▒▒▒▒▒/
И, наконец, по вашей инструкции прочитал серийник успешно
root@wirenboard-AGPNY6O2:~# modbus_client -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a187 -t0x03 -r270 -c2 SUCCESS: read 2 of elements:
Data: 0x0002 0xf185
root@wirenboard-AGPNY6O2:~# modbus_client -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a187 -t0x03 -r270 -c2
SUCCESS: read 2 of elements:
Data: 0x0002 0xf185
root@wirenboard-AGPNY6O2:~# modbus_client -mrtu -b115200 -pnone -s2 /dev/ttyRS485-1 -a187 -t0x03 -r270 -c2
SUCCESS: read 2 of elements:
Data: 0x0002 0xf185
Далее я перевёл в режим загрузчика и запустил recover
root@wirenboard-AGPNY6O2:~# wb-mcu-fw-flasher -d /dev/ttyRS485-1 -b115200 -pN -s2 -a187 -j
/dev/ttyRS485-1 opened successfully.
Send jump to bootloader command and wait 2 seconds...
Ok, device will jump to bootloader.
Device is in Bootloader now! To flash FW run
wb-mcu-fw-flasher -d <port> -f <firmware.wbfw>
root@wirenboard-AGPNY6O2:~# wb-mcu-fw-updater recover /dev/ttyRS485-1 -a187
Will find bootloader port settings for (/dev/ttyRS485-1 : 187; response_timeout: 0.20)... (elapsed: 00:02)
2025-12-11 21:42:37,098 Has found bootloader port settings: SerialSettings(baudrate=9600, parity='N', stopbits=2)
2025-12-11 21:42:44,331 Flashing /var/lib/wb-mcu-fw-updater/mr6cpG__1.22.0_master_3d41793.wbfw (220 data chunks)
100%|###########################################################################################################################################################|220/220|
Прошивка была автоматически скачана и прошита. Но ничего не изменилось. Что можно сделать ещё? Кстати, updater получается определил сигнатуру прошивки mr6cpG?
Перепрошивка flasher тоже ничем не помогла
root@wirenboard-AGPNY6O2:~# wb-mcu-fw-flasher -d /dev/ttyRS485-1 -b115200 -pN -s2 -a187 -j -f ./mr6cpG__1.22.0_master_3d41793.wbfw /dev/ttyRS485-1 opened successfully. Send jump to bootloader command and wait 2 seconds... Ok, device will jump to bootloader. ./mr6cpG__1.22.0_master_3d41793.wbfw opened successfully, size 29952 bytesSending info block… OK
Sending data block 220 of 220… OK.
All done!
Диагностические данные:
Пригласите пожалуйста пользователя support@wirenboard.com в организацию на облачном сервисе.
Для этого в настройках организации нажмите кнопку “Пригласить”
И укажите почтовый адрес:
После этого поддержка получит доступ к вашему контроллеру для диагностики.
Не забудьте удалить потом доступ.
Добрый день!
Там на объекте пока интернета ещё нет. Я контроллер подключаю к точке доступа на мобильном телефоне каждый раз. Можно ли что-то попробовать сделать ещё по инструкции? Если только через доступ вам,то только когда буду на месте.
Я бы еще попробовал считать сигнатуру, обновить загрузчик, еще раз прошивку, и сделал бы сброс настроек модуля через запись 1 в регистр 65402.
И все бы это сделал на скорости 9600.
Если нет интернета, то пожалуйста, попробуйте сами.
Добрый день!
Вам удалось восстановить прошивку?
Да, удалось! Проблема была в загрузчике. Сброс настроек уже делать не пришлось. Сейчас всё отображается корректно. Непонятно только почему это произошло. Версия прошивки и сигнатура хранятся в энергонезависимой памяти, главное чтоб память была без физических дефектов.



