Skip to main content

6.5.1

· One min read

Bug Fixes

  • Fixed an issue where DDS tuning parameters were not correctly installed until after a reboot.
  • Fixed an issue where moveit_pro shell fails if no docker-compose.yaml exists in the user workspace.
  • Fixed an issue where default values in behavior tree XML files were not populated when created via the UI.
  • Fixed an issue where the UI could crash if drivers stopped publishing joint states while running the Teleoperate objective.
  • Fixed an issue where saved planning scenes did not load after relaunching Pro.
  • Fixed an issue to resolve the relative path of Pick AprilTag Labeled Object objective.

6.5.0

· 6 min read

Major Features

Interactive definition of keep-out zones

The MoveIt Pro UI now provides a convenient interface for defining "keep-out zones" for regions you want to temporarily prevent your robot from planning motion into.

Occupancy Grid visualization

When using Nav2, the MoveIt Pro UI will now automatically display the occupancy grid in the visualization pane.

Save and load Planning Scenes from the UI

The MoveIt Pro UI now provides the ability to save and load MoveIt PlanningScenes to/from files. In conjunction with the keep-out zone feature, this can allow you to rapidly prototype a work area without adding environmental collision geometry to your URDF.

Mujoco Interactive Viewer

Launching pro with the mujoco_viewer in a config set to true will now launch both the MoveIt Pro UI and Mujoco viewer in an interactive state. You can make changes to the Mujoco simulation that are reflected in MoveIt Pro and vice versa.

New default workspace and config: introducing lab_sim

The new default MoveIt Pro workspace is the moveit_pro_example_ws, found here. The default config is now lab_sim, featuring a UR arm on a rail in a pharmaceutical environment. This workspace still contains the moveit_pro_ur_configs from past MoveIt Pro versions.

Other changes

  • Non-core behaviors, including user defined Objectives, show up as "Uncategorized" by default instead of "Miscellaneous" if no category is given.
  • Update ROS Humble snapshot to 2024-11-04.
  • Update moveit2 submodule to commit 5049e4d.

New Behaviors

  • Adds a GetCentroidFromPointCloud behavior, that estimates the cloud centroid given an input point cloud using pcl::compute3DCentroid, outputting a pose with the same header.
  • Adds ConvertMTCSolutionToJointTrajectory, SetupMTCPlaceFromPose, and SetupMTCPickFromPose to the core library from the previous example_behaviors config. The source code for these behaviors is still visible in that config.

Behavior Changes

  • Behaviors that inherit from ActionClientBehaviorBase must now set a positive timeout with the port goal_result_timeout. Setting 0 returns complete as soon as the action goal is accepted and setting a negative number blocks indefinitely until the action returns a result.

UI Changes

  • The subtree category in the Objectives sidebar now displays the number of objectives within it.
  • Core MoveIt Pro Behaviors now have better subcategorization in the Edit mode, making them easier to find.
  • Hovering over the abbreviated objective description will show the entire description.
  • Subtree port remapping definitions are now defined in the root node of the behavior tree being referenced instead of in the consuming SubTree node, making SubTree nodes' port edit menu behave similarly to all other port edit menus.
  • Adds visualization of the Occupancy Grid via Nav2 to the Visualization Pane of Pro, allowing users to now see Nav2 Occupancy Grid data without using rviz.
  • Visual enhancements when in tri or quad screens, including shrinking play controls.
  • Joint Groups are now only referred to as Planning Groups for consistency.

Documentation Improvements

Other Improvements

  • Questions during the setup process are now more clearly indicated with bolded text.
  • Robot config packages are more clearly listed when running moveit_pro configure.
  • Robot config packages now parse the package.xml to properly report config errors.
  • REST API errors are more clear for debugging purposes.
  • The default Cyclone DDS config was modified to better accommodate large messages on ROS topics such as point clouds. Behaviors such as GetPointCloud should execute much faster now.
  • Objective files are now formatted in a more readable manner when edited by the MoveIt Pro UI.
  • Velocity-Force Controller improvements:
    • Added support for 'control frames'.
    • Added a field in the command to specify motion to execute in the nullspace.
  • All CLI commands have received better prompts.
  • Installing MoveIt Pro now utilizes git-lfs to shrink the size of the moveit_pro_example_ws.

Bug Fixes

  • IMPORTANT: Fixed an issue where moveit_pro build fails when switching between workspaces. In order to fix this we had to revert a previous bug fix from 6.4 to use the docker-compose.yaml in the user workspace so for now this configuration will not be read by the moveit_pro CLI.
  • Fixed an issue where copy-pasted or duplicated behavior nodes in the behavior tree editor would erroneously retain read-only state if copied from within a subtree.
  • Un-built user workspaces will no longer erroneously throw a "missing environment variable" error on startup and will instead indicate hint that your workspace might not be built or sourced.
  • Fixed an issue where it was possible to connect two parents to one Behavior Tree node.
  • Fix CMake cyclical dependency issue that displays multiple "There is a cycle in the constraint graph" warnings during builds.
  • Fixed moveit_pro run showing all packages even if the user already selected a package.
  • Fixed an issue in cyclonedds that would cause Pro to crash during long-running objectives.
  • Fixed a bug where waypoints may fail to be edited on systems using FastDDS.
  • Fixed an issue where modifying a behavior tree could result in newlines being erroneously stripped from the file.
  • Fixes incorrect handling of the mass matrix in the Joint Trajectory With Admittance controller.
  • Fixes a bug causing loss of the Teleoperation modal when the Manual Control Tab fails to load.
  • Fixed keepout zone positioning in the UI not matching the ROS backend and inability to set negative integers for positions.
  • Fixed a middleware issue crashing MoveIt Pro after a day or longer of operation.
  • Fixed newlines being parsed out of xml files by MoveIt Pro UI changes to behaviors.
  • Fixed orbit controls being enabled during Teleop iMarker control, making it difficult to move the robot
  • Fixed inability to select text in the Behavior Search Bar.

6.4.0

· 2 min read

New Features

  • Added the export_logs CLI verb, creating a simple and efficient way to add log files to support requests.

UI Changes

  • Improved general UI performance when point clouds are present in the visualization pane.
  • The UI now remembers which panes you were looking at and displays them by default on next launch.
  • Waypoint and Objective Sidebars have been moved to the left side of the screen along with their toggle buttons. This greatly decreases cursor travel.
  • Joint Jog sliders are now disabled when collision checking is turned off.
  • The Joint Jog Slider Panel is now attached to the Visualization View.
  • Pose Jog Teleoperation buttons only exist within the primary view.

Documentation Improvements

  • Update MuJoCo config migration docs on retrieving the generated robot URDF
  • Added troubleshooting tips for docker-compose.yaml issues

Bug Fixes

  • Fixed numerous issues causing strange behavior and extraneous “File Conflict” warnings while editing behavior trees in the UI
  • Fixed an issue where the marker generated by AdjustPoseWithIMarker would not be removed from the UI upon cancellation of a running behavior tree
  • Fixed packages appearing in a random order when using commands like moveit_pro configure.
  • moveit_pro build now uses the user_ws docker-compose.yaml instead of always defaulting to the main docker-compose.yaml
  • Other minor fixes and improvements
  • Add dev service to installed docker-compose file so moveit_pro shell works when there is no docker-compose in the user workspace
  • When first node in a subtree is a comment node, and that subtree is expanded, the comment will no longer show in the UI blocking the visualization of the behaviors
  • The UI no longer flashes an incomplete rendering when initially switching to the Interactive Marker.
  • Moved Pose Jog buttons to a more stable position that are unaffected by other UI elements.
  • Updating objective name no longer throws error if subtree only checkbox is not toggled.
  • Added “Loading Objective” Prompt to top bar showing when a new objective is loading as opposed to showing the value left behind from the previously run objective.
  • “Approve Trajectory” message in Interactive Marker mode is correctly centered and positioned on screen.

6.4.1

· One min read

Bug Fixes

  • Fixed a bug where the subsampling of trajectories generated via motion planning was not guaranteed to include the last point in the trajectory, which could lead to non-zero ending velocities of the trajectory.

6.3.3

· One min read

Bug Fixes

  • Fixed a bug where the subsampling of trajectories generated via motion planning was not guaranteed to include the last point in the trajectory, which could lead to non-zero ending velocities of the trajectory.

6.3.2

· One min read

Bug Fixes

  • Fixes a bug where vector types on the blackboard in a behavior tree that cross a subtree boundary could throw an error related to converting between vector<T> and vector<Any>.

6.3.1

· One min read

Bug fixes

  • moveit_pro configure now lists packages in the workspace
  • In Offline Mode, "ROS invoked from outside a ROS context provider!" will no longer be thrown if an offline license is valid

6.3.0

· 2 min read

Major Features

Enables use of Velocity Force Controller (VFC) as a Velocity-only controller if no force-torque sensor is available.

Other changes

  • Bumps MoveIt2 dependency to later version with bugfixes.
  • Adds support for multiple keyframes in ros2_mujoco descriptions.
  • Passes robot_description_kinematics to RViz for IK debugging.

Behavior Changes

  • VFC publishes state and has timeouts for loading robot model.
  • VelocityForceSetpointGenerator exposes scaling factors through ports.
  • LoadObjectiveParameters will fail with an empty file.
  • kMaxEigenVectorCapacity upped from 16 to 32
  • Updated NavigateToPoseAction and NavigateThroughPosesAction Behaviors with an input port flag to ignore the timestamp of the PoseStamped messages that are passed into those Behaviors. Setting this flag to true should stop Nav2 from printing an warning/error regarding extrapolation into the past.

UI Changes

  • Description and subcategory metadata applied to subtree definitions is now respected in the behavior tree editor sidebar.
  • Offline version handling.

Documentation Improvements

  • Reorganized docs.picknik.ai documentation into clearer categories.
  • Updated setup instructions for increased clarity.
  • Removed out-of-date document.
  • Additional support for Parallels.
  • Running an Objective documentation accurately reflects v6 UI improvements.
  • Updated documentation regarding when to use the robot_driver_persist_launch_file and simulated_robot_driver_persist_launch_file
  • Updated documentation for tool changing.
  • Added documentation on optional JTAC parameters.
  • Added documentation to the tip_offset input port of the PlanCartesianPathBehavior

Bug Fixes

  • Request clicked point service no longer stops advertising.
  • Various typos and grammar updates.
  • Renaming a SubTree no longer breaks Objectives containing that SubTree.
  • Cloning and editing a SubTree no longer modifies the original SubTree, breaking some Objectives.
  • Fixes an issue in the simulator preventing use of multiple Force Torque sensors.
  • Bug fix for get clicked point unadvertising irregularly.

Migration Guide

No steps are necessary to migrate from 6.2 to 6.3.

6.2.0

· 4 min read

Major Features

Tool changing support

The ability to plan around collisions and visualize your robot while exchanging tools has been a popular feature request by users. We are pleased to announce support for this use case as well as MoveIt Pro simulator support for modeling tool change devices!

Refer to the new Tool Changing guide to configure this feature in your application.

New moveit_pro dev command

During the course of development, changes to your MoveIt Pro Docker image or user workspace may cause MoveIt Pro commands such as run to fail in such a way that the container cannot be started. When the container fails to start properly, moveit_pro shell has no container to enter, which can make diagnosing the source of failure difficult.

The new moveit_pro dev command enables you to start and enter a new container without building your user workspace packages or starting any MoveIt Pro services. In scenarios where run fails to start the container, use dev to diagnose the source of failure.

note

You need to define a dev service in your user workspace docker-compose file if not already defined for this service to work. See the dev service definition in the default UR workspace docker-compose.yaml as an example of this.

note

When your MoveIt Pro commands are working correctly, you should still use shell command when you want to enter the container. The dev command starts its own container which by default runs no MoveIt Pro services. If the dev container is present the shell command will open a shell session into it instead of the "agent_bridge" container enabling further troubleshooting or manually launching MoveIt Pro services as needed.

Ubuntu 24.04 (Noble Numbat) support

MoveIt Pro is now supported on the latest Ubuntu LTS release, 24.04.

As of this release, our supported platforms are

  • Ubuntu 22.04
  • Ubuntu 24.04
  • Debian Bookworm
  • VMware for Windows with Ubuntu 22.04
  • Parallels for OSX with Ubuntu 22.04

Using Parallels for OSX and VMWare for Windows with Ubuntu 24.04 is possible but may require extra setup due to current limitations in Parallels/VMWare out of box support for 24.04.

Other changes

Behavior Changes

  • LoadPointCloudFromFile allows specifying the file path either relative to a ROS package or as an absolute path.
  • Adds index output port to ForEach decorator node to enable getting unique IDs for each element.
    • This is useful if you use the ForLoop to create objects and you want to give it a unique name using its index.

UI Changes

  • Adds "Control Flow" category to all built-in Decorators and Controls behaviors.
  • Removes the top level of folderization of the Behaviors sidebar.
    • Behaviors without subcategory metadata (as explained in the Making a Hello World Behavior guide) will be placed in the Miscellaneous category.

Documentation Improvements

Bug Fixes

  • Fixes RCL guard condition failure.
  • Fixes port type in VisualizeMesh.
  • The UI now correctly displays that the contents of a subtree are uneditable without editing the subtree directly.
  • Prints correct config to screen after a launch time config change.
  • Fixes width of Edit Objective menu.
  • Fixes ports being ignored in the wrong place.
  • Fixes missing quaternion in SelectableMarker.
  • Reduced the incidence of erroneous "file conflict" warnings in the Behavior Tree Editor. We expect a complete fix in a later version soon.

Migration Guide

No steps are necessary to migrate from 6.1 to 6.2.

6.1.1

· One min read

UI Improvements

  • Added a placeholder screen to the status visualizer when MoveIt Pro has been started but no Behavior Tree has been instantiated.

Bug fixes

  • Fixed an issue where the end effector path preview may not populate correctly during trajectory preview.
  • Fixed a bug where the color and size of planning scene objects was not respected properly in the UI.
  • Fixed an issue where the UI would start in the two-pane layout even if you had cameras present.