Skip to content


Repository files navigation

Decawave logo

uwb-core for MyNewt OS

Build Status

  • See Linux Kernel for building uwb-core as a kernel module
  • See Other RTOS for building uwb-core as a standalone library


The distribution contains the device driver model for the Decawave Impulse Radio-Ultra Wideband (IR-UWB) transceiver(s) within the Mynewt-OS. The driver includes hardware abstraction layers (HAL), media access control (MAC) layer, Ranging Services (RNG). The uwb-core driver and Mynewt-OS combine to create a hardware and architecture agnostic platform for IoT Location Based Services (LBS). This augmented with the newtmgt management tools creates a compelling environment for large-scale deployment of LBS.


The uwb-core driver implements the MAC layers and exports a MAC extension interface for additional services, this MAC interface is defined in the struct uwb_mac_interface found in (../master/hw/driver/uwb/include/uwb.h)

How To Build for mynewt

See the companion repo UWB-Apps for building instructions.

Preparation if using mynewt 1.7

# After running newt upgrade or newt install we need to patch mynewt
cd repos/apache-mynewt-core
git apply ../decawave-uwb-core/patches/apache-mynewt-core/mynewt_1_7_0*.patch