Skip to content

A portable ROS2 Foxy toolkit, to provide the `ros2 bag` utility anywhere.

License

Notifications You must be signed in to change notification settings

leighleighleigh/ros2-foxy-rosbag

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ros2-foxy-rosbag

ros2-foxy-rosbag

A portable ROS2 Foxy toolkit, to provide the ros2 bag utility anywhere, plus extra packages to support the Monash Nova Rover team.

This snap was originally created to work around the quirks of ROS-Eloquent, specifically when recording custom-QoS topics.

# Install! 
sudo snap install ros2-foxy-rosbag

# Record all topics to a bag file, even those with weird QoS settings!
ros2-foxy-rosbag.ros2 bag record -a

# ... or use any other ros2 CLI tools
ros2-foxy-rosbag.ros2 topic list

MCAP

Additional support for the mcap storage format is also included through the rosbag2_storage_mcap package.

ros2-foxy-rosbag.ros2 bag record -a -s mcap

rosbridge_server -> Foxglove

For easy visualisation with Foxglove, you can use the packaged rosbridge_server!

ros2-foxy-rosbag.rosbridge-server

Custom message types

If you want to record or play bagfiles that contain additional custom message types, you can provide a custom workspace path via the snap config.

The workspace is then sourced with source $custom-workspace-path in the snap environment whenever you use a command. Local ~/nova_ws folders are automatically detected, but are overridden by any manual setting.

# ADVANCED
# Specify your custom colcon workspace, if needed (provide the **full path**)
# Here we are using the '~/nova_ws' folder, for example.
sudo snap set ros2-foxy-rosbag custom-workspace-path="/home/${SUDO_USER}/nova_ws"
# Validate changes
sudo snap get ros2-foxy-rosbag
# (example output)
#Key                    Value
#custom-workspace-path  /home/leigh/nova_ws