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

 
(не показано 47 промежуточных версий 2 участников)
Строка 1: Строка 1:
{{DISPLAYTITLE: Обновление прошивки контроллера Wiren Board 7}}
{{DISPLAYTITLE: Обновление прошивки контроллеров Wiren Board 7.2…7.3 }}
[[Image: wb7-FW.png |300px|thumb|right| Кнопка FW, которая переводит контроллер в режим обновления прошивки. Понадобится в инструкциях ниже]]
== Общая информация ==
== Общая информация ==
Основную информацию по обновлению прошивки контроллера Wiren Board 7.x читайте на странице [[Wiren_Board_Firmware_Update | Обновление прошивки контроллера Wiren Board]].
{{Anchor|info}}
{{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
}}


Здесь вы можете найти инструкцию по обновлению с USB-флешки, через Debug Network и удалению данных с восстановлением к заводским настройкам.
=== Как всё устроено ===
{{Wbincludes:Firmware Update How Everything Works}}


{{Wbincludes:Fit Files}}
=== Релизы ===
{{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}}
 
=== Решение проблем при обновлении со Stretch на Bullseye ===
{{Wbincludes:Bullseye Errata}}
 
== Прошивка через веб-интерфейс ==
{{Anchor|web-ui}}
 
=== О способе ===
Прошивку через веб-интерфейс удобно использовать, если на компьютере нет интернета и вы используете только встроенное в контроллер ПО. Способ подходит для обновления внутри веток stable или testing, а также для перехода со stable на testing.
 
{{Wbincludes:Firmware Update Fit Save Data}}
 
=== Скачивание прошивки ===
{{Wbincludes:Fit Files Wiren Board 7}}
 
=== Процесс ===
{{note|info|Если у вас на контроллере релиз wb-2307 и новее, а на самом контроллере корневой раздел 1 Гбайт, то его [[Enlarging_the_rootfs_partition|можно увеличить]].}}
{{Wbincludes:Wiren Board WebUI Firmware Update}}
 
== Прошивка через Debug Network ==
{{Anchor|debug-network}}


== Обновление через разъём Debug Network ==
[[Image: wb7-debug-network-pc.png |300px|thumb|right| Файл обновления прошивки на съёмном накопителе ]]
[[Image: wb7-debug-network-pc.png |300px|thumb|right| Файл обновления прошивки на съёмном накопителе ]]
[[Image: wb7-debug-network.png |300px|thumb|right| Разъём Debug Network, USB-C ]]
[[Image: wb7-debug-network.png |300px|thumb|right| Разъём Debug Network, USB-C ]]
В контроллере есть разъём ''Debug Network'', который можно использовать для обновления прошивки или сброса настроек.
[[Image: wb7-FW.png |300px|thumb|right| Кнопка FW — переводит контроллер в режим прошивки и подтверждает запросы действий в процессе прошивки]]
=== О способе ===
В контроллере есть разъём [[Debug Network]], который можно использовать для обновления прошивки или удаления всех данных и настроек.


{{Wbincludes:Wiren Board 7 Firmware Update Fit Save Data}}
{{Wbincludes:Wiren Board 7 Firmware Update Fit Save Data}}


Вам понадобятся компьютер и кабель USB-C с возможностью передачи данных.
=== Подготовка файла прошивки ===
{{Wbincludes:Fit Files Wiren Board 7}}
 
{{Wbincludes:Fit File Rename Wiren Board 7}}
 
=== Процесс ===
Вам понадобятся компьютер и кабель USB-C с возможностью передачи данных. Весь процесс займёт не больше пяти минут.


В процессе контроллер будет несколько раз запрашивать в [[WB Debug Console | Debug-консоли]] подтверждение тех или иных действий, мы будем ориентироваться на звуковые сигналы и подтверждать все запросы:
Для наглядности можно подключиться к [[WB Debug Console | Debug Console]], где контроллер будет несколько раз запрашивать в подтверждение тех или иных действий и писать сообщения о ходе процесса.
#{{Wbincludes:Wiren Board 7 Fit Prepare}}
 
# Выключите контроллер кнопкой на корпусе.
В инструкции мы будем ориентироваться на звуковые сигналы и подтверждать все запросы:
# Подключите контроллер к компьютеру через разъём ''Debug Network''.
# Начало зависит от аппаратной ревизии контроллера:
# Зажмите кнопку ''FW'' и удерживайте её.
#* Для ревизии 7.3:
# Включите контроллер и после короткого звукового сигнала отпустите кнопку ''FW''.
#*# Переведите выключатель в положение OFF и вытащите кабели из разъёмов Debug Console и Debug Network. Это выключит контроллер.
# Индикатор контроллера медленно замигает красным, а ещё через 10 секунд компьютер определит съёмный накопитель.
#*# Зажмите и не отпускайте кнопку FW.
# Скопируйте подготовленный в шаге 1 файл на определившийся накопитель.
#*# Переведите переключатель в положение ON и тут же вставьте кабель в разъём Debug Network. Если вам нужны логи из дебага, сразу подключите кабель Debug Console.
# Извлеките (отмонтируйте) флешку программно и отключите кабель от контроллера физически.
#*# Подключите к контроллеру внешнее питание — это нужно для того, чтобы при отключении кабеля контроллер корректно прошился.
# В зависимости от того, какой файл вы скопировали, возможно два варианта:
#*Для ревизии 7.2:
## Контроллер два раза коротко пикнет — началось обновление прошивки.
#*# Вставьте кабель в разъём Debug Network. Если нужно, подключите кабель к Debug Console.
## Контроллер пикнет сперва коротко два раза, затем издаст продолжительный звуковой сигнал, а индикатор быстро замигает красным — это запрос на сброс к заводским настройкам:
#*# Переведите выключатель в положение OFF.
##* Чтобы подтвердить сброс настроек и удалить все пользовательские данные, зажмите и держите кнопку ''FW''.
#*# Подключите к контроллеру внешнее питание.
##* Контроллер пикнет четыре раза и перейдёт к сбросу настроек. Кнопку можно отпустить.
#*# Зажмите и не отпускайте кнопку FW.
# По окончании процедуры контроллер перезагрузится в рабочем режиме, а его индикатор замигает зелёным.
#*# Включите контроллер переключателем и продолжайте удерживать кнопку FW.
#Держите кнопку FW до короткого звукового сигнала. В Debug Console в этот момент будут строки:
#:<syntaxhighlight lang="bash">
Press FW button to enter firmware update mode
# <здесь вы нажали кнопку>
Entering firmware update mode.
</syntaxhighlight>
# Отпустите кнопку FW.
# Через несколько секунд на компьютере обнаружится накопитель '''WB UPDATE''', откройте его. В Debug Console в это время будет сообщение:
#:<syntaxhighlight lang="bash">
Copy .fit file to virtual USB driver and unplug the cable
</syntaxhighlight>
# Скопируйте подготовленный .fit-файл на этот накопитель. В Debug Console в это время будут сообщения:
#:<syntaxhighlight lang="bash">
# приглашение скопировать файл на накопитель
Copy .fit file to virtual USB driver and unplug the cable
# <много сообщений с процессом копирования файла>
</syntaxhighlight>
# По окончании копирования, отключите накопитель средствами ОС и вытащите кабель Debug Network, начнётся прошивка контроллера. В Debug Console при этом будет сообщение вида:
#:<syntaxhighlight lang="bash">
Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
Will look for update in USB gadget ramdisk
 
Will use wb_update.fit from USB gadget (/usb)
# или, если вы выбрали удаление данных
Will use wb_update_FACTORYRESET.fit from USB gadget (/usb)
</syntaxhighlight>
# Через пару минут контроллер перезагрузится и его индикатор станет равномерно мигать зелёным, а в Debug Console появится приглашение входа: <code>wirenboard-XXXXXXXX login:</code>.


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


<gallery mode="packed" heights="250px" caption="Сообщения в Debug-консоли">
== Прошивка с помощью USB-флешки или карты Micro-SD ==
Image: wb7-pc-reset-1.png | Сообщение о том, что мы перевели контроллер в режим обновления
{{Anchor|usb-flash}}
Image: wb7-pc-reset-2.png  | Контроллер подключён к компьютеру и на него записан файл wb_update_FACTORYRESET.fit
[[Image: wb7-FW.png |300px|thumb|right| Кнопка FW — переводит контроллер в режим прошивки и подтверждает запросы действий в процессе прошивки]]
Image: wb7-pc-reset-3.png  | Если вы удаляете данные, то в консоли будет виден запрос на подтверждение
=== О способе ===
</gallery>
Для обновления прошивки или удаления данных и настроек можно воспользоваться USB-флешкой или картой памяти Micro SD.


== Обновление с помощью USB-флешки или карты Micro-SD ==
Способ удобен, если на компьютере нет интернета и вы используете только встроенное в контроллер ПО.
[[Image: wb7-usb-flash-fit.png |300px|thumb|right| Файл сброса к заводским настройкам на USB-флешке]]
[[Image: wb-7-sd+usb.png |300px|thumb|right| Разъём USB 1 и слот Micro-SD]]
В контроллере есть ''разъём USB 1'' и ''слот Micro-SD'', которые можно использовать для обновления прошивки или удаления данных с восстановлением заводских настроек. С некоторыми картами Micro-SD могут быть проблемы, используйте USB-флешку или промышленную карту [https://wirenboard.com/ru/product/microsd-industrial-64gb/ Transcend 64GB].


{{Wbincludes:Wiren Board 7 Firmware Update Fit Save Data}}
{{Wbincludes:Wiren Board 7 Firmware Update Fit Save Data}}


В процессе контроллер будет несколько раз запрашивать в [[WB Debug Console | Debug-консоли]] подтверждение тех или иных действий, но чтобы упростить процедуру — мы просто зажмём кнопку FW в самом начале и автоматом со всем согласимся:
=== Подготовка файла прошивки ===
# {{Wbincludes:Wiren Board 7 Fit Prepare}}
{{Wbincludes:Fit Files Wiren Board 7}}
# [[Formatting Flash Drive| Отформатируйте флешку или карту памяти в FAT32]].
 
# Скопируйте подготовленный в шаге 1 файл на флешку или карту памяти.
{{Wbincludes:Fit File Rename Wiren Board 7}}
# Выключите контроллер кнопкой на корпусе.
 
# Вставьте флешку в ''разъём USB 1'' или карту памяти в ''слот Micro-SD''.
=== Процесс ===
# Зажмите и не отпускайте кнопку ''FW''.
Для наглядности можно подключиться к [[WB Debug Console | Debug Console]], где контроллер будет несколько раз запрашивать подтверждение тех или иных действий и писать сообщения о ходе процесса.
# Включите контроллер и продолжайте удерживать кнопку.
# После включения контроллер пикнет один раз — это он перешёл в режим обновления прошивки, не отпускайте кнопку.
# В зависимости от того, какой файл вы положили, возможно два варианта:
## Контроллер два раза коротко пикнет — началось обновление прошивки, кнопку можно отпустить.
## Контроллер пикнет сперва коротко два раза, а затем ещё четыре, но реже — началось удаление данных и восстановление заводских настроек, кнопку можно отпустить.
# По окончании процедуры контроллер перезагрузится в рабочем режиме, а его индикатор замигает зелёным.


Вся процедура занимает около 2 минут.
В инструкции мы будем ориентироваться на звуковые сигналы и подтверждать все запросы:
# Скопируйте подготовленный файл прошивки на флешку или карту памяти и вставьте её в контроллер.
# Следующие шаги зависят от аппаратной ревизии контроллера:
#* Для ревизии 7.3:
#*# Переведите выключатель в положение OFF и вытащите кабели из разъёмов Debug Console и Debug Network.
#*# Зажмите и не отпускайте кнопку FW.
#*# Подключите к контроллеру внешнее питание.
#*# Включите контроллер кнопкой и продолжайте удерживать кнопку FW. Если вам нужны логи из дебага, быстро подключите кабель Debug Console.
#*Для ревизии 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>
# Контроллер попробует найти на подключённой флешке или карте памяти 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>.


<gallery mode="packed" heights="250px" caption="Сообщения в Debug-консоли">
=== Массовая прошивка контроллеров ===
Image: wb7-usbflash-reset-1.png  | Сообщение о том, что мы перевели контроллер в режим обновления
{{Wbincludes:Mass flashing from flash}}
Image: wb7-usbflash-reset-1.1.png  | Обнаружена флешка с файлом wb_update_FACTORYRESET.fit
Image: wb7-usbflash-reset-2.png  | Если вы удаляете данные, то в консоли будет виден запрос на подтверждение, а чуть ниже информация о fit-файле
</gallery>


== Удаление данных и возврат заводских настроек ==
== Удаление данных и возврат заводских настроек ==
Если у вас контроллер из партии v7.2.1A, выпущенной в декабре 2021 года, подготовьте контроллер по [[Wiren Board v7.2.1A Create Restore Folder | инструкции]].
{{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">
##############################################################################


В процессе контроллер будет несколько раз запрашивать в [[WB Debug Console | Debug-консоли]] подтверждение тех или иных действий, но чтобы упростить процедуру — мы просто зажмём кнопку FW в самом начале и автоматом со всем согласимся:
                          FACTORY RESET REQUESTED
# Выключите контроллер кнопкой на корпусе.
 
# Зажмите и не отпускайте кнопку FW.
          This WILL destroy ALL YOUR DATA: configuration, scripts,
# Включите контроллер и продолжайте удерживать кнопку.
                          files in home directory!
# После включения контроллер:
 
#* пикнет один раз — это он перешёл в режим обновления прошивки, не отпускайте кнопку;
        If you are ABSOLUTELY SURE that you want to reset Wiren Board
#* подождите 10-20 секунд, затем он пикнет сперва коротко два раза, а потом ещё четыре, но реже — началось удаление данных, откат версии прошивки к заводской и восстановление заводских настроек. Кнопку можно отпустить.
            to factory condition, hold the FW button for 4 seconds.
# По окончании процедуры контроллер перезагрузится в рабочем режиме, а его индикатор замигает зелёным.  
 
        If you will not do it in 10 seconds, the controller will reboot
                        without firmware update.
 
 
          If you want to perform a regular firmware update, rename
        FIT file to "wbX_update.fit" without "factory-reset" suffix.
 
##############################################################################
.... #< здесь звучали четыре коротких звуковых сигнала >
 
Factory reset is confirmed!
</syntaxhighlight>
# Отпустите кнопку FW.
# По окончании процедуры контроллер перезагрузится в рабочем режиме, а его индикатор замигает зелёным.


Вся процедура занимает чуть больше 2 минут. Рекомендуем обновить прошивку до актуального релиза.
Вся процедура занимает чуть больше 2 минут. После сброса у вас будет версия прошивки, зашитая в контроллер при производстве — обновите ПО до актуального релиза.


<gallery mode="packed" heights="250px" caption="Сообщения в Debug-консоли">
== Удаление данных и возврат заводских настроек с обновлением ПО ==
Image: wb7-int-reset-1.png  | Сообщение о том, что мы перевели контроллер в режим обновления
{{Wbincludes:FactoryReset WebUI}}
Image: wb7-int-reset-2.png  | Подтверждение сброса контроллера с внутреннего образа
</gallery>