Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl
Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl
Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl
Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl
Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl ardupilot_gazebo

Repository Summary

Description Plugins and models for vehicle simulation in Gazebo Sim with ArduPilot SITL controllers
Checkout URI https://github.com/ardupilot/ardupilot_gazebo.git
VCS Type git
VCS Version main
Last Updated 2025-05-11
Dev Status UNKNOWN
Released UNRELEASED
Tags simulation gazebo ardupilot sitl
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
ardupilot_gazebo 0.0.0

README

ArduPilot Gazebo Plugin

ubuntu-build ccplint cppcheck

This is the official ArduPilot plugin for Gazebo. It replaces the previous ardupilot_gazebo plugin and provides support for the recent releases of the Gazebo simulator (Gazebo Garden), (Gazebo Harmonic) and (Gazebo Ionic).

It also adds the following features:

  • More flexible data exchange between SITL and Gazebo using JSON.
  • Additional sensors supported.
  • True simulation lockstepping. It is now possible to use GDB to stop the Gazebo time for debugging.
  • Improved 3D rendering using the ogre2 rendering engine.

The project comprises a Gazebo plugin to connect to ArduPilot SITL (Software In The Loop) and some example models and worlds.

Prerequisites

Gazebo Garden or Harmonic is supported on Ubuntu 22.04 (Jammy). Harmonic is recommended. If you are running Ubuntu as a virtual machine you will need at least Ubuntu 20.04 in order to have the OpenGL support required for the ogre2 render engine. Gazebo and ArduPilot SITL will also run on macOS (Big Sur, Monterey and Venturua; Intel and M1 devices).

Follow the instructions for a binary install of Gazebo Garden or Gazebo Harmonic or Gazebo Ionic and verify that Gazebo is running correctly.

Set up an ArduPilot development environment. In the following it is assumed that you are able to run ArduPilot SITL using the MAVProxy GCS.

Installation

Install additional dependencies:

Ubuntu

Garden (apt)

Manual - Gazebo Garden Dependencies:

sudo apt update
sudo apt install libgz-sim7-dev rapidjson-dev
sudo apt install libopencv-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-gl

Harmonic (apt)

Manual - Gazebo Harmonic Dependencies:

sudo apt update
sudo apt install libgz-sim8-dev rapidjson-dev
sudo apt install libopencv-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-gl

Rosdep

Use rosdep with osrf’s rosdep rules to manage all dependencies. This is driven off of the environment variable GZ_VERSION.

export GZ_VERSION=harmonic # or garden or ionic
sudo bash -c 'wget https://raw.githubusercontent.com/osrf/osrf-rosdep/master/gz/00-gazebo.list -O /etc/ros/rosdep/sources.list.d/00-gazebo.list'
rosdep update
rosdep resolve gz-harmonic # or gz-garden or gz-ionic
# Navigate to your ROS workspace before the next command.
rosdep install --from-paths src --ignore-src -y

macOS

brew update
brew install rapidjson
brew install opencv gstreamer

Ensure the GZ_VERSION environment variable is set to either garden or harmonic or ionic.

Clone the repo and build:

```bash git clone https://github.com/ArduPilot/ardupilot_gazebo cd ardupilot_gazebo mkdir build && cd build cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo make -j4

File truncated at 100 lines see the full file

Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl
Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl
Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl
Repo symbol

ardupilot_gazebo repository

simulation gazebo ardupilot sitl