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

SPI returns 0x0F on any request after random period of time

Hi, im using nRF24L01+ to constantly transmit data and all working fine, but at some point SPI fails and the only returned values I get are 0x0F - doesnt matter which register I try to read or write. Any idea why is that happening?

Thanks, Sergey

Parents
  • Hi Håkon,

    I now know how the problem occurs, but not sure how to solve it.

    So the setup was: 1 receiver, 2 transmitters. They are time synced, so there is a form of TDMA going on to separate times when transmitters are sending. However because of not precise clock sometimes transmitting times overlap and there are multiple packets on air going to receiver. At that moment receiver freezes and gets into situation when all registers return 0x0F or in some cases it reports normal operation but it doesnt transmit or receive anything.

    Is there a way to detect collision on the receiver side and reset device or do something else?

    Answering your questions:

    1. Yes same situation happens on all receivers.
    2. voltage is 3.3v and the frequency is 4Mhz for SPI.
    3. Yes SPI communications are clear.
    4. All commands return 0x0F or as I just wrote it returns correct values, but chip doesnt do what it says its doing - no TX or RX happening
    5. Flushing doesnt help thats why i was thinking about reset of some kind?

    Kind regards, Sergey

Reply
  • Hi Håkon,

    I now know how the problem occurs, but not sure how to solve it.

    So the setup was: 1 receiver, 2 transmitters. They are time synced, so there is a form of TDMA going on to separate times when transmitters are sending. However because of not precise clock sometimes transmitting times overlap and there are multiple packets on air going to receiver. At that moment receiver freezes and gets into situation when all registers return 0x0F or in some cases it reports normal operation but it doesnt transmit or receive anything.

    Is there a way to detect collision on the receiver side and reset device or do something else?

    Answering your questions:

    1. Yes same situation happens on all receivers.
    2. voltage is 3.3v and the frequency is 4Mhz for SPI.
    3. Yes SPI communications are clear.
    4. All commands return 0x0F or as I just wrote it returns correct values, but chip doesnt do what it says its doing - no TX or RX happening
    5. Flushing doesnt help thats why i was thinking about reset of some kind?

    Kind regards, Sergey

Children
No Data
Related