Перейти к содержанию

Навигация

Wiren Board 7 Firmware Update: различия между версиями

 
(не показаны 122 промежуточные версии 2 участников)
Строка 1: Строка 1:
{{DISPLAYTITLE: Обновление прошивки контроллера Wiren Board 7}}
{{DISPLAYTITLE: Обновление прошивки контроллеров Wiren Board 7.2…7.3 }}
== Общая информация ==
== Общая информация ==
{{note|note| Если у вас контроллер из партии v7.2.1A, выпущенной в декабре 2021 г. и в консоли написано «This is a development release» — перед обновлением или сбросом, [[Wiren_Board_v7.2.1A_Create_Restore_Folder | переключите его на релиз]].}}
{{Anchor|info}}
Инструкции в этой статье работают на контроллере '''Wiren Board 7'''.
{{YouTube
|link=https://youtu.be/2XhPWDzYSmY
|text= Обновление ПО контроллера Wiren Board 7
|list= PL-yKQAXd5Un_fQfrVVgMt1Em5Qb1f-v6l
}}
=== Совместимость ===
{{Anchor|compatibility}}
{{Wbincludes:Update Compatibility
|model= Wiren Board 7.2…7.3
|link= Wiren_Board_7.3
}}
 
=== Как всё устроено ===
{{Wbincludes:Firmware Update How Everything Works}}
 
=== Релизы ===
{{Wbincludes:Wiren Board Software Releases}}
 
== Пользовательские настройки и файлы ==
{{Anchor|user-files}}
{{Wbincludes:Wiren Board User Settings And Files}}
 
== Проверка обновлений ==
{{Wbincludes:Wiren Board Check Firmware Update}}
 
== Обновление в консоли через apt==
{{Anchor|apt}}
[[Image: Dialog.png |400px|thumb|right| Окно ''Modified configuration Files'']]
{{note|note|Рекомендуемый способ. Если последний раз ПО контроллера обновлялось до апреля 2021 года, то сперва вам нужно перейти на релизы, для этого [[New_repository_April_2021 | смените репозиторий]].}}
 
Если вы обновляетесь с релиза wb-2207 и более раннего через apt, то прочитайте сперва описание известных проблем, с которыми вы столкнётесь: [[WB_7:_Errata#ERRWB73011 | Wiren Board 7: ERRWB73011]].
 
Важно! В релизе wb-2304 сменилась версия Debian, поэтому при переходе со старых релизов wb-21**/wb-22** надо ввести дополнительную команду ([[wb-2304|подробнее]]):
:<syntaxhighlight lang="bash">
wb-release --update-debian-release
</syntaxhighlight>
 
{{Wbincludes:Wiren Board Apt Firmware Update}}


ПО контроллера выпускается в формате релизов ''stable'' — новые функции каждые три месяца, и ''testing'' — новые функции каждый день. Между релизами можно переключаться. С завода на контроллере установлен ''stable''.
=== Решение проблем при обновлении со Stretch на Bullseye ===
{{Wbincludes:Bullseye Errata}}


Прошивку контроллера Wiren Board можно обновить в консоли с помощью apt, через веб-интерфейс.
== Прошивка через веб-интерфейс ==
Также контроллер можно сбросить к заводским настройкам и удалить пользовательские данные.
{{Anchor|web-ui}}


Для обновления через веб-интерфейс или с USB-флешки вам понадобится fit-файл прошивки, который можно скачать в нашем [http://fw-releases.wirenboard.com/?prefix=fit_image/stable/ репозитории] или по прямой ссылке на stable-релиз: [http://fw-releases.wirenboard.com/fit_image/stable/7x/latest_stretch.fit Wiren Board 7.x].
=== О способе ===
Прошивку через веб-интерфейс удобно использовать, если на компьютере нет интернета и вы используете только встроенное в контроллер ПО. Способ подходит для обновления внутри веток stable или testing, а также для перехода со stable на testing.


== Журнал изменений в релизах ==
{{Wbincludes:Firmware Update Fit Save Data}}
{{Wbincludes:Release Log}}


== Проверка обновлений ==
=== Скачивание прошивки ===
{{Wbincludes:Wiren Board Check firmware update}}
{{Wbincludes:Fit Files Wiren Board 7}}


== Обновление в консоли через apt ==
=== Процесс ===
{{Wbincludes:Wiren Board Apt firmware update}}
{{note|info|Если у вас на контроллере релиз wb-2307 и новее, а на самом контроллере корневой раздел 1 Гбайт, то его [[Enlarging_the_rootfs_partition|можно увеличить]].}}
{{Wbincludes:Wiren Board WebUI Firmware Update}}


== Обновление через веб-интерфейс ==
== Прошивка через Debug Network ==
{{Wbincludes:WebUI Wiren Board Firmware Update}}
{{Anchor|debug-network}}


== Обновление и сброс через разъём Debug Network ==
[[Image: wb7-debug-network-pc.png |300px|thumb|right| Файл обновления прошивки на съёмном накопителе ]]
[[Image: wb7-debug-network-pc.png |300px|thumb|right| Файл обновления прошивки на съёмном накопителе ]]
В контроллере есть разъём '''Debug Network''', который можно использовать для обновления прошивки или сброса настроек:
[[Image: wb7-debug-network.png |300px|thumb|right| Разъём Debug Network, USB-C ]]
{{Wbincludes:Wiren Board 7 Fit Prepare}}
[[Image: wb7-FW.png |300px|thumb|right| Кнопка FW — переводит контроллер в режим прошивки и подтверждает запросы действий в процессе прошивки]]
# Выключите контроллер кнопкой на корпусе.
=== О способе ===
# Подключите контроллер к компьютеру через разъём Debug Network. Вам потребуется кабель USB-C с возможностью передачи данных.
В контроллере есть разъём [[Debug Network]], который можно использовать для обновления прошивки или удаления всех данных и настроек.
# Зажмите кнопку FW и удерживайте её.
 
# Включите контроллер и после короткого звукового сигнала отпустите кнопку FW.
{{Wbincludes:Wiren Board 7 Firmware Update Fit Save Data}}
# Индикатор контроллера медленно замигает красным, а ещё через 10 секунд компьютер определит съёмный накопитель.
 
# Скопируйте подготовленный в шаге 1 файл на определившийся накопитель.
=== Подготовка файла прошивки ===
# Извлеките (отмонтируйте) флешку программно и отключите кабель от контроллера физически.
{{Wbincludes:Fit Files Wiren Board 7}}
# В зависимости от того, какой файл вы положили, возможно два варианта:
## Контроллер начнёт обновлять прошивку.
## Контроллер издаст продолжительный звуковой сигнал, а индикатор быстро замигает красным — это запрос на сброс к заводским настройкам:
##* Чтобы подтвердить сброс настроек и удалить все пользовательские данные, зажмите и держите кнопку FW.
##* Контроллер пикнет четыре раза и перейдёт к сбросу настроек. Кнопку можно отпустить.
# После обновления прошивки или сброса настроек контроллер перезагрузится в рабочем режиме, а его индикатор замигает зелёным.


Вывод в [[WB Debug Console | Debug-консоль]] во время обновления прошивки: выделенная строка — момент короткого звукового сигнала:
{{Wbincludes:Fit File Rename Wiren Board 7}}
:<syntaxhighlight lang="bash" highlight="27">
U-Boot 2021.10-wb1.1.1-g4c04347f3e (Feb 03 2022 - 14:48:16 +0000)


CPU:  Allwinner R40 (SUN8I 1701)
=== Процесс ===
Model: Wiren Board rev. 7.2.0 (A40i)
Вам понадобятся компьютер и кабель USB-C с возможностью передачи данных. Весь процесс займёт не больше пяти минут.
I2C:  ready
DRAM:  1 GiB
MMC:  mmc@1c0f000: 0, mmc@1c11000: 1
Loading Environment from MMC... OK
In:    serial@1c28000
Out:  serial@1c28000
Err:  serial@1c28000
Will only keep env vars: mmcpart bootcount upgrade_available uenvcmd otp_program otp_aes_program
## Info: input data size = 43 = 0x2B
bootcount=0
mmcpart=2
upgrade_available=0


Environment size: 43/131068 bytes
Для наглядности можно подключиться к [[WB Debug Console | Debug Console]], где контроллер будет несколько раз запрашивать в подтверждение тех или иных действий и писать сообщения о ходе процесса.
## Resetting to default environment
 
## Info: input data size = 43 = 0x2B
В инструкции мы будем ориентироваться на звуковые сигналы и подтверждать все запросы:
Net:  No ethernet found.
# Начало зависит от аппаратной ревизии контроллера:
Hit any key to stop autoboot: 0
#* Для ревизии 7.3:
switch to partitions #0, OK
#*# Переведите выключатель в положение OFF и вытащите кабели из разъёмов Debug Console и Debug Network. Это выключит контроллер.
mmc1(part 0) is current device
#*# Зажмите и не отпускайте кнопку FW.
eMMC found on device 1
#*# Переведите переключатель в положение ON и тут же вставьте кабель в разъём Debug Network. Если вам нужны логи из дебага, сразу подключите кабель Debug Console.
#*# Подключите к контроллеру внешнее питание — это нужно для того, чтобы при отключении кабеля контроллер корректно прошился.
#*Для ревизии 7.2:
#*# Вставьте кабель в разъём Debug Network. Если нужно, подключите кабель к Debug Console.
#*# Переведите выключатель в положение OFF.
#*# Подключите к контроллеру внешнее питание.
#*# Зажмите и не отпускайте кнопку FW.
#*# Включите контроллер переключателем и продолжайте удерживать кнопку FW.
#Держите кнопку FW до короткого звукового сигнала. В Debug Console в этот момент будут строки:
#:<syntaxhighlight lang="bash">
Press FW button to enter firmware update mode
Press FW button to enter firmware update mode
..
# <здесь вы нажали кнопку>
Entering firmware update mode.
Entering firmware update mode.
Checking if ubootenv part is present
</syntaxhighlight>
## Loading FIT header to 0x42000000 ...
# Отпустите кнопку FW.
## Loading FIT strings to 0x42000028 ...
# Через несколько секунд на компьютере обнаружится накопитель '''WB UPDATE''', откройте его. В Debug Console в это время будет сообщение:
## Loading FIT struct to 0x42000100 ...
#:<syntaxhighlight lang="bash">
Can`t find subimage 'ubootenv'
Copy .fit file to virtual USB driver and unplug the cable
Extracting kernel
</syntaxhighlight>
## Loading FIT header to 0x42000000 ...
# Скопируйте подготовленный .fit-файл на этот накопитель. В Debug Console в это время будут сообщения:
## Loading FIT strings to 0x42000028 ...
#:<syntaxhighlight lang="bash">
## Loading FIT struct to 0x42000100 ...
# приглашение скопировать файл на накопитель
7772640 bytes read in 190 ms (39 MiB/s)
Copy .fit file to virtual USB driver and unplug the cable
    Description: Update kernel
# <много сообщений с процессом копирования файла>
    Type:        Kernel Image
</syntaxhighlight>
    Compression:  uncompressed
# По окончании копирования, отключите накопитель средствами ОС и вытащите кабель Debug Network, начнётся прошивка контроллера. В Debug Console при этом будет сообщение вида:
    Data Start:  0x42000300
#:<syntaxhighlight lang="bash">
    Data Size:   7763680 Bytes = 7.4 MiB
Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    Architecture: ARM
Will look for update in USB gadget ramdisk
    OS:          Linux
 
    Load Address: unavailable
Will use wb_update.fit from USB gadget (/usb)
    Entry Point:  unavailable
# или, если вы выбрали удаление данных
    Hash algo:    sha1
Will use wb_update_FACTORYRESET.fit from USB gadget (/usb)
    Hash value:  8fa0750fc5f1738f05856b25f5a4c2fc9159b420
</syntaxhighlight>
## Verifying ... sha1+
# Через пару минут контроллер перезагрузится и его индикатор станет равномерно мигать зелёным, а в Debug Console появится приглашение входа: <code>wirenboard-XXXXXXXX login:</code>.
  Loading part 0 ... OK
Extracting DTB
## Loading FIT header to 0x43000000 ...
## Loading FIT strings to 0x43000028 ...
## Loading FIT struct to 0x43000100 ...
63624 bytes read in 30 ms (2 MiB/s)
    Description:  Update DTB
    Type:         Flat Device Tree
    Compression: uncompressed
    Data Start:  0x43000440
    Data Size:    54344 Bytes = 53.1 KiB
    Architecture: ARM
    Hash algo:    sha1
    Hash value:  88cb690e62d3e2fbe97df37350c2ee8c8abab757
## Verifying ... sha1+
  Loading part 0 ... OK
Kernel image @ 0x42000000 [ 0x000000 - 0x7676e0 ]
## Flattened Device Tree blob at 43000000
  Booting using the fdt blob at 0x43000000
  Loading Device Tree to 49fef000, end 49fff447 ... OK


Starting kernel ...
Если в имени файла есть <code>FACTORYRESET</code>, то контроллер издаст продолжительный звуковой сигнал — запрос подтверждения удаления всех данных. В Debug Console будет сообщение: <code>FACTORY RESET REQUESTED</code>. Нажмите и держите кнопку FW, пока контроллер не издаст по очереди четыре коротких звуковых сигнала. Кнопку можно отпустить. Если вы передумали удалять данные — просто выключите контроллер.


[   0.000000] Booting Linux on physical CPU 0x0
== Прошивка с помощью USB-флешки или карты Micro-SD ==
#
{{Anchor|usb-flash}}
# Служебные сообщения ОС о загрузке
[[Image: wb7-FW.png |300px|thumb|right| Кнопка FW — переводит контроллер в режим прошивки и подтверждает запросы действий в процессе прошивки]]
#
=== О способе ===
mount: mounting none on /dev/pts failed: No such file or directory
Для обновления прошивки или удаления данных и настроек можно воспользоваться USB-флешкой или картой памяти Micro SD.
Boot mode: update_auto
Board is WB7
Checking that no-one is using this disk right now ... OK


[    5.246653] random: sfdisk: uninitialized urandom read (4 bytes read)
Способ удобен, если на компьютере нет интернета и вы используете только встроенное в контроллер ПО.
Disk /tmp/ramdisk.img: 300 MiB, 314572800 bytes, 614400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


>>> Created a new DOS disklabel with disk identifier 0x67241b30.
{{Wbincludes:Wiren Board 7 Firmware Update Fit Save Data}}
/tmp/ramdisk.img1: Created a new partition 1 of type 'W95 FAT32' and of size 299 MiB.
/tmp/ramdisk.img2: Done.


New situation:
=== Подготовка файла прошивки ===
{{Wbincludes:Fit Files Wiren Board 7}}


Device            Boot Start    End Sectors  Size Id Type
{{Wbincludes:Fit File Rename Wiren Board 7}}
/tmp/ramdisk.img1      2048 614399  612352  299M  b W95 FAT32


The partition table has been altered.
=== Процесс ===
Syncing disks.
Для наглядности можно подключиться к [[WB Debug Console | Debug Console]], где контроллер будет несколько раз запрашивать подтверждение тех или иных действий и писать сообщения о ходе процесса.
mkfs.fat 4.1 (2017-01-24)
 
[    5.367471] random: mkfs.vfat: uninitialized urandom read (16 bytes read)
В инструкции мы будем ориентироваться на звуковые сигналы и подтверждать все запросы:
Activate Mass Storage device
# Скопируйте подготовленный файл прошивки на флешку или карту памяти и вставьте её в контроллер.
[    5.588279] Mass Storage Function, version: 2009/09/11
# Следующие шаги зависят от аппаратной ревизии контроллера:
[    5.593478] LUN: removable file: (no medium)
#* Для ревизии 7.3:
[    5.597865] LUN: file: /tmp/ramdisk.img
#*# Переведите выключатель в положение OFF и вытащите кабели из разъёмов Debug Console и Debug Network.
[    5.601699] Number of LUNs=1
#*# Зажмите и не отпускайте кнопку FW.
[    5.604760] g_mass_storage gadget: Mass Storage Gadget, version: 2009/09/11
#*# Подключите к контроллеру внешнее питание.
[    5.611717] g_mass_storage gadget: userspace failed to provide iSerialNumber
#*# Включите контроллер кнопкой и продолжайте удерживать кнопку FW. Если вам нужны логи из дебага, быстро подключите кабель Debug Console.
[   5.618778] g_mass_storage gadget: g_mass_storage ready
#*Для ревизии 7.2:
Waiting for USB gadget to connect to host PC (1/7)
#*# Если нужно, подключите кабель к Debug Console.
[   33.762598] vcc-gmac-phy: disablingnd unplug the cable (27)
#*# Переведите выключатель в положение OFF.
[  33.766428] dc5ldo: disabling
#*# Подключите к контроллеру внешнее питание.
[  33.769710] dldo4: disabling
#*# Зажмите и не отпускайте кнопку FW.
[  33.772914] usb0_vbus: disabling
#*# Включите контроллер кнопкой и продолжайте удерживать кнопку FW.
[  33.776143] vcc-sd: disabling
# Держите кнопку FW до короткого звукового сигнала. Кнопку можно отпустить. В Debug Console в этот момент будут строки:
[  47.208924] random: crng init doneand unplug the cable (41)
#:<syntaxhighlight lang="bash">
Copy .fit file to virtual USB driver and unplug the cable (85)
Press FW button to enter firmware update mode
Will look for update in USB gadget ramdisk
# <здесь вы нажали кнопку>
Will use wb_update_FACTORYRESET.fit from USB gadget (/usb)
Entering firmware update mode.
</syntaxhighlight>
# Контроллер попробует найти на подключённой флешке или карте памяти fit-файлы с прошивкой. В Debug Console при этом будут выводится строки:
#:<syntaxhighlight lang="bash">
Looking for update .fit on /dev/sda...
Looking for update .fit on /dev/sda1...
</syntaxhighlight>
# Если файл будет найден — контроллер издаст два коротких сигнала и перейдёт в режим прошивки. В Debug Console при этом будет сообщение вида:
#:<syntaxhighlight lang="bash">
Will use wb_update.fit from virtual USB drive
# или, если вы выбрали удаление данных
Will use wb_update_FACTORYRESET.fit from virtual USB drive
</syntaxhighlight>
#: Если в имени файла есть <code>FACTORYRESET</code>, то контроллер издаст продолжительный звуковой сигнал — запрос подтверждения удаления всех данных. В Debug Console будет сообщение: <code>FACTORY RESET REQUESTED</code>. Нажмите и держите кнопку FW, пока контроллер не издаст по очереди четыре коротких звуковых сигнала. Кнопку можно отпустить. Если вы передумали удалять данные, то просто выключите контроллер.
# Через пару минут контроллер перезагрузится и его индикатор станет равномерно мигать зелёным, а в Debug Console появится приглашение входа: <code>wirenboard-XXXXXXXX login:</code>.
 
=== Массовая прошивка контроллеров ===
{{Wbincludes:Mass flashing from flash}}
 
== Удаление данных и возврат заводских настроек ==
{{Anchor|factory-reset}}
[[Image: wb7-FW.png |300px|thumb|right| Кнопка FW — переводит контроллер в режим прошивки и подтверждает запросы действий в процессе прошивки]]
=== О способе ===
Процедура удаляет на контроллере все данные: установленное ПО, настройки, пользовательские файлы и восстанавливает заводскую конфигурацию настроек, а также релиз ПО контроллера, который был в момент его выпуска — сделайте резервную копию ваших файлов и настроек.
 
=== Процесс ===
Если у вас установлены USB-флеш, карта MicroSD или воткнут провод в Debug Network — вытащите их.
 
Для наглядности можно подключиться к [[WB Debug Console | Debug Console]], где контроллер будет несколько раз запрашивать в подтверждение тех или иных действий и писать сообщения о ходе процесса.
 
В инструкции мы просто зажмём кнопку FW и автоматом подтвердим все действия:
# Начало зависит от аппаратной ревизии контроллера:
#* Для ревизии 7.3:
#*# Переведите выключатель в положение OFF и вытащите кабели из разъёмов Debug Console и Debug Network.
#*# Зажмите и не отпускайте кнопку FW.
#*# Подключите к контроллеру внешнее питание. Если вам нужны логи из дебага, вместо внешнего питания можно подключить кабель Debug Console, контроллер включится автоматически.
#*# Включите контроллер кнопкой и продолжайте удерживать кнопку FW.
#*Для ревизии 7.2:
#*# Если нужно, подключите кабель к Debug Console.
#*# Переведите выключатель в положение OFF.
#*# Подключите к контроллеру внешнее питание.
#*# Зажмите и не отпускайте кнопку FW.
#*# Включите контроллер кнопкой и продолжайте удерживать кнопку FW.
# Контроллер издаст короткий звуковой сигнал — это он перешёл в режим обновления прошивки, не отпускайте кнопку FW.
#:В Debug Console при этом будет сообщение вида:
#:<syntaxhighlight lang="bash">
Press FW button to enter firmware update mode
Entering firmware update mode.
</syntaxhighlight>
# Подождите 20-30 секунд, пока контроллер перебирает все накопители в поисках прошивки. В финале прозвучит один двойной звуковой сигнал — контроллер перешёл к процедуре сброса с помощью зашитого на заводе образа прошивки.
#:В Debug Console при этом будет сообщение вида:
#:<syntaxhighlight lang="bash">
Load modules for USB to work
Waiting for USB to settle (10/10)
Waiting for microSD to settle (3/3)
Wait for eMMC to become available...
 
Will use /mnt/data/.wb-restore/factoryreset.fit
</syntaxhighlight>
# Через несколько секунд контроллер спросит подтверждение на удаление всех данных, но так как кнопка у нас уже зажата, то просто прозвучат по очереди четыре коротких звуковых сигнала. После этого сразу начнётся удаление данных, откат версии прошивки к заводской и восстановление заводских настроек.
#:В Debug Console при этом будет сообщение вида:
#:<syntaxhighlight lang="bash">
##############################################################################
##############################################################################


Строка 180: Строка 239:


##############################################################################
##############################################################################
ooo....
.... #< здесь звучали четыре коротких звуковых сигнала >


Factory reset is confirmed!
Factory reset is confirmed!
===============================================================================
Fri Feb  4 16:00:13 UTC 2022: started update from /usb/wb_update_FACTORYRESET.fit
===============================================================================
Description:        WirenBoard firmware update
Compatible device:  wirenboard,wirenboard-720
Firmware version:    202202040820
Firmware compatible: unknown
Release name:        wb-2201
Release suite:      stable
Release target:      wb7/stretch
Release repo prefix:
Time of creation:    Fri Feb  4 08:21:41 UTC 2022
===============================================================================
>>> Checking SHA1 hash of install
PROGRESS: 0%
>>> SHA1 hash of install ok
>>> Wiping data partition (factory reset)
[  101.691971] EXT4-fs (mmcblk0p6): recovery complete
[  101.697817] EXT4-fs (mmcblk0p6): mounted filesystem with ordered data mode. Opts: (null)
>>> Extracting install script
>>> Running install script
>>> Checking SHA1 hash of rootfs
PROGRESS: 100%
>>> SHA1 hash of rootfs ok
>>> Installing firmware update
>>> Getting mmcpart from U-Boot environment
>>> Will install to /dev/mmcblk0p3
>>> Check if partition table is correct
[  109.496418] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)
>>> Mounting /dev/mmcblk0p3 at /dev/shm/rootfs
[  109.525082] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)
>>> Cleaning up /dev/mmcblk0p3
>>> Cleaning up using rsync
>>> Extracting files to new rootfs
/dev/shm/rootfs /
PROGRESS: 100%
/
>>> Recovering device certificates
[  143.164257] EXT4-fs (loop1): mounted filesystem without journal. Opts: (null)
>>> Mount /dev, /proc and /sys to rootfs
>>> Running post-install scripts
>>> > Processing /dev/shm/rootfs/usr/lib/wb-image-update/postinst/10update-u-boot
Trying to install u-boot using u-boot-install-wb from new rootfs
Das U-Boot installator for Wiren Board
You are about to install U-boot image '/usr/lib/u-boot/sun8i_wirenboard7/u-boot-sunxi-with-spl.bin' on '/dev/mmcblk0' (platform wb7)
Force installation requested
Writing U-boot image '/usr/lib/u-boot/sun8i_wirenboard7/u-boot-sunxi-with-spl.bin' on '/dev/mmcblk0' (options 'bs=1024 seek=8')
446+1 records in
446+1 records out
457008 bytes (457 kB, 446 KiB) copied, 0.150764 s, 3.0 MB/s
Syncing device
>>> Unmounting /dev, /proc and /sys from rootfs
>>> Unmounting new rootfs
>>> Switching to new rootfs
>>> Done, removing firmware image and rebooting
[  149.555335] reboot: Restarting system
[  149.569048] i2c i2c-0: No atomic I2C transfer handler
U-Boot SPL 2021.10-wb1.1.1-g4c04347f3e (Feb 03 2022 - 14:48:16 +0000)
DRAM: 1024 MiB
Trying to boot from MMC2
</syntaxhighlight>
</syntaxhighlight>
# Отпустите кнопку FW.
# По окончании процедуры контроллер перезагрузится в рабочем режиме, а его индикатор замигает зелёным.


== Сброс к заводским настройкам ==
Вся процедура занимает чуть больше 2 минут. После сброса у вас будет версия прошивки, зашитая в контроллер при производстве — обновите ПО до актуального релиза.
Если у вас контроллер из партии v7.2.1A, выпущенной в декабре 2021 года, перед первым сбросом подготовьте контроллер по [[Wiren Board v7.2.1A Create Restore Folder | инструкции]].


Процедура сброса:
== Удаление данных и возврат заводских настроек с обновлением ПО ==
# Выключите контроллер кнопкой на корпусе.
{{Wbincludes:FactoryReset WebUI}}
# Зажмите и не отпускайте кнопку FW, включите контроллер.
# Через 5-7 секунд раздастся короткий звуковой сигнал, отпустите кнопку.
# Индикатор будет некоторое время мигать красным, а потом раздастся длинный звуковой сигнал — запрос подтверждения на сброс к заводским настройкам.
# Чтобы подтвердить сброс и удалить все файлы, нажмите и держите кнопку FW.
# Контроллер четыре раза коротко пикнет, а индикатор мигнёт зелёным, кнопку можно отпустить.
# Дождитесь окончания сброса. В конце контроллер перезагрузится и загрузится в обычном режиме.
<!--
[[Image: WB6.7 USB1 + FW.png |400px|thumb|right| Порт '''USB 1''' и кнопка '''FW''' на контроллере Wiren Board 6.7]]
{{YouTube
| link= https://youtu.be/SJFLmVe6OgU
| text= Сброс Wiren Board 6 к заводским настройкам
}}
Мы не рекомендуем для обновления прошивки использовать внешние жесткие диски — может не хватить мощности USB-порта.
 
Про сохранение настроек читайте в разделе [[#Сохранение пользовательских файлов и настроек |Сохранение пользовательских файлов и настроек]].
 
'''Подготовьте флеш-накопитель''':
# [[Formatting Flash Drive | Отформатируйте флешку в FAT32]].
# Скачайте [[#Общая информация  | fit-файл прошивки]] на компьютер.
# Скопируйте скачанный ''.fit''-файл в корень флешки и убедитесь, что размер файла не равен нулю.
# Переименуйте файл на флешке:
#* '''для обновления прошивки''' контроллера в <code>wb_update.fit</code>,
#* '''для сброса контроллера к заводским настройкам''' и удаления всех данных в <code>wb_update_FACTORYRESET.fit</code>.
 
'''Чтобы обновить прошивку или сбросить контроллер к заводским настройкам''':
# Выключите контроллер.
# Подключите флешку с файлом прошивки к порту '''USB 1''' и включите контроллер.
# Если в корне флешки найден файл прошивки, то индикатор контроллера начнёт часто мигать оранжевым.
# В этот момент зажмите на одну секунду кнопку '''FW''', которая находится на плате контроллера.
# Дальнейшие шаги зависят от того, какой файл лежит на флешке:
#* <code>wb_update.fit</code> — индикатор загорится зелёным, потом мигнёт красным и замигает зелёным — это началась процедура обновления прошивки.
#* <code>wb_update_FACTORYRESET.fit</code>:
#*# Индикатор загорится зелёным, потом два раза мигнёт красным и ещё два раза зелёным.
#*# Контроллер начнёт пищать, а индикатор замигает красным — контроллер ждёт подтверждения.
#*# Подтвердите очистку контроллера, для этого нажмите кнопку '''FW''' и держите, пока контроллер не пискнет четыре раза, а индикатор не загорится зелёным — это началась процедура сброса настроек.
#*# Кнопку можно отпустить. В процессе индикатор будет мигать зелёным.
# Процедура продлится 5–10 минут, в конце контроллер перезагрузится в рабочий режим, а индикатор на нём замигает зелёным — флешку можно извлечь.
 
Если обновление или сброс завершаются с ошибкой, подключитесь к [[WB_Debug_Console | Debug-консоли]] контроллера и повторите шаги. Если увидите ошибку <code>FAT: Misaligned buffer address</code> — смените накопитель на другой.
 
<gallery mode="packed" widths ="200px" heights="250px">
Image: 2 update.png | Обновление: момент, когда нужно нажать кнопку FW на 1 секунду для начала обновления
Image: 4 update.png | Обновление: обновление прошивки началось
Image: 1 factory reset.png | Сброс: момент, когда нужно кратковременно нажать кнопку FW для сброса к заводским настройкам
Image: 2 factory reset.png | Сброс: момент, когда нужно на 4 секунды нажать кнопку FW для подтверждения сброса к заводским настройкам
Image: 3 factory reset.png | Сброс: начался сброс к заводским настройкам
</gallery>
-->
 
== Пользовательские настройки и файлы ==
{{Wbincludes:Firmware Update Save Data}}{{Wbincludes:WebUI Wiren Board Releases
|new=true}}