Wiren Board 5: Recovery
Версия от 20:33, 31 марта 2020; Admin (обсуждение | вклад)
В Wiren Board 5 прошивка хранится в микросхеме eMMC, напаянной на плату. Чтобы перезалить прошивку, контроллер можно подключить к компьютеру через порт Micro-USB как накопитель, и записать на него прошивку.
ВНИМАНИЕ: при этом способе полностью перезаписывается внутренний накопитель Wiren Board. Все пользовательские данные будут потеряны. Если вы хотите их сохранить, смотрите статью Пропажа файлов при обновлении прошивки.
Инструкция для компьютера с Linux
- Скачайте в одну папку:
- wb5_usbfw.sb;
- mxsldr:
- если у вас настольный компьютер, скачайте mxsldr.bin (архитектура amd64);
- если у вас другое устройство с Linux (например, Raspberry Pi), соберите mxsldr по инструкции.
- Переименуйте файл в mxsldr;
- прошивку - на странице https://github.com/contactless/wirenboard/releases найдите файл для вашей версии платы с расширением
.img.zip
, скачайте и разархивируйте.
- Все дальнейшие команды выполняйте в этой папке.
- Выключите контроллер.
- Определите тип процессорного модуля: обычный или индустриальный. Для этого посмотрите маркировку чипа памяти на плате процессорного модуля:
- обычная версия: SanDisk,
- индустриальная версия: 6VA18JW983.
- Соедините разъём Micro USB контроллера (обычно подписан как FW) с портом USB компьютера. Настоятельно рекомендуется также подключить контроллер и по Debug USB для отслеживания процесса прошивки. Для industrial версии подключение по Debug USB в процессе прошивки - обязательно.
- Затем:
- (для версии WB5.3) замкните перемычку FW рядом с разъёмом Micro USB;
- (для версии WB5.6+) зажмите маленькую кнопку рядом с разъёмом Micro USB.
- Не снимая перемычку/не отпуская кнопку, подключите к контроллеру питание, подождите несколько секунд и запустите на компьютере Где /X/XX/wb5_usbfw.sb - это путь к скачанному файлу.
sudo ./mxsldr /X/XX/wb5_usbfw.sb
- При успешной загрузке образа через несколько секунд замигает зеленый светодиод, память контроллера определится на компьютере как накопитель.
- Затем:
- (для версии WB5.3) снимите пермычку FW;
- (для версии WB5.6+) отпустите кнопку FW.
- Поймите, как в вашей системе определился новый накопитель (например, как /dev/sdb). Это можно посмотреть в выводе
dmesg | tail
- Примечание:
- Если у вас industrial версия процессорного модуля и вывод команды не совпадает с указанным на скриншоте (нет устройства вида "sd*"), то нужно открыть Debug консоль контроллера и ввести в неё следующее:
/sbin/modprobe g_mass_storage file=/dev/mmcblk0 iManufacturer="Wiren Board" iProduct="Wiren Board"
- затем уже в терминале ПК снова ввести
dmesg | tail
- для того, чтобы узнать, как накопитель определился в системе.
- Важно! Операционная система вашего компьютера может автоматически подмонтировать разделы диска контроллера, которые появятся после выполнения команды mxsldr. В этом случае запись прошивки не выполнится успешно. Перед выполнением следующих пунктов проверьте, что ни один из разделов диска контроллера не смонтирован (командой mount — в выводе не должны упоминаться диски контроллера вида /dev/sdbN — как в этом примере), и отмонтируйте все такие смонитрованнные разделы командой umount /dev/sdbN.
- Внимание! Если вы ошибётесь с определением имени накопителя, и в следующем пункте подставите название, соответствующее другому вашему накопителю, его содержимое будет потеряно.
- Чтобы записать прошивку в контроллер, замените в команде ниже
- /X/XX/XXXXX_emmc_wb5.img на путь к заранее распакованному файлу прошивки,
- /dev/sdX на название раздела, под которым накопитель определился в системе,
- и выполните команду
$ sudo dd if=/X/XX/XXXXX_emmc_wb5.img of=/dev/sdX bs=1M conv=fdatasync && sync
- После завершения записи отключите контроллер от USB, отключите питание от контроллера и включите снова.