How to read DWS1000 on Arduino UNO

Greetings all
I can’t read the “Device name”, “Range” DWS1000 on Arduino uno.
See picture in below. Can you help me !


Hi Saharat,

What exactly are you trying to do? Did you port one of the examples to the Arduino UNO?

It looks like you are using the examples in the arduino-dw1000 project, You will probably have to change the pin configuration for this to work with a DWS1000 on an Arduino. This software was designed for other (undocumented?), is not supported by Decawave and currently not in active development by the author.

Note that due to the relatively slow processing power of the Arduino UNO using it for UWB RTLS solutions is not ideal. See APS019 Issues to consider when porting the DecaWave
DecaRanging source code to an 8-bit MCU
. For this reason, Decawave does not support the Arduino Uno as development platform. It’s good enough for simple demos, but simply doesn’t allow to use the full capabilities of the DW1000.

Hi seppe
Thank you for reply
What Arduino models can I use? If Arduino does not support DWS1000.
What MCU can be used with DWS1000?
Please help me.

We primarily support the ST Nucleo F429ZI development board. This is the platform for which the DWS1000 API examples are created.

We also typically use nRF52 development boards, mainly the nRF52-DK and the nRF52840-DK.

Most 32-bit ARM CPUs should be able to handle RTLS use-cases. The main thing to look for is high speed SPI. The DW1000 supports SPI speeds up to 20MHz. The max SPI speed of the Arduino Uno is fosc/2, so only 8MHz with the default 16HMz clock.

An other thing to look for is flash memory. An RTLs solution often takes up a lot of code space.

The Arduino Due has an ARM Cortex-M3 MCU, so should be powerful enough, though note that Decawave does not officially support this specific development board or the Arduino Ecosystem.

Thanks seppe
You helped me a lot.
Can the DWS1000 be used with raspberry pi 4 or raspberry pi zero?

In theory, yes, but we currently do not have an officially supported Linux stack that interacts with the DW3000 directly. You could look into the DWM1001-DEV development board. This uses the DWM1001 module with nRF528322 MCU, mounted on a board that can be connected to a Raspberry Pi. In this case, tha actual UWB stack (by default PANS) runs on the MCU and the Raspberry Pi can control the stack over SPI or UART. We have a Raspberry Pi 3 image (aka “gateway firmware” in the DWM1001 firmware and documentation package.

Hello , Please i used Arduino Due but i get the same message, how could i resolve this problem? there are some modification i do in the code? or the hardware part?

Hi seppe, can you clarify my query, thank you.