This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

NRF51822 Receiving on the wrong address

Hi,

I have a case where the receive end event is triggered even though the receive base address and prefix shouldn't match. Some background: Initially the receiver is set to listen to a transmitter, let's call it A, on address A. After a while the receiver changes the base (BASE0) and prefix (PREFIX0) to listen to a new address, B. Even after this change then I can see that packets packets are received from transmitter A. When I turn off A and turn on B I also receive packets.

Only address 0 is enabled for reception. I've also called the disabled task before changing address to be sure.

Any ideas are most welcome.

Best regards, Andreas Wileur

Update: I found that disabling and reenabling the radio solved the problem:

NRF_RADIO->POWER = 0;   // Power down radio
NRF_RADIO->POWER = 1;   // Power up radio again

Of course it has to be re-initialized again but that is not a problem. I haven't read out the actual registers but it seems that they were not updated properly when written to. The power cycle fixed that.

Any Nordic employee that can comment on that?

Best regards, Andreas Wileur