Bookmarks
если повредить данные в области памяти, содержащей данные для тактирования,
Ваш, пользовательский загрузчик просто перестанет работать, до полной очистки камня и повторной прошивки пользовательского загрузчика.
Все правильно, но прошивка на аппаратуры накатывается двумя способами:
- С использованием загрузчика OpenTX/EdgeTX (пользовательского, который тоже можно затереть) с sd-карты
- С использованием buddy.edgetx.org , который работает через STM32 DFU, то есть нестираемый загрузчик. Если предположить, что с использованием первого или второго способа, была затерта часть прошивки (загрузчик OpenTx/EdgeTX) перестал стартовать или после передачи управления самой ОС, происходит что-то страшное, любую аппаратуру можно вернуть к жизни, в большинстве случаев без танцев с бубном:
- Подключаем в выключенном состоянии и прошиваем с помощью buddy.edgetx.org или STM32 Cube Programmer
- Если это аппаратура T-Pro, то подключаем в выключенном состоянии, предварительно зажав кнопку boot сверху у антенны и производим действия из пункта 1.
- Если это BetaFPV LiteRadio 3 Pro - материмся на производителя и ищем SWD, потому что они не сделали развязки питания таким образом, чтобы без нажатой кнопки Pwr или сигнала Pwr с ноги проца, контакт бут подтягивался бы к режиму загрузчика Stm32
Что-то вы все смешали)
- В аппаратуре есть центральный контроллер, именно в его флэш-память устанавливается операционная система OpenTX или EdgeTX и она не видится как диск.
- В аппаратуре есть SD-карта, куда записывается контент: звуки, скрипты. В том числе, сюда нужно записать (в папочку /tools) скрипт expresslrs.lua
- В аппаратуре есть модуль передатчика со своим контроллером (это может быть ELRS, мультипротокол, какие-то другие). Флэш этого контроллера так же не виден. Итак что вам нужно сделать:
- Аппаратура в ВЫКЛЮЧЕННОМ состоянии. Сверху у антенны есть утопленная микрокнопка. Зажимаем ее карандашем или мелкой отверткой и подтыкаем по юсб к компьютеру. В диспетчере устройств должно отобразиться STM32 DFU.
- Заходим в хроме/я.браузере/эдже (хромбэйсед) на https//buddy.edgetx.org, выбираем прошивку (2.7.1), аппаратуру (T-Pro) и давим “прошить по USB”. Вот после этой манипуляции у вас будет установлен EdgeTX.
- Далее вам будет предложено включить аппаратуру и подключить ее как диск. Делаем и давим кнопочку “Записать SD-контент”. Как будет завершено, полноценная чистая EdgeTX у вас будет установлена.
- Запускаем конфигуратор елрс, выбираем версию, модель передатчика, вбиваем кодовую фразу и нажимаем кнопку Build (собрать, без Flash). По окончанию сборки, сгенерируется файлик, который стоит скопировать в более удобное место (мои документы/рабочий стол)
- Так же будет предложено скачать файл скрипта expresslrsV2.lua (или V3, зависит от того, какую версию собирали). Скачиваем и кладем на SD-карту аппаратуры, в папку /tools
- Отключаем аппаратуру, заходим в настройках аппаратуры в настройки Hardware и меняем внутренний модуль с Multiprotocol на CRSF (ибо у нас елрс)
- Создаем новую модель (в модели по умолчанию мультипротокол), далее заходим в тулс и запускаем ExpressLRS скрипт. Должно подключиться и отобразить параметры модуля ELRS. Делаем Wi-Fi->Tx->Запустить. Подключаемся к точке доступа ExpressLRS TX, в браузере должна открыться страница 10.0.0.1, выбираем Update, выбираем файлик что мы сгенерировали в конфигураторе и сохранили в удобном месте и ждем окончания апдейта.
Случилась тут со мной одна интересная история. После смены аппаратуры Таранис на Хорус решил я настроить по-уму Компаньон. Заменил родную ФрОС на более привычную и необходимую мне ОпенТХ, конвертировал модели, настроил экраны, телеметрию и пр. Решил запустить в Компаньоне симулятор аппаратуры и тут… полный облом! Запускается симулятор, но пишет “Бэд радио дата” и больше ничего.
Всмысле симулятор есть, но не отображает моделей никаких.
При этом сам Компаньон прекрасно работает. Прошивет, читает, записывает. Все путем. Наступили “тяжелые будни” разбирательств и экспериментов. Два вечера потрачено на всевозможные изыскания (смена папок синхронизированной СД, всевозможные настройки, чтение мануалов, поиск и просмотр видео). Самое интересное, что если запустить симулятор без самого Компаньона, то он прекрасно себе работает. Симулирует все параметры, телеметрию, озвучку и пр.
В результате причина и решение проблемы были найдены. Итак, попорядку. Имеем:
-
FrSky Horus X10 прошита OpenTX релиз 2.2.3;
-
Windows 10 Pro;
-
Companion 2.2.3.
После изучения объекта поплотнее была найдена настройка:
После этого по указанному пути стали записываться логи. Сделал несколько записей запуска симулятора из Компаньона и непосредственно ярлыком “Firmware Simulator”. Далее изучил логи и вот, что обнаружил: -
лог при запуске симулятора из Компаньона:
-
лог при запуске симулятора напрямую:
Как видим при запуске напрямую симулятор подчитывает файл “radio.bin” сразу по пути синхронизированной СДкард, а при старте из Компаньона зачем-то создает временную папку и пытается считать его оттуда. Зачем? Для меня тайна.
Проанализировав имя пути до меня дошло, что программа Компаньон не понимает кириллических шрифтов в названиях папок. Т.к. изменить имя пользователя, и соответственно имя папки хранения данных, уже нельзя, а создавать нового пользователя только для запуска Компаньона не логично - я “пошел другим путем”. Решил изменить настройки размещения системной папки TEMP в переменных среды. Для этого сделал: -
клик правой кнопкой мыши на ярлык “Этот компьютер” пункт меню “Свойства”:
-
далее выбираем “Дополнительные параметры системы”:
-
далее кнопка “Переменные среды”:
-
тут меняем две переменных “ТЕМР” и “ТМР” с установленных по умолчанию и имеющих в имени пути кириллицу на любой другой без кириллицы. Например так:
После всех этих манипуляций симулятор стал нормально запускаться и работать в Компаньоне.
Я доволен достигнутым результатом. Думаю задать вопрос про поддержку кириллицы разрабам OpenTX.
Запись больше для себя, но может еще кому пригодиться.😃