Incorrect Device ID read from DWM3000

I am testing a new PCB that uses the DWM3000 module. I have the SPI interface working to the extent that I see signal activity in CLK, MOSI, MISO, and CS. My initial test is to read the device ID from the Module, and it is returning an incorrect value.

What I see on the MISO bus is:
0x00, 0x02, 0x03, 0xCA
I expect to see is:
0x02, 0x03, 0xCA, 0xDE

I would appreciate any pointers as to why this is happening.

Just after I posted this question I found the issue. Reading the DW3000 user manual I noticed the chip select must be low for the whole transaction, my driver was raising it after the header and lowering it again for the read. I patched the driver, and it works just as expected, just need to make a cleaner solution that my testing patch.

2 Likes