Jumper T-Pro
есть бутлоадер не стираемый, есть бутлоадер пользовательский тот, который например умеет загружать прошивку с Флэшки,
или Вы хотите сказать, что у Вас “вшитый” грузит прошивку аппаратуры?
но даже первый, при большом желании можно затереть, а второй затереть значительно проще.
А еще проще сломать его работу.
если повредить данные в области памяти, содержащей данные для тактирования,
Ваш, пользовательский загрузчик просто перестанет работать, до полной очистки камня и повторной прошивки пользовательского загрузчика.
то же самое касается прошивки через StLink
вот кусок кода , генерируемый CubeIDE для F401
/** Initializes the RCC Oscillators according to the specified parameters
- in the RCC_OscInitTypeDef structure.
*/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLM = 25;
RCC_OscInitStruct.PLL.PLLN = 168;
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
RCC_OscInitStruct.PLL.PLLQ = 4;
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
{
Error_Handler();
}
/** Initializes the CPU, AHB and APB buses clocks
*/
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
{
Error_Handler();
}
}
а вот тот же кусок кода сгенерированный тем же CubeIDE для того же камня, но при этом частота внешнего кварца выбрана не правильно,
или как вариант, какая то программа записала в эту область не правильные данные.
/** Initializes the RCC Oscillators according to the specified parameters
- in the RCC_OscInitTypeDef structure.
*/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLM = 2;
RCC_OscInitStruct.PLL.PLLN = 84;
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
RCC_OscInitStruct.PLL.PLLQ = 4;
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
{
Error_Handler();
}
/** Initializes the CPU, AHB and APB buses clocks
*/
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
{
Error_Handler();
}
}
так вот, после загрузки и запуска второго варианта, камень перестанет отвечать на любые запросы CubeIDE до полного его стирания.
так же и Ваш, пользовательский загрузчик станет стартовать с неправильными данными тактирования и просто не будет работать, как только переключит тактирования на внешний кварц.
Но на само деле, это все к делу не относится.
если повредить данные в области памяти, содержащей данные для тактирования,
Ваш, пользовательский загрузчик просто перестанет работать, до полной очистки камня и повторной прошивки пользовательского загрузчика.
Все правильно, но прошивка на аппаратуры накатывается двумя способами:
- С использованием загрузчика 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
Роман, я же написал, что
но справедливости ради, раскирпичивание STM в разы проще чем Атмег
если у Атмеги фюзы “слетают”, какое счастье, что это явление редкое, то без паялинга, чаще всего, никак не обойтись )
а в Джампере на основной плате есть St Link, т.е. там не проcто USB ?
почему спрашиваю ? Некоторые из вышеперечисленных операция просто не реально выполнить при отсутствии St Link.
Или все таки “свисток” надо подключать ?
Геннадий, вы издеваетесь? Какие операции нереально выполнить, при отсутствии Ст-линка? Нет, в т-про нет его, но что вы собираетесь выполнять с его помощью? Стирать страницы памяти? Легко, зажав кнопочку Бут подключаете в выключенном состоянии к компьютеру и запускаете Stm32 Cube Programmer - с помощью USB DFU (из встроенного загрузчика) - вы можете вычитать флэш, стереть частично или полностью. Можно накатить любую прошивку. Можно ли менять опциональные биты - не в курсе, никогда не пробовал
с этой программой дел никогда не имел, посмотрю на досуге.
Stm32 Cube Programmer
Обновил прошивку edgetx на 2.8.0. Версия со встроенным elrs. Почему то в SETUP - Internal RF почему то теперь доступен MULTI и пропал CRSF. Что я мог сделать не так? Как исправить? Модуль естественно не менял.
Разобрался. Нужно перейти в раздел HARDWARE и там поменять.
Подскажите такой вопрос, как подключить по БТ и настроить на ПК для симуляторов? Включаю БТ в elrs модуле, сопрягаю, ПК определяет геймпад и на этом все…
По проводу подключилось без проблем, даже без танцев настроил для игр в стиме😁, правда кнопок немного не хватает 😅. А вот по БТ никак…
Приветствую! Почему аппа может недозаряжать аккумы? Максимум загорается 4 индикатора и зарядка прекращается. Напряжение 8.0 показывает и в аппе и фактическое суммарное на банках.
Подскажите, а какой верхний предел значения аккумулятора стоит в настройках аппы. Сам на днях замел “недозаряд” в аппе - 6 позиционник показывает что зарядился максисум на 5/6, а если зарядить аккум внешним зарядником, вставить в аппу и включить заряд то показывает 6/6. У меня в настройках верхний предел стоит 8в, может в этом беда? Проверить пока руки не дошли…)
Ставил 8.4 - не помогло
Подскажите в чем может быть проблема. Приобрел Jumper T-Pro Elrs и приемник betafpv 2.4 pwm, обновил elrs до последней версии 3.2.0 (и передатчик и приемник), приемник подключается, но управляющий сигнал поступает только на первый канал (т.е. если туда подключить серву элеронов, работают элероны, если регулятор оборотов - он перестает пиликать и можно управлять оборотами). Все остальные каналы на приемнике не генерируют никакого управляющего сигнала, если подключить регуль к любому каналу кроме первого, питание поступает, приемник коннектится, но результата 0, регулятор пикает и все.
Всем привет! Очень благодарен всем, за информацию. Недавно стал обладателем такой аппаратуры Jumper T-PRO ELRS. В принципе все нравится, единственное что китаец положил фиговую карту памяти, и она слетела через неделю пользования, и блин, пришлось помучаться чтоб все восстановить. Но с вашей помощью - научился прошивать, и настраивать. По удобству - норм. привык. Это первая моя аппаратура. Цель такая: в будущем взять очки DJI FPV и потом Cinelog 35 GEPRC. Бывают конечно вопросы что к чему, и как делать. Но думаю буду разбираться в процессе.
Подскажите в чем может быть проблема
А модель создана в передатчике? Какие настройки на 5 странице (inputs)?
А модель создана в передатчике? Какие настройки на 5 странице (inputs)?
Модель создана На 5 вкладке:
- Ail 100 Ail
- Ele 100 Ele
- Thr 100 Thr
- Rud 100 Rud
Миксы такие же В Outputs каналы реагируют как положено, значения отклоняются от 988 до 2012 по всем каналам (при движении элеронов на 1 канале, тангажа на 2м, газ на 3м и рысканье на 4м) В настройках аппы переключил на мод2
Приемник соединяется при включении с передатчиком. Питание можно получить при подключении регулятора к любому канал, но работает только первый. Если подключить регулятор на 3й канал (либо какой-то другой кроме первого), он не переходит в нормальный режим и продолжает пикать, при этом мотор чуть-чуть подрагивает, элероны с первого канала работают, тангаж на втором не работает. При подключении регулятора на первый канал, передатчик соединяется с приемником, регулятор переходит в рабочий режим и двигатель начинает вращаться (управление оборотами рычагом элеронов влево-вправо, но даже на максимум влево не выключает двигатель полностью, он замедляется до минимума но продолжает вращаться). Вот не могу понять то ли я не могу настроить нормально, или какой-то брак (((
А это видео видели? Каналы приёмника можно настраивать через вайфай.
но даже на максимум влево не выключает двигатель полностью, он замедляется до минимума но продолжает вращаться
Регуляторы надо калибровать когда подключаешь к новому радио.
Чтобы он знал максимум и минимум. Ставишь газ на максимум , подключаешь батарею к esc, он пропиликает, переводишь газ на минимум.
Здравствуйте! Кто-то может подсказать, как привязать 2 модели на этой аппе? У меня edgetx установлен на моем джампере. Когда создаю 2ю модель, захожу в меню приявязки TBS agent, мне выдает собщение looking for devices и все на том, нет возможности bind. Если же активирую другую модель, которая забиндена нормально, то при переходе в TBL agent нормальное меню вижу
как привязать 2 модели на этой аппе?
надо в настройке каждой модели включить внешний модуль и выбрать протокол CRSF
картинка для примера с другого радио. с ELRS но смысл тотже
Спасибо, нашел это. Но че то не биндится… Может версия ELRS на TX и RX не сходится? На приемнике 3.0.1 а на передатчике (аппе) даже не знаю где посмотреть…