This page presents the DecaWiNo hardware.

Quick description

The DecaWiNo is a board based on the PJRC Teensy 3.1/3.2 and the DecaWave DWM1000 module, implementing a Ultra-Wide Band (UWB) transceiver. The DecaWiNo enable wireless communication and ranging applications, i.e. distance evaluation between nodes.

The TeensyWiNo includes:

  • A IEEE 802.15.4-compatible UWB transceiver,
  • A pin report of most Teensy pins,
  • A RGB LED.

The DecaWiNo is the hardware reference of the DecaDuino library.

The TeensyWiNo has been designed by the IRIT lab in Toulouse, France (Institut de Recherche en Informatique de Toulouse).


Thanks to the UWB transceiver, the DecaWiNo enable ranging operations, i.e. evaluate the distance between two DecaWiNos, using the wireless network. The ranging precision is ~10cm in Line Of Sight (LOS) situations. To enable ranging capabilities, a ranging protocol such as Two-Way Ranging (TWR) must be implemented. A such protocol implementation is available in the DecaDuino library examples.

In this video, a DecaWiNo executes a ranging session every 100ms with an other DecaWiNo. Once the distance is estimated, the first node represents the distance by driving an RGB LED strip: the LED corresponding to the estimated distance is powered up in blue. The strip used in the video is 1m-long and the leds are spaced by 1.65cm.


  1. Make a DecaWiNo,
  2. Install the software development tools,
  3. Install the DecaDuino library,
  4. Send and receive data between two or more DecaWiNos,
  5. Enable ranging protocols.

Technical description

As seen on the wiring, the DecaWiNo embeds:

  • 1 DWM1000 module (UWB transceiver)
  • 1 RGB LED

Please refer to the Documentation page for the libraries to use. The transceiver is connected to the MCU via the SPI bus. The transceiver is powered via the Teensy 3.3V output (internally regulated).

The RGB LED is reverse polarized (common anode) and uses the pins 3 (blue), 4 (green) and 5 (red).

You can find more details on the Documentation page.

Photo Gallery