Аппаратура Radiolink AT 9 2,4 ГГц
…можно ли откалибровать показания вольтажа батареи передатчика…
— Меню [SYSTEM], параметр «TX-TRIM». Для приемника аналогичный параметр «RX-TRIM». Всё очевидно.
R9DS и в 12 канальном режиме
Не будет так работать, поставьте 10 каналов
Не будет так работать, поставьте 10 каналов
Я знаю 😃 Но вот mfilitovich писал, что будет.
Я знаю Но вот mfilitovich писал, что будет.
10 - точно работает, а вот насчет 12-ти догадка - возможно и нет.
И про «антенну на разъеме» поподробнее — у вас точно новая аппа?
Я имел в виду разъём, который на ВЧ модуле, маааленький такой пипсик - не тот, что переделывают и ставят снаружи на корпус (типа SMA).
Про измерение антенны мультиметром (тестером) — бред.
Да я собственно и знал, что мультиметром там делать нечего, просто понадеялся на авось 😃. Не спалил - всё работает как и раньше.
А для увеличения дистанции буду антенну с бОльшим усилением ставить (6-8 dbi) и на борт то же.
Кстати, а родная на АТ9 какое усиление имеет? Судя по её габаритам там наверное где-то около 3 dbi?
насчет 12-ти догадка - возможно и нет.
Ну и фигли было спорить с тем, кто ТОЧНО ЗНАЕТ (ибо пробовал), а не гадает? 😃
Всем привет. Есть отзывы пользователей по ЭТОМУ приемнику? Вроде, самый мелкий для AT9, который работает по SBUS?
А 137 отзывов о товаре по вашей ссылке чем не устроили?
Вроде, самый мелкий для AT9
У меня такой есть, работает нормально, в городе связь теряется на расстоянии около 450 метров.
Автоматическое усилением микрофона выключили
Выключил, все равно стики скачут как хотят.
дешевле сделать “свисток” самому на базе arduino ATmega32U4
Дешевле, не спорю, вот тут даже описано как это делается, я это видел. Дело в другом, я очень далек от программирования и совсем не знаком с ардуино. Поэтому даже такая простая, на ваш взгляд процедура, как
- качаем вот тут скетч “джойстик-интерпретатора”, которому понадобится библиотека Joystick вот отсюда
- Качаем и ставим ардуину
- Открываес скетч в Arduino IDE, указываем “Инструменты - Плата - Arduino Leonardo”, подключаем библиотеку, проверяем, что всё компилится. Дальше внимательно смотрим на текст скетча - он очень простенький и наглядный, как переделать его под другое число каналов - понять несложно. Вот так я переделал под свою AT9 c учётом того, как у меня привязаны к тумблерам каналы 5-10:
Код:
#include <HID.h>// PPM_Joystick.ino - Converter of PPM sygnal to USB joystick controls.
//
// PPM pulse train:
// __ ___________________________________ _____ ____ _______ ___ //___ __________ __ HIGH
// |_| Sync pulse > 3000 us |_| |_| |_| |_| // |_| |_|
// Channel pulse 1000 to 2000 us LOW
// Pulse start and end on falling edge. The end of one pulse is the begining of next.// The code uses Jystick library from github.com/MHeironimus/ArduinoJoystickLibrary/
#include <Joystick.h>unsigned long curTime = 0;
unsigned long oldTime = 1;
volatile int pulseLength = 0;
volatile int channel = 0;// Pulse timing interupt routine.
void ISR1()
{
curTime = micros();
pulseLength = curTime - oldTime;
oldTime = curTime;if (pulseLength > 3000) {
channel = 0;
Joystick.sendState();
} else {
channel++;
setChannel(channel, pulseLength);
}
}// The function converts length of the pulse
// to USB joystick control value.
void setChannel(int ch, int pulse)
{
// Processing pulses with length 800 - 2200 mks.
float value = (pulse - 800) / 1400.0;if (value < 0)
value = 0;
else if (value > 1.0)
value = 1.0;switch(ch) {
case 1:
Joystick.setXAxis(value*255 - 127);
break;case 2:
Joystick.setYAxis(value*255 - 127);
break;case 3:
Joystick.setZAxis(value*255 - 127);
break;case 4:
Joystick.setXAxisRotation(value*360);
break;case 5:
Joystick.setYAxisRotation(value*360);
break;case 6:
Joystick.setButton(1, (int)(value+0.5));
break;case 7:
Joystick.setZAxisRotation(value*360);
break;case 8:
Joystick.setButton(2, (int)(value+0.5));
break;case 9:
Joystick.setButton(3, (int)(value+0.5));
break;case 10:
Joystick.setButton(4, (int)(value+0.5));
break;
}
}void setup()
{
Joystick.begin(false);
attachInterrupt(0, ISR1, FALLING);
}void loop()
{
// Place your debug code here…
delay(100);
}
5) компилим скетч и заливаем в платку
для меня лес густой… Я больше по железкам…
Поэтому при прочих равных желательнее готовое решение, пусть и только под эту аппу. Вот на днях знакомый отрекомендовал еще один шнурок 22-в-1, по картинкам этого шнурка вижу, что к него есть переключатель на 4 режима, а вы ранее как раз указывали о четырех позициях для переключения каналов
готовый “свисток”, то такой, который понимает не менее 10 каналов PPM (такие обычно переключаемые 6-8-12-16)
Вы случаем не в курсе именно этот кабель будет работать?
Всем привет. Есть отзывы пользователей по ЭТОМУ приемнику? Вроде, самый мелкий для AT9, который работает по SBUS?
Отличный приемник для мелколетов, 100-200 метров великолепно держат…
“”" Поэтому при прочих равных желательнее готовое решение, пусть и только под эту аппу. Вот на днях знакомый отрекомендовал еще один шнурок 22-в-1, по картинкам этого шнурка вижу, что к него есть переключатель на 4 режима, а вы ранее как раз указывали о четырех позициях для переключения каналов “”"
Приобретал конкретно данный набор… У меня заработал сразу. Проблем не наблюдал.
Есть отзывы пользователей по ЭТОМУ приемнику?
Чутьё такое же, как и у всех 6-рок - то есть откровенно хуже 9-ток (раза так в 2-3 по дальности), поэтому дла 200-250 класса в городских условиях не рекомендую, ибо чревато внезапыми отвалами связи вблизи “букетов” сотовых станций или какой-нибудь FM-вещалки.
Вроде, самый мелкий для AT9, который работает по SBUS?
Да, мелкий и лёгкий, потому использую сугубо на “мухолётном” классе “от 100 и ниже”.
для меня лес густой…
Чуть внимательнее посмотреть вами же отцитированное (злостный и бессмысленный оверквотинг, кстати) - не судьба? Там же тупо видны обработчики значения (value) каждого канала, а прямо перед ними - “формула”, из которой видно, что value меняется от 0 до 1. Если ЭТО сложно для вашего понимания - даже не знаю, как вы собираетесь, к примеру полётник настраивать или парметры в том же симуляторе?
Вы случаем не в курсе именно этот кабель будет работать?
С чего бы мне быть в курсе всех этих поделок, если у меня есть прекрасно работающий самодельный “радиосвисток”? Покупайте, тратьте деньги, время на пересылку, пробуйте - раз уж не можете разобраться в гарантированно работающем решении.
вижу, что к него есть переключатель на 4 режима, а вы ранее как раз указывали о четырех позициях для переключения каналов
Судя по наклейке, там даже 5-позиционный переключатель. Но на наклейке перечислены СИМУЛЯТОРЫ, под которые нужно ставить переключатель в соответствующую позицию. Так что что он там переключает - одним китайским прошивкописателям известно, может, просто изменяет набор обработчиков каждого из каналов. В общем, опять же - покупать да пробовать с аппой. Если повезло - то радостно отписаться тут. Если не повезло - обругать “здешних советчиков”, как выше.
Но ни в коем случае не нужно делать самому на атмеге то, что будет работать именно так, как вам требуется - ибо “прошивку” вы составили САМИ и имеете возможность её ПОДПРАВИТЬ так как вам хочется под нужды ЛЮБОГО симулятора (а по моему опыту у них могут быть разные “причуды” - одним нужны одни “оси джойстика”, другим - другие, из-за чего приходилось переделывать обработчики)!
Всем привет!
Купил эту аппаратурку на али с приемником r9ds. Сегодня испытал. на 600 метрах примерно начались подвисания в управлении. на 750 м квадрик упал. Что за фигня? где 1,5 км в стоке? может подделка?
Купил на замену flysky i6. Там на 400 м ловил файлсейв. Тут думал 1 км спокойно выдержит, но нет…
Доброго здоровья!
Поясните пожалуйста, что такое servo anti-shake rudder в приёмниках R9D/DS и в аппаратуре AT9?
Гугл ничего внятного на родном (русском) языке не даёт, только язык супостата три…ого 😃!
на 600 метрах примерно начались подвисания в управлении.
в подземке летали? около кремля? или в лесу между деревьев?
на 750 м квадрик упал.
а че упал-то? может мотор погорел?
летал в поле над деревьями высоко. упал, т.к потеря связи!!! ничего не погорело. нашёл - опять полетел =)
возле мкада
летал в поле над деревьями высоко. упал, т.к потеря связи!!! ничего не погорело. нашёл - опять полетел =)
возле мкада
Штоп не упал есть фейлсейф.
у меня жпс не стоит! это гоночный квадрик 210 размера! вопрос в другом. почему так рано связь отвалилась? на ютубе смотрел обзоры - в стоке чуть ли не 2 км! а у меня 700 метров всего! у кого сколько по расстоянию?
вопрос в другом. почему так рано связь отвалилась?
Такое слово как “радиопомехи” вам известно? Они бывают, например, промышленные от близлежащего “свечного заводика” или от вышеупомянутых “кустов” БС-ок, а ещё от пригоршни вайфаев в близлежащем коттеджном посёлке. Обратили бы внимание ГДЕ (то есть в каких “глухих лугах”) тестят аппу на дальность. А так, конечно, “все врут - адназначна!” 😁
для меня лес густой… Я больше по железкам…
Попробую растолковать для “не специалиста”. Из всего текста скетча вас должна интересовать функция
// The function converts length of the pulse
// to USB joystick control value.
void setChannel(int ch, int pulse)
(легко догадаться, там даже комментарий надписан - что она, мол конвертирует длительность импульса PPM соответствующего канала в какое-то телодвижение USB-джойстика). “Тело” этой функции идёт от открывающейся фигурной скобки под её названием до соответствующей закрывающейся фигурной скобки (вы при цитировании угробили табуляции, посмотрите в исходном сообщении - там всё выровнено “ступенечками” и потому наглядно). Сначала идёт перевод длительности импульса (от 800 до 2200 мкс) в более удобный диапазон от 0 до 1, значение запоминается в переменной с плавающей (float) точкой value
// Processing pulses with length 800 - 2200 mks.
float value = (pulse - 800) / 1400.0;
Дальше отрабатывается случай, если по факту значения были меньше 800 или больше 2200 - и значение value окажется меньше 0 или больше 1
if (value < 0)
value = 0;
else
if (value > 1.0)
value = 1.0;
Ну и после всего этого осталось перевести значение value в положения стиков джойстика (они должны быть в пределах от -127 до 127)
Joystick.setXAxis(value*255 - 127);
крутилок джойстика (от 0 до 360 “градусов”)
Joystick.setXAxisRotation(value*360);
или имитации нажатий кнопок джойстика (первый параметр - номер кнопки, второй - значение, которое должно быть 0 = “отжата” или 1 = “нажата”)
Joystick.setButton(1, (int)(value+0.5));
в последнем случае маленькая “программная хитрость” - когда число с “плавающей точкой” переводится в целое (int), то дробная часть просто отбрасывается, а поскольку (value+0.5) будет принимать значения от 0.5 до 1.5, то после отбрасывания дробной части как раз и получится 0 или 1 с границей переключения на 1500 мкс (если не забыли, у нас value = 0 соответствует 800 мкс, а value = 1 соответствует 2200 мкс, соответственно, value = 0.5 будет соответствовать 1500 мкс).
Все возможные “крутилки-переключалки” описаны на странице проекта - можете “переопределить” обработчики каналов на свой вкус (то, о чём я писал выше). Обратите внимание, ссылка отличается от той, что вы находили выше по теме. Дело в том, что проект Arduino Joystick Library развился уже до версии 2.0, где можно менять количество кнопок и задавать диапазоны “крутилок” - но вам это лишние сложности, так что берите версию 1.0.1 по моей ссылке - там всё проще. 😃