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

IRQ not triggered even though the emission status seems ok.

Hi, 

I've been using the nRF24l01+ for some time now and am quite satisfied. I'm having a new issue that I'm unable to explain and for which I would greatly appreciate some help. 

I have two units comunicating together using the following scheme:

1: T = t0 - Module 1 sends message 1

2: T = t0 - Module 2 receives message 1

3: T = t0 + 30 ms - Module 2 sends msg 2 

4: T = t0 + 30 ms - Module 1 receives msg 2 

5: T = t0 + 40 ms - Module 1 sends msg 3

6: T = t0 + 50 ms - Module 1 sends msg 4

7: T = t0 + 100 ms - The process starts again. 

My problem is that when I send msg2 using the module 2, the tx status goes to 1, which means that the emission went well, but there is no IRQ triggered on the module 1 side. Is there a configuration where the emitting unit sees everything as normal whereas the receiving unit doesn't call an interruption ? 

The problem gets even more strange, because when I remove step 5 or step 6, so I just send one message after receiveing msg 2, then everything starts to work normally again... 

Any clue to what the problem might be ? 

Thank you all for any help you may provide, 


Regards, 

Parents Reply
  • Hi, 


    Thank you for your answer. 
    I'm using a specefic library to communicate with my device. This library states that the Auto ACK is enabled by default so I suppose I'm using the Auto ACK. 
    I have disables the ARD so I'm sending the message once. 

    The buadrate is 250 Kbps and the packet size is 32 bytes. I'm using the dynamic payload option. 

    To add some extra details, it really looks like the devices are communicating because the TX_DS is only asserted when Module 1 is powered. But it looks like Module 1 isn't receiving the information from the device. 

    I hope it clarifies a bit my previous message.

    Thanks in advance for your help, 

    Regards

Children
Related