Installation

This project has been developed and tested for ROS2 Humble on following system configurations. It is recommended to also use a similar configuration.

Ubuntu

ROS

22.04

Humble

Step by Step Instructions

  1. If you have not already done so install ROS 2 Humble on your system.

  2. These dependencies are required:

    sudo apt-get install ros-humble-tf-transformations ros-humble-ros2-control ros-humble-vision-msgs
    sudo apt install python3-colcon-common-extensions
    
  3. Clone the ds-crazyflies (this) repository

    git clone --recurse https://github.com/DynamicSwarms/ds-crazyflies.git
    
  1. Install the Webots Simulator (We are currently supporting Webots2025a):

    For this you can follow the instructions from Cyberbotics: https://cyberbotics.com/doc/guide/installation-procedure#installing-the-debian-package-with-the-advanced-packaging-tool-apt

    sudo mkdir -p /etc/apt/keyrings
    cd /etc/apt/keyrings
    sudo wget -q https://cyberbotics.com/Cyberbotics.asc
    
    echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/Cyberbotics.asc] https://cyberbotics.com/debian binary-amd64/" | sudo tee /etc/apt/sources.list.d/Cyberbotics.list
    sudo apt update
    
    sudo apt install webots
    

    Note

    Avoid installing Webots via snap as this causes issues with the ROS2 integration.

  2. Now cd into the ds-crazyflies folder and source your ROS installation.

    cd ds-crazyflies
    source /opt/ros/humble/setup.bash
    export WEBOTS_HOME=/usr/local/webots
    
  3. Build the software stack

    sh build.sh ALL
    

Note

Because of the dependency structure, colcon build can not be executed directly. If you only want to build the crazyflies package, use:

colcon build --packages-select crazyflies

The webots world is not included in this repository. It needs to be downloaded separately:

  1. Download the crazywebotsworld repository:

    git clone https://github.com/DynamicSwarms/crazywebotsworld.git
    
  2. Open webots with the world:

    webots crazywebotsworld/worlds/crazyflie.wbt
    

Next up follow the Getting Started guide.