This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

nRF24LU1 esb default channel

Hello, when I check nRFgo SDK document and demo, find one difference, it's strange.

First, in demo, I check hal_nrf.c:

/**

  • Typedef for the RF_CH register. Contains all the bitaddressable
  • settings in the bits struct and the value sent to the radio in the uint8_t */

typedef union { uint8_t value;

struct {
	uint8_t rf_ch : 7;
	const uint8_t : 1;
} bits;

} rf_ch_t;

channel maybe 7.

Then I check nrf_sdk docs, it shows:

on Enhanced ShockBurst Primary Transmitter (PTX) example

The following default radio parameters are being used:

RF channel 2

2 Mbps data rate

TX address 0xE7E7E7E7E7

1 byte CRC

on Enhanced ShockBurst Primary Receiver (PRX) example

The following default radio parameters are being used:

RF channel 2

2 Mbps data rate

RX address 0xE7E7E7E7E7 (pipe 0) and 0xC2C2C2C2C2 (pipe 1)

1 byte CRC

so, they are different, or I mistake something, however, plz help me to check. Which one is esb default channel? Thanks.

Parents
  • The following default radio parameters are:

    • RF channel 2

    • 2 Mbps data rate

    • RX address 0xE7E7E7E7E7 (pipe 0) and 0xC2C2C2C2C2 (pipe 1)

    • 1 byte CRC

    In uint8_t rf_ch : 7 :7 is just the number of bits in the bit-field. rf_ch is going to use 7 bits to store the value. You can read more about bit fields here.

  • The channel is not set in the example code. The nRF24 module will use the default channel if you dont set the channel yourself. If you want to set the channel use hal_nrf_set_rf_channel(channel).

Reply Children
No Data
Related