mirror of
https://github.com/pascallanger/DIY-Multiprotocol-TX-Module.git
synced 2025-02-04 20:48:12 +00:00
Add PPM protocol list definition in _MyConfig.h
This commit is contained in:
parent
aca23b8bca
commit
103acb8294
@ -19,7 +19,7 @@
|
|||||||
#define VERSION_MAJOR 1
|
#define VERSION_MAJOR 1
|
||||||
#define VERSION_MINOR 2
|
#define VERSION_MINOR 2
|
||||||
#define VERSION_REVISION 1
|
#define VERSION_REVISION 1
|
||||||
#define VERSION_PATCH_LEVEL 22
|
#define VERSION_PATCH_LEVEL 23
|
||||||
|
|
||||||
//******************
|
//******************
|
||||||
// Protocols
|
// Protocols
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
#include <avr/pgmspace.h>
|
#include <avr/pgmspace.h>
|
||||||
|
|
||||||
//#define DEBUG_PIN // Use pin TX for AVR and SPI_CS for STM32 => DEBUG_PIN_on, DEBUG_PIN_off, DEBUG_PIN_toggle
|
//#define DEBUG_PIN // Use pin TX for AVR and SPI_CS for STM32 => DEBUG_PIN_on, DEBUG_PIN_off, DEBUG_PIN_toggle
|
||||||
//#define DEBUG_SERIAL // Only for STM32_BOARD compiled with Upload method "Serial"->usart1, "STM32duino bootloader"->USB serial
|
//#define DEBUG_SERIAL // Only for STM32_BOARD, compiled with Upload method "Serial"->usart1, "STM32duino bootloader"->USB serial
|
||||||
|
|
||||||
#ifdef __arm__ // Let's automatically select the board if arm is selected
|
#ifdef __arm__ // Let's automatically select the board if arm is selected
|
||||||
#define STM32_BOARD
|
#define STM32_BOARD
|
||||||
@ -405,11 +405,16 @@ void setup()
|
|||||||
//Protocol and interrupts initialization
|
//Protocol and interrupts initialization
|
||||||
if(mode_select != MODE_SERIAL)
|
if(mode_select != MODE_SERIAL)
|
||||||
{ // PPM
|
{ // PPM
|
||||||
uint8_t line=bank*14+mode_select-1;
|
#ifndef MY_PPM_PROT
|
||||||
protocol = PPM_prot[line].protocol;
|
const PPM_Parameters *PPM_prot_line=&PPM_prot[bank*14+mode_select-1];
|
||||||
|
#else
|
||||||
|
const PPM_Parameters *PPM_prot_line=&My_PPM_prot[bank*14+mode_select-1];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
protocol = PPM_prot_line->protocol;
|
||||||
cur_protocol[1] = protocol;
|
cur_protocol[1] = protocol;
|
||||||
sub_protocol = PPM_prot[line].sub_proto;
|
sub_protocol = PPM_prot_line->sub_proto;
|
||||||
RX_num = PPM_prot[line].rx_num;
|
RX_num = PPM_prot_line->rx_num;
|
||||||
|
|
||||||
//Forced frequency tuning values for CC2500 protocols
|
//Forced frequency tuning values for CC2500 protocols
|
||||||
#if defined(FORCE_FRSKYD_TUNING) && defined(FRSKYD_CC2500_INO)
|
#if defined(FORCE_FRSKYD_TUNING) && defined(FRSKYD_CC2500_INO)
|
||||||
@ -442,15 +447,14 @@ void setup()
|
|||||||
option = FORCE_HITEC_TUNING; // Use config-defined tuning value for HITEC
|
option = FORCE_HITEC_TUNING; // Use config-defined tuning value for HITEC
|
||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
option = PPM_prot[line].option; // Use radio-defined option value
|
option = PPM_prot_line->option; // Use radio-defined option value
|
||||||
|
|
||||||
if(PPM_prot[line].power) POWER_FLAG_on;
|
if(PPM_prot_line->power) POWER_FLAG_on;
|
||||||
if(PPM_prot[line].autobind)
|
if(PPM_prot_line->autobind)
|
||||||
{
|
{
|
||||||
AUTOBIND_FLAG_on;
|
AUTOBIND_FLAG_on;
|
||||||
BIND_IN_PROGRESS; // Force a bind at protocol startup
|
BIND_IN_PROGRESS; // Force a bind at protocol startup
|
||||||
}
|
}
|
||||||
line++;
|
|
||||||
|
|
||||||
protocol_init();
|
protocol_init();
|
||||||
|
|
||||||
@ -652,7 +656,7 @@ static void update_channels_aux(void)
|
|||||||
{
|
{
|
||||||
//Reverse channels direction
|
//Reverse channels direction
|
||||||
#ifdef REVERSE_AILERON
|
#ifdef REVERSE_AILERON
|
||||||
reverse_channel(AILREON);
|
reverse_channel(AILERON);
|
||||||
#endif
|
#endif
|
||||||
#ifdef REVERSE_ELEVATOR
|
#ifdef REVERSE_ELEVATOR
|
||||||
reverse_channel(ELEVATOR);
|
reverse_channel(ELEVATOR);
|
||||||
|
@ -358,11 +358,11 @@ const PPM_Parameters PPM_prot[14*NBR_BANKS]= {
|
|||||||
/* 6 */ {PROTO_AFHDS2A, PWM_IBUS , 2 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 4
|
/* 6 */ {PROTO_AFHDS2A, PWM_IBUS , 2 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 4
|
||||||
/* 7 */ {PROTO_AFHDS2A, PWM_IBUS , 3 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 5
|
/* 7 */ {PROTO_AFHDS2A, PWM_IBUS , 3 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 5
|
||||||
/* 8 */ {PROTO_SFHSS, H107 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 8 */ {PROTO_SFHSS, H107 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 9 */ {PROTO_FRSKYV, 0 , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
/* 9 */ {PROTO_FRSKYV, NONE , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
||||||
/* 10 */ {PROTO_FRSKYD, 0 , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
/* 10 */ {PROTO_FRSKYD, NONE , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
||||||
/* 11 */ {PROTO_FRSKYX, CH_16 , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
/* 11 */ {PROTO_FRSKYX, CH_16 , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
||||||
/* 12 */ {PROTO_FRSKYX, EU_16 , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
/* 12 */ {PROTO_FRSKYX, EU_16 , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
||||||
/* 13 */ {PROTO_DEVO , 0 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 13 */ {PROTO_DEVO , NONE , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 14 */ {PROTO_WK2x01, WK2801 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 14 */ {PROTO_WK2x01, WK2801 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
#endif
|
#endif
|
||||||
#if NBR_BANKS > 1
|
#if NBR_BANKS > 1
|
||||||
@ -381,14 +381,14 @@ const PPM_Parameters PPM_prot[14*NBR_BANKS]= {
|
|||||||
/* 11 */ {PROTO_HUBSAN, H301 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 11 */ {PROTO_HUBSAN, H301 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 12 */ {PROTO_HUBSAN, H501 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 12 */ {PROTO_HUBSAN, H501 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 13 */ {PROTO_HISKY, Hisky , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 13 */ {PROTO_HISKY, Hisky , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 14 */ {PROTO_V2X2 , 0 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 14 */ {PROTO_V2X2 , NONE , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
#endif
|
#endif
|
||||||
#if NBR_BANKS > 2
|
#if NBR_BANKS > 2
|
||||||
//****************************** BANK 3 ******************************
|
//****************************** BANK 3 ******************************
|
||||||
// Switch Protocol Sub protocol RX_Num Power Auto Bind Option
|
// Switch Protocol Sub protocol RX_Num Power Auto Bind Option
|
||||||
/* 1 */ {PROTO_ESKY , 0 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 1 */ {PROTO_ESKY , NONE , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 2 */ {PROTO_ESKY150, 0 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 2 */ {PROTO_ESKY150, NONE , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 3 */ {PROTO_ASSAN, 0 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 3 */ {PROTO_ASSAN, NONE , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 4 */ {PROTO_CORONA, COR_V2 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 4 */ {PROTO_CORONA, COR_V2 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 5 */ {PROTO_SYMAX, SYMAX , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 5 */ {PROTO_SYMAX, SYMAX , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 6 */ {PROTO_KN , WLTOYS , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 6 */ {PROTO_KN , WLTOYS , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
@ -433,7 +433,7 @@ const PPM_Parameters PPM_prot[14*NBR_BANKS]= {
|
|||||||
/* 9 */ {PROTO_Q2X2 , Q282 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 9 */ {PROTO_Q2X2 , Q282 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 10 */ {PROTO_CG023, CG023 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 10 */ {PROTO_CG023, CG023 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 11 */ {PROTO_CG023, YD829 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 11 */ {PROTO_CG023, YD829 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 12 */ {PROTO_FQ777, 0 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 12 */ {PROTO_FQ777, NONE , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 13 */ {PROTO_YD717, YD717 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 13 */ {PROTO_YD717, YD717 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
/* 14 */ {PROTO_MT99XX, MT99 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
/* 14 */ {PROTO_MT99XX, MT99 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
#endif
|
#endif
|
||||||
|
@ -53,7 +53,27 @@
|
|||||||
#define MULTI_TELEMETRY
|
#define MULTI_TELEMETRY
|
||||||
|
|
||||||
#elif defined Module_4
|
#elif defined Module_4
|
||||||
//Example of a module which will be PPM only
|
//Example of a module which will be PPM only with a different protocol table
|
||||||
#undef ENABLE_SERIAL
|
#undef ENABLE_SERIAL
|
||||||
|
#undef NBR_BANKS
|
||||||
|
#define NBR_BANKS 1 // redefine the number of banks
|
||||||
|
#define MY_PPM_PROT // Use the bellow protocol list
|
||||||
|
const PPM_Parameters My_PPM_prot[14*NBR_BANKS]={
|
||||||
|
//****************************** BANK 1 ******************************
|
||||||
|
// Switch Protocol Sub protocol RX_Num Power Auto Bind Option
|
||||||
|
/* 1 */ {PROTO_KN , WLTOYS , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
|
/* 2 */ {PROTO_FLYSKY, Flysky , 0 , P_HIGH , AUTOBIND , 0 },
|
||||||
|
/* 3 */ {PROTO_AFHDS2A, PWM_IBUS , 1 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 1
|
||||||
|
/* 4 */ {PROTO_AFHDS2A, PWM_IBUS , 2 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 2
|
||||||
|
/* 5 */ {PROTO_AFHDS2A, PWM_IBUS , 3 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 3
|
||||||
|
/* 6 */ {PROTO_AFHDS2A, PWM_IBUS , 2 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 4
|
||||||
|
/* 7 */ {PROTO_AFHDS2A, PWM_IBUS , 3 , P_HIGH , NO_AUTOBIND , 0 }, // RX number 5
|
||||||
|
/* 8 */ {PROTO_SFHSS, H107 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
|
/* 9 */ {PROTO_FRSKYV, NONE , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
||||||
|
/* 10 */ {PROTO_FRSKYD, NONE , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
||||||
|
/* 11 */ {PROTO_FRSKYX, CH_16 , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
||||||
|
/* 12 */ {PROTO_FRSKYX, EU_16 , 0 , P_HIGH , NO_AUTOBIND , 40 }, // option=fine freq tuning
|
||||||
|
/* 13 */ {PROTO_DEVO , NONE , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
|
/* 14 */ {PROTO_WK2x01, WK2801 , 0 , P_HIGH , NO_AUTOBIND , 0 },
|
||||||
|
};
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user