HM-10: Обновление прошивки

Предупреждение

Обновление прошивки необратимо. После отправки команды OK+SBLUP пути назад нет.

Модуль HM-10 Bluetooth получает регулярные обновления прошивки от компании Jinan Huamao Technology, инструменты и последние версии доступны в их центре загрузок. HM-10 имеет встроенный загрузчик для простого обновления с помощью программы HMSoft uploader.

Необходимые инструменты

  • Компьютер с Windows

  • USB-UART адаптер

  • Резисторы для делителя напряжения (1 КОм и 2 КОм), если адаптер только 5 В

  • Архив с прошивкой

Почему USB-UART адаптер?

Arduino с программным последовательным портом не может загружать прошивку на требуемой скорости. Программа HMSoft uploader использует скорость 115200 бод, которую библиотеки программного последовательного порта не могут надёжно обеспечить.

Получение файла прошивки

Посетите центр загрузок Jinan Huamao Technology и выберите «Firmware download». Скачайте последнюю прошивку HM-10 на рабочий стол и распакуйте архив.

Сайт Jinan Huamao Technology

Раздел загрузки прошивки

Выбор прошивки для скачивания

Папка содержит:

  • HMConfidAssistantV1.04.exe — изменяет свойства HM-10

  • HMSoft.bin — файл прошивки

  • HMSoft.exe — программа загрузки

  • readme.txt — журнал изменений

Содержимое папки с прошивкой

Файлы прошивки

Важно

Версии прошивки CC2540 и CC2541 несовместимы. Проверьте, какой чип установлен в вашем модуле.

Подключение HM-10 к ПК

HM-10 — это устройство на 3.3 В. Если у вас переключаемый адаптер, выберите режим 3.3 В. Для адаптеров только на 5 В используйте делитель напряжения на выводе TX.

USB-UART адаптеры

FTDI USB-UART адаптер

Схема: переключаемый адаптер 3.3 В / 5 В

  • Установите адаптер на 3.3 В

  • Подключите RX адаптера к TX HM-10

  • Подключите TX адаптера к RX HM-10

  • Подключите VCC к VCC и GND к GND

Схема подключения с переключаемым адаптером

Макетная плата с переключаемым адаптером

Схема: адаптер только 5 В

Для адаптеров только на 5 В добавьте делитель напряжения с резисторами 1 КОм и 2 КОм.

Схема подключения с делителем напряжения

Макетная плата с делителем напряжения

Проверка связи с HM-10

Откройте Arduino IDE и выберите правильный COM-порт. Откройте монитор последовательного порта с настройками «9600 бод» и «No line ending».

Введите AT и нажмите Send. При правильном подключении вернётся OK.

Arduino IDE — монитор последовательного порта

Ответ OK на команду AT

Проверьте текущую версию прошивки командой AT+VERR?

Проверка версии прошивки

Устранение неполадок при начальном подключении

Если вы не получили ответ OK:

  • Проверьте правильную скорость передачи данных (по умолчанию: 9600)

  • Убедитесь, что выбрано «No line ending»

  • Проверьте правильность подключения TX и RX

  • Проверьте номиналы и ориентацию резисторов делителя напряжения

Обновление прошивки

Введите AT+SBLUP, чтобы перевести HM-10 в режим обновления. Вы должны получить ответ OK+SBLUP, и светодиод перестанет мигать и потускнеет.

Предупреждение

AT+SBLUP — это односторонняя команда. Модуль остаётся в режиме загрузки до успешной загрузки новой прошивки.

Команда AT+SBLUP и ответ

Закройте монитор последовательного порта (он блокирует COM-порт).

Дважды щёлкните HMSoft.exe, чтобы запустить программу загрузки.

Программа HMSoft uploader

Загрузите файл .bin и введите правильный номер COM-порта.

Интерфейс HMSoft с выбором файла и порта

Нажмите Load Image. Прошивка записывается, а затем верифицируется.

Загрузка в процессе

Фаза верификации

По завершении появляется диалоговое окно «Download completed successfully». HM-10 перезагружается, и светодиод снова начинает мигать.

Диалог успешного завершения

Закройте программу загрузки и снова откройте монитор последовательного порта для проверки новой версии прошивки.

Проверка версии прошивки после обновления

Устранение неполадок при обновлении прошивки

Ничего не происходит во время обновления: Arduino IDE, вероятно, удерживает COM-порт. Полностью закройте IDE, чтобы освободить порт.

Ошибки тайм-аута: Попробуйте ещё раз. Повторяющиеся тайм-ауты указывают на неисправный UART-адаптер, возможно, с поддельными чипами FTDI.

Светодиод горит постоянно: Модуль застрял в режиме загрузки. Выключите и включите питание и попробуйте обновление снова с помощью программы загрузки.

Примечание

Оригинальная статья: HM-10 Updating the Firmware (Martyn Currey)