Обновление прошивки контроллера Wiren Board

Материал из Wiren Board

Общая информация

Эта статья описывает обновление прошивки контроллера Wiren Board 6 и контроллера Wiren Board 5 с версией прошивки 0.38-20180710 и выше, если у вас другой контроллер — читайте раздел Обновление прошивки контроллеров старых версий.

Прошивку контроллера Wiren Board можно обновить через менеджер пакетов apt или через fit-файл: с помощью флешки или через веб-интерфейс.

Также контроллер можно сбросить к заводским настройкам и удалить пользовательские данные.

Проверка обновлений

В контроллере нет механизма, который сообщит пользователю о доступном обновлении, поэтому о выходе новых версий вы можете узнать из новостей в наших социальных сетях, или в консоли контроллера:

  1. Подключитесь к контроллеру через SSH.
  2. Выполните команду apt update:
    # apt update
    Ign:1 http://deb.debian.org/debian stretch InRelease
    Get:2 http://security.debian.org stretch/updates InRelease [53.0 kB]
    Hit:3 http://deb.debian.org/debian stretch-updates InRelease
    Hit:4 http://deb.debian.org/debian stretch Release
    Get:5 http://deb.wirenboard.com/wb6/stretch testing InRelease [3960 B]
    Get:6 http://cdn-fastly.deb.debian.org/debian stretch-backports InRelease [91.8 kB]
    Get:7 http://security.debian.org stretch/updates/main armhf Packages [687 kB]
    Get:9 http://deb.wirenboard.com/wb6/stretch testing/main armhf Packages [59.5 kB]
    Fetched 895 kB in 10s (82.9 kB/s)
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    2 packages can be upgraded. Run 'apt list --upgradable' to see them.
    
    в конце вывода будет показано, какие пакеты нуждаются в обновлении.
  3. Если есть пакеты для обновления, то можете посмотреть их список с помощью команды apt list --upgradable:
    # apt list --upgradable
    Listing... Done
    wb-hwconf-manager/testing 1.40.1 all [upgradable from: 1.40.0]
    wb-release-info/testing 1.0-testing~wb6+stretch~20210831210334 all [upgradable from: 1.0-testing~wb6+stretch~20210830090128]
    
    в примере доступны обновления пакетов wb-hwconf-manager и wb-release-info.

Обновление через apt

Apt — это менеджер пакетов операционной системы Debian, который обновляет только изменившиеся пакеты.

Пользовательские файлы и настройки

Окно Modified configuration Files

Apt сохраняет пользовательские файлы и установленные программы, но может запросить перезапись файлов конфигурации с помощью окна Modified configuration Files, в котором нужно выбрать один из пунктов:

  • install the packade maintainer`s version — заменить версией из обновляемого пакета и потерять ваши настройки.
  • keep the local version currently installed — не заменять файл и сохранить ваши настройки.
  • show the differences between the versions — посмотреть различия между версиями.
  • show a side-by-side difference between the versions — посмотреть различия между версиями и оба варианта файла настроек.
  • start a new shell to examine the situation — открыть командную строку, чтобы разобраться в ситуации.

Обновление

Чтобы обновить прошивку контроллера:

  1. Подключитесь к нему по SSH.
  2. Выполните команды:
    apt update && apt upgrade
    

В процессе обновления в консоль будут выводиться служебные сообщения и запросы на действия, которые могут повредить систему или удалить пользовательские настройки — внимательно читайте вопросы перед тем, как ввести Y.

Обновление через fit-файл

Fit-файл — это образ прошивки контроллера Wiren Board, который можно скачать в нашем репозитории

Загрузить текущий stable-релиз можно по прямым ссылкам:

Пользовательские файлы и настройки

Файлы настроек, которые сохраняются при обновлении через fit-файл

При обновлении сохраняется раздел /mnt/data, в котором по адресу /mnt/data/etc находятся настройки:

  • системные: сеть, часовой пояс, пароль к веб-интерфейсу;
  • устройств, подключенных по RS-485 wb-mqtt-serial.conf;
  • модулей ввода-вывода и расширения wb-hardware.conf;
  • универсальных входов/выходов A1-A4 wb-homa-adc.conf;
  • выводов GPIO контроллера wb-homa-gpio.conf;
  • Modbus TCP/Slave шлюза wb-mqtt-mbgate.conf.

Также будут сохранены пользовательские скрипты в папке /etc/wb-rules/ и модули в папке /etc/wb-rules-modules.

Если вы устанавливали на контроллер сторонние программы, или хранили файлы вне папки /mnt/data — они будут удалены. Подключите контроллер к компьютеру для просмотра файлов и скопируйте свои файлы на компьютер. Если вы хотите сохранить установленные программы, то используйте обновление через apt.

Обновление через веб-интерфейс

Уровень «Администратор»

Для изменения настроек контроллера вам нужен уровень доступа Администратор, который можно выставить в разделе НастройкиПрава доступа.

После завершения настроек рекомендуем поставить уровень доступа Пользователь или Оператор — это поможет не совершить случайных ошибок при ежедневной работе с веб-интерфейсом.

Чтобы обновить прошивку контроллера:

  1. Скачайте fit-файл прошивки на компьютер.
  2. Зайдите в веб-интерфейс контроллера и перейдите в раздел SettingsSystem.
  3. Нажмите кнопку Select File и выберите скачанный ранее fit-файл.
  4. Файл с прошивкой загрузится на контроллер и начнётся процесс обновления, который длится 5-10 минут. Не закрывайте страницу и не выключайте контроллер до завершения обновления.
  5. После обновления контроллер перезагрузится и на странице появится надпись Firmware update complete — обновление завершено.
  6. Закройте страницу.

Обновление с USB-накопителя и сброс к заводским настройкам

Порт USB 1 и кнопка FW на контроллере Wiren Board 6.7

Некоторые ревизии контроллера не видят USB-накопитель (флешку) при определённых условиях, если вы столкнулись с такой ситуацией — смотрите инструкции в WB_6:_Errata.

Мы не рекомендуем для обновления прошивки использовать внешние жесткие диски — может не хватить мощности USB-порта.

Подготовьте флеш-накопитель:

  1. Отформатируйте флешку в FAT32.
  2. Скачайте fit-файл прошивки на компьютер.
  3. Скопируйте скачанный .fit-файл в корень флешки и убедитесь, что размер файла не равен нулю.
  4. Переименуйте файл на флешке:
    • для обновления прошивки контроллера в wb6_update.fit,
    • для сброса контроллера к заводским настройкам в wb6_update_FACTORYRESET.fit.

Если у вас контроллер Wiren Board 5, то замените в этой и других инструкциях имена файлов на wb5_update.fit и wb5_update_FACTORYRESET.fit.

Чтобы обновить прошивку или сбросить контроллер:

  1. Выключите контроллер.
  2. Подключите флешку с файлом прошивки к порту USB 1 и включите контроллер.
  3. Если в корне флешки найден файл прошивки, то индикатор контроллера начнёт часто мигать оранжевым.
  4. В этот момент зажмите на одну секунду кнопку FW на плате контроллера.
  5. Дальнейшие шаги зависят от того, какой файл лежит на флешке:
    • wb6_update.fit — индикатор загорится зелёным, потом мигнёт красным и замигает зелёным — это началась процедура обновления прошивки.
    • wb6_update_FACTORYRESET.fit:
      1. Индикатор загорится зелёным, потом два раза мигнёт красным и ещё два раза зелёным.
      2. Контроллер начнёт пищать, а индикатор замигает красным — контроллер ждёт подтверждения.
      3. Подтвердите очистку контроллера, для этого нажмите кнопку FW и держите, пока контроллер не пискнет четыре раза, а индикатор не загорится зелёным — это началась процедура сброса настроек.
      4. Кнопку можно отпустить. В процессе индикатор будет мигать зелёным.
  6. Процедура продлится 5–10 минут, в конце контроллер перезагрузится в рабочий режим, а индикатор на нём замигает зелёным — флешку можно извлечь.

Если обновление или сброс завершаются с ошибкой, подключитесь к Debug-консоли контроллера и повторите шаги. Если увидите ошибку FAT: Misaligned buffer address — смените накопитель на другой.

Обновление прошивки контроллеров старых версий