From b50027150e588b54ef7b0324b1b5936a28dd54a3 Mon Sep 17 00:00:00 2001 From: pascallanger Date: Wed, 9 Jan 2019 13:49:45 +0100 Subject: [PATCH 1/7] xn297L @250kbps issues --- Protocols_Details.md | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/Protocols_Details.md b/Protocols_Details.md index 6654cc4..836dce6 100644 --- a/Protocols_Details.md +++ b/Protocols_Details.md @@ -671,6 +671,8 @@ A|E|T|R|FLIP|LED|CAMERA1|CAMERA2|HEADLESS|RTH|RATE_LOW ## E01X - *45* Autobind protocol +This protocol has been reported to not work properly due to the emulation of the HS6200 RF component using the NRF24L01. The option value is used to adjust the timing, try every values between -127 and +127. If it works please report which value you've used. + ### Sub_protocol E012 - *0* Models: Eachine E012 @@ -718,6 +720,8 @@ A|E|T|R|FLIP|RTH|HEADLESS|EXPERT ## GD00X - *47* Model: GD005 C-17 Transport and GD006 DA62 +If the model does not respond well to inputs or hard to bind, you can try to set Power to Low. But this protocol is known to be problematic because it's using the xn297L emulation with a transmission speed of 250kbps therefore it doesn't work very well with every modules, this is an hardware issue with the accuracy of the components used and nothing we can do about it in the firmware. + CH1|CH2|CH3|CH4|CH5|CH6 ---|---|---|---|---|--- A||T||TRIM|LED @@ -823,7 +827,8 @@ Only 3 TX IDs available, change RX_Num value 0..2 to cycle through them ### Sub_protocol E010 - *4* 15 TX IDs available, change RX_Num value 0..14 to cycle through them -If the E010 does not respond well to inputs or hard to bind, set Power to Low. +If the model does not respond well to inputs or hard to bind, you can try to set Power to Low. But this protocol is known to be problematic because it's using the xn297L emulation with a transmission speed of 250kbps therefore it doesn't work very well with every modules, this is an hardware issue with the accuracy of the components used and nothing we can do about it in the firmware. + ### Sub_protocol H26WH - *5* CH6| ---| @@ -845,6 +850,9 @@ Models: Eachine H7, Cheerson CX023 ### Sub_protocol YZ - *2* Model: Yi Zhan i6S Only one model can be flown at the same time since the ID is hardcoded. + +If the model does not respond well to inputs or hard to bind, you can try to set Power to Low. But this protocol is known to be problematic because it's using the xn297L emulation with a transmission speed of 250kbps therefore it doesn't work very well with every modules, this is an hardware issue with the accuracy of the components used and nothing we can do about it in the firmware. + ### Sub_protocol LS - *3* Models: LS114, 124, 215 @@ -898,7 +906,7 @@ CH1|CH2|CH3|CH4 A|E|T|R ### Sub_protocol Q303 - *0* -Q303 warning: this sub_protocol is known to not work at all/properly with 4in1 RF modules. +If the model does not respond well to inputs or hard to bind, you can try to set Power to Low. But this protocol is known to be problematic because it's using the xn297L emulation with a transmission speed of 250kbps therefore it doesn't work very well with every modules, this is an hardware issue with the accuracy of the components used and nothing we can do about it in the firmware. CH5|CH6|CH7|CH8|CH9|CH10|CH11 ---|---|---|---|---|---|--- @@ -1042,7 +1050,9 @@ CH10|CH11|CH12 Start/Stop|EMERGENCY|CAMERA_UP/DN ## V911S - *46* -Model: WLtoys V911S +Models: WLtoys V911S, XK A110 + +If the model does not respond well to inputs or hard to bind, you can try to set Power to Low. But this protocol is known to be problematic because it's using the xn297L emulation with a transmission speed of 250kbps therefore it doesn't work very well with every modules, this is an hardware issue with the accuracy of the components used and nothing we can do about it in the firmware. CH1|CH2|CH3|CH4|CH5 ---|---|---|---|--- From 15dfe8ceadda5eb6e6e86cd87b34981b32fbac91 Mon Sep 17 00:00:00 2001 From: Pascal Langer Date: Wed, 9 Jan 2019 16:56:53 +0100 Subject: [PATCH 2/7] Fix E01X hang up when option=0 --- Multiprotocol/GD00X_nrf24l01.ino | 4 ++-- Multiprotocol/Multiprotocol.h | 2 +- Multiprotocol/NRF24l01_SPI.ino | 2 +- Multiprotocol/V911S_nrf24l01.ino | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Multiprotocol/GD00X_nrf24l01.ino b/Multiprotocol/GD00X_nrf24l01.ino index 7d2a955..38dec63 100644 --- a/Multiprotocol/GD00X_nrf24l01.ino +++ b/Multiprotocol/GD00X_nrf24l01.ino @@ -43,7 +43,7 @@ static void __attribute__((unused)) GD00X_send_packet() channel=convert_channel_ppm(CH5); // TRIM packet[9 ] = channel; packet[10] = channel>>8; - packet[11] = GD00X_FLAG_DR // Force high rate + packet[11] = GD00X_FLAG_DR // Force high rate | GET_FLAG(CH6_SW, GD00X_FLAG_LIGHT); packet[12] = 0x00; packet[13] = 0x00; @@ -54,7 +54,7 @@ static void __attribute__((unused)) GD00X_send_packet() if(IS_BIND_DONE) { NRF24L01_WriteReg(NRF24L01_05_RF_CH, hopping_frequency[hopping_frequency_no++]); - hopping_frequency_no &= 3; // 4 RF channels + hopping_frequency_no &= 3; // 4 RF channels } NRF24L01_WriteReg(NRF24L01_07_STATUS, 0x70); diff --git a/Multiprotocol/Multiprotocol.h b/Multiprotocol/Multiprotocol.h index 3f42eec..dc7546e 100644 --- a/Multiprotocol/Multiprotocol.h +++ b/Multiprotocol/Multiprotocol.h @@ -19,7 +19,7 @@ #define VERSION_MAJOR 1 #define VERSION_MINOR 2 #define VERSION_REVISION 1 -#define VERSION_PATCH_LEVEL 23 +#define VERSION_PATCH_LEVEL 25 //****************** // Protocols diff --git a/Multiprotocol/NRF24l01_SPI.ino b/Multiprotocol/NRF24l01_SPI.ino index 40cb67e..0e3d12d 100644 --- a/Multiprotocol/NRF24l01_SPI.ino +++ b/Multiprotocol/NRF24l01_SPI.ino @@ -618,7 +618,7 @@ void HS6200_WritePayload(uint8_t* msg, uint8_t len) } NRF24L01_WritePayload(payload, pos); - delayMicroseconds(option); + delayMicroseconds(option+20); NRF24L01_WritePayload(payload, pos); } // diff --git a/Multiprotocol/V911S_nrf24l01.ino b/Multiprotocol/V911S_nrf24l01.ino index cda76aa..8e5c4a3 100644 --- a/Multiprotocol/V911S_nrf24l01.ino +++ b/Multiprotocol/V911S_nrf24l01.ino @@ -59,7 +59,7 @@ static void __attribute__((unused)) V911S_send_packet(uint8_t bind) packet[ 0]=(rf_ch_num<<3)|channel; packet[ 1]=V911S_FLAG_EXPERT; // short press on left button packet[ 2]=GET_FLAG(CH5_SW,V911S_FLAG_CALIB); // long press on right button - memset(packet+3,0x00,14); + memset(packet+3, 0x00, V911S_PACKET_SIZE - 3); //packet[3..6]=trims TAER signed uint16_t ch=convert_channel_16b_limit(THROTTLE ,0,0x7FF); packet[ 7] = ch; From 869a01b57f74c1617ce5f2892250e2ed5de38f41 Mon Sep 17 00:00:00 2001 From: pascallanger Date: Mon, 18 Feb 2019 09:44:57 +0100 Subject: [PATCH 3/7] Update Compiling_STM32.md --- docs/Compiling_STM32.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Compiling_STM32.md b/docs/Compiling_STM32.md index de56afd..3a6c2f5 100644 --- a/docs/Compiling_STM32.md +++ b/docs/Compiling_STM32.md @@ -192,7 +192,7 @@ In order for the module to be correctly identified it is necessary and only once ##### Windows XP or older 1. Download and install the legacy Windows XP drivers from [here](https://github.com/rogerclarkmelbourne/Arduino_STM32/tree/master/drivers/win/win_xp_legacy) -**NOTE:** If you have installed the drivers and your module is not detected as a Maple device it most likely does not have a USB bootloader installed. Ready-made modules from Banggood **do not** come with a USB bootloader installed. You will need to follow the procedure to [Burn a USB bootloader](#burn-the-bootloader) before you can upload firmware. +**NOTE:** If you have installed the drivers and your module is not detected as a Maple device it most likely does not have a USB bootloader installed. Ready-made modules from Banggood **do not** come with a USB bootloader installed. You will need to follow the procedure to [Burn a USB bootloader](#upload-via-serial-inc-bootloader-ftdi) before you can upload firmware. ##### Mac OS X Uploading via USB requires the [libusb library](https://libusb.info/) to be installed. The easiest way to install the library is using the [Homebrew package manager for macOS](https://brew.sh/) by executing the two lines given below in a Terminal. From 536d7f6124008ac5f5d433fb6fc6436863a407f9 Mon Sep 17 00:00:00 2001 From: Pascal Langer Date: Thu, 28 Feb 2019 21:11:05 +0100 Subject: [PATCH 4/7] E016H subprotocol addition to E01X Protocol E01X (45) Subprotocol E016H (2) Channels: CH5=STOP CH6=FLIP CH8=HEADLESS CH9=RTH --- Multiprotocol/E01X_nrf24l01.ino | 140 ++++++++++++++++++++++++++------ Multiprotocol/Multi.txt | 2 +- Multiprotocol/Multiprotocol.h | 4 +- Multiprotocol/_Config.h | 1 + 4 files changed, 122 insertions(+), 25 deletions(-) diff --git a/Multiprotocol/E01X_nrf24l01.ino b/Multiprotocol/E01X_nrf24l01.ino index ba348ca..d104269 100644 --- a/Multiprotocol/E01X_nrf24l01.ino +++ b/Multiprotocol/E01X_nrf24l01.ino @@ -33,31 +33,47 @@ #define E015_PACKET_SIZE 10 #define E015_BIND_PACKET_SIZE 9 +#define E016H_PACKET_PERIOD 4080 +#define E016H_PACKET_SIZE 10 +#define E016H_BIND_CHANNEL 80 +#define E016H_NUM_CHANNELS 4 + //Channels -#define E01X_ARM_SW CH5_SW -#define E01X_FLIP_SW CH6_SW -#define E01X_LED_SW CH7_SW -#define E01X_HEADLESS_SW CH8_SW -#define E01X_RTH_SW CH9_SW +#define E01X_ARM_SW CH5_SW +#define E016H_STOP_SW CH5_SW +#define E01X_FLIP_SW CH6_SW +#define E01X_LED_SW CH7_SW +#define E01X_HEADLESS_SW CH8_SW +#define E01X_RTH_SW CH9_SW // E012 flags packet[1] -#define E012_FLAG_FLIP 0x40 -#define E012_FLAG_HEADLESS 0x10 -#define E012_FLAG_RTH 0x04 +#define E012_FLAG_FLIP 0x40 +#define E012_FLAG_HEADLESS 0x10 +#define E012_FLAG_RTH 0x04 // E012 flags packet[7] -#define E012_FLAG_EXPERT 0x02 +#define E012_FLAG_EXPERT 0x02 // E015 flags packet[6] -#define E015_FLAG_DISARM 0x80 -#define E015_FLAG_ARM 0x40 +#define E015_FLAG_DISARM 0x80 +#define E015_FLAG_ARM 0x40 // E015 flags packet[7] -#define E015_FLAG_FLIP 0x80 -#define E015_FLAG_HEADLESS 0x10 -#define E015_FLAG_RTH 0x08 -#define E015_FLAG_LED 0x04 -#define E015_FLAG_EXPERT 0x02 +#define E015_FLAG_FLIP 0x80 +#define E015_FLAG_HEADLESS 0x10 +#define E015_FLAG_RTH 0x08 +#define E015_FLAG_LED 0x04 +#define E015_FLAG_EXPERT 0x02 #define E015_FLAG_INTERMEDIATE 0x01 +// E016H flags packet[1] +#define E016H_FLAG_STOP 0x20 +#define E016H_FLAG_FLIP 0x04 +// E016H flags packet[3] +#define E016H_FLAG_HEADLESS 0x10 +#define E016H_FLAG_RTH 0x04 +// E016H flags packet[7] +#define E016H_FLAG_TAKEOFF 0x80 +#define E016H_FLAG_HIGHRATE 0x08 + static void __attribute__((unused)) E015_check_arming() { uint8_t arm_channel = E01X_ARM_SW; @@ -80,6 +96,7 @@ static void __attribute__((unused)) E015_check_arming() static void __attribute__((unused)) E01X_send_packet(uint8_t bind) { + uint8_t can_flip = 0; if(sub_protocol==E012) { packet_length=E012_PACKET_SIZE; @@ -114,7 +131,7 @@ static void __attribute__((unused)) E01X_send_packet(uint8_t bind) packet[13] = 0x56; packet[14] = rx_tx_addr[2]; } - else + else if(sub_protocol==E015) { // E015 if(bind) { @@ -152,9 +169,58 @@ static void __attribute__((unused)) E01X_send_packet(uint8_t bind) packet_length=E015_PACKET_SIZE; } } + else + { // E016H + packet_length=E016H_PACKET_SIZE; + if(bind) + { + rf_ch_num=E016H_BIND_CHANNEL; + memcpy(packet, &rx_tx_addr[1], 4); + memcpy(&packet[4], hopping_frequency, 4); + packet[8] = 0x23; + } + else + { + // trim commands + packet[0] = 0; + // aileron + uint16_t val = convert_channel_16b_limit(AILERON, 0x3ff, 0); + can_flip |= (val < 0x100) || (val > 0x300); + packet[1] = val >> 8; + packet[2] = val & 0xff; + // elevator + val = convert_channel_16b_limit(ELEVATOR, 0x3ff, 0); + can_flip |= (val < 0x100) || (val > 0x300); + packet[3] = val >> 8; + packet[4] = val & 0xff; + // throttle + val = convert_channel_16b_limit(THROTTLE, 0, 0x3ff); + packet[5] = val >> 8; + packet[6] = val & 0xff; + // rudder + val = convert_channel_16b_limit(RUDDER, 0x3ff, 0); + packet[7] = val >> 8; + packet[8] = val & 0xff; + // flags + packet[1] |= GET_FLAG(E016H_STOP_SW, E016H_FLAG_STOP) + | (can_flip ? GET_FLAG(E01X_FLIP_SW, E016H_FLAG_FLIP) : 0); + packet[3] |= GET_FLAG(E01X_HEADLESS_SW, E016H_FLAG_HEADLESS) + | GET_FLAG(E01X_RTH_SW, E016H_FLAG_RTH); + packet[7] |= E016H_FLAG_HIGHRATE; + // frequency hopping + rf_ch_num=hopping_frequency[hopping_frequency_no++ & 0x03]; + } + // checksum + packet[9] = packet[0]; + for (uint8_t i=1; i < E016H_PACKET_SIZE-1; i++) + packet[9] += packet[i]; + } // Power on, TX mode, CRC enabled - HS6200_Configure(_BV(NRF24L01_00_EN_CRC) | _BV(NRF24L01_00_CRCO) | _BV(NRF24L01_00_PWR_UP)); + if(sub_protocol==E016H) + XN297_Configure(BV(NRF24L01_00_EN_CRC) | BV(NRF24L01_00_CRCO) | BV(NRF24L01_00_PWR_UP)); + else //E012 & E015 + HS6200_Configure(_BV(NRF24L01_00_EN_CRC) | _BV(NRF24L01_00_CRCO) | _BV(NRF24L01_00_PWR_UP)); NRF24L01_WriteReg(NRF24L01_05_RF_CH, rf_ch_num); NRF24L01_WriteReg(NRF24L01_07_STATUS, 0x70); @@ -175,8 +241,10 @@ static void __attribute__((unused)) E01X_init() NRF24L01_SetTxRxMode(TX_EN); if(sub_protocol==E012) HS6200_SetTXAddr((uint8_t *)"\x55\x42\x9C\x8F\xC9", E01X_ADDRESS_LENGTH); - else // E015 + else if(sub_protocol==E015) HS6200_SetTXAddr((uint8_t *)"\x62\x54\x79\x38\x53", E01X_ADDRESS_LENGTH); + else //E016H + XN297_SetTXAddr((uint8_t *)"\x5a\x53\x46\x30\x31", 5); // bind address NRF24L01_FlushTx(); NRF24L01_FlushRx(); NRF24L01_WriteReg(NRF24L01_07_STATUS, 0x70); // Clear data ready, data sent, and retransmit @@ -197,7 +265,10 @@ uint16_t E01X_callback() { if (bind_counter == 0) { - HS6200_SetTXAddr(rx_tx_addr, 5); + if(sub_protocol==E016H) + HS6200_SetTXAddr(rx_tx_addr, E01X_ADDRESS_LENGTH); + else + XN297_SetTXAddr(rx_tx_addr, E01X_ADDRESS_LENGTH); BIND_DONE; } else @@ -216,7 +287,25 @@ static void __attribute__((unused)) E012_initialize_txid() // rf channels uint32_t lfsr=random(0xfefefefe); for(uint8_t i=0; i> (i*8)) & 0xff) % 0x32); + { + hopping_frequency[i] = 0x10 + ((lfsr & 0xff) % 0x32); + lfsr>>=8; + } +} + +static void __attribute__((unused)) E016H_initialize_txid() +{ + // tx id + rx_tx_addr[0] = 0xa5; + rx_tx_addr[1] = 0x00; + + // rf channels + uint32_t lfsr=random(0xfefefefe); + for(uint8_t i=0; i>=8; + } } uint16_t initE01X() @@ -227,14 +316,19 @@ uint16_t initE01X() E012_initialize_txid(); packet_period=E012_PACKET_PERIOD; } - else - { // E015 + else if(sub_protocol==E015) + { packet_period=E015_PACKET_PERIOD; rf_ch_num=E015_RF_CHANNEL; armed = 0; arm_flags = 0; arm_channel_previous = E01X_ARM_SW; } + else + { // E016H + E016H_initialize_txid(); + packet_period=E016H_PACKET_PERIOD; + } E01X_init(); bind_counter = E01X_BIND_COUNT; hopping_frequency_no = 0; diff --git a/Multiprotocol/Multi.txt b/Multiprotocol/Multi.txt index 6674260..3dcdcdc 100644 --- a/Multiprotocol/Multi.txt +++ b/Multiprotocol/Multi.txt @@ -42,7 +42,7 @@ 42,BUGSMINI 43,Traxxas 44,NCC1701 -45,E01X,E012,E015 +45,E01X,E012,E015,E016H 46,V911S 47,GD00X 63,Test diff --git a/Multiprotocol/Multiprotocol.h b/Multiprotocol/Multiprotocol.h index dc7546e..336d02f 100644 --- a/Multiprotocol/Multiprotocol.h +++ b/Multiprotocol/Multiprotocol.h @@ -19,7 +19,7 @@ #define VERSION_MAJOR 1 #define VERSION_MINOR 2 #define VERSION_REVISION 1 -#define VERSION_PATCH_LEVEL 25 +#define VERSION_PATCH_LEVEL 26 //****************** // Protocols @@ -254,6 +254,7 @@ enum E01X { E012 = 0, E015 = 1, + E016H = 2, }; #define NONE 0 @@ -727,6 +728,7 @@ Serial: 100000 Baud 8e2 _ xxxx xxxx p -- sub_protocol==E01X E012 0 E015 1 + E016H 2 Power value => 0x80 0=High/1=Low Stream[3] = option_protocol; diff --git a/Multiprotocol/_Config.h b/Multiprotocol/_Config.h index dd7fe4d..9fc31ca 100644 --- a/Multiprotocol/_Config.h +++ b/Multiprotocol/_Config.h @@ -502,6 +502,7 @@ const PPM_Parameters PPM_prot[14*NBR_BANKS]= { PROTO_E01X E012 E015 + E016H PROTO_ESKY NONE PROTO_ESKY150 From 9ea157b9b6f42a07b13fbe0afd6f53d692f789ba Mon Sep 17 00:00:00 2001 From: pascallanger Date: Thu, 28 Feb 2019 21:13:49 +0100 Subject: [PATCH 5/7] E016H addition --- Protocols_Details.md | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Protocols_Details.md b/Protocols_Details.md index 836dce6..53665f2 100644 --- a/Protocols_Details.md +++ b/Protocols_Details.md @@ -671,11 +671,11 @@ A|E|T|R|FLIP|LED|CAMERA1|CAMERA2|HEADLESS|RTH|RATE_LOW ## E01X - *45* Autobind protocol -This protocol has been reported to not work properly due to the emulation of the HS6200 RF component using the NRF24L01. The option value is used to adjust the timing, try every values between -127 and +127. If it works please report which value you've used. - ### Sub_protocol E012 - *0* Models: Eachine E012 +This protocol has been reported to not work properly due to the emulation of the HS6200 RF component using the NRF24L01. The option value is used to adjust the timing, try every values between -127 and +127. If it works please report which value you've used. + CH1|CH2|CH3|CH4|CH5|CH6|CH7|CH8|CH9 ---|---|---|---|---|---|---|---|--- A|E|T|R||FLIP||HEADLESS|RTH @@ -683,10 +683,19 @@ A|E|T|R||FLIP||HEADLESS|RTH ### Sub_protocol E015 - *1* Models: Eachine E015 +This protocol has been reported to not work properly due to the emulation of the HS6200 RF component using the NRF24L01. The option value is used to adjust the timing, try every values between -127 and +127. If it works please report which value you've used. + CH1|CH2|CH3|CH4|CH5|CH6|CH7|CH8|CH9 ---|---|---|---|---|---|---|---|--- A|E|T|R|ARM|FLIP|LED|HEADLESS|RTH +### Sub_protocol E016H - *2* +Models: Eachine E016H + +CH1|CH2|CH3|CH4|CH5|CH6|CH7|CH8|CH9 +---|---|---|---|---|---|---|---|--- +A|E|T|R|STOP|FLIP|-|HEADLESS|RTH + ## ESKY - *16* CH1|CH2|CH3|CH4|CH5|CH6 From 04ed613ca3bd4bcda53457504adeca7aa9053168 Mon Sep 17 00:00:00 2001 From: pascallanger Date: Thu, 28 Feb 2019 21:15:38 +0100 Subject: [PATCH 6/7] E016H addition --- Protocols_Details.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Protocols_Details.md b/Protocols_Details.md index 53665f2..6ba1de5 100644 --- a/Protocols_Details.md +++ b/Protocols_Details.md @@ -79,7 +79,7 @@ CFlie|38|CFlie||||||||NRF24L01 [Devo](Protocols_Details.md#DEVO---7)|7|Devo||||||||CYRF6936 [DM002](Protocols_Details.md#DM002---33)|33|DM002||||||||NRF24L01 [DSM](Protocols_Details.md#DSM---6)|6|DSM2-22|DSM2-11|DSMX-22|DSMX-11|AUTO||||CYRF6936 -[E01X](Protocols_Details.md#E01X---45)|45|E012|E015|||||||NRF24L01 +[E01X](Protocols_Details.md#E01X---45)|45|E012|E015|E016H||||||NRF24L01 [ESky](Protocols_Details.md#ESKY---16)|16|ESky||||||||NRF24L01 [ESky150](Protocols_Details.md#ESKY150---35)|35|ESKY150||||||||NRF24L01 [Flysky](Protocols_Details.md#FLYSKY---1)|1|Flysky|V9x9|V6x6|V912|CX20||||A7105 From 74cc63e6ddd2716732c83bca04ba03905d7be6a8 Mon Sep 17 00:00:00 2001 From: Pascal Langer Date: Thu, 28 Feb 2019 21:45:16 +0100 Subject: [PATCH 7/7] E016H typo fix --- Multiprotocol/E01X_nrf24l01.ino | 4 ++-- Multiprotocol/Multiprotocol.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Multiprotocol/E01X_nrf24l01.ino b/Multiprotocol/E01X_nrf24l01.ino index d104269..913456d 100644 --- a/Multiprotocol/E01X_nrf24l01.ino +++ b/Multiprotocol/E01X_nrf24l01.ino @@ -266,9 +266,9 @@ uint16_t E01X_callback() if (bind_counter == 0) { if(sub_protocol==E016H) - HS6200_SetTXAddr(rx_tx_addr, E01X_ADDRESS_LENGTH); + XN297_SetTXAddr(rx_tx_addr, E01X_ADDRESS_LENGTH); else - XN297_SetTXAddr(rx_tx_addr, E01X_ADDRESS_LENGTH); + HS6200_SetTXAddr(rx_tx_addr, E01X_ADDRESS_LENGTH); BIND_DONE; } else diff --git a/Multiprotocol/Multiprotocol.h b/Multiprotocol/Multiprotocol.h index 336d02f..7052919 100644 --- a/Multiprotocol/Multiprotocol.h +++ b/Multiprotocol/Multiprotocol.h @@ -19,7 +19,7 @@ #define VERSION_MAJOR 1 #define VERSION_MINOR 2 #define VERSION_REVISION 1 -#define VERSION_PATCH_LEVEL 26 +#define VERSION_PATCH_LEVEL 27 //****************** // Protocols