OrangeRx Open LRS 433MHz TX Module

baychi

RSSI полета с карбонового планера. Антенна (штатная спиралька) стоит над крылом.
Полный бардак! Карбон дает кучу затенений и переотражений.
Первый провал связи на 100 мВт строго над собой, второй в 500 м. 😦
На пене первый FS был в 5 км…

pol81

Подскажите пожалуйста: Сегодня пришел FTDI адаптер и смог прошить свой приемник, но зеленый огонек не работает и маяк не включается 😦 ( подал 5в с isp программатора). Что могло случится?

baychi
pol81:

( подал 5в с isp программатора). Что могло случится?

Куда подали? Прямо на Мегу?
Тогда RFM-ка могла сгореть, она больше 3.6 В не любит.

webconnector

Нужно было снять перемичку (джампер) . И питат приёмник от отделного источника через серво разём

тигромух

Вопрос к тем, кто использует OrangeRX с прошивкой KHA (openLRSng).
У вас сервы не дергаются?
У меня это выглядит это как нерегулярные (раз в 2-5 сек) подергивания на один шаг туда-обратно. Для рулевых поверхностей это не особо критично, а вот на пантилте ужасно раздражает.
Сначала я грешил на фиговые сервы HXT900, но с Hitec HS-55 и MD260 все то же самое.
Потом думал на кривой PPM с аппы, но и с выключенной аппой приемник падает в ФС и точно так же дергает сервами.
Помех нет, видео TX выключен, от сервы до приемника проводок 10-15см.
Куда еще порыть?

BAU
тигромух:

Куда еще порыть?

Это так называемый “джиттер”. Бороться можно только корректировкой прошивки.

тигромух
BAU:

Это так называемый “джиттер”. Бороться можно только корректировкой прошивки.

Сам KHA пишет вот что:

Current features

  • use timer hardware when possible to avoid jitter

Ковыряю прошивку, пока не могу найти где он выводит PWM…
Меня сильно смущает, что этот вопрос никого не волнует (если верить гуглу). Может приемник бракованый у меня?

BAU
тигромух:

Может приемник бракованый у меня?

Наврятли. У меня нет приемников оранж, но есть экспертовские родные и самодельные под 2G. Они почти одинаковы в схемотехнике, но ждиттера нет.

baychi

Гляньте осциллографом, на хорошем осцилле легко можно увидеть скачок в десяток микросекунд. Если скачок есть, дело в алгоритме. Заодно прверьте каков период PWM пачек - аналоговые сервы обычно не любят периода отличного от 20 мс. Если на осцилле скачка нет, дело в сервах. Но можно попробовать добавить по 5 мкс в ширины PWM.

Я использую Орандж с экспертовскими прошивками - джиттера или подергиваний нет.

Shuricus
BAU:

самодельные под 2G

Alex, а вы платки разводили или на ардуину паялись?

BAU
Shuricus:

Alex, а вы платки разводили или на ардуину паялись?

После ардуиновских экспериментов, развел плату.

helimika

Покажите на пальцах глупому - как вывести RSSI? Какие именно контакты ответственны за этот канал? нужно ли прошивать девайс для активации этой функции? Я понял, что по умолчанию, приемник дает информацию в цифровом виде (пакетах) и для подкючения к обычным ОСД с хоббей (Мини ОСД и Тини ОСД) нужно впаивать резистор и конденсатор.
И при перепрошивке - нужно подключиться программатором к 6 пиновому разьему, убрать перемычку с программатора (до подключения) и подать стандартное питание 5.5 вольт на разъем серв?

тигромух
helimika:

Покажите на пальцах глупому - как вывести RSSI? Какие именно контакты ответственны за этот канал? нужно ли прошивать девайс для активации этой функции? Я понял, что по умолчанию, приемник дает информацию в цифровом виде (пакетах) и для подкючения к обычным ОСД с хоббей (Мини ОСД и Тини ОСД) нужно впаивать резистор и конденсатор.
И при перепрошивке - нужно подключиться программатором к 6 пиновому разьему, убрать перемычку с программатора (до подключения) и подать стандартное питание 5.5 вольт на разъем серв?

RSSI на самом первом пине. Он даже подписан. 😃
Работает ли в штатной прошивке я не проверял, сразу шил openLRSng. Фильтр очень желателен, иначе RSSI на осд скачет как бешеный.
Прошивка возможна двумя способами: через UART и через ISP программатор. И в том и другом случае питать нужно 5V через серво разъем.
Кроме варианта, когда программатор умеет выдавать 3.3v, что редкость.

helimika

Ах это наклейка так смещена… А я подумал, что первый контакт это 1 канал, а последний питание и биндилка.

тигромух
BAU:

Это так называемый “джиттер”. Бороться можно только корректировкой прошивки.

KHA ответил так:

Due to lack of timer resources on the atmega328 the PWMs are generated by interrept routine which is prone to interrupt latency (another tinterrupt running e.g. timer).There is not much I can do to make it better however I have something in mind to reduce it but it may have some ill effects so I need to test it throughly.

BAU
тигромух:

KHA ответил так:

Ну что сказать… Пусть проверяет.
Видать код у него оптимизирован хуже чем у эксперта. У него ресурсов 328 хватает.

Necromant
baychi:

RSSI полета с карбонового планера. Антенна (штатная спиралька) стоит над крылом.

Во-во, на коптерах все еще хуже…

Vladimir_N
BAU:

Ну что сказать… Пусть проверяет.
Видать код у него оптимизирован хуже чем у эксперта. У него ресурсов 328 хватает.

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

Панкратов_Сергей
Vladimir_N:

У Эксперта прошивка полностью самостоятельная

Откуда информация? Эксперт начинал с Ардуино, написанное на Си в ардуино работает- прямой доступ к регистрам доступен.

тигромух
Vladimir_N:

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

Не могу согласиться. Если почитаете код, то увидите, что библиотеки ардуины (даже тривиальный analogWrite) там не используются. Вывод PWM реализован на прерываниях и счетчиках атмеги. Просто слегка неоптимально.
Сегодня Kha написал, что внес правки в код, генерирующий PWM и обещает, что серво джиттер теперь “virtually nonexistent” 😃
Проверим 😃

Vladimir_N
Панкратов_Сергей:

Откуда информация? Эксперт начинал с Ардуино, написанное на Си в ардуино работает- прямой доступ к регистрам доступен.

У Эксперта используется загрузчик не от Ардуино, и при использовании родного загрузчика от Ардуино, ему пришлось отключить WDT на прошивках для Оранж. Отсюда и этот вывод.
Хотя могу и ошибаться т.к. у него тоже раньше были проблемы с джиттером.
В ардуино нет доступа например - к прерыванию от таймера 0. Пока оно обрабатывается запросто может возникнуть задержка в несколько микросекунд. Конечно можно эти проблемы “героически” преодолеть, введя более сложный анализ времени, но кардинально проблема легко решается написанием прошивки в другом компиляторе Си без использования среды Ардуино.