Modem a76xx flashing: различия между версиями

Нет описания правки
 
(не показано 18 промежуточных версий 5 участников)
Строка 2: Строка 2:


== Технология ==
== Технология ==
Обновление прошивки производится при помощи утилиты fbdownloader, скомпилированной под wirenboard и загружающей в модем образ с диска контроллера.


== Подготовка образа прошивки ==
Обновление прошивки производится при помощи утилиты <code>fbfdownloader</code>, скомпилированной под Wiren Board и загружающей в модем образ с диска контроллера и скриптов, автоматизирующих процесс включения и отключения модема.
Чтобы подготовить прошивку, нужен компьютер с windows и утилитой FBFMake от Simcom.
 
Изначально прошивка распространяется в виде zip-архива с именем, соответствующим версии ПО.
== Загрузка образа прошивки ==


[[Image: 7600_Flash_zip.png |600px| Архив с прошивкой ]]
Подготовленные образы прошивок можно скачать из [https://drive.google.com/drive/folders/1QWGRZ9npttYUA915eIe-pJ_L9Msn5bHX папки на google drive], выбрав прошивку, соответствующую версии модема. Обратите внимание на то, что модемы A7600E-H имеют две аппаратные версии: A7600E-HNVW и A7600E-H-LNSE. Прошивки для них не совместимы.


Архив следует распаковать в корень диска, затем скопировать в папку с распакованной прошивкой утилиту FBFMake.exe.
== Определение текущей версии прошивки в Debian Stretch ==


[[Image: 7600_Flash_unpacked.png |600px| Распакованная прошивка ]]
Узнать версию модема можно AT командой <code>at+cgmr</code>, которая возвращает строку с номером, символы с 6 по 8 будут версией прошивки чипа. [[GSM/GPRS#Отправка AT-команд| Как отправить AT команду]].


выполните (подставив нужное имя прошивки) в этой папке:
Например, в примере ниже версия прошивки B05:
<syntaxhighlight lang="batch">
<syntaxhighlight lang="at">
FBFMake.exe -r A7600E-HNVW_NOR.blf -f output
at+cgmr
+CGMR: A39C4B05A7600M7
</syntaxhighlight>
</syntaxhighlight>


[[Image: 7600_Flash_cmd_fbfmake.png |600px| Процесс перепаковки ]]
== Определение текущей версии прошивки в Debian Bullseye ==


[[Image: 7600_Flash_cmd_fbfmake_success.png |300px| Успех перепаковки ]]
Сервис ModemManager позволяет получить информацию о модеме и прошивке с помощью команды <code>mmcli -m any</code>


забрать из папки output файл BinFile.bin - это и есть требуемый образ.
[[Image: 7600_mmcli.png |600px| mmcli ]]
 
[[Image: 7600_Flash_output_binfile.png |600px| Файл прошивки ]]


== Процесс обновления прошивки модема ==
== Процесс обновления прошивки модема ==


Нужно открыть два терминала с подключением к WB.
# Подключитесь к контроллеру Wiren Board по [[SSH]] дважды, чтобы у вас было открыто два терминала.
 
# Установите на контроллер пакет <code>flash-simcom-a76xx</code>.
Загрузите на wb утилиту fbdownloader_arm7l и назначить файл исполняемым, загрузить в ту же директорию прошивку.
# <syntaxhighlight lang="bash">apt update && apt install flash-simcom-a76xx
 
</syntaxhighlight>
[[Image: 7600_Flash_prepare.png |600px| Файлы в контроллере ]]
# Загрузите прошивку, в итоге должно получиться так:
 
#:[[Image: 7600_Flash_prepare.png |400px| Файл с прошивкой в контроллере ]]
Отключите модем и запустите утилиту обновления:
# Запустите в одном терминале скрипт <code>flash_simcom.sh</code>:
 
#:<syntaxhighlight lang="bash">flash_simcom.sh
<syntaxhighlight lang="bash">wb-gsm off
</syntaxhighlight>
#:[[Image: 7600_flash_simcom_sh.png |400px| Запустите скрипт flash_simcom.sh]]
# Теперь во втором терминале запустите утилиту обновления:
#:<syntaxhighlight lang="bash">fbfdownloader_arm7l -b BinFile.bin
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang="bash">./fbdownloader_arm7l -b BinFile.bin
# Дождитесь запроса '''connect USB interface''':
#:[[Image: 7600_Flash_connect_USB.png |600px| Запрос подключения устройства ]]
# В первом терминале с <code>flash_simcom.sh</code> подтвердите запуск прошивки:
#:[[Image: 7600_Flash_simcom_output.png |600px| Процесс прошивки ]]
# Во втором терминале с <code>fbfdownloader</code> можно пронаблюдать процесс:
#:[[Image: 7600_Flash_Process.png |600px| Процесс прошивки ]]
# Дождитесь отчета об успехе процедуры прошивки:
#:[[Image: 7600_Flash_success.png |600px| Окончание прошивки ]]
# Перезагрузите контроллер:
#:<syntaxhighlight lang="bash">reboot
</syntaxhighlight>
</syntaxhighlight>
# После загрузки контроллера, снова подключитесь к SSH. В Debian Bullseye модем включится автоматически, в Debian Stretch включите модем командой <code>wb-gsm on</code>
# Когда модем запустится, можно проверить версию прошивки описанным ранее способом


Дождитесь запроса “connect USB interface”:
== Возможные проблемы в процессе ==
Прерывание прошивки. В этом случае модем при подаче питания будет запускать бутлодер, но это всё, что он будет делать. Лечится повторной прошивкой по обычной процедуре.


[[Image: 7600_Flash_connect_usb.png |600px| Запрос подключения устройства ]]
== Подготовка образа прошивки из архива производителя ==


Во втором терминале выполните wb-gsm-on , дождитесь начала процесса прошивки в первом терминале и обязательно остановите скрипт wb-gsm-on при помощи ctrl+c, иначе он не дождётся запуска модема и отключит его:
Чтобы подготовить прошивку, нужен компьютер с windows (wine в *nix тоже годится) и утилитой FBFMake от Simcom.
Изначально прошивка распространяется в виде zip-архива с именем, соответствующим версии ПО.
[[Image: 7600_Flash_zip.png |600px| Архив с прошивкой ]]


[[Image: 7600_Flash_process.png |600px| Процесс прошивки ]]
Подготовка прошивки:
 
# Распакуйте архив в корень диска.
[[Image: 7600_Flash_wbgsmon.png |300px| Остановите wb-gsm]]
# Скопируйте в папку с распакованной прошивкой утилиту FBFMake.exe.
 
#:[[Image: 7600_Flash_unpacked.png |600px| Распакованная прошивка ]]
Дождитесь отчета об успехе процедуры прошивки
# Выполните (подставив нужное имя прошивки) в этой папке:
 
#:<syntaxhighlight lang="batch">
[[Image: 7600_Flash_success.png |600px| Окончание прошивки ]]
FBFMake.exe -r A7600E-HNVW_NOR.blf -f output
 
Перезагрузите wb, а затем выполните wb-gsm on
 
<syntaxhighlight lang="bash">reboot
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang="bash">wb-gsm on
#:[[Image: 7600_Flash_cmd_fbfmake.png |600px| Процесс перепаковки ]]
</syntaxhighlight>
#:[[Image: 7600_Flash_cmd_fbfmake_success.png |400px| Успех перепаковки ]]
Когда модем запустится, можно убедиться в успехе запросами AT+CGMR и AT+CSUB.
# В папке <code>output</code> файл <code>BinFile.bin</code> — это и есть нужный нам образ.
 
#: [[Image: 7600_Flash_output_binfile.png |600px| Файл прошивки ]]
[[Image: 7600_minicom_check.png |400px| Проверка прошивки ]]
 
== Возможные проблемы в процессе ==
Прерывание прошивки. В этом случае модем при подаче питания будет запускать бутлодер, но это всё, что он будет делать. Лечится повторной прошивкой по обычной процедуре.
wb_editors
97

правок