This is a UWB localization tag based on Decawave DWM1000 module and STMicro STM32L031F6P6 ultra-low-power MCU.
The average power consumption is less than 5 mW in 6.8 Mbps mode (10 Hz update rate).
The tag has a built-in LTC3588-1 energy harvester. WARNING: do not use LTC3588-2, their functionalities are very different!
The harvester can be left unpopulated and bypassed by connecting +3V3 directly to an external power source,
and then disabling the power-good logic in the source code.
You will need the following packages (Debian/Ubuntu):
- build-essential
- gcc-arm-none-eabi
- git
- stlink-tools
- gdb-multiarch
You will have to flash and debug via the SWD test-points. Fine air-wire soldering skill required.
This project uses libopencm3. It will be automatically checked out during the building process.
To build the firmware, run make. To flash it, connect the board to a ST-Link, and then run make flash.
Alternatively, you can use openocd and any SWD debugger you fancy.
This project was part of the following work. Please kindly consider citing the paper as shown:
@inproceedings{Capttery,
author = {Zhang, Chi and Kumar, Sidharth and Bharadia, Dinesh},
title = {{Capttery: Scalable Battery-like Room-level Wireless Power}},
booktitle = {Proc. of ACM MobiSys},
year = {2019},
}