OrangeRx Open LRS 433MHz TX Module

Adekamer

тут все сложнее, нельзя тупо перзалить загрузчик который выставит частоту 16мгц
должно быть указанные 20мгц - иначе не будет корректно работать SPI с RFM
по хорошему надо отпаять RFM - залить загрузчик под 20 мгц, и только потом уже править фьюзы BODLEVEL

Я тут столкнулся с тем , что при внешнем питании приемника (через серворазьемы) от батарейки,когда я читаю фьюзы, еепром, возникает ошибка, если запитываю от 3.3 FTDI - то все нормально
в обшем конструктор еше тот.

baychi
Adekamer:

должно быть указанные 20мгц - иначе не будет корректно работать SPI с RFM

SPI от частоты кварца почти не зависит. Это не UART.
Рабочая прошивка при другой частоте кварца не сможет привильно расчитать временные интервалы и обеспечить связь, или обмен с ПК через UART, но с программатором и RFM-кой она работать будет в очень широком диапазоне частот кварца.

Adekamer:

при внешнем питании приемника (через серворазьемы) от батарейки,когда я читаю фьюзы, еепром, возникает ошибка, если запитываю от 3.3 FTDI - то все нормально

Странно сие, очень странно. У меня конечно другой программатор, но питаю всегда через серворазъем и проблемм нет…

Adekamer

не буду спорить - тк до конца не уверен в своей правоте, просто хочу акцентировать внимание что непосредственно в ардуине (а опенлс что кха что турка вроде как используют андурину) надо задавать частоту кварца для корректной работы spi
странность с проблемой чтения при питании с батарейки на серворазьеме несколько посадило меня на попу… с нетерпением жду вечера чтоб продолжить изыскания.

polarfox
Adekamer:

Я тут столкнулся с тем , что при внешнем питании приемника (через серворазьемы) от батарейки,когда я читаю фьюзы, еепром, возникает ошибка, если запитываю от 3.3 FTDI - то все нормально

У меня несколько другая ситуация.С УСБ программатором,тот что с ХК,и питанием через серворазъём всё нормально и прошивается и читается как ардуиной так и “экстрембёрнером”,а вот с ФТДИ 3,3В адаптером пытался перепрошить,приёмник ещё туда-сюда схавал прошивку,а передатчик нет,думал адаптер “не той системы”.Испытал приёмник в качестве спектруманализатора,работает(через этот самый ФТДИ адаптер).
Да,загрузчик ардуиной не пытался заливать,просто скорректил фюзы,как писал выше.

Adekamer:

в обшем конструктор еше тот.

Это точно,не даст мозгам закиснуть 😃

Adekamer
polarfox:

просто скорректил фюзы

Можно Ваши фьюзы ?

polarfox

Так я поменял только Efuse, был ФФ поставил ФД и всё.Остальные не трогал.

ufk
polarfox:

а вот с ФТДИ 3,3В адаптером пытался перепрошить,приёмник ещё туда-сюда схавал прошивку,а передатчик нет

Тоже самое, передатчик не шьется через ФТДИ ни в какую…приемник уже не имею возможности попробовать… 😃

тигромух

Господа, а кто может квалифицированно объяснить из-за чего сыр-бор?
Я попытаюсь изложить свое видение, поправьте, пожалуйста, где неправ.
В приемнике стоит LDO на 3.3V. Глядя в типовой даташит, я примерно прикидываю, что напряжение на меге упадет до 2.7V, только когда Uвх упадет до, примерно, 4-4.2V.
Причем на 2.7V сработает защита, а до какого падения будет жить сам кристалл, вообще никому не известно.
Правильно?
Далее, у нас еще один стабилизатор, в ESC или отдельный, не суть важно. Допустим, он тоже линейный.
Если у него на входе 3S, то срыв стабилизации наступит при разряде акка до ~ 6.5V. Тогда Uвых упадет ниже 5v, а до 4 еще и запас небольшой останется.
Для 3S акка 6.5V, это 2.16V на банку, что ниже минимального для LiPo. То есть летать на такой батарее уже не стоит.
ИМХО, правильный bodlevel это, конечно, хорошо, но не настолько, чтоб все бросились перешивать фьюзы и убивать приемники.
Поправьте меня где я ошибаюсь, плз.

Это было мое понимание теории, а теперь практика. 😃
Вчера летал FPV с апельсиновым OpenLRS. По неопытности не отследил разряд акка (на борту он был один на 3S) и допустил просадку до 7, а потом и до 6.6V.
От такого издевательства вырубилась камера (она на 12V), что, естественно, привело к морковке. Однако OpenLRS оставался жив и самолет, по словам очевидца (Эдик, подтверди 😃 ), рулился до самого конца.
А с “правильными” фьзами мог и не рулиться уже, да? 😃

baychi
тигромух:

Причем на 2.7V сработает защита, а до какого падения будет жить сам кристалл, вообще никому не известно. Правильно?

Правильно. Только под словом “жить” следует понимать не просто работать, а корректно работать, не разрушая настроек и прошивки.

тигромух:

Для 3S акка 6.5V, это 2.16V на банку, что ниже минимального для LiPo. То есть летать на такой батарее уже не стоит.

Дело совсем ни в Липо, BEC или экстремальном разряде акка. Дело в обычном отключении питания, которое не происходит мгновенно, а за неск. миллисекунд сошедшая с ума Мега может изменить пару байт в прошивке или настройках и этого будет достаточно, что-бы при следующем включении ничего не работало, или хуже того непредсказуемо глючило.

тигромух:

с “правильными” фьзами мог и не рулиться уже, да?

6.6 В - достаточно далеко до провала. Еще Вольт - полтора.
Не забывайте так-же что порог отключения по питанию, есть в приемнике (скорее всего те-же 2.7-2.9 В), и возможно в сервах. Так что кто сдохнет первым имеет мало значения.
А для себя можете проделать несложный эксперимент на земле с регулируемым БП, сразу узнаете в какой последовательности вырубается электроника. 😃

тигромух
baychi:

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

К сожалению, не силен в ассемблере AVR, но по моим воспоминаниям об ассемблере x86 - это крайне маловероятное событие. Возможно, сравнивать их и нельзя.
А разве мега может править собственную прошивку? Настройки в EEPROM, хоть и с трудом, но допускаю такую вероятность. Но изменять собственный код… Как-то это… странно.

baychi:

А для себя можете проделать несложный эксперимент на земле с регулируемым БП, сразу узнаете в какой последовательности вырубается электроника.

Спасибо. Ценный совет, так и сделаю 😃

Voldemaar
тигромух:

К сожалению, не силен в ассемблере AVR,

Ассемблер - он везде ассемблер. Только при чем он здесь? Это аппаратная проблема.

тигромух
Voldemaar:

Ассемблер - он везде ассемблер. Только при чем он здесь? Это аппаратная проблема.

Хм. Поясните, пожалуйста. Флеш сам собой повреждается от бросков питания? Тогда при чем тут bodlevel на меге?

baychi
тигромух:

это крайне маловероятное событие.

Это очень даже вероятно. По моему опыту с другой Мегой AT90USB1287 (где похожая ситуация, BODLEVEL не соответствует частоте работы), все зависит от партии процов. На одних прошивка никогда не слетает, на других очень редко, а есть где чуть ли не через раз.
Судя по первым ласточкам: rcopen.com/forum/f90/topic302333/548 для Оанжджа это тоже справедливо.

тигромух:

А разве мега может править собственную прошивку?

А как она по Вашему перепрограммируется через FTDI? 😃

тигромух:

Флеш сам собой повреждается от бросков питания? Тогда при чем тут bodlevel на меге?

Читайте даташит. Там подробно расписанно, как предотвратить повреждение EEPROM и FLASH.
Не хотите менять BODLEVEL, ставьте аппаратный супервизор на 2.7-3В.

тигромух
baychi:

Это очень даже вероятно. По моему опыту с другой Мегой AT90USB1287 (где похожая ситуация, BODLEVEL не соответствует частоте работы), все зависит от партии процов. На одних прошивка никогда не слетает, на других очень редко, а есть где чуть ли не через раз.

ОК, почитал даташит и еще несколько источников.
Проблем две.
Первая для нас не актуальна: это повреждение флеша и EEPROM, когда в процессе записи напряжение падает ниже необходимого уровня. У нас, кроме бинда, ничего никуда не пишется, так что мимо.

Вторая - про нас, т.к. актуальна для приложений, использующих бутлоадер. Дело в том, что при проблемах с питанием, глючащая мега может выполнить прыжок в область загрузчика, где находится вызов SPM (Store Program Memory). Если мега случайно налетит на эту инструкцию, то затрет какую-то страницу во флеше (если силенок от подыхающего питания хватит 😃 ).

В общем, я бы оценил эту вероятность как довольно низкую и не стоящую запоротого приемника. Но все-таки у себя BOD включу 😃

baychi
тигромух:

Первая для нас не актуальна: это повреждение флеша и EEPROM, когда в процессе записи напряжение падает ниже необходимого уровня. У нас, кроме бинда, ничего никуда не пишется, так что мимо.

А вероятность прыжка в область своих подпрограмм, которые меняют EEPROM, Вы не рассматриваете?

тигромух:

Если мега случайно налетит на эту инструкцию, то затрет какую-то страницу во флеше (

Достаточно затереть пару байт.

тигромух:

я бы оценил эту вероятность как довольно низкую и не стоящую запоротого приемника

Если уже есть один явный прецедент, значит будут и другие. Дело, разумеется, хозяйское, но беда еще в том, что насколько мне известно, ни в прошивке Оранджа, ни в КНА, ни в Тини от Эксперта (в исходной нет точно, может хоть в адаптированной под Орандж автор добавил?) нет проверки целостности прошивки (да и настроек небось). И Вы даже не узнаете, что она слетела, пока не начнутся чудеса.
Как говорили раньше “страна непуганных идиотов”. 😃 Добваить 10 строк кода им лень… 😦

тигромух
baychi:

А вероятность прыжка в область своих подпрограмм, которые меняют EEPROM, Вы не рассматриваете?

Она сильно уж мала. Прыжок в начало или в конец адресного пространства, на загрузчик, гораздо более вероятен, имхо.
Да и вообще - хрен с ним, с EEPROMом. У KHA это лечится повторным биндом.

baychi:

Если уже есть один явный прецедент, значит будут и другие. Дело, разумеется, хозяйское, но беда еще в том, что насколько мне известно, ни в прошивке Оранджа, ни в КНА, ни в Тини от Эксперта (в исходной нет точно, может хоть в адаптированной под Орандж автор добавил?) нет проверки целостности прошивки (да и настроек небось). И Вы даже не узнаете, что она слетела, пока не начнутся чудеса.
Как говорили раньше “страна непуганных идиотов”. Добваить 10 строк кода им лень…

KHA проверяет EEPROM. Ну как проверяет - читает magic и version 😃
От чего-то может и спасет.

pol81

avrdude: stk500_getsync(): not in sync: resp=0x00
Это что за ошибка - возникает при прошивке передатчика прошивкой от КХ4.
И что было сделано , если я нажал кнопку в Ардуино 1.04 сервис - записать загрузчик

Adekamer

значится так: прошивал загрузчик ардуиной - плата - Атмега 328 (без всего, та что наверху)
после чего уже залил прошивку фина
питал от 3.3 вольт с FTDI
все моргает все работает
до этого мои манипуляции под галимой виндой в экстрим бурне тупо портили загрузчик, даже просто чтение - не запись епрома флаша и фьюзов
причем на нескольких экземплярах 😃 те я поначалу растроился немного 😃 что “запорол” несколько приемников:) но упорство побеждает 😃

pol81

И еще когда подаю питание на передатчик - начинает моргать красная лампа раз в 1 сек. и без разницы подключен программатор или нет.

Adekamer
pol81:

начинает моргать красная лампа раз в 1 сек. и без разницы подключен программатор или нет.

по идее это показывает что есть загрузчик

pol81

А что делать=то, передатчик не работает 😦