Skip to content
This repository has been archived by the owner on Nov 9, 2023. It is now read-only.


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation

Arduino library to use Decawave's DW1000 IC and relative modules.

c++11 Arduino


⚠️ We are archiving the repo as we can't support it anymore and we are not currently working with dw1000 hardware, feel free to create your own fork if you intend to support the project, we will be happy to add a link on this project. Thank you everyone for the support you gave this project it was truly appreciated.

Differences with thotro/arduino-dw1000

This is a fork of
The main reason for this fork is because the development there is really slow (due to the original author not developing it anymore) and some important features were missing (for example antenna delay calibration).
We also wanted to change how the ranging logic works.
Rather than providing a ranging loop, we wanted to provide functions to send the different Two way ranging flow frames, giving the user more control over the program.
The base driver was also re-written in a lot of places, to make every API function more independent from each other. We also plan to make very high-level abstractions to hack projects fast.


Ranging Localization NLOS Optimizations Frame filtering Antenna Calibration Antenna Delay Arduino EEPROM Transmission power setup Deep sleep Sleep Double buffering Transmit Power Spectrum Test Mode Continuous wave mode


Arduino ESP8266 ESP32 STM32-BluePill

Specific tested devices, whit related pinout, are inside the Wiki.


Requires c++11 support, Arduino IDE >= 1.6.6 support c++11.

  1. Get a ZIP file of the master branch or the latest release and save somewhere on your machine.
  2. Open your Arduino IDE and goto Sketch / Include Library / Add .ZIP Library...
  3. Select the downloaded ZIP file of the DW1000 library
  4. You should now see the library in the list and have access to the examples in the dedicated section of the IDE


Check examples folder for basic usage.

The Decawave documentation helps a lot in understanding this project, especially if you want to go deeper.



The project is under MIT (see
Some files are under a Dual Apache 2.0/MIT because this is a fork of thotro/arduino-dw1000