Baychi OpenLRS - дружелюбная ЛРС с широкими возможностями )
Процессоры на 3.3В в легкую горят если программатор на 5В без ограничительных резисторов. 200 Ом вполне достаточно. Будет работать, хотя это не по феншую. Причина горения - защитные диоды на портах.
Передатчик заработал.
Причиной проблем оказался четвертый регистр
4=1 FS check enable
Я ему присвоил 1 т.к. модуль предназначался для ретранслятора. А т.к. одновременно делалось много движений (вкл/выкл, втык/вытык), то и мысль моя пошла не в нужном русле. Видимо, плохо учили меня в универе правильно проводить многофакторые эксперименты.
Почему я решил, что спалил мегу? Я посмотрел по схеме, что входами передатчика служат порты D0 и B0. Я загрузил скетч чтобы помигать светиками с помощью команд writedigital(PORTB0, HIGH) и скетч с writedigital(PORTD0, HIGH).
Так вот при обоих скетчах мигал светик только на одном выводе. Получалось, что PORTB0 и PORTD0 адресовались только к одной линии. Но затем я вместо PORTD0 или PORTB0 написал writedigital(8, HIGH). И “неработающий” вывод заработал.
Я не мастер в Ардуинах и не могу объяснить, почему такая фигня с PORTB0 и PORTD0. Даже и предположить не мог, что засада именно тут и мой тест неправильный.
Подключив к пульту запасной передатчик, я убедился, что пульт выдает РРМ исправно.
После того, как я выяснил, что и пульт выдает PPM, а мега в модуле рабочая, кроме как на прогу и настройки было не на что грешить. Сообщение “Stop” в мануале к прошивке я не нашел, поэтому полез в исходники, где легко нашел, что это сообщение о Failsafe. И тут я вспомнил, что менял регистр 4. Вошел в меню, вернул регистр 4 в 0 и получил рабочий передатчик.
Так что в минусе несколько вечеров и одна мега.
Отдельная благодарность Plohish за участие.
Я не мастер в Ардуинах и не могу объяснить, почему такая фигня с PORTB0 и PORTD0. Даже и предположить не мог, что засада именно тут и мой тест неправильный.
Это засада. 😃
Просто если используете ардуиновскую функцию writeDigital, то надо использовать и ардуиновскую нумерацию пинов.
А PORTB0 используется так: PORTB |= _BV(PORTB0);
Причиной проблем оказался четвертый регистр 4=1 FS check enable
Вошел в меню, вернул регистр 4 в 0 и получил рабочий передатчик.
4 регистр - нужная штука для ретранслятора, не надо от неё отказываться.
Как подправить говорил уже.
Прошу прошения за ламерский вопрос,но не могу понять какой именно файл прошивки нужно подсовывать ардуинке,на гитхабе их целая куча)),слышал что надо компилить но понятия не имею как это делать(((нет нигде готового файла что просто выбрать в ардуинке и прошить?ну или хотя бы поделитесь ссылкой на ардувики чтоб мне больше не позорится такими вопросами)))до этого и осд шил и энкодеры,с регулями,но там все как то попроще выбрал файл нажал загрузить и все,почему здесь все так сложно,неужели без компиляции никак?
Вопрос снимается,разобрался сам)))жаль что с уходом Александра тема умерла((
Незаметно, что она умерла.
Прошивка открытая - можно творить дальше. Александр сделал уже более чем достаточно.
Документация исчерпывающая. Все ссылки в первом посте. Вопросов возникать не должно. Хекс находится ровно в двух кликах.
А то, что прошивка для продвинутых пользователей, это да. Для ламеров есть ОпенЛРСНГ. Я думаю, она уже не хуже работает. Там все делается через ГУИ.
Купил фильтры LFCN-490+. В прошивке есть регистры 25 и 26 (SAW Fmin, SAW Fmax). Нужно ли в них что то прописывать для LFCN-490+, или ими задают границы только для управляемых фильтров?
LFCN-490+ впаивается между антенной и модулем РФМ, это обычный LC-фильтр, он отфильтрует высокочастотные помехи на входе приемника. В настройке прошивка для работы с ним не нуждается.
Подскажите, выбираю железо под данную прошивку между
и
интересует что за переключатель с надписью “mode” на втором, мощность?
в плане охлаждения я так понимаю лучше первый вариант, но мощность регулируется только програмно…
Подскажите, выбираю железо под данную прошивку между
…[Вариант 1]…
и
…[Вариант 2]…
интересует что за переключатель с надписью “mode” на втором, мощность?
в плане охлаждения я так понимаю лучше первый вариант, но мощность регулируется только програмно…
Имею первый вариант. Прошивку под него тестировал правил вместе с Baychi. На плате этого передатчика тоже есть три контакта для переключателя, но самого переключателя нет. Переключатель не аппаратно меняет мощность - его положение считывает микропроцессор и переключает мощность. Т.к. в исполнении, как на первой фотке, переключателя не установлено, ни я, ни Baychi в код для Deluxe считывание его состояния не вписывали. Переключение мощности в зависимости от его положения, разумеется, тоже. Версии, как на второй фотке, тогда ещё не существовало. Думаю, что схемотехнически оба варианта одинаковы на 100%. Значит в прошивке Baychi и на втором варианте это переключатель работать не будет (если кто-нибудь, конечно, не допилит прошивку - там несложно, надо только сразу тестировать на своём железе).
Так что при выборе между этими вариантами на наличие/отсутствие этого переключателя ориентироваться не стоит. По крайней мере для текущей версии прошивки.
Первый удобней для ретранслятора - когда ты далеко от него, то до тумблера не дотянуться, однозначно мощность надо переключать с пульта.
Второй удобней, если ретранслятора нет. Но надо проверить, чтобы 1W мощности не влиял на сам пульт - у кого-то гасли экраны (или это про Экспертовские 7W был разговор…), да и батарейка в пульте будет быстрее садиться.
Благодарю за расширенный ответ, все понятно. Вариант 2 где то на рсгрупс попадалось что давит пульт своим сигналом, даже пульт фольгой обклеивали…
Я сам поставил переключатель, и он работает, в текущей прошивке.
Передатчик hawkeye обычный, не deluxe, изменение мощности четко видно по rssi.
Т.к. в исполнении, как на первой фотке, переключателя не установлено, ни я, ни Baychi в код для Deluxe считывание его состояния не вписывали.
Или все же вписывали?
Мануальчик откройте. Видимо не вы один тестировали с Байчи эту прошивку.
При R19=0 мощность можно переключать внешним аппаратным 3-х позиционным тумблером: его средний вывод соединяют с GND, а два крайних - к 24 и 25 или 25 и 26-й ногам микропроцессора. При R19>=14, управление мощностью отключено, а значение регистра мощности определяется регистром 22.
Я сам поставил переключатель, и он работает, в текущей прошивке.
Передатчик hawkeye обычный, не deluxe, изменение мощности четко видно по rssi.
В зависимости от того, какой тип железа вы выбираете при компиляции кода, включаются те или иные фрагменты кода. Я говорю именно про версию Deluxe, т.к. именно она изображена на фотках. Там даже процессор другой.
Поэтому я и указал тип оборудования, тем не менее это описано в документации на текущую прошивку и работает, доберусь до компа проверю код если интересно.
Или все же вписывали?
Мануальчик откройте. Видимо не вы один тестировали с Байчи эту прошивку.
При R19=0 мощность можно переключать внешним аппаратным 3-х позиционным тумблером: его средний вывод соединяют с GND, а два крайних - к 24 и 25 или 25 и 26-й ногам микропроцессора. При R19>=14, управление мощностью отключено, а значение регистра мощности определяется регистром 22.
Поэтому я и указал тип оборудования, тем не менее это описано в документации на текущую прошивку и работает, доберусь до компа проверю код если интересно.
Да что же такое-то! Почему мне никто не верит на слово? 😃
Скачал с github текущий архив для передатчика.
Открываем файл config.h.
В нем находим кусок, в котором определяются типы передатчиков:
//####### TX BOARD TYPE #######
// 1 = TX Expert Tiny original Board
// 2 = RX Open/orange v2 Board in TX mode (PPM input on D3 chdnnel (5-th slot)
// 3 = TX Open/orange v2 Board
// 4 = TX Hawkeye от КНА
// 5 = TX Expert 2G
// 6 = TX DTF UHF Deluxe
В сообщении #2060 Алексей Яковлев дал фото двух модулей TX DTF UHF Deluxe в разном исполнении. Подчёркиваю, что именно Deluxe!!!
На них стоит процессор Atmega32u4 (не Atmega328) с USB и собственной нумерацией ног.
Смотрим дальше: Во всех секциях
#if (TX_BOARD_TYPE == 1),
#if (TX_BOARD_TYPE == 2),
#if (TX_BOARD_TYPE == 3),
#if (TX_BOARD_TYPE == 4),
и
#if (TX_BOARD_TYPE == 5)
есть подобный этому кусок кода (взято для примера из секции #if (TX_BOARD_TYPE == 1)):
// Аппаратный переключатель мощности
#define SW1_IN A2 // Power switch 1 on 25 pin
#define SW2_IN A3 // Power switch 2 on 26 pin
#define SW1_IS_ON (PINC & 0x04) == 0x00 // проверка sw1
#define SW2_IS_ON (PINC & 0x08) == 0x00 // проверка sw2
И только в секциях
#if (TX_BOARD_TYPE == 6) // HawkEye DeluxeTX (Atmega32u4)
и
#if (TX_BOARD_TYPE == 7) // Orange reciever тест через прерывания D3
такого куска нет!
Дальше, в OpenTiny_TX.ino есть код:
#ifdef SW1_IN
pinMode(SW1_IN, INPUT); // ключ 1
digitalWrite(SW1_IN, HIGH);
pinMode(SW2_IN, INPUT); // ключ 2
digitalWrite(SW2_IN, HIGH);
#endif
А в rfm22b.ino есть самое главное:
#ifdef SW1_IS_ON // не для всех типов плат
else if(PowReg[0] == 0) { // аппаратный переключатель на 3-х позиционном тумблере
if(SW1_IS_ON) i=PowReg[1]; // внизу - режим минмальной мощности
else if(SW2_IS_ON) i=PowReg[3]; // вверху- режим максимальной мощности
else i=PowReg[2]; // в середине - средняя мощность
}
#endif
Отсюда уверенно утверждаю: На сегодня, 27.04.2015, в модулях TX DTF UHF Deluxe на обсуждаемой прошивке аппаратный переключатель мощности НЕ работает. Ещё раз подчёркиваю - я говорю только про Deluxe!!!
Соответствующий кусок кода вставить несложно, достаточно проверить к каким ногам микропроцессора подключен переключатель, посмотреть, что это за порты, указать их и соответствующие им маски в секции для Deluxe в config.h, откомпилить, прошить, проверить работоспособность и запостить правки сюда. 😃
Опять не убедил?
Вы правы во всем!
Опять не убедил?
оффтоп, Вадим, ты когда по автопилоту отпишешься? Вроде купил давно и молчишь…
Всем привет. Прошил приемник и передатчик Orange прошивкой Александра. Забиндил, и вроде все хорошо работает. Если срабатывает failsave приемник выставляет нужные каналы, но если снова включит передатчик то связь не устанавливается. Только после перезагрузки приемника они снова работают нормально. Почему так? Может я что-то забыл сделать?
Почему так? Может я что-то забыл сделать?
Да, забыли настройки нам показать 😃
Вот мои настройки. Спасибо за любой совет.
Rg=Val Comments ----------------------- V2 F13
1=104 Bind N
2=199 Freq Corr
3=0 Servo 150% strech num (1-12)
4=1 Statistics enable
5=0 11bit/10ch (1=yes, 2/3=Futaba)
6=0 Discrete outputs mask
7=1 1 output mode: PWM/PPM/SBUS = 0/1/2
8=0 Packet lost sound output (0=off, 1,2,7)
11=14 Hop F1
12=122 Hop F2
13=55 Hop F3
14=159 Hop F4
15=59 Hop F5
16=198 Hop F6
17=90 Hop F7
18=230 Hop F8
19=255 Beacon F (255=disable)
20=0 Beacon Pmax (mWt): 0-1.2; 1-2; 2-3; 3-6; 4-12; 5-25; 6-50; 7-100
24=0 Beacon start time (sec)
25=0 SAW Fmin
26=0 SAW Fmax
28=2 PPM/SBUS mode 1st PWM chnl (1-8) [2]
40=9 RSSI type: sound(0)/level(1-99=average)
41=1 RSSI mode: level(0)/SN ratio(1)
42=0 RSSI over PWM(chan:1-12) 0-not use
Rg=Val Comments ----------------------- V2 F8
1=104 Bind N
2=198 Freq correction const
3=0 Term corr.(0=no, 1=+, 255=-)
4=0 FS check enable
5=0 11bit/10ch(1=yes,2/3=Futaba)
6=1 Debug out (1-PPM, 2-perf.)
11=14 Hop F1
12=122 Hop F2
13=55 Hop F3
14=159 Hop F4
15=59 Hop F5
16=198 Hop F6
17=90 Hop F7
18=230 Hop F8
19=14 Power switch chan (1-13,0=SW)
20=0 Power min (0-7, +128=highU)
21=0 Power middle (0-7,+128=highU)
22=7 Power max (0-7, +128=highU)
Вот мои настройки. Спасибо за любой совет.
С настройками, вроде, порядок. А как вы ФС вызываете?
Вырубаю пульт.
РЕШЕНО.
Из-за регистров 19,20,24 у меня была такая проблема, подставил туда значения 10 4 30 соответственно и все заработало.))
РЕШЕНО.
Из-за регистров 19,20,24 у меня была такая проблема, подставил туда значения 10 4 30 соответственно и все заработало.))
Хотите сказать, что проблема была в отключенном маяке?