I am using 4 DWM1001 connected through the same SPI buffer to an STM32F4. The SPI speed is 7.5Mbs.
The Tags configuration is :
CFG : UWM operation mode ACTIVE
Loc engine enabled
INT_CFG : loc-ready
The plan is to get position from all DWMs every 100ms via SPI then send them via UART.
For communication method, I pool the state of the data_ready_pin when I am expecting informations using a predefined “number of attempts” value as a threshold.
Everything is working good and I get data perfectly. But after hours (sometimes minutes), one ore more DWMs returns ZERO values in all of X, Y, Z and PQF.
Sometimes the modules get back to work after few seconds, and sometimes they simply loose their configuration.
I reconfigure the PANID, CFG and INT_CFG registers in the DWM’s initialization procedure. Then resetting and putting them in IDLE state.
After these steps, the periodically position reading can begin.
This makes me able to get position periodically from the modules for maximum few hours. Then, if the problem occurs again, I just reset the STM32 then continue my tests.
But I need to solve this problem.
I’ll be grateful if anyone helps me understanding what is exactly going on.