Carrier Detect Problem nRF24L01

Hi all,

I am facing some problem in CD bit of nRF24L01.

My Question is What is CD bit used for???

I really confused since in the document (Rev2.0 Data Sheet - pg 74), they have mentioned CD bit can be infered at the Transmitter Side. I do agree with it.

But i could not able to infer the Bit as 1 .

I created 3 transmitters (with Enhanced Shockburst mode )transmitting a character simultaneoulsy over the air. The receiver is also picking up nicely.

Later i disconneted the receiver (For Testing CD bit), and infered the CD bit in each of transmitter. (As per the datasheet, I put the transmitter as receiver for short duration of 300us and infered the CD bit)

I hope i am not confusing :shock:

I believe CD bit can be used for monitoring whether medium is busy or not .

Ultimately i want to read the CD bit as 1 which is not possible.

Please suggest for any idea.

On p. 74 of v2 of the 24L01 datasheet, it discusses CD. Essentially, the 24L01 must be set up as an RX (if going from TX to RX, 130 uS must pass before RX’ing data), and after that, the device must detect a wireless signal for at least 128 uS continuously. At that point, the CD bit should be set until the device stops detecting transmissions.

The easiest way to test this would be to set up a TX to transmit constantly, and then setup an RX to listen to the CD bit. Monitor the bit, and it should become set after 128 uS at the RX.

Hi Brennen,

As per the idea suggested by you, I made my transmitter to transmit a characer continuously over the air.

I put the receiver to monitor the CD bit.

Still I could not read it as 1.

I hope my nRF24L01 is working fine since other operations can be done with that.

I used the library given by you (LPC2148 + nRF24L01).

Can you suggest me anyother idea.

Not really sure if you can’t get it to work. I’ve never actually tried out the CD bit, myself. Make sure that both devices are on the same RF channel (RF_CH field), and try to set up the transmitter such that it transmits a very long packet (like the maximum of 32 bytes) constantly. Also, make sure the TX FIFO is constantly loaded and that you’re always transmitting. You need to monitor the CD line constantly as well, because this bit can be very volatile. If that doesn’t work, I’m not sure what else will, to be honest.