diff --git a/harmonic/comparison.md b/harmonic/comparison.md index 2d8cefe859..c8493519a3 100644 --- a/harmonic/comparison.md +++ b/harmonic/comparison.md @@ -284,14 +284,10 @@ ROS integration through the Supported versions: -* ROS 2 Iron (from source) / Rolling (from source) - -Note: binaries for ROS2 might be available sometime after the Harmonic release. +* ROS 2 Jazzy (from binary) / Rolling (from source) For **ROS 2 Rolling**, the Rolling distribution moves with the next future release -of ROS 2 defined in [REP-2000](https://www.ros.org/reps/rep-2000.html). For the Gz -Harmonic release this means that it will be adopted when ROS 2 Jazzy goes into the -[REP-2000](https://www.ros.org/reps/rep-2000.html). +of ROS 2 defined in [REP-2000](https://www.ros.org/reps/rep-2000.html). ## Platforms diff --git a/harmonic/install.md b/harmonic/install.md index c0f2c30e90..12d7eee681 100644 --- a/harmonic/install.md +++ b/harmonic/install.md @@ -1,8 +1,6 @@ # Gazebo Harmonic -Up to Harmonic's release date, the collection should be considered unstable. - -Gazebo Harmonic will be the 8th major release of Gazebo. It will be a +Gazebo Harmonic is the 8th major release of Gazebo. It is a long-term release. ## Binary installation instructions @@ -49,9 +47,6 @@ This list of library versions may change up to the release date. ## Supported platforms -Harmonic is planned to be [supported](releases) on the platforms below. -This list may change up to the release date. - These are the **officially** supported platforms: * Ubuntu Jammy on amd64 diff --git a/harmonic/ros2_integration.md b/harmonic/ros2_integration.md index bcf12814ad..8b7fb079c9 100644 --- a/harmonic/ros2_integration.md +++ b/harmonic/ros2_integration.md @@ -7,7 +7,7 @@ simulatenously simulated by a Gazebo world. ## ros_gz_bridge -[`ros_gz_bridge`](https://github.com/gazebosim/ros_gz) provides a network bridge which enables the exchange of messages between ROS 2 and [Gazebo Transport](https://github.com/gazebosim/gz-transport). Its support is limited to only certain message types. Please, check this [README](https://github.com/gazebosim/ros_gz/blob/ros2/ros_gz_bridge/README.md) to verify if your message type is supported by the bridge. +[`ros_gz_bridge`](https://github.com/gazebosim/ros_gz) provides a network bridge which enables the exchange of messages between ROS 2 and [Gazebo Transport](https://github.com/gazebosim/gz-transport). Its support is limited to only certain message types. Please, check this [README](https://github.com/gazebosim/ros_gz/blob/jazzy/ros_gz_bridge/README.md) to verify if your message type is supported by the bridge. Example uses of the bridge can be found in [`ros_gz_sim_demos`](https://github.com/gazebosim/ros_gz/tree/ros2/ros_gz_sim_demos), including demo launch files with bridging of all major actuation and sensor types. @@ -29,7 +29,7 @@ The ROS message type is followed by an `@`, `[`, or `]` symbol where: * `[` is a bridge from Gazebo to ROS. * `]` is a bridge from ROS to Gazebo. -Have a look at these [examples]( https://github.com/gazebosim/ros_gz/blob/ros2/ros_gz_bridge/README.md#example-1a-gazebo-transport-talker-and-ros-2-listener) +Have a look at these [examples]( https://github.com/gazebosim/ros_gz/blob/jazzy/ros_gz_bridge/README.md#example-1a-gazebo-transport-talker-and-ros-2-listener) explaining how to make communication connections from ROS to Gazebo and vice versa. It is also possible to use ROS Launch with the `ros_gz_bridge` and represent the topics in yaml format to be given to the bridge at launch time. @@ -58,7 +58,7 @@ speedup performance. * `direction`: It's possible to specify `GZ_TO_ROS`, `ROS_TO_GZ` and `BIDIRECTIONAL`. -See [this example](https://github.com/gazebosim/ros_gz/blob/ros2/ros_gz_bridge/test/config/full.yaml) +See [this example](https://github.com/gazebosim/ros_gz/blob/jazzy/ros_gz_bridge/test/config/full.yaml) for a valid configuration file. ## Launching the bridge using the launch files included in `ros_gz_bridge` package. @@ -78,7 +78,7 @@ And now, the container will load your bridge with: ros2 launch ros_gz_bridge ros_gz_bridge.launch.py bridge_name:=ros_gz_bridge config_file:= ``` -Check [this block](https://github.com/gazebosim/ros_gz/blob/ros2/ros_gz_bridge/launch/ros_gz_bridge.launch.py#L27-L33) +Check [this block](https://github.com/gazebosim/ros_gz/blob/jazzy/ros_gz_bridge/launch/ros_gz_bridge.launch.py#L27-L33) from the source code to know all the different parameters accepted by this launch file. @@ -203,10 +203,10 @@ A video walk-through of this tutorial is available from our YouTube channel: [Ga ## Visualize in RViz -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). +Take a step further and try out demos from [`ros_gz_sim_demos`](https://github.com/gazebosim/ros_gz/tree/jazzy/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). +For the `sdf_parser` demo, install [`ros_gz`](https://github.com/gazebosim/ros_gz/tree/jazzy) 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/jazzy/sdformat_urdf/README.md). Run the demo launch file with the rviz launch argument set: diff --git a/harmonic/ros2_interop.md b/harmonic/ros2_interop.md index 0774809940..2ec477b2b2 100644 --- a/harmonic/ros2_interop.md +++ b/harmonic/ros2_interop.md @@ -54,7 +54,7 @@ For publishing and controlling the robot pose, we need joint states of the robot ![jsp_gui](tutorials/ros2_integration/jsp_gui.png) - See [documentation](http://docs.ros.org/en/rolling/p/joint_state_publisher_gui/) for node API. + See [documentation](http://docs.ros.org/en/jazzy/p/joint_state_publisher_gui/) for node API. This functionality is useful during initial development of the model. At this point we have achieved the first aim defined in [Setup](#setup). @@ -95,7 +95,7 @@ Learn more about the bridge from [ROS 2 Integration](ros2_integration). The main pain point of using existing simulation assets with ROS 2 tools was updating URDF files into a Gazebo-readable format. This is no longer required. If you are maintaining a URDF and an SDF file in a project, you can now drop the URDF and just use the SDF for both ROS and Gazebo. This is made possible by `sdformat_urdf`, a parser plugin library that converts an SDF file to URDF C++ DOM structures, making it understandle by the ROS 2 ecosystem. -Although, there are some limitations of the plugin, like not all SDFormat tags are compatible. For example, if you have any sensors attached to a joint, it won't be parsed. More details [here](https://github.com/ros/sdformat_urdf/tree/ros2/sdformat_urdf). +Although, there are some limitations of the plugin, like not all SDFormat tags are compatible. For example, if you have any sensors attached to a joint, it won't be parsed. More details [here](https://github.com/ros/sdformat_urdf/tree/jazzy/sdformat_urdf). To embed this functionality, we simply need to print the SDFormat file to the `/robot_description` ROS topic, and internally ROS will find a suitable parser, `sdformat_urdf` in this case, to read the file. This is already done while configuring the `robot_state_publisher` earlier. diff --git a/harmonic/ros2_launch_gazebo.md b/harmonic/ros2_launch_gazebo.md index a87c90a0e6..260f53e993 100644 --- a/harmonic/ros2_launch_gazebo.md +++ b/harmonic/ros2_launch_gazebo.md @@ -3,7 +3,7 @@ Gazebo can be launched from a ROS 2 launch system in multiple ways: ## Using the launch files included in -[ros_gz_sim](https://github.com/gazebosim/ros_gz/tree/ros2/ros_gz_sim). +[ros_gz_sim](https://github.com/gazebosim/ros_gz/tree/jazzy/ros_gz_sim). The package `ros_gz_sim` contains two launch files named `gz_server.launch.py` and `gz_sim.launch.py`. You can use them to start Gazebo server or Gazebo (server and GUI) @@ -20,8 +20,8 @@ ros2 launch ros_gz_sim gz_server.launch.py world_sdf_file:=empty.sdf ``` Consult the argument block of each launch file -[here](https://github.com/gazebosim/ros_gz/blob/ros2/ros_gz_sim/launch/gz_sim.launch.py.in#L75-L96) -and [here](https://github.com/gazebosim/ros_gz/blob/ros2/ros_gz_sim/launch/gz_server.launch.py#L27-L38) +[here](https://github.com/gazebosim/ros_gz/blob/jazzy/ros_gz_sim/launch/gz_sim.launch.py.in#L75-L96) +and [here](https://github.com/gazebosim/ros_gz/blob/jazzy/ros_gz_sim/launch/gz_server.launch.py#L27-L38) to learn about the different parameters that are accepted by each launch file. ## Using a custom launch file. diff --git a/harmonic/ros2_overview.md b/harmonic/ros2_overview.md index d9891b82b5..97a2f9ccdb 100644 --- a/harmonic/ros2_overview.md +++ b/harmonic/ros2_overview.md @@ -5,7 +5,7 @@ different types of integrations that you can achieve between Gazebo and ROS. * Use ROS to launch Gazebo: ROS prescribes a specific way to launch all the pieces needed in your system. There's a dedicated -[launch mechanism](https://docs.ros.org/en/rolling/Tutorials/Intermediate/Launch/Creating-Launch-Files.html) +[launch mechanism](https://docs.ros.org/en/jazzy/Tutorials/Intermediate/Launch/Creating-Launch-Files.html) to orchestrate the launch of all your components and many tooling around it. Gazebo can be launched in this way. diff --git a/harmonic/ros2_spawn_model.md b/harmonic/ros2_spawn_model.md index 056f14fd23..f1beeec914 100644 --- a/harmonic/ros2_spawn_model.md +++ b/harmonic/ros2_spawn_model.md @@ -15,7 +15,7 @@ existing simulation. Here's an example: ros2 launch ros_gz_sim ros_gz_spawn_model.launch.py world:=empty file:=$(ros2 pkg prefix --share ros_gz_sim_demos)/models/vehicle/model.sdf entity_name:=my_vehicle x:=5.0 y:=5.0 z:=0.5 ``` -Check [this block](https://github.com/gazebosim/ros_gz/blob/ros2/ros_gz_sim/launch/ros_gz_spawn_model.launch.py#L26-L45) +Check [this block](https://github.com/gazebosim/ros_gz/blob/jazzy/ros_gz_sim/launch/ros_gz_spawn_model.launch.py#L26-L45) from the source code to know all the different parameters accepted by this launch file. diff --git a/harmonic/sensors.md b/harmonic/sensors.md index 97e1622478..cbdb35082b 100644 --- a/harmonic/sensors.md +++ b/harmonic/sensors.md @@ -11,7 +11,7 @@ learn how to launch multiple tasks with just one file using `gz launch`. You can find the final world of this tutorial showing all these plugins in use [here](https://github.com/gazebosim/docs/blob/master/harmonic/tutorials/sensors/sensor_tutorial.sdf). You may also find an extensive set of world examples with many possible sensors and actuation capabilities in [`gz-sim/examples/worlds`](https://github.com/gazebosim/gz-sim/tree/gz-sim8/examples/worlds) for individual examples. The full set of sensors can be found in the [`gz-sensors` library](https://github.com/gazebosim/gz-sensors). -If using ROS, you can see demo launches and bridging configuration for these examples [here](https://github.com/gazebosim/ros_gz/tree/ros2/ros_gz_sim_demos/launch). +If using ROS, you can see demo launches and bridging configuration for these examples [here](https://github.com/gazebosim/ros_gz/tree/jazzy/ros_gz_sim_demos/launch). ## Preliminaries