User Tools

Site Tools


This is an old revision of the document!

Loco positioning system

The Loco Positioning system (LPS) project is a set of hardware and software designed to implement a local positioning system. This wiki page aims at giving reference documentation for various parts of the system, for other documentation please see the following:


To make the documentation easier to grasp there's a few terms that should be clear:

  • Deck and node: These refer to pieces of hardware (Loco positioning deck, Loco positioning node)
  • Tag and anchor: These refer to roles when ranging (i.g depending on configuration a node can act as either a tag or an anchor)
  • Ranging mode: The protocol used for communicating between tags/anchors to create a measurement for the range (i.g TWR or TDoA)

System overview

The local positioning system is based on the DecaWave DWM1000 module. The system consists of a number of anchors that are continuously pinged from the Crazyflie 2.0 deck that's based on the same module. The anchors are placed around the room at known positions.

Documentation subjects

System set-up

  • Reference set-up: Our current TWR reference set-up showing node positioning and measurements
  • Anchor set-up: How to set-up, configure and mount the anchor
  • Configure the Crazyflie 2.0 in 2Mbit radio mode. This reduces interference with the UWB radio. If the configuration is changed a restart of the Crazyflie 2.0 is required.


  • TWR protocol: Documents the protocol used for Two Way Ranging (TWR)


For working with the Loco positioning system there's a variety of tools available:

Experimental functionality

  • TDoA: How to build custom Crazyflie 2.0 firmware and enable TDoA mode in the anchors
  • TDoA protocol v2: Documentation of the TDoA anchor protocol V2
  • TWR-TDMA: Two-Way-Ranging TDMA mode for flying multiple Crazyflie in TWR mode
doc/lps/index.1513606202.txt.gz · Last modified: 2017-12-18 15:10 by arnaud