From 79173e0fd6294713293cd3291af7d497df25fc17 Mon Sep 17 00:00:00 2001 From: Gianluca Corsini Date: Mon, 13 Oct 2025 22:45:56 +0200 Subject: [PATCH 1/5] Update install_ubuntu.md (#640) Add missing `curl` package in the list of necessary tools for installing Gazebo Jetty on Ubuntu. Signed-off-by: Gianluca Corsini --- jetty/install_ubuntu.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jetty/install_ubuntu.md b/jetty/install_ubuntu.md index eac9572dd4..138e775a4c 100644 --- a/jetty/install_ubuntu.md +++ b/jetty/install_ubuntu.md @@ -8,7 +8,7 @@ First install some necessary tools: ```bash sudo apt-get update -sudo apt-get install lsb-release gnupg +sudo apt-get install curl lsb-release gnupg ``` Then install Gazebo Jetty: From c2972bc72a419cd4b9f451c34e40ec328759bf5d Mon Sep 17 00:00:00 2001 From: Gianluca Corsini Date: Mon, 13 Oct 2025 23:55:19 +0200 Subject: [PATCH 2/5] Update install_ubuntu.md (#641) Add missing `curl` package in the list of necessary tools for installing Gazebo ionic on Ubuntu. Signed-off-by: Gianluca Corsini --- ionic/install_ubuntu.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ionic/install_ubuntu.md b/ionic/install_ubuntu.md index 4d8574f50a..6911e8f0b0 100644 --- a/ionic/install_ubuntu.md +++ b/ionic/install_ubuntu.md @@ -8,7 +8,7 @@ First install some necessary tools: ```bash sudo apt-get update -sudo apt-get install lsb-release gnupg +sudo apt-get install curl lsb-release gnupg ``` Then install Gazebo Ionic: From 503951787bddb84836d767b18d32abda61e707d9 Mon Sep 17 00:00:00 2001 From: Zachary Yamaoka Date: Tue, 14 Oct 2025 02:35:10 -0700 Subject: [PATCH 3/5] added important info about working with ros2_control (#588) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Zachary Yamaoka Signed-off-by: Alejandro Hernández Cordero Co-authored-by: Alejandro Hernández Cordero --- harmonic/ros2_launch_gazebo.md | 38 ++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/harmonic/ros2_launch_gazebo.md b/harmonic/ros2_launch_gazebo.md index 43d157b88d..2857ca2be0 100644 --- a/harmonic/ros2_launch_gazebo.md +++ b/harmonic/ros2_launch_gazebo.md @@ -142,3 +142,41 @@ In the above launch files you may notice that the `create_own_container` argumen More info about `ros_gz_bridge` can be viewed [here](ros2_integration). More info about composition can be viewed [here](ros2_overview.md#composition). + +## Further Considerations for ROS2 Control + + If you're planning to use `ros2_control` with Gazebo, please take a look at the [example launch files](https://github.com/ros-controls/gz_ros2_control/tree/rolling/gz_ros2_control_demos/launch) in the `gz_ros2_control` repository + + It is essential to publish the `/clock` topic for the `controller_manager` to function correctly: + + gz_bridge = Node( + package="ros_gz_bridge", + executable="parameter_bridge", + arguments=['/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock'], + parameters=[{ + "qos_overrides./tf_static.publisher.durability": "transient_local" + }], + output="screen", + ) + + +If you **do not** publish the `/clock` topic, the `controller_manager` will issue warnings or errors such as: + + [gazebo-1] [WARN] [1744219953.983130822] [controller_manager]: No clock received, using time argument instead! Check your node's clock configuration (use_sim_time parameter) and if a valid clock source is available. + + Timing Issues + ------------- + + By default, the `controller_manager` launched by `gz_ros2_control` has ``use_sim_time=true``. If for any reason this is set to ``false``, it will fall back to the system clock. + + This results in logs like: + + [gazebo-1] [INFO] [1744209678.974210234] [gz_ros_control]: Loading controller_manager + [gazebo-1] [INFO] [1744209679.000651931] [controller_manager]: Using Steady (Monotonic) clock for triggering controller manager cycles. + + Eventually leading to a fatal error: + + [gazebo-1] terminate called after throwing an instance of 'std::runtime_error' + [gazebo-1] what(): can't compare times with different time sources + + Ensure `use_sim_time` is correctly set to `true` when working with simulation time to avoid such mismatches. \ No newline at end of file From 1971e7f3e6f4852464e9d0284050875937966f54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Hern=C3=A1ndez=20Cordero?= Date: Tue, 14 Oct 2025 18:16:46 +0200 Subject: [PATCH 4/5] Added gz_ros2_control note to jetty too (#642) Signed-off-by: Alejandro Hernandez Cordero --- harmonic/ros2_launch_gazebo.md | 27 +++++++++++------------ ionic/ros2_launch_gazebo.md | 39 ++++++++++++++++++++++++++++++++- jetty/ros2_launch_gazebo.md | 40 ++++++++++++++++++++++++++++++++-- 3 files changed, 89 insertions(+), 17 deletions(-) diff --git a/harmonic/ros2_launch_gazebo.md b/harmonic/ros2_launch_gazebo.md index 2857ca2be0..22be7dc889 100644 --- a/harmonic/ros2_launch_gazebo.md +++ b/harmonic/ros2_launch_gazebo.md @@ -39,7 +39,7 @@ within this tag. Here's an example for launching Gazebo server: - - - Date: Fri, 17 Oct 2025 14:45:09 +0700 Subject: [PATCH 5/5] Fix sdformat_urdf README link in documentation (#644) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Updated the link for sdformat_urdf README to the rolling branch. Signed-off-by: Nguyễn Tấn Anh Khoa <104090949+kitare17@users.noreply.github.com> --- jetty/ros2_integration.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jetty/ros2_integration.md b/jetty/ros2_integration.md index 48f7e171ba..a29517607c 100644 --- a/jetty/ros2_integration.md +++ b/jetty/ros2_integration.md @@ -205,7 +205,7 @@ A video walk-through of this tutorial is available from our YouTube channel: [Ga Take a step further and try out demos from [`ros_gz_sim_demos`](https://github.com/gazebosim/ros_gz/tree/ros2/ros_gz_sim_demos). For the `sdf_parser` demo, install [`ros_gz`](https://github.com/gazebosim/ros_gz/tree/ros2) and the parser plugin `sdformat_urdf` from source in a colcon workspace. -Read more about `sdformat_urdf` [here](https://github.com/ros/sdformat_urdf/blob/ros2/sdformat_urdf/README.md). +Read more about `sdformat_urdf` [here](https://github.com/ros/sdformat_urdf/blob/rolling/sdformat_urdf/README.md). Run the demo launch file with the rviz launch argument set: @@ -243,4 +243,4 @@ Gazebo implements these interfaces, enabling you to, - Retrieve simulator information For a full tutorial, including usage examples for each interface see -[Use ROS 2 Simulation Interfaces with Gazebo](ros2_sim_interfaces). \ No newline at end of file +[Use ROS 2 Simulation Interfaces with Gazebo](ros2_sim_interfaces).