The outcome
Build an original publisher/subscriber pair from a complete downloadable workspace.
Documented target: Ubuntu 24.04 · ROS 2 Jazzy · Gazebo Harmonic where used. Browser labs tested; ROS/Ubuntu/hardware execution not performed here.
Before you begin
- Ubuntu 24.04 + ROS 2 Jazzy
- colcon and development tools
- Two sourced terminals
Prepare with Nodes, packages and workspaces, Publish and subscribe with meaningful messages.
Download project files →Build, observe, explain.
Build the starter
Extract the ZIP into a new directory; build from the directory containing src.
source /opt/ros/jazzy/setup.bash
colcon build --symlink-install
source install/setup.bashExpected: A successful nexviora_demo package build.
Run both nodes
Start in separate terminals after sourcing the same workspace.
ros2 run nexviora_demo talker
# Other terminal:
ros2 run nexviora_demo listenerExpected: Sequential Nexviora messages reach the listener.
Inspect and change
Change the timer in talker.py, rebuild and compare.
ros2 topic hz /nexviora/status
ros2 topic info /nexviora/status --verboseExpected: Observed rate reflects the timer subject to scheduling.
Troubleshooting
- Executable not found
- Check console_scripts entries, rebuild and source.
- Listener silent
- Check exact topic, type, QoS and domain.
Take it further
- Use structured sensor messages.
- Add a launch file and second namespace.
Documentation and next steps
Explore another project · Return to learning · Report a project issue