diff --git a/Lua_scripts/MultiChan.txt b/Lua_scripts/MultiChan.txt index 156e19f..43210e7 100644 --- a/Lua_scripts/MultiChan.txt +++ b/Lua_scripts/MultiChan.txt @@ -65,11 +65,13 @@ 15,2,FrSkyX,D16_LBT,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 15,3,FrSkyX,D16_8CH_LBT,0,CH5,CH6,CH7,CH8 15,4,FrSkyX,D16Cloned,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 +15,5,FrSkyX,D16Cloned_8CH,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 64,0,FrSkyX2,D16_FCC,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 64,1,FrSkyX2,D16_8CH_FCC,0,CH5,CH6,CH7,CH8 64,2,FrSkyX2,D16_LBT,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 64,3,FrSkyX2,D16_8CH_LBT,1,CH5,CH6,CH7,CH8 64,4,FrSkyX2,D16Cloned,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 +64,5,FrSkyX2,D16Cloned_8CH,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 65,0,FrSkyR9,R9_915,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 65,1,FrSkyR9,R9_868,0,CH5,CH6,CH7,CH8,CH9,CH10,CH11,CH12,CH13,CH14,CH15,CH16 65,2,FrSkyR9,R9_915_8CH,0,CH5,CH6,CH7,CH8 diff --git a/Multiprotocol/FrSkyDVX_common.ino b/Multiprotocol/FrSkyDVX_common.ino index 998583b..468ebb8 100644 --- a/Multiprotocol/FrSkyDVX_common.ino +++ b/Multiprotocol/FrSkyDVX_common.ino @@ -185,11 +185,18 @@ void Frsky_init_clone(void) else if(protocol==PROTO_FRSKYX2) temp=FRSKYX2_CLONE_EEPROM_OFFSET; FrSkyFormat=eeprom_read_byte((EE_ADDR)temp++); + /* FRSKY_RX_D8 =0, + FRSKY_RX_D16FCC =1, + FRSKY_RX_D16LBT =2, + FRSKY_RX_D16v2FCC =3, + FRSKY_RX_D16v2LBT =4,*/ if(protocol==PROTO_FRSKYX) FrSkyFormat >>= 1; else FrSkyFormat >>= 2; FrSkyFormat <<= 1; //FCC_16/LBT_16 + if(sub_protocol==XCLONE_8) + FrSkyFormat++; //FCC_8/LBT_8 rx_tx_addr[3] = eeprom_read_byte((EE_ADDR)temp++); rx_tx_addr[2] = eeprom_read_byte((EE_ADDR)temp++); rx_tx_addr[1] = eeprom_read_byte((EE_ADDR)temp++); diff --git a/Multiprotocol/FrSkyX_cc2500.ino b/Multiprotocol/FrSkyX_cc2500.ino index 2995ff0..2ddfb0f 100644 --- a/Multiprotocol/FrSkyX_cc2500.ino +++ b/Multiprotocol/FrSkyX_cc2500.ino @@ -250,7 +250,7 @@ uint16_t initFrSkyX() set_rx_tx_addr(MProtocol_id_master); FrSkyFormat = sub_protocol; - if (sub_protocol==XCLONE) + if (sub_protocol==XCLONE_16||sub_protocol==XCLONE_8) Frsky_init_clone(); else if(protocol==PROTO_FRSKYX) { diff --git a/Multiprotocol/Multi.txt b/Multiprotocol/Multi.txt index 7424f37..6139abe 100644 --- a/Multiprotocol/Multi.txt +++ b/Multiprotocol/Multi.txt @@ -12,7 +12,7 @@ 12,CX10,GREEN,BLUE,DM007,---,J3015_1,J3015_2,MK33041 13,CG023,CG023,YD829 14,Bayang,Bayang,H8S3D,X16_AH,IRDRONE,DHD_D4,QX100 -15,FrskyX,CH_16,CH_8,EU_16,EU_8,Cloned +15,FrskyX,CH_16,CH_8,EU_16,EU_8,Cloned,Clon_8 16,ESky,Std,ET4 17,MT99xx,MT,H7,YZ,LS,FY805 18,MJXq,WLH08,X600,X800,H26D,E010,H26WH,PHOENIX diff --git a/Multiprotocol/Multi_Names.ino b/Multiprotocol/Multi_Names.ino index a3b9919..f296bdc 100644 --- a/Multiprotocol/Multi_Names.ino +++ b/Multiprotocol/Multi_Names.ino @@ -93,7 +93,7 @@ const char STR_FAKE[] ="Fake"; const char STR_SUBTYPE_FLYSKY[] = "\x04""Std\0""V9x9""V6x6""V912""CX20"; const char STR_SUBTYPE_HUBSAN[] = "\x04""H107""H301""H501"; const char STR_SUBTYPE_FRSKYD[] = "\x06""D8\0 ""Cloned"; -const char STR_SUBTYPE_FRSKYX[] = "\x07""D16\0 ""D16 8ch""LBT(EU)""LBT 8ch""Cloned\0"; +const char STR_SUBTYPE_FRSKYX[] = "\x07""D16\0 ""D16 8ch""LBT(EU)""LBT 8ch""Cloned\0""Clo 8ch"; const char STR_SUBTYPE_HISKY[] = "\x05""Std\0 ""HK310"; const char STR_SUBTYPE_V2X2[] = "\x06""Std\0 ""JXD506""MR101\0"; const char STR_SUBTYPE_DSM[] = "\x04""2 1F""2 2F""X 1F""X 2F""Auto"; @@ -239,8 +239,8 @@ const mm_protocol_definition multi_protocols[] = { {PROTO_FRSKYV, STR_FRSKYV, 0, NO_SUBTYPE, OPTION_RFTUNE }, #endif #if defined(FRSKYX_CC2500_INO) - {PROTO_FRSKYX, STR_FRSKYX, 5, STR_SUBTYPE_FRSKYX, OPTION_RFTUNE }, - {PROTO_FRSKYX2, STR_FRSKYX2, 5, STR_SUBTYPE_FRSKYX, OPTION_RFTUNE }, + {PROTO_FRSKYX, STR_FRSKYX, 6, STR_SUBTYPE_FRSKYX, OPTION_RFTUNE }, + {PROTO_FRSKYX2, STR_FRSKYX2, 6, STR_SUBTYPE_FRSKYX, OPTION_RFTUNE }, #endif //OpenTX 2.3.x issue: DO NOT CHANGE ORDER above #if defined(FRSKYL_CC2500_INO) diff --git a/Multiprotocol/Multiprotocol.h b/Multiprotocol/Multiprotocol.h index b654374..581eb4a 100644 --- a/Multiprotocol/Multiprotocol.h +++ b/Multiprotocol/Multiprotocol.h @@ -19,7 +19,7 @@ #define VERSION_MAJOR 1 #define VERSION_MINOR 3 #define VERSION_REVISION 1 -#define VERSION_PATCH_LEVEL 41 +#define VERSION_PATCH_LEVEL 42 //****************** // Protocols @@ -228,11 +228,12 @@ enum FRSKYD }; enum FRSKYX { - CH_16 = 0, - CH_8 = 1, - EU_16 = 2, - EU_8 = 3, - XCLONE = 4, + CH_16 = 0, + CH_8 = 1, + EU_16 = 2, + EU_8 = 3, + XCLONE_16 = 4, + XCLONE_8 = 5, }; enum HONTAI { diff --git a/Multiprotocol/_Config.h b/Multiprotocol/_Config.h index 38f152c..0cc829d 100644 --- a/Multiprotocol/_Config.h +++ b/Multiprotocol/_Config.h @@ -606,7 +606,8 @@ const PPM_Parameters PPM_prot[14*NBR_BANKS]= { CH_8 EU_16 EU_8 - XCLONE + XCLONE_16 + XCLONE_8 PROTO_FRSKYX2 CH_16 CH_8 diff --git a/Protocols_Details.md b/Protocols_Details.md index bd8336f..ee3c5e0 100644 --- a/Protocols_Details.md +++ b/Protocols_Details.md @@ -93,8 +93,8 @@ CFlie|38|CFlie||||||||NRF24L01| [FrskyL](Protocols_Details.md#FRSKYL---67)|67|LR12|LR12 6CH|||||||CC2500| [FrskyR9](Protocols_Details.md#FRSKYR9---65)|65|FrskyR9|R9_915|R9_868||||||SX1276| [FrskyV](Protocols_Details.md#FRSKYV---25)|25|FrskyV||||||||CC2500| -[FrskyX](Protocols_Details.md#FRSKYX---15)|15|CH_16|CH_8|EU_16|EU_8|Cloned||||CC2500| -[FrskyX2](Protocols_Details.md#FRSKYX2---64)|64|CH_16|CH_8|EU_16|EU_8|Cloned||||CC2500| +[FrskyX](Protocols_Details.md#FRSKYX---15)|15|CH_16|CH_8|EU_16|EU_8|Cloned|Cloned_8|||CC2500| +[FrskyX2](Protocols_Details.md#FRSKYX2---64)|64|CH_16|CH_8|EU_16|EU_8|Cloned|Cloned_8|||CC2500| [Frsky_RX](Protocols_Details.md#FRSKY_RX---55)|55|RX|CloneTX|||||||CC2500| [FX816](Protocols_Details.md#FX816---58)|28|FX816|P38|||||||NRF24L01| [FY326](Protocols_Details.md#FY326---20)|20|FY326|FY319|||||||NRF24L01| @@ -440,6 +440,13 @@ CH1|CH2|CH3|CH4|CH5|CH6|CH7|CH8 ### Sub_protocol Cloned - *4* Use the identifier learnt from another FrSky radio when binding with the FrSkyRX/CloneTX mode. +16 channels. + +### Sub_protocol Cloned_8 - *5* +Use the identifier learnt from another FrSky radio when binding with the FrSkyRX/CloneTX mode. + +8 channels. + ## FRSKYX2 - *64* Same as [FrskyX](Protocols_Details.md#FRSKYX---15) but for D16 v2.1.0 FCC/LBT.