Release Notes
5.2.0
- Key Changes:
- Added support for differential drive mobile manipulators. Please reference the configuration for the Hello Robot Stretch RE1 for an example of how to configure MoveIt Pro for this use case.
- Configuration Improvements:
- Added support for
MuJoCo
simulation backend. - The user workspace can now be built with additional Colcon arguments (like
packages_select
) usingmoveit_pro build user_workspace --colcon-args="--packages-select your_package"
- Added support for
- New User Interface Features:
- If your robot is reporting joint states outside of the defined limits in your URDF, the UI will display a warning including the joint name, state, and the violated limit.
- If your robot is erroneously reporting joint states for fixed joints, the UI will display a warning including the name of the joint that may be mis-defined in the URDF or misconfigured in the robot driver.
MTC Solutions
containing Multi-DOF joint states e.g. mobile bases can now be previewed in the UIInteractive Marker teleoperation
is now compatible with Multi-DOF joints e.g. mobile bases.- Saved
Waypoints
can now include Multi-DOF joints e.g. mobile bases. - The interface will now notify you if there’s a new version of Pro available with your subscription.
- Clicking on the version number in the help dropdown will now take you to the release notes of your version of MoveIt Pro.
- When using
Interactive Marker teleoperation
, you can now select which planning group you would like to drag.
- Behavior Changes:
- Navigation behaviors that call actions on a system running Nav2: * NavigateToPoseAction: Sends the base to a single pose using Nav2 * NavigateThroughPosesAction: Sends the base through a vector of poses using Nav2
GetMasks2D
has been updated to handle clicked points on the image. *GetMasks2D
Behavior updated to usePointStamped
as the clicked-point message type for better interoperability with otherML Behaviors
. *Segment Anything Action Server
now parses clicked points for betterSegment Anything
inference.YAML Behaviors
for saving and loading new message types have been added. MoveIt Pro now supports saving and loading: *std_msgs/Header
*geometry_msgs/PointStamped
*geometry_msgs/Quaternion
*geometry_msgs/Vector3
*geometry_msgs/Transform
*geometry_msgs/TransformStamped
- Added a
CropPointsInSphere
behavior that enables users to crop point clouds based on their radial distance from a designated frame MTC Behaviors
requiringCartesian
motion will now use an improved internal solver.GetSyncedImageFromPointCloud
now allows the topics being synchronized to have differing QoS settingsSetupMTCConnectWithTrajectory
will add a connect MTC stage to the task to join the previous stage with the start state of the next stage using a freespace trajectory.
- Other Enhancements:
- Updated SubTree turorial
- Bug fixes and performance improvements.
- Improved errors for unsupported configurations.
- Dropped mainline support for
Ubuntu 20.04
, to support continuing improvements to themoveit_pro launcher
. * Current customers can contact us at support@picknik.ai for a workaround if needed to support mission-critical 20.04 systems.
5.1.1
- Documentation fixes.
5.1.0
- Key Changes:
- MoveIt Pro no longer automatically launches RealSense cameras defined in the
cameras.yaml
. To better support different hardware configurations,cameras.yaml
is no longer required and you must launch your camera drivers yourself. We’ve included an easy migration script to convert yourcameras.yaml
to acameras.launch.xml
! - Added an
ExecuteTrajectoryWithAdmittance
behavior to allow use of the MoveIt Pro Joint Trajectory Admittance Controller - This controller has no dynamic memory allocation during execution to improve safety and reliability.
- This controller takes admittance parameters as part of the command, as opposed to a separate ROS 2 parameter interface, which makes it easier to use.
- This controller implements ‘stop-on-contact’ functionality and smooth stop trajectories.
- Added an
- Added new Behaviors and UI functionality for operator input,
RequestTextFromPrompts
andAdjustPoseWithIMarker
- Major SubTree usability enhancements in the Objective Builder
- MoveIt Pro no longer automatically launches RealSense cameras defined in the
- Full Release Notes
- Configuration Improvements:
- Removed
cameras.yaml
from MoveIt Pro’s configuration parser and launcher (see Key Changes section) - Fixed many issues with stale configurations that were caused by persistent
~/.config/moveit_pro directories
. This directory is now ephemeral, and all changes persist back to your site configuration’s source directory. moveit_pro setup_workspace
now supports cloning SSH / git@ repositories- Corrected ~ expansion in User workspace path (
{STUDIO_HOST_USER_WORKSPACE}
)
- Removed
- New User Interface Features:
- MoveIt Pro’s URDF visualizer now supports Planar and Floating joints.
- Using the
AdjustPoseWithIMarker
behavior, an Objective can now request that an operator adjust a pose within the 3D scene using an interactive marker. For example, verifying a candidate grasp pose in a user-in-the-loop pick-and-place. - Using the
RequestTextFromPrompts
behavior, an Objective can now request that an operator input textual content into a form. This enables, for example, including operator-driven prompting of an ML model within your Objective. - Improved display of SubTree descriptions in the Objective Builder
- Modifications to SubTree ports are now saved as defaults within the SubTree. Subsequent uses of the SubTree will automatically populate the ports with default values
- Visual clarity improvements to crosshair when selecting points on an image feed
- Replaced port directionality arrows in the Objective Builder with color-coded text to improve glanceability
- SubTrees are now collapsed by default in the Objective Builder, to make editing large, highly-composed Objectives less unwieldy. Manually expanding them will still keep them expanded between sessions.
- Bug fixes and performance improvements, especially for teleoperating robots without grippers
- Behavior Changes:
- Behaviors added to support grasp candidate adjustment in the UI:
AdjustPoseWithIMarker
publishes a candidate pose and returns the adjusted pose from the UIGetSyncedImages
synchronizes two camera topics, most useful for synchronizing RGB data with depth data to generate a pose from a pixel coordinate
- Added the
RequestTextFromPrompts
behavior to display textual forms in the UI - Removed internal-only
GetPoseFromUser
andGetIntFromUser
behaviors - Added template behaviors
AddToVector<T>
andResetVector<T>
which can be implemented to allow composing vectors during Objective runtime - Error message improvement to
ActionClientBehaviorBase
: - The
ActionClientBehaviorBase
behavior template now exposes agetAbortedMessage
function that returns a string. The string will be displayed in the MoveIt Studio error toast message if the action is aborted. TheExecuteFollowJointTrajectory
andExecuteTrajectoryWithAdmittance
behaviors now provide useful hints if they are aborted.
- The
- Error message improvement to
- Added
ExecuteTrajectoryWithAdmittance
(see Key Changes section) SetupMTCUpdateGroupCollisionRule
behavior’s parameters are no longer read in from a YAML file using theLoadObjectiveParameters
behavior. The behavior parameters are set as input ports.- Added
GetMeshNormalPose
behavior to calculate the surface normals of a visual mesh in the robot model - Added
PublishMarkers
behavior to publish a MarkerArray to the UI/RViz. - Added
SolveIKQueries
behavior to determine if the robot can reach a list of target poses. - New “load from YAML” and “save to YAML” behaviors for:
Octonion
Vector3
Transform
TransformStamped
Time
(builtin_interfaces)Waypoint
(moveit_studio_agent_msgs)UnorderedMap<String, Waypoint>
- Controller Changes:
- Added a
stop_accelerations
port to the MoveIt Pro Joint Trajectory Admittance Controller to allow specifying per-joint decelerations to use when halting trajectory execution, in the event of force threshold being met or other exit criteria. - Apply a second-order Butterworth filter and deadband to the force/torque sensor signal in the Trajectory Admittance Controller.
- Added a
- Planner Changes:
- The default joint-space interpolation planner is now exclusively RRTConnect, instead of both RRTConnect and Pilz PTP, to reduce the number of required configuration files for most users.
- Other Enhancements:
- Improvements to MoveIt Pro’s Docker configuration to allow better interoperability with EtherCAT-based hardware
- Numerous improvements to error messaging in the
moveit_pro
script and the included launchfiles - The MoveIt Pro installer will now attempt to version-match a requested configuration download against the installed version of Pro.
5.0.0
Major version increase. For a complete summary of required changes, refer to Migration to 5.0.0.
- Major UI Enhancements:
- Web UI Modifications: The Web UI now automatically retrieves the generated end effector URDF, enhancing integration and reducing manual configuration efforts.
- Enhanced Jog Interface: The UI dynamically queries the servo system to identify joggable joints, streamlining user interaction.
- Request Points from User: Your objective can now request that an operator click location(s) on an image stream, to help you build supervised autonomous workflows.
- UI Bug Fixes and Improvements:
- Resolved various UI issues including constraints editor malfunctions, sidebar layout fixes, and enhanced scroll interactions in multiple UI components.
- Enhanced Error Handling and User Interface Adjustments: Improved error feedback mechanisms and refined user interface elements to enhance the user experience.
- Behavior Development and Enhancements:
- Behavior Server Updates: Objective Server now supports automatic generation of
tree_nodes_model.xml
for Behavior plugins, significantly simplifying behavior management. - New Behaviors Introduced:
- Servo Towards Pose: Allows more intuitive point-and-move operations. Enables Visual Servoing applications.
- User Interactive Behaviors: Enhanced capabilities for user interaction, including getting points and poses from pixel coordinates.
- Behavior Stability: Significant stability enhancements and refactoring across various behaviors to improve reliability and performance.
- Behavior Refactoring: Complex behaviors have been converted to behavior tree objectives using a collection of simpler behaviors, adding further insight and adaptability to existing capabilities.
- Behavior Server Updates: Objective Server now supports automatic generation of
- URDF and SRDF Updates
- Enhancements to streamline the handling of robot descriptions and semantics.
- Centralized fetching of robot descriptions ensures consistent application settings.
- Gripper configurations are now directly integrated from SRDF, improving setup accuracy.
- Documentation and Tutorials:
- Added comprehensive guides on using Visual Servo Objectives and implementing pick and place operations, fostering a deeper understanding and broader application of MoveIt Studio functionalities.
- MTC (MoveIt Task Constructor) Enhancements:
- Enhanced Debugger Features:
- Solution Introspection: The MTC solution can be inspected by clicking the bug icon on the PlanMTCTask node in the behavior tree after it gets ticked. Each stage of the MTC task is labelled with a pass/fail indicator as well as time to compute and number of valid solutions.
- Runtime Metrics: Run times are now displayed in the MTC debugger, providing immediate feedback on task execution durations.
- Advanced Visualization Overlays: Introduced visualization overlays in the MTC debugger to enhance the clarity of task planning.
- Visualization and User Interface Optimizations: Improved Error Displays. Collision information is now displayed when MTC plans fail, providing detailed feedback for troubleshooting.
- Backend Enhancements and Error Handling:
- Data Storage Enhancements: Task descriptions and statistics are now stored in the backend, enabling better tracking and historical analysis of MTC operations.
- Installer and Launcher Updates:
- New Installer: Transitioned to a Debian package-based installer, facilitating a smoother installation process.
- Launcher Enhancements: Improved the moveit_pro launch script for enhanced user experience starting and managing sessions.
- Dependency Management:
- ROS and Ubuntu Snapshot Updates: Current to the latest February 2024 snapshots, ensuring compatibility and performance.
- BehaviorTree.CPP Upgrade: Updated to version 4.5.2, leveraging new functionalities and performance improvements. This update is part of broader enhancements in package management and dependency declarations, ensuring the system remains robust and efficient.
- MoveIt 2 Servo Updates: Updated to fix collision checking with attached objects, significantly improving motion planning reliability.
- Other improvements:
- Reduce memory usage, improve load times, data consistency and network efficiency.
- Stability Improvements: Multiple fixes and validations added to enhance the overall stability and reliability of the application framework.
4.0.2
moveit_pro build_workspace
reports if there are errors building or running the user Docker overlay.- Fixes to use and error reporting of symlinks.
- Fix use of symlinks to create/delete/clone objectives from REST API.
4.0.1
- Add ability to authenticate licenses offline after one-time setup.
- Allow overriding lists in robot configuration files with empty lists.
- Fix displaying prismatic joints with nonzero rotation in UI.
4.0.0
Major version increase and rebrand to MoveIt Pro. For a complete summary of required changes, refer to Migration to 4.0.0.
- Updated Terms and Conditions.
- Several user commands and folder locations have changed from
moveit_studio
tomoveit_pro
. - MoveIt Pro core Docker image no longer contains robot-specific packages, which changes user workflows.
- Major refactor of teleoperation:
- Switched to single
Teleoperate
Objective that allows user to move between different teleoperation modes without switching Objectives. - Added reusable
Request Teleoperation
Subtree that allows adding teleoperation in your custom Objectives, with configurable prompts to guide operators.
- Switched to single
- New Behaviors:
FitLineSegmentToMask3D
- Fits a line segment to a 3D point cloud fragment.LoadPoseStampedFromYaml
- Loads a stamped pose ROS message from a YAML file.
- Developer tooling:
- Modifications to Objectives and Waypoints in the UI are now synced to user workspace source code, and vice versa.
- New metadata format in
tree_nodes_model.xml
to categorize your Behaviors. - Added
SendMessageToTopicBehaviorBase
class to create Behaviors that publish to a ROS topic. - Improved error messages when Behavior ports are set incorrectly.
- Universal Robots (UR) example workspace:
- Repository renamed to moveit_studio_ur_ws for clarity.
- Removed the camera-aligned
manual_grasp_link
frame from robot description, in favor of the gripper-alignedgrasp_link
frame.
- Improved servoing for position-controller robots, which requires changes in MoveIt Servo configuration.
- New
./moveit_pro logs
command to open a log viewer. - Documentation:
- Tutorials on creating Behaviors that interact with ROS services and actions.
- New reference application pages on 3D Object Registration and Scanning and Image Segmentation using Machine Learning.
- Added ability to provide user feedback on documentation pages. Please share your feedback with us!
- UI Updates:
- Simplified interface: smaller logo, manual control options appear only when teleoperating.
- Improved validation for misconfigured ports and unconnected Behaviors.
3.0.2
- Add ability to authenticate licenses offline after one-time setup.
- Allow overriding lists in robot configuration files with empty lists.
- Fix displaying prismatic joints with nonzero rotation in UI.
3.0.1
- UI bug fixes
- Fix STOMP segfault when robot is in collision during planning
3.0.0
Major version increase. For a complete summary of required changes, refer to Migration to 3.0.0.
- Updated MoveIt version to include planning pipeline refactor and per-joint limit margins in MoveIt Servo.
- Added new Parameter Manager node to store and retrieve joint state and pose parameters set from the UI for manual control applications.
- New Behaviors:
ExtractGraspableObjectPose
- Given a Graspable Object, returns its pose to an output port.RetrieveJointStateParameter
/RetrievePoseParameter
- Retrieve joint states and poses that are set from the UI for manual control applications.PublishStaticFrame
- Publishes a static transform to the tf2 buffer.PublishString
- Publishes a string to a specified ROS topic.
- Behavior Changes:
AveragePoseStamped
- No longer an experimental Behavior. Can be used multiple times in a single Objective, improved orientation averaging, and configurable for finite-time vs. continuously running operation.- Pick April Tag Labeled Object tutorial updated with new pose averaging capabilities.
GetJointStateFromUser
removed in favor ofRetrieveJointStateParameter
.SetupMTCMoveAlongFrameAxis
- Get all input parameters from individual ports instead of a YAML file.- YAML read/write Behaviors:
- New
LoadFromYaml
,LoadMultipleFromYaml
, andSaveToYaml
base classes for authoring custom Behaviors. - All Behaviors now support absolute paths and relative paths to the configuration folder (
${HOME}/.config/moveit_pro/<config_package_name>/objectives
) folder. SaveJointTrajectoryToYaml
/SavePoseToYaml
- Refactored to reuse generic implementation.WritePoseToYaml
removed in favor ofSavePoseToYaml
.
- New
- Behavior interface for developers:
- Replaced all uses of
fp::Result
withtl::expected
. ActionClientBehaviorBase
base class now provides aprocessFeedback
function to insert user code for handling action feedback.
- Replaced all uses of
moveit_studio_agent_msgs
package moved to the publicmoveit_studio_sdk
repository.- Added integration testing reference package to
moveit_studio_ws
repository, including CI support. - UI Updates:
- New debug overlay when planning fails with
PlanMTCTask
Behavior. - Added debugging resume button to be used along with
BreakpointSubscriber
Behaviors. - Allow streaming images from arbitrary ROS topics.
- Show pre- and post-conditions in Behavior Tree editor.
- Trajectory previewing: Display planning algorithms, replaced stepped with simplified approval view.
- Removed Logs tab.
- New debug overlay when planning fails with
2.11.0
- New Behaviors:
- Point Cloud Manipulation Behaviors:
MergePointClouds
- For merging multiple point clouds into a single cloud.AddPointCloudToVector
- Adds a point cloud to a vector of point clouds.TransformPointCloud
,TransformPointCloudFrame
- For transforming point cloud frames.
- Grasping and Planning Behaviors:
AddSubframeToObject
,GetGraspAndTwistSubframes
,GetMoveAlongArcSubframes
- For interacting with object affordances in planning tasks.TransformPoseWithPose
- For applying transforms (as poses) to poses.PublishStaticFrame
- Publishes static transforms to tf2.
- Utility and Testing Behaviors:
ReadTextFileAsString
- Reads the contents of a text file as a string.LoadSubframesFromYaml
- Loads a set of frames from a persisted file.LoadPoseStampedVectorFromYaml
- Loads a set of PoseStamped objects from a yaml file into a vector.GenerateObjectsInBox
- For testing; can be used to generate random cuboids in a bounding volume.ForEachPoseStamped
- Iterates over a vector of poses.
- Behavior Changes:
LoadPointCloudFromFile
- New scaling factor added for resizing imported meshes if needed.GetMasks2DAction
- Option added for filtering masks by object classes.
- Documentation changes:
- Significant changes have been made to the developer overlay workflow, for more information refer to Migration to 2.11.0.
- New tutorials for retrieving the latest message from a topic.
- New tutorial for publishing a message to a topic.
- UI Updates:
- Additional color and skinning updates to the Behavior Tree panels.
- Fixed synchronization issues when deleting Behavior Tree nodes.
- Prevent users from updating subtrees in certain scenarios.
2.10.0
- New and modified perception Behaviors:
RegisterPointClouds
- Finds the pose of a target point cloud relative to another point cloud using the Iterative Closest Point (ICP) algorithm.GetGraspableObjectsFromMasks3D
- Outputs a GraspableObject for each point cloud fragment represented by a 3D mask.LoadPointCloudFromFile
- Now supports loading point clouds in either.pcd
or.stl
formats.
- New MoveIt Task Constructor Behaviors and Functionality:
SetupMTCAttachObject
andSetupMTCDetachObject
- Can be used to attach or detach a GraspableObject from the planning scene to a robot frame.SetupMTCUpdateObjectCollisionRule
- Enables adjusting collision rules between GraspableObjects and other entities in the planning scene.- Add additional logging for error states when initializing MTC tasks.
- Better error handling for misconfigured planning groups in MTC Behaviors.
- Improvements to Cartesian Path Planning:
- Additional information on Path IK failures will be logged to the MoveIt Studio console.
PlanCartesianPath
andValidateTrajectory
- Will always return a complete or partial debug solution for use in trajectory previews.- Refer to the Cartesian Path Following tutorial for additional information.
- Updates to Manual Control and teleoperation:
- Pulled in additional fixes and upgrades for MoveIt Servo that may require updates to configuration packages.
- Added support for switching planning groups when Teleoperating.
- New user guides for connecting MoveIt Studio to hardware:
- For basic configuration refer to Use MoveIt Pro With Hardware.
- Instructions for Running MoveIt Pro as a Distributed System.
- Removed some hardware drivers from core MoveIt Studio binary images.
- Most notably the ROS 2 Robotiq Gripper Drivers.
- For more information refer to Migration to 2.10.0.
- Removed experiemental TAMP Behaviors previously added in 2.8.0.
- Please contact us if you require access to Behaviors such as
GetPlanUsingTAMP
orCreateBehaviorTreeFromTaskPlan
.
- Please contact us if you require access to Behaviors such as
- UI Updates:
- Tweaked color schemes for W3C compliance for color-blindness.
- Adjusted Joint Sliders in the Manual Control tab to support prismatic joints.
- Port descriptions for Behaviors are now shown in the Objective Editor’s sidebar.
- Added navigation between the Behavior Tree status window directly to the Objective Editor.
- General improvements for nested subtrees.
2.9.1
- Fix issues with collision checking in manual control.
2.9.0
- Upgrade to newer versions of MoveIt Task Constructor and MoveIt2.
- New motion planning Behaviors:
PlanCartesianPath
,ValidateTrajectory
andExecuteFollowJointTrajectory
- Behaviors to compute, validate, and execute Cartesian trajectories.SaveJointTrajectoryFromYaml
andLoadJointTrajectoryFromYaml
- Saves/Loads joint trajectories from/to the blackboard in yaml format.GetAffordancePoses
- Returns a vector of affordance stamped poses relative to a graspable object’s reference frame.
- Cartesian Path Following tutorial updated for new Behaviors.
- New perception Behaviors:
GetMasks3DFromMasks2D
- Given a point cloud of a scene and 2D masks from an image of the scene, output a point cloud mask for each image mask.GetPointCloudFromMask3D
- Returns a point cloud with the points selected by a 3D mask.ForEachMask2D
andForEachMask3D
- Iterates through a vector of image or point cloud masks.
- UI Updates:
- Ability to visualize SPHERE and LINE_LIST Rviz Marker primitives.
- Show previews of robot waypoint poses.
- Ability to specify planning group from IMarker.
- Add ability to edit node name.
- Print message when writing pose yaml to file.
- Improve user experience when editing and including subtrees.
2.8.2
- Fix crashing issues for teleoperation when MoveIt Servo is misconfigured.
- Remove unused dependencies from the MoveIt Studio containers.
2.8.1
- Fix startup problems that may prevent MoveIt Studio from launching on some machines.
- Add troubleshooting steps for when conflicting applications are holding onto port 80.
2.8.0
- Ability to teach pose offsets from AprilTags using the UI.
- Added several new Behaviors to support this workflow.
- (Experimental)
AveragePoseStamped
– Averages estimated AprilTag poses to mitigate detection noise and stabilize results. CalculatePoseOffset
- Calculates the offset transform from a source pose to a destination pose, relative to the source pose’s coordinate frame.WritePoseToYAML
- Writes a pose to a YAML file.TransformPoseFromYaml
- Transforms a pose using another pose contained in a YAML file.- Pick April Tag Labeled Object tutorial updated to reflect this new feature.
- Upgraded to latest version of MoveIt Servo.
- Separated
Teleoperate
Behavior and Objective intoTeleoperate Joint Jog
andTeleoperate Twist
.
- Separated
- New motion planning Behaviors:
AddCartesianPoseToSequence
andSetupMTCCartesianSequence
- Enables setting up a sequence of poses and planning through those poses.CreateJointState
- Create a valid joint state for your robot given joint names and position values.MoveToJointState
- Moves to a specified input joint state provided.SetupMTCFromSolution
- Provides an alternative toSetupMTCCurrentState
to initialize a MoveIt Task Constructor (MTC) task from the final state of a previously computed solution.
- New perception Behaviors:
LoadImageFromFile
- Loads an image from a file as a ROS Image message.GetSynchronizedCameraTopics
- Retrieves time synchronized RGB image, point cloud, and camera intrinsics data from ROS topics.FindMaskedObjects
- Segments a point cloud given image segmentation masks and returns graspable object representations.CropPointsInBox
- Segments a point cloud given a rectangular region of interest (ROI).
- New experimental Behaviors for Task and Motion Planning (TAMP):
GetPlanUsingTAMP
- Requests a plan from a ROS 2 Planning System (PlanSys2) planning server.CreateBehaviorTreeFromTaskPlan
- Builds an Objective given a task plan and a mapping between task actions and Subtrees.
IsForceWithinThreshold
Behavior refactored to be reusable in loops by reinitializing its running counters.- Switch default inverse kinematics (IK) solver in UR example configuration to TRAC-IK.
- UI updates:
- Create input and output port remappings for Subtrees.
- Toggle log levels for controlling the amount information displayed on the screen.
- “Convert to Subtree” menu options moved into context menus.
- For more information on incompatibilities introduced with this version, refer to Migration to 2.8.0.
2.7.0
- Simplified installation process by significantly reducing number of prompts in favor of default values.
- Added configuration variable to toggle whether MoveIt Studio should use a host-mounted DDS configuration file.
- Behaviors
- Renamed
MoveToJointState
Behavior toMoveToWaypoint
, as it accepts a Waypoint name as input. - New
BiasedCoinFlip
Behavior to simulate probability of success for testing purposes. - New
GetMasks2DAction
Behavior that sends images to a ROS action server using this GetMasks2D interface for segmentation tasks. - Reduce transform lookup errors in
FindSingularCuboids
Behavior.
- Renamed
- UI updates
- Added support for Condition nodes in Behavior Tree editor.
- Expanding a collapsed Behavior Tree node performs automatic layout only on the expanded nodes.
- For more information on incompatibilities introduced with this version, refer to Migration to 2.7.0.
2.6.0
- Added automated monitoring and restart capabilities to MoveIt Studio backend services.
- Consolidates the Agent and Bridge processes into a single deployable service. See the Advanced Launch Configurations guide.
- For users building in custom Docker overlays, this will require changes to your compose file. For changes refer to Migration to 2.6.0.
- Additional improvements for the parallel planning pipeline.
- Added new MoveIt Studio SDK for external consumption.
- Enables users to interact with MoveIt Studio Objectives using a simple Python interface.
- For more information refer to the Python API User Guide.
- Initial support for setting constraints on generated MTC motion plans
- New Behaviors include
InitializeMotionConstraints
andAppendOrientationConstraint
. - Includes a user interface for building orientation constraints.
- New Behaviors include
- Updated developer tooling for building on MoveIt Studio binary Docker images. For more information refer to the Docker Developer Guide.
- Documentation and support for launching multiple cameras on different machines added in the Hardware Setup Guide.
- Initial support for grasping with an EPick Vacuum gripper.
- Added a new Behavior
SetupMTCGenerateVacuumGrasps
, for generating vacuum grasp poses with MTC. - Driver development is ongoing in the ros2_epick_gripper repository.
- Added a new Behavior
- Updates to Universal Robots example workspace
- Added a pinch link to prevent UR arms from planning or moving through dangerous pinch poses.
- New sample contstrained planning Objective
Constrained Pick and Place
added in thepicknik_ur_mock_hw_config
configuration package.
- UI updates
- New unified interface for manual control.
- Additional logging when starting, stopping, and completing Objectives.
- Improved functionality when expanding/collapsing Behavior Trees, including state saving in the Objective Editor.
- General improvements and fixes to the admittance controller tuning utility.
- Added search capabilities to the Behaviors sidebar in the Objective Editor.
- Added shortcuts for opening the Objective Editor from the execution panel.
2.5.2
- Fix issues with rendering custom end effectors when previewing grasp poses.
2.5.1
- Fix issues mounting host directories for some shell environments.
- Minor documentation content updates and formatting fixes.
2.5.0
- Command-line interface updates
- User workspace is not automatically built every time MoveIt Studio is launched.
- Allow switching between configuration packages without prompting to delete host-mounted configuration folder.
- Improvements to Docker images by creating non-root users at container startup time.
- Additional checks for user environment configuration at install and run time.
- For more information, refer to the Migration Guide.
- New Behaviors for AprilTag pose detection, including
Detect Apriltags
andGet Detection Pose
. - New
Transform Pose
Behavior for modifying an existing pose object. - MoveIt Task Constructor Behavior updates
- Split
Setup MTC Pick Cuboid
into separate Behaviors for approach, grasp generation, and retract. For more information, refer to the Migration Guide. - Behavior category name changed from “MTC” to “Task Planning”.
- New Behaviors to enable concurrent planning and execution, including
Get Current Planning Scene
,Setup MTC Fixed Joint State
,Push To Solution Queue
, andWait and Pop Solution Queue
- Split
- Run multiple MoveIt motion planners in parallel with
Setup MTC Move To Joint State
Behavior. - New
moveit_studio_vision_msgs
package which contains ROS 2 interfaces for AprilTag detections and graspable objects consisting of cuboids and planar surfaces. - Added ability to display cuboid objects from a MoveIt planning scene in the MoveIt Studio web app.
- Removed built-in support for Kinova robots from the core MoveIt Studio package. For more information, see the Migration Guide.
- Updates to Universal Robots example workspace
- New machine tending simulation scene for default mock hardware configuration package.
- Updated Gazebo configuration package to demonstrate AprilTag based pick and place applications.
- Parallel sampling-based and joint interpolation planning is on by default when moving between Waypoints.
- UI updates
- Improved interactive marker performance.
- Easier to select connection lines in Objective Builder.
- Display planner names in trajectory previews.
- Visible error message when WebGL for graphics rendering is unavailable in a web browser.
- Automatically determine end effector coordinate frame name for endpoint and joint jogging.
- Support arbitrary metadata categories for custom Behaviors in the sidebar.
- Bug fixes.
2.4.1
- Performance improvements for interactive marker based endpoint control.
- Fixed some issues with the ./moveit_studio command surrounding user licensing.
2.4.0
- Robot configuration packages now support multi-level inheritance. For more information refer to the Migration Guide.
- Custom meshes now render in the web app. For more information refer to the Migration Guide.
- Updates to Universal Robots example workspace
- Update configuration packages to use multi-level inheritance.
- MoveIt configuration now includes the STOMP optimizing motion planner and Anytime Path Shortening (APS) adapter.
- Switch between different UR arm models with one configuration parameter.
- Run multiple MoveIt motion planners in parallel with
Move to Joint State
andMove to Pose
Behaviors. Find Singular Cuboids
Behavior now allows setting the parent frame instead of using the camera frame by default.- pick_ik inverse kinematics plugin version updated for bug fixes and new features.
- Enhancements and functional fixes to interactive marker based endpoint control.
- Update Behavior Trees concept documentation with more resources.
- UI updates: Added description tooltips to favorites Objectives, scroll wheel always zooms in Behavior Tree editor, consistent use of terminology in menu items.
2.3.0
- MoveIt Studio now runs without root user. For more information refer to the Migration Guide.
- Documented installing and running MoveIt Studio in virtual machines on Windows and macOS.
- New
Looping Pick and Place
demonstration Objective. - New Behaviors for fetching images and camera information.
- Joint slider controls will now show a preview of the robot.
- Support for adding favorite Objectives directly in XML.
- Major documentation reorganization and updates.
- Automated force-torque sensor zeroing behaviors for UR + Robotiq deployments.
- Improvements in the UI for P-stop manager workflows.
- Additional services for RViz and the MoveIt Setup Assistant in the launch tool.
- New Objectives and features for the included UR5e mock hardware and Gazebo simulations.
- Error codes will pass from MoveIt to the user interface.
- Additional information in error messages when Objectives are missing required hardware.
- Bump UR and Robotiq Gripper dependencies for URDF fixes and improvements.
- Additional warnings in the UI for unsupported URDF options.
- Display more useful errors with planning with empty MTC tasks.
- Joint endpoint units and language updates to support prismatic joints.
- Adjustments to the default ports used by the MoveIt Studio application.
- Popup changes for creating new Objectives and Behaviors.
- Browser warnings for unstable Formant connections.
- Improvements to the install, configuration, and launch scripts for dependency checks.
- Fixed application healthchecks on launch when loading the UI.
- Fixed issue when loading nodes model files in user workspaces.
- Fixed building issues in user workspaces both with the launch option and on application start.
- Fixed and modified keyboard shortcuts in the Objective Editor.
- Fixed Objective YAML circular configuration updating and persisting.
- Fixed timing and reset problems with endpoint control using the interactive marker.
- Fixed editing issues with subtree layouts, tree creation, and inclusion in the Objective Editor.
- Fixed admittance control tuning panel reload on save problems.
2.2.3
- Change default MoveIt Studio application port usage.
- Update the Docker user group checks during the install process.
- Update user documentation with additional instructions for virtual machines.
2.2.2
- Fixing typos in the installation and launching documentation.
- Rename waypoints and update Objectives in the default PickNik UR configurations.
2.2.1
- Include frame ID checks when showing grasp candidates in the UI.
- Adds a
Call Trigger Service
behavior to the defaulttree_nodes_model.xml
. - Fixed saving subtrees when they are created from new Objectives.
- Fixed breaking issues when adding subtrees to themselves.
- Fixed duplicate pastes when copying and pasting Behaviors when editing ports.
2.2.0
- Initial support for inclusion of subtrees in Objectives, and for creating and modifying them through the Objective Editor.
- New API and button to download all logs as a zip file from the logging tab.
- Added undo/redo functions and buttons to the Objective Editor.
- Added tooltips and safety checks to the joint jogging control interface.
- Interactive marker for Cartesian endpoint control.
- New tutorial for interacting with MoveIt Studio’s Do Objective Action Server.
- Ability to reset the camera view for kiosk mode deployments.
- New base Behavior class for getting the latest message published on a ROS topic.
- Additional functionality for headless deployments and configuration have been added to the MoveIt Studio launch utility.
- Moved the
standard_tree_nodes_model.xml
and includedtree_nodes_model.xml
to standard, included locations. For changes refer to Migration to 2.2.0. - Timeouts and additional checks for Formant enabled deployments.
- Adjusted MoveIt Servo parameters for UR Robots to the most up-to-date configuration.
- Fixed verbosity for top level Behaviors when running Objectives.
- Fixed inability to copy text from toast warning popups.
- Fixed issues with creating and recreating publishers and subscribers in abstract Behavior classes.
- Fixed issues with the “Clear Snapshot” Objective.
- Fixed error messaging for some Objectives with specific hardware requirements.
- Fixed port validation in the Create Behavior API.
- Fixed issues with marker rendering and overlapping in the nav bar.
- Fixed issues for camera controls in the preview window.
- Fixed re-rendering robot previews when approving trajectories.
2.1.1
- Adjust subtree editing warnings in the Objective Editor.
- Minor adjustments to the install process to install tagged versions of the MoveIt Studio user workspace.
2.1.0
- Added copying and pasting of Behaviors in the Objective Editor.
- Added running of Objectives by ID in the Objective Server.
- Added recursive editing of yaml parameters in the Objective Editor.
- Added joint sliders to the Joint control panel for joint-by-joint jogging.
- Added new Behavior and functionality for logging during Objective execution.
For more information see the Making a Hello World Behavior tutorial, and the new
LogMessage
Behavior. - Added a
task_id
port to MTC planning behaviors for solution storage and introspection. For changes refer to Migration to 2.1.0. - Added documentation and feedback links to the user interface settings dropdown.
- Added machine learning Behaviors and tutorials in Adding ML Perception to Objectives.
- Added the UR5e xacro to prevent planning through pinch geometries in the wrist.
- Fixed issues related to rendering different Behavior Tree layouts.
- Fixed a critical bug causing stability issues in ros2_control Humble.
- Fixed scrolling issues in the waypoints dropdown menu.
- Fixed issues with missing camera configurations for simulated environments.
- Fixed issues in launch monitoring logic when launching MoveIt Studio.
2.0.2
- Fixed built-in pick and place Objectives for BT.CPP 4.1.
2.0.1
- Added documentation for launching MoveIt Studio with Gazebo simulation. For more information see Gazebo Configuration Guide.
- Fixed issues with large joint jumps in MoveIt Servo for the UR5e robots.
- Fixed issues in the Waypoints API and editor.
- Fixed unhandled exceptions in the Objective Server.
2.0.0
Major version increase. For a complete summary of required configuration changes refer to Migration to 2.0.0.
- Upgraded to BehaviorTree.CPP 4.1.1. For required changes refer to Migration to 2.0.0.
- Added a new web-bridge for isolated, local MoveIt Studio deployments.
- Added additional tutorials for custom Behavior generation and workspace testing. For more information see the Getting Started page.
- Added support for tuning admittance control parameters to the user interface. For more information refer to Configure Admittance Control.
- Added additional Behavior interface base classes for simplifying building of customer Behaviors. For more information refer to the List of Core Behaviors documentation.
- Added a public MoveIt Studio user workspace. For more information refer to Configuring a Custom Robot.
- Added support for including multiple
tree_nodes_model.xml
files in user workspaces. - Added messaging to the user interface for MoveIt Servo statuses (e.g. approaching singularities or joint limits).
- Added an
UpdatePlanningSceneService
Behavior for improved collision scene monitoring. - Added a
ForEach
decorator node for iterating over values in a Behavior Tree. For more information refer to the List of Core Behaviors documentation. - Added overlay Docker images and instructions for developing MoveIt Studio Behaviors from containers. For more information see Create Overlay Docker Images.
- Added ability to modify the servo speed from the Cartesian and Joint control panels.
- Added support for logging at different levels from Behaviors to the MoveIt Studio user interface.
- Improvements to the Logging panel in the MoveIt Studio user interface.
- Improvements for database synchronization in the Objective Editor.
- Fixed warnings for missing configuration in base and site config parameters.
- Fixed issues related to DDS configuration generation.
- Fixed issues with animations and lagging in the user interface.
- Fixed segfault issues related to Robotiq Gripper connections.
- Fixed issues with the
JointTrajectoryController
and success criteria in ros2_control Humble. - Fixed issues related to Behavior Tree layouts in the Objective Editor.