Personal tools

Improved State Estimation on PULP-based Nano-UAVs

From iis-projects

Revision as of 10:55, 24 June 2020 by Hanmuell (talk | contribs) (Initial version of Project description)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Figure 1: A-B) The PULP-Shield PCB developed at IIS by our student Hanna Müller. C) Our nano-drone prototype based on the CrazyFlie 2.0 coupled with the PULP-Shield.


Autonomous unmanned aerial vehicles (UAVs) are increasingly getting smaller and smarter. Their tiny form factor can be a game-changer in many practical applications such as the aerial inspection or assistance in natural disaster areas, to name a few.

In this context, the parallel ultra-low-power (PULP) platform[4] developed here at IIS, is the fundamental computational unit to bring state-of-the-art complex algorithms for autonomous navigation into the nano-scale class of vehicles. There are several embodiment of the PULP paradigm, one of them a system-on-chip (SoC) called Mr.Wolf[5]. This SoC features 9 cores, divided into a fabric controller and a 8 core cluster with access to 2 floating point units (FPUs).

A-B) Figure 2: Overview of control tasks execution flow.

To control any robot there have to be three components implemented:

  • State estimation current state A
  • Intelligence next state B
  • Actuation get from A to B

Previous work with the PULP-Shield, a tiny pluggable PCB, featuring a PULP-based SoC, focused on the intelligence, using a CNN to determine where to fly aboard a commercial Crazyflie 2.0 nano-drone[1][2][3]. In this thesis, instead, we want to focus on the first component - the state estimation. To estimate where the drone is, we need to fuse the results of the on-board sensors to compute the position and attitude the drone is in. We want to use an extended Kalman filter (eKF), a non-linear estimator, for this task. This project will base the implementation of the eKF on the already used one on the Crazyflie[6].

The goal of this thesis is to port, optimize, and improve state estimation with a PULP SoC. Starting from the eKF used on the Crazyflie[6], we want to offload this compute-intensive task from the STM32 to a PULP SoC. This will allow us to incorporate even more sensor measurements into the eKF. The use case we want to implement is to improve the state estimation by fusing also ultra-wideband (UWB) range measurements[7]. Figure \ref{fig:SW_overview} shows the resulting execution flow.

The resulting eKF can also be adopted on different PULP-based hardware designs.

Status: Available

Available as Master Thesis for one student
Available as Semester Thesis for one or two students
Supervisor: Daniele Palossi
Professor: Luca Benini


  • Familiarity with embedded system programming in C.
  • Basic knowledge of parallel programming and Host/Accelerator paradigm.
  • Basic knowledge of FreeRTOS [2] and STM32F4 MCU family [3] is favorable.


20% Literature and theory study
10% C programming on x86
30% C embedded programming (PULP programming/optimization)
20% Test and verification on the real prototype
20% Experimental evaluation and report writin

Detailed Task Description

Meetings & Presentations

The student(s) and advisor(s) agree on weekly meetings to discuss all relevant decisions and decide on how to proceed. Of course, additional meetings can be organized to address urgent issues.


  • [1] Crazyflie2.0
  • [2] D. Palossi et al., "A 64mW DNN-based Visual Navigation Engine for Au-tonomous Nano-Drones", in IEEE Internet of Things Journal, 2019. doi:10.1109/JIOT.2019.2917066
  • [3] D. Palossi, F. Conti and L. Benini, "An Open Source and Open Hardware DeepLearning-Powered Visual Navigation Engine for Autonomous Nano-UAVs", 2019 15thInternational Conference on Distributed Computing in Sensor Systems (DCOSS),Santorini Island, Greece, 2019, pp. 604-611. doi: 10.1109/DCOSS.2019.00111
  • [4] PULP Project
  • [5] A. Pullini, D. Rossi, I. Loi, A. Di Mauro and L. Benini, "Mr. Wolf: A 1 GFLOP/sEnergy-Proportional Parallel Ultra Low Power SoC for IOT Edge Processing", ES-SCIRC 2018 - IEEE 44th European Solid State Circuits Conference (ESSCIRC),Dresden, 2018, pp. 274-277. doi: 10.1109/ESSCIRC.2018.8494247
  • [6] M. Mueller, M. Hamer, R. D’Andrea,"Fusing ultra-wideband range measurementswith accelerometers and rate gyroscopes for quadrocopter state estimation" 2015IEEE International Conference on Robotics and Automation (ICRA)
  • [7] A. Ledergerber, R. D’Andrea, "Ultra-wideband range measurement model with Gaus-sian processes", 2017 IEEE Conference on Control Technology and Applications(CCTA),2017, pp. 1929-1934.

Practical Details

↑ top