Прошивка WB-MAP6S

Здравствуйте, HW: 1.2 прошивка FW: 2.3.0, решил обновить прошивку ОС Windows 10, программа wb-mcu-fw-flasher_1.0.3.exe, прошивка map6s__2.3.2_pre-release-2.3.0_87fc518.wbfw
В терминале выдает
C:\Users\Валерий>wb-mcu-fw-flasher_1.0.3.exe -d COM1 -j -u -f map6s__2.3.2_pre-release-2.3.0_87fc518.wbfw
\.\COM1 opened successfully.
Send jump to bootloader command and wait 2 seconds…
Ok, device will jump to bootloader.
Send reset UART settings and modbus address command…
Ok.
map6s__2.3.2_pre-release-2.3.0_87fc518.wbfw opened successfully, size 16896 bytes

Sending info block…
Error while sending info block: Slave device or server failure
Data format is invalid or firmware signature doesn’t match the device
что я делаю не правильно, почему не хочет прошиваться?

здесь не хочет читать блоки
C:\Users\Валерий>C:\wb-mcu-fw-flasher_1.0.3.exe -d COM1 -f map6s__2.3.2_pre-release-2.3.0_87fc518.wbfw
\.\COM1 opened successfully.
map6s__2.3.2_pre-release-2.3.0_87fc518.wbfw opened successfully, size 16896 bytes

Sending info block… OK

Sending data block 1 of 124…
Error while sending data block: Unknown error
Sending data block 1 of 124…
Error while sending data block: Unknown error
Sending data block 1 of 124…
Error while sending data block: Unknown error
Sending data block 1 of 124…
Error while sending data block: Unknown error
Sending data block 2 of 124…
Error while sending data block: Unknown error
Sending data block 2 of 124…
Error while sending data block: Unknown error
Sending data block 2 of 124…
Error while sending data block: Unknown error

Добрый день. А опрашивается счетчик нормально?

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

Отрицательные значения активной мощности свидетельствую о неверном подключении.
Это описано.

Не помню таких изменений. Изменения в прошивке WB-MAP6S — Wiren Board

А 12 (именно 12, одним запросом) holding регистров с 290 адреса читаются? Ну и светодиод status - как себя ведет, в момент запросов и когда запросов нет?

Подозреваю что из-за ошибок связи устройство теперь в bootloader.
как именно оно подключено к компьютеру, есть ли ошибки при обычном обмене?

Может это поможет, светодиод на запросы моргает, нет запросов горит
root@debian:/home/vkn# echo -e $(modbus_client -mrtu -pnone -s2 /dev/ttyUSB0 -a1 -t0x03 -r200 -c 6 | grep Data | sed -e ‘s/.*Data://’ -e ‘s/ 0x00/\x/g’)
MAP6S 0x0245
root@debian:/home/vkn# modbus_client --debug -mrtu -pnone -s2 /dev/ttyUSB0 -a1 -t0x03 -r200 -c 6
Opening /dev/ttyUSB0 at 9600 bauds (N, 8, 2)
[01][03][00][C8][00][06][44][36]
Waiting for a confirmation…
<01><03><0C><00><4D><00><41><00><50><00><36><00><53><02><45><69>
SUCCESS: read 6 of elements:
Data: 0x004d 0x0041 0x0050 0x0036 0x0053 0x0245
root@debian:/home/vkn# echo -e $(modbus_client -mrtu -pnone -s2 /dev/ttyUSB0 -a1 -t0x03 -r250 -c 16 | grep Data | sed -e ‘s/.*Data://’ -e ‘s/ 0x00/\x/g’)
2.3.0

Отлично, судя по тому что сигнатура читается - само устройство работает и не в загрузчике.

А почему при попытке обновить прошивку не указываете адрес?

подключаю через USB-RS485, 129 адрес считывается 0, после команды wb-mcu-fw-flasher_1.0.3.exe -d COM1 -J устройство переходит в режим загрузчика на 120 секунд, светодиод начинает мигать

указываю, адрес 1, не помогает

При чтении регистра из устройства, на 1000 запросов например - сколько шибок?
“не помогает” - это описывает результат, но никакой информации не дает. Что именно отправляется в устройство, какие ответы? Лог выполнения с debug?

на этом мои знания заканчиваются) скажите пожалуйста, как и в какой программе мне это сделать?

C:\Users\Валерий>wb-mcu-fw-flasher_1.0.3.exe -d COM1 -a1 -j -u -f map6s__2.3.2_pre-release-2.3.0_87fc518.wbfw
\.\COM1 opened successfully.
Send jump to bootloader command and wait 2 seconds…
Ok, device will jump to bootloader.
Send reset UART settings and modbus address command…
Ok.
map6s__2.3.2_pre-release-2.3.0_87fc518.wbfw opened successfully, size 16896 bytes

Sending info block…
Error while sending info block: Slave device or server failure
Data format is invalid or firmware signature doesn’t match the device

Да, верно.

Тем же modbus-client вот так:

for i in {1..1000}; do echo -n "$i - "; D=`modbus_client -mrtu /dev/ttyUSB0 --debug -b9600 -pnone -s2 -a1 -t3 -o100 -r200 -c6 2>/dev/null | grep Data: | awk 'gsub("Data:","")' | sed -e 's/0x00/\\\x/g' -e 's/\s//g'`; echo -e $D; done

ну и wb-mcu-fw-flasher запустите с -D для вывода дебага.
точно ли подключена земля от преобразователя к Gnd клемме устройства?

Всё подключено, gnd адаптера к gnd счётчика

root@debian:/home/vkn# for i in {1…1000}; do echo -n "$i - "; D=modbus_client -mrtu /dev/ttyUSB0 --debug -b9600 -pnone -s2 -a1 -t3 -o100 -r200 -c6 2>/dev/null | grep Data: | awk 'gsub("Data:","")' | sed -e 's/0x00/\\\x/g' -e 's/\s//g'; echo -e $D; done
1 - MAP6S0x0245
2 - MAP6S0x0245
3 - MAP6S0x0245
4 - MAP6S0x0245
5 - MAP6S0x0245
6 - MAP6S0x0245
7 - MAP6S0x0245
8 - MAP6S0x0245
9 - MAP6S0x0245
10 - MAP6S0x0245
11 - MAP6S0x0245
12 - MAP6S0x0245
13 - MAP6S0x0245
14 - MAP6S0x0245
15 - MAP6S0x0245
16 - MAP6S0x0245
17 - MAP6S0x0245
18 - MAP6S0x0245
19 - MAP6S0x0245
20 - MAP6S0x0245
21 - MAP6S0x0245
22 - MAP6S0x0245
23 - MAP6S0x0245
24 - MAP6S0x0245
25 - MAP6S0x0245
26 - MAP6S0x0245
27 - MAP6S0x0245
28 - MAP6S0x0245
29 - MAP6S0x0245
30 - MAP6S0x0245
31 - MAP6S0x0245
32 - MAP6S0x0245
33 - MAP6S0x0245
34 - MAP6S0x0245
35 - MAP6S0x0245
36 - MAP6S0x0245
37 - MAP6S0x0245
38 - MAP6S0x0245
39 - MAP6S0x0245
40 - MAP6S0x0245
И так до 1000 запросов

Отлично.
Сигнатура устройства какая?

root@debian:/home/vkn# echo -e $(modbus_client -mrtu -pnone -s2 /dev/ttyUSB0 -a1 -t0x03 -r200 -c 6 | grep Data | sed -e ‘s/.*Data://’ -e ‘s/ 0x00/\x/g’)
MAP6S 0x0245
root@debian:/home/vkn# modbus_client --debug -mrtu -pnone -s2 /dev/ttyUSB0 -a1 -t0x03 -r200 -c 6
Opening /dev/ttyUSB0 at 9600 bauds (N, 8, 2)
[01][03][00][C8][00][06][44][36]
Waiting for a confirmation…
<01><03><0C><00><4D><00><41><00><50><00><36><00><53><02><45><69>
SUCCESS: read 6 of elements:
Data: 0x004d 0x0041 0x0050 0x0036 0x0053 0x0245
root@debian:/home/vkn# echo -e $(modbus_client -mrtu -pnone -s2 /dev/ttyUSB0 -a1 -t0x03 -r250 -c 16 | grep Data | sed -e ‘s/.*Data://’ -e ‘s/ 0x00/\x/g’)
2.3.0
Здесь она есть, или где её смотреть?

root@debian:/home/vkn# wb-mcu-fw-flasher -d /dev/ttyUSB0 -a1 -j -u -f ./map6se__2.4.1_master_46a5cb3.wbfw
/dev/ttyUSB0 opened successfully.
Send jump to bootloader command and wait 2 seconds…
Ok, device will jump to bootloader.
Send reset UART settings and modbus address command…
Ok.
./map6se__2.4.1_master_46a5cb3.wbfw opened successfully, size 21112 bytes

Sending info block…
Error while sending info block: Connection timed out
OK

Sending data block 1 of 155…
Error while sending data block: Connection timed out
Sending data block 155 of 155… OK.

All done!
Получается я не ту сигнатуру выбирал, верно?

Читается с 290 регистра, еще раз ссылка: Репозиторий прошивок для Modbus-устройств Wiren Board — Wiren Board

счетчик стал прошиваться, не ту сигнатуру прошивки выбирал
C:\Users\Валерий>wb-mcu-fw-flasher_1.0.3.exe -d COM1 -a39 -j -u -f map6se__2.4.1_master_46a5cb3.wbfw
\.\COM1 opened successfully.
Send jump to bootloader command and wait 2 seconds…
Ok, device will jump to bootloader.
Send reset UART settings and modbus address command…
Ok.
map6se__2.4.1_master_46a5cb3.wbfw opened successfully, size 21112 bytes

Sending info block… OK

Sending data block 155 of 155… OK.

All done!
Повторюсь, что до попыток пришивки , считывались напряжения и частота, после первых не удачных прошивок напряжение и частота перестали считываться, прошивка до последней версии, результатов не принесла, напряжение 25 вольт, частота 0, ток и мощность вообще не понятные показания , корректно считывается только прямая активная всех 6 каналов, что могло случится, в чем причина?