Baychi OpenLRS - дружелюбная ЛРС с широкими возможностями )
Канал на переключение если тинька внутри пульта- это не имеет смысла.
То есть если к существующим 7 каналам добавить пару пропорциональных и, к примеру, один пятипозиционный- этого хватит?
Ну если Тинька внутри и у неё есть Аппаратный переключатель, то да. Вообще переключатель мощности нужен, чтоб батарейку пульта экономить и воздух зря не греть. Байчи на 5 -10 км на 100мВт летал (на 5км точно).
Более чем, ведь всё зависит от Ваших потребностей, я вот больше 8 каналов пока не использую, но всегда может понадобится дополнительный канал (камерой повертеть например или режимы дополнительные переключить). Я на коптере летаю.
Вообще автопилоты как правило понимают 8-10 каналов управления (APM 2.6 -8 каналов (в режиме SBUS тоже 8 каналов), NAZE32 с прошивкой Baseflight -тоже только 8 каналов, NAZE32 с прошивкой Cleanflight - 16 каналов по SBUS -но в тонкости ещё не вдавался). На самолётах возможно и больше 10 каналов потребуется.
Сообществу еще интересны настройки под OpenLRSngMicroRx board original reciever ?? Тот приемыш, что Подковка писАл ?
Вроде сложил в кучу - работает ))
Евгений даже очень интересны
Блок кода полностью заменяет одноименный блок для альтернативного Оранжа. Или - сделать его 4-м, проверено, и так и так работает. Не забываем переопределить переменную RX_BOARD_TYPE в строке №24.
Допустил отсебятину - сигналы SBUS вывел на те ноги, что уже были на готовой плате. Плата - МИКРО-приемника, но с мини тоже должна работать (не проверял, т.к. нету). Ссыль на Гитхаб приводил Подковка чуть выше. Смотрел по приборам - получается поскольку PWM, PPM и SBUS попами возле Servo-1 не толкаются, SBUS идет всегда.
//
// OpenLRSngMicroRx board original reciever
#if (RX_BOARD_TYPE==3)
//## RFM22B Pinouts
#define SDO_pin 12
#define SDI_pin 11
#define SCLK_pin 13
#define IRQ_pin 2
#define nSel_pin 4
#define IRQ_interrupt 0
#define nIRQ_1 (PIND & 0x04)==0x04 //D2 // 0000 0100; D; ---- -2–; D2 !!
#define nIRQ_0 (PIND & 0x04)==0x00 //D2 // 0000 0000; 7654 3210
#define nSEL_on PORTD |= (1<<4) //D4 // 0001 0000; D; —4 ----; D4 !!
#define nSEL_off PORTD &= 0xEF //D4 // 1110 1111; D; 7654 3210; D4
#define SCK_on PORTB |= (1<<5) //B5 // 0010 0000; B; --5- ----; B5 !!
#define SCK_off PORTB &= 0xDF //B5 // 1101 1111;
#define SDI_on PORTB |= (1<<3) //B3 // 0000 1000; B; ---- 3—; B3
#define SDI_off PORTB &= 0xF7 //B3 // 1111 0111;
#define SDO_1 (PINB & 0x10) == 0x10 //B4 // 0001 0000; B; —4 ----; B4
#define SDO_0 (PINB & 0x10) == 0x00 //B4
// SAW filtre support
#define SAW_FILT_ON PORTC |= _BV(7);
#define SAW_FILT_OFF PORTC &= ~_BV(7);
//#### Other interface pinouts ###
#define RED_LED_pin A3
#define GREEN_LED_pin A2
#define Red_LED_ON PORTC |= _BV(3);
#define Red_LED_OFF PORTC &= ~_BV(3);
#define Green_LED_ON PORTC |= _BV(2);
#define Green_LED_OFF PORTC &= ~_BV(2);
#define RSSI_MODE 1 //0=disable 1=enable
#define RSSI_OUT 3 // D3
// Из-за готового на плате разъема, мне надо вывод Серво1 иметь на ноге 12, следовательно, на D8 (В0)
#define Servo1_OUT 8 //Servo1
#define Servo2_OUT 7 //Servo2
#define Servo3_OUT 6 //Servo3
#define Servo4_OUT 5 //Servo4
#define Servo5_OUT 9 //Servo5
#define Servo6_OUT 10 //Servo6
#define Servo7_OUT A0 //Servo7
#define Servo8_OUT A1 //Servo8
#define Servo9_OUT A4 //Servo9
#define Servo10_OUT A5 //Servo10
// #define Servo11_OUT A2 //Servo11 // 2G only
// #define Servo12_OUT A1 //Servo12 // 2G only
// SumPPM выведем как в оригинале - на вывод серво_1, т.е. на ногу 12, следовательно, на D8 (В0)
#define Serial_PPM_OUT_HIGH PORTB |= _BV(0) //Serial PPM out on Servo 1
#define Serial_PPM_OUT_LOW PORTB &= ~_BV(0) //Serial PPM out on Servo 1
// А вот S-BUS выведем как надо нам - на вывод Тх платы и + к томуже, под разведенный на плате транзисторний инвертор !!
// Нога 31 Меги, следовательно на ногу ТХО, на порт PORT D1
#define SBUS_OUT_HIGH PORTD &= ~_BV(1) // SBUS out
#define SBUS_OUT_LOW PORTD |= _BV(1) // SBUS out
#define SBUS_OUT_BIT _BV(1) // SBUS out bit
#define SBUS_OUT_PORT 0 // SBUS out port
volatile uint8_t *portAddr[] = { // адреса портов, поканально (до 10-ти)
&PORTB, &PORTD, &PORTD, &PORTD, &PORTB, &PORTB, &PORTC, &PORTC, &PORTC, &PORTC
};
unsigned char portMask[] = { // маски портов поканально
_BV(0), _BV(7), _BV(6), _BV(5), _BV(1), _BV(2), _BV(0), _BV(1), _BV(4), _BV(5)
};
unsigned char diskrMask[8] = { // маски дискр. выходов
_BV(0), _BV(7), _BV(6), _BV(5), _BV(1), _BV(2), _BV(0), _BV(1)
};
unsigned char soundOut[] = { 4 , 3 }; // номера каналов, куда выводится звук для D5, D6, D11
unsigned char offOutsMask[3] = { 0xF8, 0xCC, 0x1F }; // маски портов, при сбросе всех импульсов в 0
#endif
Евгений, а у меня мини не поднимается. Схемы одинаковы … не пойму в чем дело. Приборов проверить что на выходе нет. При подключении к APM по PPM - тишина. SBUS не проверял, надо энкодер перешивать. RSSI работает. В терминале все ок.
У меня на платке были закорочены ноги Меги №№ 12 и 13, а т.к. РРМ снимается с 12й, а 13я управляет ПАВ-фильтром, 13я нога подмешивала 3,3 вольта и убивала сигнал. Отрезал перемычку - и все заработало.
Приборов проверить что на выходе нет.
Если мы сейчас про PPM и PWM выходы, то крайне рекомендую через звуковушку смотреть или софтверным осциллографом или сразу PPM Thermometr. В звуковуху я прям на прямую сигнал пускал, но вроде как рекомендуют через резистор 😃
АбсолютноСовершенно согласен с Андреем - осциллограф из компа делается за 15 минут, для низкочастотных сигналов 3-5 вольт амплитудой - самое “То”.
Андрей, шнурок для софт-осциллографа на даче забыл.
Евгений, порезал между 12 и 13 ногами меги - PPM на выходе поднялся, FS не работает. SBUS на гребенке тоже не работает.
Допустил отсебятину - сигналы SBUS вывел на те ноги, что уже были на готовой плате
На плате микро-приемника он выведен на боковой разъем - туда и запустил его. Понравилось, что он усилен транзистором. Вечером попробую пересобрать.
Нога 31 Меги, следовательно на ногу ТХО, на порт PORT D1
- тут посмотри его (
Дык и на mini тоже через усиление выведен. Схемы абсолютно одинаковые.
что он усилен транзистором
Это типа сигнал инвертирован?
Нуда. Я на SBUS особо не морочился - мой АП только РРМ принимает.
А SBUS с Байчи очень крут! NAZE32 c Clenflight и с Байчи, просто неповторим. Ещё со СмолТимом и Питлабом!
Тада, милисек 30-40 выигрывает и точность = - 2 перекодировки…
Должно быть ещё быстрее, Turnigy c ER9x сейчас напрямую может SBUS гнать (правда только в режиме 14мс). Я на АПМ 2.8 летал с Сибасом, как то в не понял есть задержка- нет её, рулится номрально. Надо бы PPM попробовать и Опенлрс на 19600 и сравнить с Сибасом Байчи. Тигромух вообще говорил, что на Опенлрс задержка ощутима.
Извиняюсь, если уже было. а для данной прошивки обязательно бутлоадер менять в приемнике? приемник самодельный по схеме оранжа
Бутлоадер не в приемнике, а в МК. Если МК уже с бутлоадером, то по идее достаточно пользоваться тем софтом, который работает с данным бутлоадером. Я не сильно спец, но бывают Ардуиновский бутлоадер и как минимум Мегалоадер. Соответственно и софт для заливки прошивки разный.
Кстати кто какие фъюзы заливает? по умолчанию или что то другое?
а для данной прошивки обязательно бутлоадер менять в приемнике?
Какой бут стоит?
Какой то ведь залили?
Для того чтоб шить сразу из среды Ардуино- оптимально optiboot. Занимает минимально места и шустрый.
Для того чтоб можно было залить и экспертовскую прогу- мегалоад. Но лить придется из мегалоадера.
Кстати кто какие фъюзы заливает? по умолчанию или что то другое?
FF,DE,05
L H E
ну я ардуиной залил, приемник запускается, к терминалу подключается, но в меню войти не получается. начинает бежать статистика и не дает возможности нажать кнопку “M”