DWM 3000 - Collaborative Group

Is anyone interested in a collaborative group to put together a library for the DWM300
I have taken the programs supplied by Qorvo, which are written for the Elipse IDE and massaged them for Arduino Uno, almost on a one to one basis, not as a library yet. It compiles and loads
I have a DWM3000 arduino shield

While I seem to get SPI transmission I cannot make anything work other than reading the make and model. I have been attempting to do the basics like control the IO before launching onto the wireless aspects

The Qorvo software is not nice in my opinion, jumps all over the place. Others say that they have made it work with Eclipse but I have not seen any evidence of this

1 Like

Have you been able to solve this issue? I'm interested in getting this working as well

Hi, @anvio
You might get some response if you provide informatiuon about what a DWM300 is.
At least a link to data/specs.

Thanks.. Tom... :smiley: :+1: :coffee: :australia:

Hi anvio
No I have not had much luck
I have attempted to convert as much of the program to standard arduino and put lots of print statements in to find out where the program goes ( its a horror show in my opinion. If you want it then personally message me and I will send my files to you


There is an unsupported library for the dwm1000 on arduino, the 3000 is a much better beast but with no arduino support

hey, im a grad student trying to use the DWM3000EVB arduino shield, it has a ton of examples already that i need to parse through, but i was wondering if you've tried it or if you got the arduino code you had to a more usable form?

was trying to dm you but arduino messages seems to not be liking me right now

1 Like

No luck at all.. I have tried to convert the code to arduino but doesnt work...

Yes, absolutely - more than happy to collaborate on an Arduino library. Do you have a GitHub repo or something?

Hey all! I didn't make the effort to use the Arduino IDE BUT I was able to use Microchip studio to port one of the DWM3000 libraries to work with the DWS3000 Arduino shield attached to an Arduino UNO (atmega328p).

The code at my github is able to communicate via SPI to the DWM3000 module and also sucessfully can perform the simple TX and RX example codes.

However, I have been unable to get the ranging TWR-initiator and -responder examples to not hang up half way through. If anyone that is smarter in C and has these evaluation boards can get the ranging examples to work this port would be completely functional! At its current state this library port of mine is essentially 90% of the way to being usable for ranging!

1 Like

Hi, great job! I'w working too with DWS3000. Did you manage to get ranging working with Arduino Uno?

I'm still waiting on someone with better knowledge of C to look into the ranging example. I'm not exactly sure why the simple tx and rx examples provided by Decawave are working fine while the ranging examples are not.

hi @ara1123
I am also trying to do some project with dwm3000evo. Can you suggest me where I can get some examples and which type of board do I need.

Decawave have released examples and documentation for ST NUCLEO-F429, and nRF52840.
I think what most people want is a easy to use Arduino Library, and for me personally, to be compatible with the ESP32.
I'm willing to help fund someone's time if there are any freelancer types interested - please let me know.
The DWM1000 Lib is outdated and unsupported, and the DWM3000 offers a performance upgrade so it just makes sense to have a great library for it.

1 Like


for whom interested, I get an Arduino source code running for DW3000 with an ESP32.
Rx/Tx/Twr ....
The code is not yet clean but it's working.
It's based on the work of GitHub - emineminof/DWM3000-ATMega328p: Porting DWM3000 C code library to work with ATMEGA328P and GitHub - thotro/arduino-dw1000: A library that offers functionality to use Decawave's DW1000 chips/modules with Arduino.

not yet available on github, just pm me if needed.


@nconcepts Thanks, I sent you a PM, great effort on this, would be great to get this on github!

Would certainly like to have a try with your codr. Please email link of code to rodandmcmahon@gmail.com


Hi, Having a play and hitting problems with

dw3000_mutex.cpp:51:1: error: 'portMUX_TYPE' does not name a type

is there a 'h file missing?

@RodMcM Can you please tell me which exemple are you testing with which board type ?
I told you in the mail that the mutex part is not fully finished but still, everything should work.

I missed the part in the email
I put the firsy example direct into the header file folder to compile, hence problem

Hi, can you share the code or github page to dev with?