DWM 1001 increase frequency

Hi I have a couple DWM 1001 dev boards and I am trying to setup a localization for an indoor drone environment. I wrote a ros node which uses the Decawave API. It works fine, but I wanted to ask if there is a way to increase the frequency of the system. I currently get position update at 10hz. It would be great to get position updates and/or distances to anchor at higher frequency.

Hi Cristoph,

The maximum update rate of 10Hz is directly related with the firmware architecture and its TDMA scheme. It cannot be modified.


Dear Christoph,
I bought 12 DWM1001 and I will soon test them with ROS, but from the very beginning I had the same question in my mind: is it possible to increase the frequency over 10 Hz? As 10 Hz is too low to localize a quadrotor or a car.
I know that it cannot be done using the firmware distributed with those devices, but I also know that, at least in principle, that firmware can be simplified in order to increase the frequency.
Have you tried modifying the firmware? or have you found any other guy who tried to do that?

Luca, I don’t know what makes you believe that 10 Hz is too low to “localize” a drone?
A lot of past research has shown quite the opposite. It will however depend on your requirements to dynamics and closed-loop position accuracy.
With a proper estimator running at a higher frequency on the drone which utilizes the accelerometer and gyroscope you should be able to achieve +/- 10 cm position hold or low-speed position control with only 10 Hz position measurements from the DWM1001 system.

The main bottleneck leading to the 10 Hz limitation is the low duty cycle rules of the low-band channels in Europe which dictates a maximum of 18 seconds air-time per minute (i.e. 300 ms pr. second). More information can be found in APS016. This requirement is enforced by the PANS library and software, but if you are in a controlled environment or if you were to use the high-band channel (channel 5) then you would be able to run the TDMA at a faster frequency, but this requires that you implement it in firmware yourself.

Best regards
Thomas Jespersen