Crazyflie micro-ROS Demo - updated to Galactic

There is a new demo available of micro-ROS Galactic. This demo showcases the new Galactic features with Crazyflie 2.1 drone.

This demo repo, originally released for micro-ROS Foxy, was updated to Galactic. Now, it supports features such as client to agent ping and type introspection typesupport to use static memory.

In this demo, you will see how the drone is commanded effortlessly with a gamepad while odometry is published. ANd you will learn how to enable communication between 2 ROS 2 devices simultaneously on FreeRTOS.

There are three different micro-ROS actors in this demo:

  • Ground control station: A ROS2 Galactic computer with a micro-ROS-Agent in charge of representing the drone’s odometry data and telecontrolling it.

  • Remote sensors station (temperature and humidity): A Raspberry with a SparkFun Weather Station sensor connected with a Micro-XRCE-Agent instance acting as a broker between the sensors and the drone.

  • Crazyflie 2.1 drone: The main participant on this demo runs two micro-ROS applications in FreeRTOS on top of a STM32 MCU (192kb SRAM, 1Mb flash)

    • The main application sends internal drone odometry and pose to the ROS 2 dataspace.
    • The second application retrieves data from the remote sensors and forwards them to the ROS 2 dataspace.

Check the full detail on the architecture here, as well as an illustration video available to facilitate reproducibility.

micro-ROS Galactic docker is available here.

4 Likes