Hi,
nRF51822 use ESB to communicate with LE1,they both use ACK and retransmit.
In the beginning, 51822 works at RX and it can receive data from LE1;Secondly, 51822 turns to TX while the LE1 becomes RX, LE1 can receive the data from 51822 sends;
After that , 51822 will turns to RX again and LE1 works at TX mode,but 51822 cann't receive data any more.
I also found that I just use the same function(as below) to do initialization to make 51822 go to RX mode ,51822 also cann't receive data any more.
void radio_rx_mode(void) { (void)nrf_esb_disable(); (void)nrf_esb_init(NRF_ESB_MODE_PRX);
(void)nrf_esb_set_output_power(NRF_ESB_OUTPUT_POWER_0_DBM);
(void)nrf_esb_set_datarate(NRF_ESB_DATARATE_1_MBPS);
(void)nrf_esb_set_crc_length(NRF_ESB_CRC_LENGTH_2_BYTE);
(void)nrf_esb_set_channel(28);
(void)nrf_esb_set_base_address_length(NRF_ESB_BASE_ADDRESS_LENGTH_2B);
(void)nrf_esb_set_address_prefix_byte(PIPE_NUMBER,pipe0_prefix_addr);
(void)nrf_esb_set_base_address_0(base0_address);
(void)nrf_esb_set_retransmit_delay(1000);
(void)nrf_esb_set_max_number_of_tx_attempts(10);
(void)nrf_esb_enable();
}
Could you give me some advice?Thanks.