mirror of
https://github.com/pascallanger/DIY-Multiprotocol-TX-Module.git
synced 2025-02-13 19:43:44 +00:00
GD00X V2: 64 IDs
This commit is contained in:
parent
150e3fd92e
commit
303b3f08b8
@ -26,7 +26,7 @@ Multiprotocol is distributed in the hope that it will be useful,
|
|||||||
#define GD00X_PAYLOAD_SIZE 15
|
#define GD00X_PAYLOAD_SIZE 15
|
||||||
#define GD00X_BIND_COUNT 857 //3sec
|
#define GD00X_BIND_COUNT 857 //3sec
|
||||||
|
|
||||||
#define GD00X_V2_BIND_PACKET_PERIOD 1700
|
#define GD00X_V2_BIND_PACKET_PERIOD 5110
|
||||||
#define GD00X_V2_RF_BIND_CHANNEL 0x43
|
#define GD00X_V2_RF_BIND_CHANNEL 0x43
|
||||||
#define GD00X_V2_PAYLOAD_SIZE 6
|
#define GD00X_V2_PAYLOAD_SIZE 6
|
||||||
|
|
||||||
@ -99,7 +99,7 @@ static void __attribute__((unused)) GD00X_send_packet()
|
|||||||
len--;
|
len--;
|
||||||
}
|
}
|
||||||
|
|
||||||
packet[3]=(packet[0]+packet[1]+packet[2]+packet[4])^0x65;
|
packet[3]=(packet[0]+packet[1]+packet[2]+packet[4])^(rx_tx_addr[0]^rx_tx_addr[1]^rx_tx_addr[2]);
|
||||||
|
|
||||||
if( (packet_count%12) == 0 )
|
if( (packet_count%12) == 0 )
|
||||||
hopping_frequency_no ^= 1; // Toggle between the 2 frequencies
|
hopping_frequency_no ^= 1; // Toggle between the 2 frequencies
|
||||||
@ -174,14 +174,48 @@ static void __attribute__((unused)) GD00X_initialize_txid()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//Only 1 ID for now...
|
//Generate 64 different IDs
|
||||||
rx_tx_addr[0]=0x65;
|
|
||||||
rx_tx_addr[1]=0x00;
|
rx_tx_addr[1]=0x00;
|
||||||
rx_tx_addr[2]=0x00;
|
rx_tx_addr[2]=0x00;
|
||||||
|
rx_tx_addr[1+((rx_tx_addr[3]&0x10)>>4)]=rx_tx_addr[3]&0x8F;
|
||||||
|
rx_tx_addr[0]=0x65;
|
||||||
rx_tx_addr[3]=0x95;
|
rx_tx_addr[3]=0x95;
|
||||||
rx_tx_addr[4]=0x47; //'G'
|
rx_tx_addr[4]=0x47; //'G'
|
||||||
hopping_frequency[0]=0x05;
|
|
||||||
hopping_frequency[1]=0x25;
|
//hopping calculation
|
||||||
|
hopping_frequency[0]=(0x15+(rx_tx_addr[0]^rx_tx_addr[1]^rx_tx_addr[2]^rx_tx_addr[3]))&0x1F;
|
||||||
|
if( hopping_frequency[0] == 0x0F )
|
||||||
|
hopping_frequency[0]=0x0E;
|
||||||
|
else if( (hopping_frequency[0]&0xFE) == 0x10 )
|
||||||
|
hopping_frequency[0]+=2;
|
||||||
|
hopping_frequency[1]=0x20+hopping_frequency[0];
|
||||||
|
|
||||||
|
#ifdef FORCE_GD00X_ORIGINAL_ID
|
||||||
|
//ID 1
|
||||||
|
rx_tx_addr[0]=0x65;
|
||||||
|
rx_tx_addr[1]=0x00;
|
||||||
|
rx_tx_addr[2]=0x00;
|
||||||
|
rx_tx_addr[3]=0x95;
|
||||||
|
rx_tx_addr[4]=0x47; //'G'
|
||||||
|
hopping_frequency[0]=0x05;
|
||||||
|
hopping_frequency[1]=0x25;
|
||||||
|
//ID 2
|
||||||
|
rx_tx_addr[0]=0xFD;
|
||||||
|
rx_tx_addr[1]=0x09;
|
||||||
|
rx_tx_addr[2]=0x00;
|
||||||
|
rx_tx_addr[3]=0x65;
|
||||||
|
rx_tx_addr[4]=0x47; //'G'
|
||||||
|
hopping_frequency[0]=0x06;
|
||||||
|
hopping_frequency[1]=0x26;
|
||||||
|
//ID 3
|
||||||
|
rx_tx_addr[0]=0x67;
|
||||||
|
rx_tx_addr[1]=0x0F;
|
||||||
|
rx_tx_addr[2]=0x00;
|
||||||
|
rx_tx_addr[3]=0x69;
|
||||||
|
rx_tx_addr[4]=0x47; //'G'
|
||||||
|
hopping_frequency[0]=0x16;
|
||||||
|
hopping_frequency[1]=0x36;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -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 32
|
#define VERSION_PATCH_LEVEL 33
|
||||||
|
|
||||||
//******************
|
//******************
|
||||||
// Protocols
|
// Protocols
|
||||||
|
Loading…
x
Reference in New Issue
Block a user