SPIS incomplete RX transfer

I am current evaluating the SPIS for the nRF52840 and experiencing incomplete transfers from a connected master (Arduino). I'm sending 'hello world'  from the master to the nRF and only receive a few (random) bytes before the NRF_DRV_SPIS_XFER_DONE event is raised The code looks as follows:

SPIS Check.cpp

The log looks as follows:

00> <info> app: Transfer ready tx = 0, rx = 6, rxBuffer = Hello
00>
00>
00>
00> <info> app: Transfer ready tx = 0, rx = 32, rxBuffer = Hello world
00>
00>
00>
00>
00>
00> <info> app: Transfer ready tx = 0, rx = 5, rxBuffer = Hello
00>
00>
00>
00> <info> app: Transfer ready tx = 0, rx = 2, rxBuffer = He
00>
00>
00>
00> <info> app: Transfer ready tx = 0, rx = 2, rxBuffer = He
00>
00>
00>
00> <info> app: Transfer ready tx = 0, rx = 10, rxBuffer = Hello worl
00>
00>
00>
00> <info> app: Transfer ready tx = 0, rx = 0, rxBuffer =
00>
00>
00>
00> <info> app: Transfer ready tx = 0, rx = 0, rxBuffer =
00>
00>
00>
00> <info> app: Transfer ready tx = 0, rx = 32, rxBuffer = Hello world

I also checked the SPI signals using a logic analyzer. This seems ok. 

Is there anyone out there who can tell me what I am doing wrong??

Thanks in advance,

Wim

Parents Reply
  • Thanks for testing! Weird that it doesn't work over here. No idea why I get spurious events. Could it have something to do with the radio or some noise on the pins? I'm using a ANT+ softdevice as part of the design. Tried it without though, same result. Perhaps at the end of the week  I have some spare time to look into it again. Maybe I should start from scratch.

    Again, thanks for your support.  

    Regards Wim

Children
Related