rosbot

rosbot

Husarion Publisher Verified account Verified account

Install humble/stable of rosbot

Ubuntu 16.04 or later?

Make sure snap support is enabled in your Desktop store.


Install using the command line

sudo snap install rosbot

Don't have snapd? Get set up for snaps.

Channel Version Published

A driver for ROSbot mobile robot

Description

The rosbot snap includes all the essential software required to operate the ROSbot, including the controller, robot state publisher, and more. The snap is dedicated for: ROSbot XL, ROSbot 3 / 3 PRO, ROSbot 2R / 2 PRO. The snap is based on https://github.com/husarion/rosbot_ros package, which provides the ROS 2 driver for the ROSbot mobile robot.

Installation

To install this snap on the Single Board Computer (SBC) within the ROSbot run the following command:

snap install rosbot
sudo /var/snap/rosbot/common/post_install.sh
sudo rosbot.flash

Usage

After installation, you need to specify robot-model by running:

sudo snap set rosbot driver.robot-model=rosbot/rosbot-xl

You can start the ROSbot driver by running:

sudo rosbot.start

After that robot is operational and you can control it using by sending commands to the /cmd_vel topic. For example, you can use the teleop_twist_keyboard node to control the robot from a terminal:

sudo rosbot.teleop

or you can connect a Logitech F710 USB dongle to the ROSbot's USB port to control the robot. Remember to set gamepad in X mode and keep pressing the LB button on the gamepad to enable control.

Parameters

The snap provides the following configurable parameters:

  • driver: {...}
  • ros: {...}

The ros contains the following keys:

  • ros.domain-id: 0 - Sets the ROS_DOMAIN_ID ROS 2 env.
  • ros.localhost-only: 0 - Sets the ROS_LOCALHOST_ONLY ROS 2 env.
  • ros.transport: udp - Configures DDS transport. Options are udp, shm, builtin (or rmw_fastrtps_cpp), rmw_cyclonedds_cpp. Corresponding DDS XML files can be found in the /var/snap/rosbot/common directory (custom FastDDS setups can also be created here).
  • ros.namespace: `` - Namespace for all topics and transforms.

The driver contains the following keys:

  • driver.configuration: basic - Specify robot configuration. This parameter affects URDF and starts the manipulator. rosbot has only basic configuration. rosbot-xl has: basic, telepresence, autonomy, manipulation, manipulation-pro.
  • driver.mecanum: True/False (depend on robot-model) - switches between mecanum or differential drive controller.
  • driver.robot-model: ` - Allows you to select the robot model (options:rosbot,rosbot-xl`).
  • driver.serial-port: auto - Serial port for firmware (e.g., /dev/ttyUSB0).

To set parameters, use:

snap set rosbot driver.mecanum=True

Available Apps (Main)

  • rosbot.flash - Flash firmware for the STM32F4 microcontroller.
  • rosbot.start - Start the daemon running the ROSbot ROS 2 driver.
  • rosbot.stop - Stop the daemon running the ROSbot ROS 2 driver.
  • rosbot.teleop - Run the teleop_twist_keyboard node to control the robot from a terminal.

Auxiliary Apps

  • rosbot.config-ftdi - Set up the CBUS pins in the FTDI chip (used with RST and BOOT0 pins in STM32); needs to be done only once.
  • rosbot.print-serial-number - Print the CPU ID and serial number of ROSbot.
  • rosbot.reset-stm32 - Reset the STM32F4 microcontroller.

Working with ROS Parameters

For multiple snaps running ROS 2 or host-snap-Docker communication, useful files and scripts are available in /var/snap/rosbot/common/.

Example usage:

# Set parameters in the rosbot snap
sudo snap set rosbot ros.transport=udp ros.namespace=abc

# Mirror the setup for other ROS 2 snaps
sudo snap set husarion-depthai $(cat /var/snap/rosbot/common/ros_snap_args)
sudo snap set husarion-rplidar $(cat /var/snap/rosbot/common/ros_snap_args)

# Set up the current shell with the same configurations
source /var/snap/rosbot/common/ros.env

# Install configurations
/var/snap/rosbot/common/manage_ros_env.sh
source ~/.bashrc

ros2 run teleop_twist_keyboard teleop_twist_keyboard --ros-args --remap __ns:=/${ROS_NAMESPACE}

Details for rosbot

License
  • Apache-2.0

Last updated
  • 24 July 2025 - humble/stable
  • 24 July 2025 - jazzy/stable

Websites

Contact

Report a bug

Report a Snap Store violation

Share this snap

Generate an embeddable card to be shared on external websites.


Install rosbot on your Linux distribution

Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the installing snapd documentation.


Where people are using rosbot

Users by distribution (log)

Ubuntu 24.04
Ubuntu 22.04