WB Modbus Devices Firmware Update: различия между версиями

м
Откатил включения — сделаю лучше
м (Откатил включения — сделаю лучше)
Строка 37: Строка 37:
Ручное обновление можно сделать утилитой [[Wb-mcu-fw-flasher | wb-mcu-fw-flasher]], которую нужно предварительно установить. Способ установки отличается и зависит от используемой операционной системы.
Ручное обновление можно сделать утилитой [[Wb-mcu-fw-flasher | wb-mcu-fw-flasher]], которую нужно предварительно установить. Способ установки отличается и зависит от используемой операционной системы.


{{Wbincludes:Wb-mcu-fw-flasher Install}}
=== Установка утилиты ===
==== Контроллер Wiren Board ====
Утилита есть в репозитории контроллера, поэтому обновите список пакетов и установите ее:
<syntaxhighlight lang="bash">
apt update
apt install wb-mcu-fw-flasher
</syntaxhighlight>


{{Wbincludes:Select Device Firmware}}
==== ОС Linux ====
Если вы используете контроллер на процессоре ARM Cortex, то скачайте и установите deb-пакет из [http://releases.contactless.ru/?prefix=stable/stretch/pool/main/w/wb-mcu-fw-flasher/ нашего репозитория].
 
Для установки на компьютер с ОС Linux скачайте на компьютер пакет [https://wirenboard.com/wiki/images/3/33/Wb-mcu-fw-flasher_1.0.3_amd64-all.deb wb-mcu-fw-flasher_1.0.3_amd64-all.deb].
 
Для установки, выполните команды:
<syntaxhighlight lang="bash">
apt update
apt install libmodbus5
apt install ./Wb-mcu-fw-flasher_1.0.3_amd64-all.deb #измените имя пакета, если необходимо
</syntaxhighlight>
 
==== ОС Windows ====
Для Windows мы подготовили windows-версию утилиты, которая не требует установки. Скачать можно по ссылке [https://wirenboard.com/wiki/images/d/d1/Wb-mcu-fw-flasher_1.0.3.zip wb-mcu-fw-flasher_1.0.3.zip]
 
=== Выбор прошивки ===
Прошивки публикуются на сайте [http://fw-releases.wirenboard.com/?prefix=fw/ fw-releases.wirenboard.com] в виде файлов с расширением <code>.wbfw</code>.
 
Прошивки сгруппированы по версиям и сигнатурам (типам) устройств.
 
Каждое modbus-устройство Wiren Board имеет сигнатуру — наименование аппаратного типа устройства. Устройство будет прошито только если его сигнатура совпадет с сигнатурой в прошивке.
 
Сигнатура устройства хранится в формате строки из 12 ASCII символов, по одному символу в регистре, и доступна по адресу <code>290</code>.
 
Сигнатуру устройства в ОС Linux и на контроллере можно с помощью утилиты [[Modbus-client |modbus_client]]. Узнаем сигнатуру устройства с '''адресом 10''' и подключенного к порту '''ttyRS485-1'''
<syntaxhighlight lang="bash">
echo -e $(modbus_client -mrtu -pnone -s2 /dev/ttyRS485-1 -a 10 -t3 -r 290 -c 12 | grep Data | sed -e 's/.*Data://' -e 's/ 0x00/\\x/g')
</syntaxhighlight>
 
В результате будет выведена строка с сигнатурой, например '''mr6c'''.
 
О том, как читать регистры из ОС Windows смотрите в статье [[Working with WB devices without a controller | Работа с устройствами Wiren Board без контроллера]]
 
Теперь, имея сигнатуру вы можете скачать прошивку устройства:
# Перейдите на сайт [http://fw-releases.wirenboard.com/?prefix=fw/ fw-releases.wirenboard.com].
# Выберите папку '''by-signature'''.
# Найдите и откройте папку с нужной сигнатурой устройства.
# Выберите одну из веток:
#:*stable — стабильные версии прошивок. Чтобы скачать самую свежую, выберите файл latest.wbfw.
#:*unstable — экспериментальные версии прошивок.


=== Подготовка устройства ===
=== Подготовка устройства ===