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

 
(не показаны 72 промежуточные версии 2 участников)
Строка 1: Строка 1:
{{DISPLAYTITLE: Обновление прошивки контроллера Wiren Board 7}}
{{DISPLAYTITLE: Обновление прошивки контроллеров Wiren Board 7.2…7.3 }}
== Общая информация ==
== Общая информация ==
[[Image: wb7-FW.png |300px|thumb|right| Кнопка FW, которая переводит контроллер в режим обновления прошивки. Понадобится в некоторых инструкциях ]]
{{Anchor|info}}
{{note|note| Если у вас контроллер из партии v7.2.1A, выпущенной в декабре 2021 г. и в консоли написано «This is a development release» — перед обновлением или сбросом, [[Wiren_Board_v7.2.1A_Create_Restore_Folder | переключите его на релиз]].}}
{{YouTube
Инструкции в этой статье работают на контроллере '''[[Wiren Board 7 | Wiren Board 7]]'''.
|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
}}


ПО контроллера выпускается в формате релизов ''stable'' — новые функции каждые три месяца, и ''testing'' — новые функции каждый день. Между релизами можно переключаться, с завода на контроллере установлен ''stable''. О том, как узнать установленный у вас релиз и как между ними переключаться, читайте в статье [[#Релизы ПО | Релизы ПО]].
=== Как всё устроено ===
{{Wbincludes:Firmware Update How Everything Works}}


Прошивку контроллера Wiren Board можно обновить в консоли с помощью apt, через веб-интерфейс, с компьютера, USB-флешки и карты памяти. В зависимости от выбранного типа обновления вы можете сохранить настройки и установленное ПО.
=== Релизы ===
{{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}}


Если у вас в процессе обновления или сброса возникли проблемы, подключитесь к [[WB Debug Console | Debug-консоли]] и посмотрите выводимые там сообщения — это поможет понять, что именно идёт не так.
=== Решение проблем при обновлении со Stretch на Bullseye ===
{{Wbincludes:Bullseye Errata}}


Для обновления через веб-интерфейс или с 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].
== Прошивка через веб-интерфейс ==
{{Anchor|web-ui}}


== Журнал изменений в релизах ==
=== О способе ===
{{Wbincludes:Release Log}}
Прошивку через веб-интерфейс удобно использовать, если на компьютере нет интернета и вы используете только встроенное в контроллер ПО. Способ подходит для обновления внутри веток stable или testing, а также для перехода со stable на testing.


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


== Обновление ==
=== Процесс ===
=== В консоли через apt ===
{{note|info|Если у вас на контроллере релиз wb-2307 и новее, а на самом контроллере корневой раздел 1 Гбайт, то его [[Enlarging_the_rootfs_partition|можно увеличить]].}}
{{Wbincludes:Wiren Board Apt firmware update}}
{{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| Файл обновления прошивки на съёмном накопителе ]]
[[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:Firmware Update Fit Save Data}}
=== Подготовка файла прошивки ===
{{Wbincludes:Fit Files Wiren Board 7}}
 
{{Wbincludes:Fit File Rename Wiren Board 7}}
 
=== Процесс ===
Вам понадобятся компьютер и кабель USB-C с возможностью передачи данных. Весь процесс займёт не больше пяти минут.
 
Для наглядности можно подключиться к [[WB Debug Console | Debug Console]], где контроллер будет несколько раз запрашивать в подтверждение тех или иных действий и писать сообщения о ходе процесса.
 
В инструкции мы будем ориентироваться на звуковые сигналы и подтверждать все запросы:
# Начало зависит от аппаратной ревизии контроллера:
#* Для ревизии 7.3:
#*# Переведите выключатель в положение OFF и вытащите кабели из разъёмов Debug Console и Debug Network. Это выключит контроллер.
#*# Зажмите и не отпускайте кнопку FW.
#*# Переведите переключатель в положение 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
# <здесь вы нажали кнопку>
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>.
 
Если в имени файла есть <code>FACTORYRESET</code>, то контроллер издаст продолжительный звуковой сигнал — запрос подтверждения удаления всех данных. В Debug Console будет сообщение: <code>FACTORY RESET REQUESTED</code>. Нажмите и держите кнопку FW, пока контроллер не издаст по очереди четыре коротких звуковых сигнала. Кнопку можно отпустить. Если вы передумали удалять данные — просто выключите контроллер.
 
== Прошивка с помощью USB-флешки или карты Micro-SD ==
{{Anchor|usb-flash}}
[[Image: wb7-FW.png |300px|thumb|right| Кнопка FW — переводит контроллер в режим прошивки и подтверждает запросы действий в процессе прошивки]]
=== О способе ===
Для обновления прошивки или удаления данных и настроек можно воспользоваться USB-флешкой или картой памяти Micro SD.
 
Способ удобен, если на компьютере нет интернета и вы используете только встроенное в контроллер ПО.
 
{{Wbincludes:Wiren Board 7 Firmware Update Fit Save Data}}
 
=== Подготовка файла прошивки ===
{{Wbincludes:Fit Files Wiren Board 7}}
 
{{Wbincludes:Fit File Rename Wiren Board 7}}
 
=== Процесс ===
Для наглядности можно подключиться к [[WB Debug Console | Debug Console]], где контроллер будет несколько раз запрашивать подтверждение тех или иных действий и писать сообщения о ходе процесса.
 
В инструкции мы будем ориентироваться на звуковые сигналы и подтверждать все запросы:
# Скопируйте подготовленный файл прошивки на флешку или карту памяти и вставьте её в контроллер.
# Следующие шаги зависят от аппаратной ревизии контроллера:
#* Для ревизии 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>.


Вам понадобятся компьютер и кабель USB-C с возможностью передачи данных.
=== Массовая прошивка контроллеров ===
{{Wbincludes:Mass flashing from flash}}


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


Вся процедура занимает около 2 минут.
=== Процесс ===
Если у вас установлены USB-флеш, карта MicroSD или воткнут провод в Debug Network — вытащите их.


<gallery mode="packed" heights="250px" caption="Сообщения в Debug-консоли">
Для наглядности можно подключиться к [[WB Debug Console | Debug Console]], где контроллер будет несколько раз запрашивать в подтверждение тех или иных действий и писать сообщения о ходе процесса.
Image: wb7-pc-reset-1.png  | Сообщение о том, что мы перевели контроллер в режим обновления
Image: wb7-pc-reset-2.png  | Контроллер подключён к компьютеру и на него записан файл wb_update_FACTORYRESET.fit
Image: wb7-pc-reset-3.png  | Если вы сбрасываете настройки, то в консоли будет виден запрос на подтверждение очистки
</gallery>


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


{{Wbincludes:Firmware Update Fit Save Data}}
Will use /mnt/data/.wb-restore/factoryreset.fit
</syntaxhighlight>
# Через несколько секунд контроллер спросит подтверждение на удаление всех данных, но так как кнопка у нас уже зажата, то просто прозвучат по очереди четыре коротких звуковых сигнала. После этого сразу начнётся удаление данных, откат версии прошивки к заводской и восстановление заводских настроек.
#:В Debug Console при этом будет сообщение вида:
#:<syntaxhighlight lang="bash">
##############################################################################


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


Вся процедура занимает около 2 минут.
          This WILL destroy ALL YOUR DATA: configuration, scripts,
                          files in home directory!


<gallery mode="packed" heights="250px" caption="Сообщения в Debug-консоли">
        If you are ABSOLUTELY SURE that you want to reset Wiren Board
Image: wb7-usbflash-reset-1.png  | Сообщение о том, что мы перевели контроллер в режим обновления
            to factory condition, hold the FW button for 4 seconds.
Image: wb7-usbflash-reset-1.1.png  | Обнаружена флешка с файлом wb_update_FACTORYRESET.fit
Image: wb7-usbflash-reset-2.png  | Если вы сбрасываете настройки, то в консоли будет виден запрос на подтверждение очистки, а чуть ниже информация о fit-файле
</gallery>


== Сброс к заводским настройкам ==
        If you will not do it in 10 seconds, the controller will reboot
Если у вас контроллер из партии v7.2.1A, выпущенной в декабре 2021 года, перед первым сбросом подготовьте контроллер по [[Wiren Board v7.2.1A Create Restore Folder | инструкции]].
                        without firmware update.


Сброс делается с помощью сервисного образа, который зашит в контроллер при производстве и не обновляется в процессе эксплуатации. Поэтому после сброса к заводским настройкам ПО контроллера нужно обновить.


Перед сбросом рекомендуем [[#Пользовательские настройки и файлы | сделать резервную копию]] файлов конфигурации.
          If you want to perform a regular firmware update, rename
        FIT file to "wbX_update.fit" without "factory-reset" suffix.


В процессе контроллер будет несколько раз запрашивать в [[WB Debug Console | Debug-консоли]] подтверждение тех или иных действий, но чтобы упростить процедуру — мы просто зажмём кнопку FW в самом начале и автоматом со всем согласимся:
##############################################################################
# Выключите контроллер кнопкой на корпусе.
.... #< здесь звучали четыре коротких звуковых сигнала >
# Зажмите и не отпускайте кнопку FW.
# Включите контроллер и продолжайте удерживать кнопку.
# После включения контроллер:
#* пикнет один раз — это он перешёл в режим обновления прошивки, не отпускайте кнопку;
#* подождите 10-20 секунд, затем он пикнет сперва коротко два раза, а потом ещё четыре, но реже — начался сброс настроек и откат версии прошивки к заводской, кнопку можно отпустить.
# По окончании процедуры контроллер перезагрузится в рабочем режиме, а его индикатор замигает зелёным.


Рекомендуем обновить прошивку до актуального релиза.
Factory reset is confirmed!
</syntaxhighlight>
# Отпустите кнопку FW.
# По окончании процедуры контроллер перезагрузится в рабочем режиме, а его индикатор замигает зелёным.


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


== Пользовательские настройки и файлы ==
== Удаление данных и возврат заводских настроек с обновлением ПО ==
{{Wbincludes:Firmware Update Save Data}}{{Wbincludes:WebUI Wiren Board Releases
{{Wbincludes:FactoryReset WebUI}}
|new=true}}