Skip to content

iRobot® Create® 3 Release H.2.5

[Click here to download release H.2.5]

Warning

When using Fast-DDS, startup times are about 30s longer than in our Galactic release.

This release is running ROS 2 Humble with the following interface library versions:

Release Overview

For ROS 21 users, this is a bugfix release. For iRobot® Education Bluetooth2 users, there are no changes. See below for details.

Changelog (from H.2.4)

Core Robot

  • Overall
    • The robot uses less RAM when idle in this release than in previous releases.
  • Webserver
    • Add hidden beta feature to use a user-supplied wpa_supplicant.conf file. Note that this workflow conflicts with the normal provisioning workflow, so it has not been added to the beta menu, so that it is not accessed by accident.

ROS 2

  • Library Versions
    • Update Cyclone DDS from 0.9.0 to 0.10.3
  • Parameters
    • Add ROS 2 parameter wheels_stop_threshold_sec to the /motion_control node. This parameter controls the amount of time that the robot will keep executing the last provided velocity command (on the /cmd_vel topic) before considering it stale and stopping the wheels. Default value is 0.5 seconds.
    • Add the following ROS 2 parameters to the /robot_state node to control (and disable) unnecessary ROS 2 publications to improve robot performance:

      • publish_hazard_msgs: default true. If set to false, the robot will not publish the /hazard_detection topic. Disabling this can noticeably reduce the CPU and RAM usage of the robot.
      • hazards_pub_fixed_period_ms: default -1. This controls whether the robot should publish hazard information even if the hazards are not changing. Set it to -1 to disable fixed period hazard publications and have hazards be published only when they change. This parameter will be ignored if publish_hazard_msgs is set to false.
      • raw_kinematics_min_pub_period_ms: default 25. This controls the minimum period at which the robot should publish raw kinematics information. If set to -1, it will disable raw kinematics publications. This can noticeably reduce the CPU and RAM usage of the robot. A value of 1 indicates that raw data should be published as soon as they are available. Values higher than 1 will throttle publications and will give some CPU improvement, but won't help RAM usage. The following topics are affected by this parameter: /imu, /mouse, /wheel_status, /wheel_ticks, /wheel_vels. If you are not interested in subscribing to these topics, it's recommended to set this parameter's value to -1.
      • publish_odom_tfs: default true. If set to false, the robot will not publish odometry information in the /tf topic. This can reduce the CPU and RAM usage of the robot if not needed. Note: this parameter is independent from raw_kinematics_min_pub_period_ms

      As a summary, the best performance can be obtained via

      robot_state:
        ros__parameters:
          publish_hazard_msgs: false
          publish_odom_tfs: false
          raw_kinematics_min_pub_period_ms: -1
      

      Note that publish_odom_tfs: true is required to interact with the navigation stack.

      This new version changes the default timing of some ROS 2 topics to improve the CPU performance. To restore the previous behavior users can use the following configuration

      robot_state:
        ros__parameters:
          hazards_pub_fixed_period_ms: 16
          raw_kinematics_min_pub_period_ms: 1
      

  1. ROS 2 is governed by Open Robotics. 

  2. The Bluetooth® word mark and logos are registered trademarks owned by Bluetooth SIG, Inc. and any use of such marks by iRobot is under license. 

  3. All other trademarks mentioned are the property of their respective owners.