NRF init changed to most likely default

This commit is contained in:
Pascal Langer
2021-02-11 18:40:29 +01:00
parent b41dccef67
commit d66bf1a5b3
41 changed files with 101 additions and 533 deletions

View File

@@ -81,11 +81,11 @@ static void __attribute__((unused)) ssv_pack_dpl(uint8_t addr[], uint8_t pid, ui
*len += 4;
}
static void __attribute__((unused)) FQ777_send_packet(uint8_t bind)
static void __attribute__((unused)) FQ777_send_packet()
{
uint8_t packet_len = FQ777_PACKET_SIZE;
uint8_t packet_ori[8];
if (bind)
if (IS_BIND_IN_PROGRESS)
{
// 4,5,6 = address fields
// last field is checksum of address fields
@@ -138,7 +138,7 @@ static void __attribute__((unused)) FQ777_send_packet(uint8_t bind)
packet_count++;
}
ssv_pack_dpl( (0 == bind) ? rx_tx_addr : FQ777_bind_addr, hopping_frequency_no, &packet_len, packet_ori, packet);
ssv_pack_dpl( IS_BIND_IN_PROGRESS ? FQ777_bind_addr : rx_tx_addr, hopping_frequency_no, &packet_len, packet_ori, packet);
NRF24L01_WriteReg(NRF24L01_00_CONFIG,_BV(NRF24L01_00_PWR_UP));
NRF24L01_WriteReg(NRF24L01_05_RF_CH, hopping_frequency[hopping_frequency_no++]);
@@ -153,27 +153,15 @@ static void __attribute__((unused)) FQ777_send_packet(uint8_t bind)
static void __attribute__((unused)) FQ777_RF_init()
{
NRF24L01_Initialize();
NRF24L01_SetTxRxMode(TX_EN);
NRF24L01_WriteRegisterMulti(NRF24L01_10_TX_ADDR, FQ777_bind_addr, 5);
NRF24L01_FlushTx();
NRF24L01_FlushRx();
NRF24L01_WriteReg(NRF24L01_01_EN_AA, 0x00); // No Auto Acknowledgement on all data pipes
NRF24L01_WriteReg(NRF24L01_02_EN_RXADDR, 0x00);
NRF24L01_WriteReg(NRF24L01_03_SETUP_AW, 0x03);
NRF24L01_WriteReg(NRF24L01_04_SETUP_RETR, 0x00); // no retransmits
NRF24L01_SetBitrate(NRF24L01_BR_250K);
NRF24L01_SetPower();
NRF24L01_Activate(0x73); // Activate feature register
NRF24L01_WriteReg(NRF24L01_1C_DYNPD, 0x00); // Disable dynamic payload length on all pipes
NRF24L01_WriteReg(NRF24L01_1D_FEATURE, 0x01);
NRF24L01_Activate(0x73);
}
uint16_t FQ777_callback()
{
if(bind_counter!=0)
if(bind_counter)
{
FQ777_send_packet(1);
bind_counter--;
if (bind_counter == 0)
{
@@ -181,13 +169,12 @@ uint16_t FQ777_callback()
BIND_DONE;
}
}
#ifdef MULTI_SYNC
else
{
#ifdef MULTI_SYNC
telemetry_set_input_sync(FQ777_PACKET_PERIOD);
#endif
FQ777_send_packet(0);
}
telemetry_set_input_sync(FQ777_PACKET_PERIOD);
#endif
FQ777_send_packet();
return FQ777_PACKET_PERIOD;
}