Wiren Board 5: Восстановление прошивки: различия между версиями
Kilpio (обсуждение | вклад) |
|||
(не показано 50 промежуточных версий 8 участников) | |||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
<!--T:1--> | |||
В Wiren Board 5 прошивка хранится в напаянном на плате чипе eMMC. В случае проблем с загрузкой контроллера может потребоваться полная перепрошивка, которую можно осуществить через Micro USB, загрузив контроллер в режиме USB Mass-Storage Gadget с помощью утилиты [[Special:MyLanguage/Сборка образа для загрузки в режиме USB Mass-Storage#.D0.A1.D0.B1.D0.BE.D1.80.D0.BA.D0.B0_mxsldr|mxsldr]]. | |||
В Wiren Board 5 прошивка хранится в | |||
''' | <!--T:2--> | ||
'''Внимание: в разделе описывается полная перезапись содержимого внутреннего накопителя Wiren Board. Все пользовательские данные будут безвозвратно потеряны.''' Чтобы избежать потери данных, см. [[Special:MyLanguage/Пропажа_файлов_при_обновлении_прошивки|''соответствующий раздел.'']] | |||
== Пошаговая инструкция для 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'']]. | |||
#Скачайте на компьютер образ прошивки [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/sdb''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> | |||
После | |||
Версия 13:03, 27 июня 2019
В Wiren Board 5 прошивка хранится в напаянном на плате чипе eMMC. В случае проблем с загрузкой контроллера может потребоваться полная перепрошивка, которую можно осуществить через Micro USB, загрузив контроллер в режиме USB Mass-Storage Gadget с помощью утилиты mxsldr.
Внимание: в разделе описывается полная перезапись содержимого внутреннего накопителя Wiren Board. Все пользовательские данные будут безвозвратно потеряны. Чтобы избежать потери данных, см. соответствующий раздел.
Пошаговая инструкция для Linux
- Скачайте на компьютер файл wb5_usbfw.sb отсюда.
- Соберите на компьютере программу mxsldr.
- Скачайте на компьютер образ прошивки отсюда (расширение образа .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, отключите питание от контроллера и включите снова.