diff --git a/Multiprotocol/Multiprotocol.h b/Multiprotocol/Multiprotocol.h index 224d7c1..8d5a31a 100644 --- a/Multiprotocol/Multiprotocol.h +++ b/Multiprotocol/Multiprotocol.h @@ -19,7 +19,7 @@ #define VERSION_MAJOR 1 #define VERSION_MINOR 3 #define VERSION_REVISION 2 -#define VERSION_PATCH_LEVEL 76 +#define VERSION_PATCH_LEVEL 77 #define MODE_SERIAL 0 diff --git a/Multiprotocol/Pelikan_a7105.ino b/Multiprotocol/Pelikan_a7105.ino index 1748c4c..d6ae4a3 100644 --- a/Multiprotocol/Pelikan_a7105.ino +++ b/Multiprotocol/Pelikan_a7105.ino @@ -20,11 +20,11 @@ //#define PELIKAN_FORCE_ID //#define PELIKAN_LITE_FORCE_ID -#define PELIKAN_LITE_FORCE_HOP +#define PELIKAN_LITE_FORCE_HOP // hop sequence creation is unknown //#define PELIKAN_SCX24_FORCE_ID -#define PELIKAN_SCX24_FORCE_HOP +#define PELIKAN_SCX24_FORCE_HOP // hop sequence creation is unknown -#define PELIKAN_BIND_COUNT 400 +#define PELIKAN_BIND_COUNT 400 // 3sec #define PELIKAN_BIND_RF 0x3C #define PELIKAN_NUM_RF_CHAN 0x1D #define PELIKAN_PACKET_PERIOD 7980 @@ -291,7 +291,8 @@ const uint8_t PROGMEM pelikan_lite_hopp[][PELIKAN_NUM_RF_CHAN] = { #endif #ifdef PELIKAN_SCX24_FORCE_HOP const uint8_t PROGMEM pelikan_scx24_hopp[][PELIKAN_NUM_RF_CHAN] = { - { 0x1E,0x32,0x46,0x5A,0x44,0x58,0x2E,0x42,0x56,0x2C,0x40,0x54,0x2A,0x3E,0x52,0x28,0x3C,0x50,0x26,0x3A,0x4E,0x24,0x38,0x4C,0x22,0x36,0x4A,0x20,0x1A } + { 0x1E,0x32,0x46,0x5A,0x44,0x58,0x2E,0x42,0x56,0x2C,0x40,0x54,0x2A,0x3E,0x52,0x28,0x3C,0x50,0x26,0x3A,0x4E,0x24,0x38,0x4C,0x22,0x36,0x4A,0x20,0x1A }, + { 0x2C,0x44,0x1E,0x52,0x56,0x22,0x3A,0x3E,0x34,0x4C,0x26,0x5A,0x50,0x2A,0x42,0x38,0x2E,0x46,0x20,0x54,0x4A,0x24,0x3C,0x32,0x28,0x40,0x58,0x1B,0x4E } }; #endif @@ -301,6 +302,8 @@ void PELIKAN_init() if(IS_BIND_IN_PROGRESS || sub_protocol==PELIKAN_LITE) A7105_WriteReg(A7105_03_FIFOI,0x10); + bind_counter = PELIKAN_BIND_COUNT; + if(sub_protocol==PELIKAN_PRO) { pelikan_init_hop(); @@ -316,47 +319,64 @@ void PELIKAN_init() #endif packet_period = PELIKAN_PACKET_PERIOD; } - else if(sub_protocol==PELIKAN_LITE) + else { - #if defined(PELIKAN_LITE_FORCE_ID) - // ID - rx_tx_addr[2]=0x60; - rx_tx_addr[3]=0x18; - #endif - #if defined(PELIKAN_LITE_FORCE_HOP) - // Hop frequency table - rx_tx_addr[0]=0x04; // hopping freq - rx_tx_addr[1]=0x63; // hopping freq - for(uint8_t i=0;i>= 1; + if(sub_protocol==PELIKAN_LITE) + { + #if defined(PELIKAN_LITE_FORCE_HOP) + // Hop frequency table + rx_tx_addr[0]=0x04; // hopping freq + rx_tx_addr[1]=0x63; // hopping freq + for(uint8_t i=0;i