Baychi OpenLRS - дружелюбная ЛРС с широкими возможностями )
Подскажите, выбираю железо под данную прошивку между
и
интересует что за переключатель с надписью “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 соответственно и все заработало.))
Хотите сказать, что проблема была в отключенном маяке?
ДА. Специально его потом отключал, чтобы перепроверить.
Раз мы заговорили про мощность и клевость, оказалось что не совсем понятно следующее:
Алгоритм предоставляет возможность управлять выходной мощностью, как через воздействие на регистр мощности модуля RFM, так и через его напряжение питания.
Так а какой в результате алгоритм реализован в прошивке? Оба?
Воздействие на регистр мощности осуществляется непосредственно значениями, заданными в регистрах 20 - 22 (код от 0 до 7). Воздействие на питающее напряжение RFM23BP может быть реализована в схемах типа Hawk Eye, через 11-ю ножку процессора (сигнал VCN). Если надо поднять напряжение в нужный регистр 20-22 добавляют +128 (старший бит=1). Таким образом можно определить 3 фиксированных уровня мощности. Удобнее всего использовать для регулировки 3-х позиционный тумблер передатчика РУ. В регистре 19 задается номер канала (1-13) переключения мощности.
Если я хочу управлять через напряжение, то в регистре 22 нужно писать не 7, а 7+128=135?
А в Тане напряжением нельзя управлять?
Есть такая проблема, кстати Тезка спасибо что написал. Не могу решить,
3 позиционный переключатель мощности на Тане(ретранслятор) 25 и 26 нога переключаются на землю
регистры
19-0
20-0, 21-2 , 22-7, мощность не переключается, судя по частоте мерцания диода 100мвт.
с передатчика все нормально.
Попробовал как написано в посту выше также безрезультатно. Не хочется терять канал из за этого
Посоветуйте что не так делаю.
Что-то туплю сегодня.
Решил перекомпилить прошивку. Волею каких-то судеб у меня на компьютере оказалась последняя версия Arduino IDE 1.6.3.
Так вот, эта 1.6.3 не хочет компилить этот скетч, ругается вот как:
eeprom.ino:113:14: error: variable 'etxt1' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
eeprom.ino:114:14: error: variable 'etxt2' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:21:20: error: variable 'regs' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:22:24: error: variable 'help' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:46:14: error: variable 'htxt1' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:47:14: error: variable 'htxt2' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:48:14: error: variable 'htxt3' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:129:14: error: variable 'ntxt1' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:200:14: error: variable 'mtxt1' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:201:14: error: variable 'mtxt2' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:202:14: error: variable 'mtxt3' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
menu.ino:203:14: error: variable 'mtxt4' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
rfm22b.ino:551:14: error: variable 'btxt1' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
rfm22b.ino:552:14: error: variable 'btxt2' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
rfm22b.ino:553:14: error: variable 'btxt3' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
rfm22b.ino:554:14: error: variable 'btxt4' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
rfm22b.ino:637:14: error: variable 'ftxt1' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
rfm22b.ino:638:14: error: variable 'ftxt2' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
rfm22b.ino:639:14: error: variable 'ftxt3' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
rfm22b.ino:640:14: error: variable 'ftxt4' must be const in order to be put into read-only section by means of '__attribute__((progmem))'
Ошибка компиляции.
Требует некоторые переменные объявить константами. Похоже особенности нового компилятора. Мои попытки на скорую руку сделать это к успеху не привели.
Кто силён в Ардуине, подскажите. Или искать старую версию IDE?
Такая же фигня.
Плюнул, поставил проверенную 1.05 - все компилируется без проблем.
Брать тут - www.arduino.cc/en/Main/OldSoftwareReleases#previou…