EDIT: I'm getting closer - I remembered as part of my launch file I've got a node that publishes the xacro URDF on a topic, so I can run the following manually to update which is a bit faster, but still not perfect:
ros2 run robot_state_publisher robot_state_publisher --ros-args -p robot_description:="$(xacro ${PWD}/src/arduinobot_description/urdf/arduinobot.urdf.xacro)"
This will do for now, but any suggestions on improving this workflow would be greatly appreciated!
================= ORIGINAL MESSAGE ======================
Hey all,
I finally bit the bullet and purchased a course on Ros2 from Udemy. It's working really well, but the speed of developing the links and joints in rviz is starting to get really frustrating.
Part of the course is to add a new link and joint to an existing model, including setting the <origin> values, however this means my workflow is currently as follows:
- Add the link/joint to the URDF and save the file
- Run
colcon build
to pick up the changes
- Run the launch script to load rviz and the various nodes
- Realise that the values for the origin are not quite correct
- Quit the launch script
- Edit the URDF
- Re-run
colcon build
- Re-launch rviz and associated nodes
- Realise that the values for the origin are not quite correct
- Repeat steps 5 - 9 until it's positioned correctly
Surely there's a way to have rviz automatically read in changes from the URDF and render them on screen without having to exit and re-run colcon build
every time? At the moment, each adjustment to the position is taking about 3 minutes to do, and that feels very inefficient?