Wiren Board 5: Восстановление прошивки: различия между версиями
Admin (обсуждение | вклад) |
|||
(не показано 47 промежуточных версий 6 участников) | |||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
<!--T:1--> | |||
В Wiren Board 5 прошивка хранится в микросхеме eMMC, напаянной на плату. Чтобы перезалить прошивку, контроллер можно подключить к компьютеру через порт Micro-USB как накопитель, и записать на него прошивку. | |||
'''ВНИМАНИЕ''': при этом способе полностью перезаписывается внутренний накопитель Wiren Board. Все пользовательские данные будут потеряны. Если вы хотите их сохранить, смотрите статью [[Пропажа файлов при обновлении прошивки]]. | |||
== Пошаговая инструкция для Linux == <!--T:3--> | |||
<!--T:4--> | |||
#Скачайте на компьютер файл ''wb5_usbfw.sb'' [https://github.com/contactless/wirenboard/tree/master/contrib/u-boot отсюда]. | |||
#Соберите на компьютере программу [[Special:MyLanguage/Сборка_образа_для_загрузки_в_режиме_USB_Mass-Storage#Сборка mxsldr|''mxsldr'']]. Для экономии времени, можно скачать уже собранный [[Файл:Mxsldr.bin|бинарный файл mxsldr]] для архитектуры amd64. | |||
#Скачайте на компьютер образ прошивки [https://github.com/contactless/wirenboard/releases отсюда] (расширение образа .img.zip. При скачивании выберите вариант для вашей версии платы контроллера). | |||
# | #Извлеките файл img из zip-архива. | ||
#Выключите контроллер. | |||
#Определите тип процессорного модуля (обычный или industrial). Для этого посмотрите маркировку чипа памяти на плате процессорного модуля: | |||
# | #*Обычная версия: ''SanDisk'' | ||
#*Industrial версия: ''6VA18JW983'' | |||
#Соедините разъём Micro USB контроллера (обычно подписан как FW) с портом USB компьютера. ''Настоятельно рекомендуется также подключить контроллер и по Debug USB для отслеживания процесса прошивки.'' Для industrial версии подключение по Debug USB в процессе прошивки - '''обязательно'''. | |||
# | #Перейдите в папку с собранным [[Special:MyLanguage/Сборка_образа_для_загрузки_в_режиме_USB_Mass-Storage#Сборка mxsldr|''mxsldr'']]. | ||
# | #Затем: | ||
#: | #* (для версии WB5.3) замкните перемычку FW рядом с разъёмом Micro USB; | ||
#* (для версии WB5.6+) зажмите маленькую кнопку рядом с разъёмом Micro USB. | |||
#Не снимая перемычку/не отпуская кнопку, подключите к контроллеру питание, подождите несколько секунд и запустите на компьютере <syntaxhighlight lang="bash">$ sudo ./mxsldr /X/XX/wb5_usbfw.sb</syntaxhighlight> Где /X/XX/wb5_usbfw.sb - это путь к скачанному файлу. | |||
#При успешной загрузке образа через несколько секунд замигает зеленый светодиод, память контроллера определится на компьютере как накопитель. | |||
#Затем: | |||
#* (для версии WB5.3) снимите пермычку FW; | |||
# | #* (для версии WB5.6+) отпустите кнопку FW. | ||
#Поймите, как в вашей системе определился новый накопитель (например, как ''/dev/sdb''). Это можно посмотреть в выводе | |||
#:<syntaxhighlight lang="bash">dmesg | tail</syntaxhighlight> | |||
#:[[File:Dmesg.png |600px|thumb|center|Вид вывода команды dmesg | tail. Нужный накопитель - /dev/sdb]] | |||
#:''Примечание:'' | |||
#:Если у вас '''industrial''' версия процессорного модуля и вывод команды не совпадает с указанным на скриншоте (нет устройства вида "sd*"), то нужно открыть Debug консоль контроллера и ввести в неё следующее: | |||
#:<syntaxhighlight lang="bash">/sbin/modprobe g_mass_storage file=/dev/mmcblk0 iManufacturer="Wiren Board" iProduct="Wiren Board"</syntaxhighlight> | |||
# | #:затем уже в терминале ПК снова ввести | ||
#:<syntaxhighlight lang="bash">dmesg | tail</syntaxhighlight> | |||
# | #:для того, чтобы узнать, как накопитель определился в системе. | ||
#* | #'''Важно!''' Операционная система вашего компьютера может автоматически подмонтировать разделы диска контроллера, которые появятся после выполнения команды ''mxsldr''. В этом случае запись прошивки не выполнится успешно. Перед выполнением следующих пунктов проверьте, что ни один из разделов диска контроллера не смонтирован (командой ''mount'' — в выводе не должны упоминаться диски контроллера вида /dev/sd'''b'''''N'' — как в этом примере), и отмонтируйте все такие смонитрованнные разделы командой ''umount /dev/sdbN''. | ||
#* | #'''Внимание! Если вы ошибётесь с определением имени накопителя, и в следующем пункте подставите название, соответствующее другому вашему накопителю, его содержимое будет потеряно.''' | ||
# Не снимая перемычку | #Чтобы записать прошивку в контроллер, замените в команде ниже | ||
#* ''/X/XX/XXXXX_emmc_wb5.img'' на путь к заранее распакованному файлу прошивки, | |||
#* ''/dev/sdX'' на название раздела, под которым накопитель определился в системе, | |||
#: и выполните команду <syntaxhighlight lang="bash">$ sudo dd if=/X/XX/XXXXX_emmc_wb5.img of=/dev/sdX bs=1M conv=fdatasync && sync</syntaxhighlight> | |||
sudo ./mxsldr wb5_usbfw.sb | #После завершения записи отключите контроллер от USB, отключите питание от контроллера и включите снова. | ||
</syntaxhighlight> | </translate> | ||
# | |||
# | |||
#:<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
#: | |||
#:<syntaxhighlight lang="bash"> | |||
/sbin/modprobe g_mass_storage file=/dev/mmcblk0 iManufacturer="Wiren Board" iProduct="Wiren Board" | |||
</syntaxhighlight> | |||
#: | |||
'''Важно!''' Операционная система вашего компьютера может автоматически | |||
<syntaxhighlight lang="bash"> | |||
sudo dd if | |||
</syntaxhighlight> | |||
После | |||
Версия 20:09, 31 марта 2020
В Wiren Board 5 прошивка хранится в микросхеме eMMC, напаянной на плату. Чтобы перезалить прошивку, контроллер можно подключить к компьютеру через порт Micro-USB как накопитель, и записать на него прошивку.
ВНИМАНИЕ: при этом способе полностью перезаписывается внутренний накопитель Wiren Board. Все пользовательские данные будут потеряны. Если вы хотите их сохранить, смотрите статью Пропажа файлов при обновлении прошивки.
Пошаговая инструкция для Linux
- Скачайте на компьютер файл wb5_usbfw.sb отсюда.
- Соберите на компьютере программу mxsldr. Для экономии времени, можно скачать уже собранный Файл:Mxsldr.bin для архитектуры amd64.
- Скачайте на компьютер образ прошивки отсюда (расширение образа .img.zip. При скачивании выберите вариант для вашей версии платы контроллера).
- Извлеките файл img из zip-архива.
- Выключите контроллер.
- Определите тип процессорного модуля (обычный или industrial). Для этого посмотрите маркировку чипа памяти на плате процессорного модуля:
- Обычная версия: SanDisk
- Industrial версия: 6VA18JW983
- Соедините разъём Micro USB контроллера (обычно подписан как FW) с портом USB компьютера. Настоятельно рекомендуется также подключить контроллер и по Debug USB для отслеживания процесса прошивки. Для industrial версии подключение по Debug USB в процессе прошивки - обязательно.
- Перейдите в папку с собранным mxsldr.
- Затем:
- (для версии 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, отключите питание от контроллера и включите снова.