-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Gazebo: support Gazebo Harmonic and Garden #66
Conversation
5dbdf19
to
e5a5a9f
Compare
- Update package.xml and cmake to handle both versions. - Add gz msg include dependencies. - Update README. - Fix CI - switch include order. Signed-off-by: Rhys Mainwaring <[email protected]>
e5a5a9f
to
060de68
Compare
- Remove duplicate code and report error for invalid GZ_VERSION. Signed-off-by: Rhys Mainwaring <[email protected]>
1bc488c
to
6e8449b
Compare
|
||
<!-- Harmonic --> | ||
<depend condition="$GZ_VERSION == harmonic">gz-cmake3</depend> | ||
<depend condition="$GZ_VERSION == harmonic">gz-sim8</depend> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this known to not work?
rryan@B650-970:~/Dev/ros2_ws/src/ardupilot_gazebo$ rosdep install --from-paths . --ignore-src
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
ardupilot_gazebo: Cannot locate rosdep definition for [gz-sim8]
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Taking my steer from: https://github.com/gazebosim/ros_gz/blob/a982161db38058f3c3b6b69f660184930484f077/ros_gz_sim/package.xml#L28-L32
which I assumed correct as it is OSRF maintained.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hopefully they fix it at some point.
I tried using harmonic in https://github.com/ArduPilot/ardupilot_gz?tab=readme-ov-file#2-launch-the-simulation
|
Also, when trying to build this with colcon in a fresh ros2 workspace, I get the following after building everything in
|
Did not run into this issue when testing on macOS. I'll need to look at an Ubuntu VM install, but this doesn't look like a problem with this plugin? |
Cannot replicate in macOS: % ls ./install/ardupilot_gazebo/share/ardupilot_gazebo
cmake local_setup.sh package.sh
config local_setup.zsh package.xml
environment models package.zsh
hook package.bash worlds
local_setup.bash package.dsv
local_setup.dsv package.ps1
% gz sim --version
Gazebo Sim, version 8.0.0
Copyright (C) 2018 Open Source Robotics Foundation.
Released under the Apache 2.0 License. Edit - this is not expected to work - ardupilot_gazebo:
type: git
url: https://github.com/ArduPilot/ardupilot_gazebo.git
version: ros2
|
@Ryanf55 - there may be issues with the Harmonic dependencies and packaging on Ubuntu, can we deal with these in a follow up as I don't think they are driven by this change, which does not alter the default behaviour in any case. The main check for this plugin is the standalone ArduPilot SITL / Gazebo iris quadcopter test, which does not depend on ROS at all. If that is working then I think the other issues should be followed up in the respective repos. |
Yea, that was after checking out this PR branch in |
Thanks for the review @Ryanf55. There are a few follow up changes to AP repos to fully support Harmonic and some upstream: |
Add support for Gazebo Harmonic retaining the default support for Gazebo Garden. The version used is controlled by the environment variable
GZ_VERSION
which should be eithergarden
orharmonic
. If not set the default is to assumegarden
.Details
ros_gz
.package.xml
andCMakeLists.txt
to handle eithergarden
orharmonic
.gz-msg
headers that cause compilation to fail in Harmonic.Testing
Tested on macOS Ventura with Harmonic built from source and running the Iris quadcopter example.