Проблемы при обновлении?

Если вы читаете этот раздел, вероятно у вас возникли проблемы на каком-то шаге в процессе обновления или после обновления прошивки. Ниже приведён список популярных проблем и предлагаемые шаги для их решения, возможно ваша проблема есть в списке.
Если ваша проблема не описана здесь, есть ряд англоязычных ресурсов (вам понадобится знание английского языка или онлайн-переводчик), где можно задать вопросы опытным пользователям EdgeTX и найти дополнительные ответы на вопросы: Discord сервер (обычно там можно попросить помощи с решением вашей проблемы), официальный форум на GitHub Discussions или тред на более старомодном форуме RCGroups forum thread.

Я пытаюсь прошить аппаратуру с помощью EdgeTX Buddy, но она не определяется компьютером

  1. Убедитесь, что вы подключаете аппаратуру к компьютеру в выключенном состоянии. Если при подключении вы видите на экране пульта меню выбора режима подключения USB, вы не сможете обновить прошивку. Режим DFU1, используемый для обновления прошивки, активируется только когда аппаратура управления подключаемая к компьютеру ВЫКЛЮЧЕНА.

  2. На вашей аппаратуре есть специальная кнопка boot/DFU ? Проверьте страницу Доступ в режиме загрузчика и DFU чтобы узнать, требуется ли на вашем пульте управления зажать специальную кнопку при подключении к компьютеру по USB.

  3. Проблема может быть связана с драйверами устройств STM32 на вашем компьютере. Если вы используете Windows, можете для начала попробовать ImpulseRC Driver Fixer. Альтернативный вариант: открыть вебсайт STMicroelectronics и скачать их бесплатную программу STM32CubeProgrammer, которая включает в себя необходимые драйверы и работает с большинством операционных систем. Хотя это потребует создания (бесплатного) аккаунта на сайте STMicroelectronics, но это официальный инструмент для программирования микроконтроллеров, используемых в большинстве поддерживаемых пультов управления.
    Примечание: на данный момент скачивание с сайта STMicroelectronics недоступно из России, поэтому вы можете скачать программу напрямую с Яндекс.диск. Архив содержит ряд других инструментов по работе с STM32 микроконтроллерами, англоязычную документацию к ним, а также ImpulseRC Driver Fixer.

  4. Попробуйте другой USB-кабель. Не все USB-кабели работают одинаково, некоторые из них позволят только зарядку устройства, но не передачу данных.

После обновления EdgeTX моя аппаратура управления не включается или ведёт себя странно

  1. Первым делом удостоверьтесь, что вы выбрали корректную прошивку для вашей модели устройства. В некоторых случая ваша аппаратура может включиться и с неправильной прошивкой, но кнопки и регуляторы будут работать некорректно или изображение на экране будет перевёрнуто. В других случаях аппаратура может не работать совсем или вести себя настолько непредсказуемо, что потребуется извлечь батареи питания, чтобы отключить её. Если вы установили некорректную прошивку, воспользуйтесь сервисом EdgeTX Buddy: выберите корректную модель аппаратуры и заново прошейте встроенное ПО. Пример: часто начинающие путают прошивки Radiomaster TX12 и Radiomaster TX12MK2, несмотря на общий модельный ряд прошивки этих устройств несовместимы!

  2. В некоторых пультах управления, в микроконтроллере могут быть выставлены некорректные значения опционных байтов2, в результате чего они не запускаются с версиями EdgeTX 2.10 и выше. Точная причина этого неизвестна, но исправление относительно несложное. Разверните пошаговую инструкцию ниже, чтобы попробовать исправить опционные байты в микроконтроллере вашей аппаратуры.

    Исправление опционных байтов (Option Bytes)
    1. После того как вы установили программу STM32CubeProgrammer (см. ссылку на скачивание выше), подключите вашу аппаратуру в выключенном состоянии, чтобы загрузиться в режиме DFU. Вы можете свериться со страницей Доступ в режиме загрузчика и DFU если не уверены, требуется ли на вашей аппаратуре зажимать специальную кнопку boot/DFU при подключении по USB для активации режима DFU.

    2. Запустите STM32CubeProgrammer, если он ещё не запущен. Вы должны увидеть главный экран, похожий на тот что на картинке (откройте изображение в новой вкладке, чтобы просмотреть в полном размере)
      Главный экран STM32CubeProgrammer

      Убедитесь, что тип устройства (1) задан как USB, затем нажмите на кнопку Connect (2). Если поле Port пустое, попробуйте нажать на кнопку обновления (3).

    3. Перейдите на вкладку "Option bytes" (OB) (1). Затем раскройте раздел "User Configuration" (2). Проверьте статус конфигурационного бита "BFB2"3 (3). Если он отмечен галочкой, снимите её (как на картинке ниже) и нажмите кнопку Apply (4). После этого вы можете нажать кнопку "Disconnect" и отсоединить вашу аппаратуру от компьютера.
      STM32CubeProgrammer: опционные байты

    4. Если проблемы была вызвана значением бита BFB2, то теперь ваша аппаратура должна успешно включаться и работать.

  3. Если вы подозреваете, что ваше устройство пришло в неработоспособное состояние ("окирпичено"), воспользуйтесь инструкцией how to unbrick your radio.

1

DFU (Device Firmware Update) - "Обновление прошивки устройства", специальный низкоуровневый режим работы аппаратуры, в котором все высокоуровневые функции отключены и контроль полностью передаётся внешнему устройству (компьютеру). Позволяет полностью перезаписать встроенное программное обеспечение.

2

Option Bytes (опционные байты) в STM32 — это специальные конфигурационные параметры, хранящиеся во флеш-памяти микроконтроллера. Они управляют важными настройками, такими как защита памяти (RDP), выбор источника тактирования, режим загрузки и поведение аппаратных интерфейсов. Изменение этих байтов позволяет, например, защитить прошивку от чтения или переключить микроконтроллер в альтернативный режим работы. Изменять их нужно осторожно, особенно параметры RDP и WRP.

3

Бит BFB2 (Boot From Bank 2) в опционных байтах STM32 отвечает за выбор банка памяти, из которого загружается прошивка. При обновлении устройства с поддержкой двойного банка (Dual-Bank Flash) можно записать новую прошивку во второй банк, а затем переключить BFB2, чтобы после перезагрузки загрузка происходила уже из обновлённого банка, обеспечивая безопасное обновление без риска "окирпичивания". Этот бит актуален для STM32 с двойной банковой флеш-памятью (например, STM32F7, STM32H7), где прошивка может находиться в двух независимых банках, и можно переключаться между ними без стирания памяти.