ros2 / ros2/common_interfaces

Proposal - Add `geometry_msgs/Wrench` support to `trajectory_msgs` message types

Open
#284 2 comments 3 reactions 1 assignee View on GitHub

@bmagyar is already working on this.

Since Jun 12, 2025.

enhancement
Dominant language
C++
Stars
393
Forks
157
PR merge metrics
No merged PRs in 30d

Description

Description

This proposal suggests adding an optional geometry_msgs/Wrench field to the existing trajectory_msgs/JointTrajectoryPoint and trajectory_msgs/MultiDOFJointTrajectoryPoint message definitions. This addition would allow force and torque data to be integrated alongside position, velocity, and acceleration in trajectory messages.

Motivation

Many robotics applications require the ability to command force and torque (wrench) values in addition to trajectory information. For example, there are admittance control strategies, different from the one proposed in ros2_controllers, that could benefit from sending wrench data as a feedforward signal to a controller managing both pose and force control within the same message. Even the existing admittance controller in ros2_controllers could potentially be simplified by including the wrench reference directly in the trajectory message, eliminating the need for a separate subscriber to retrieve the wrench.

Currently, neither JointTrajectoryPoint nor MultiDOFJointTrajectoryPoint supports wrench data, which often necessitates the creation of custom message types.

Design / Implementation Considerations

The proposed modification is to add an optional geometry_msgs/Wrench field to both JointTrajectoryPoint and MultiDOFJointTrajectoryPoint messages.

Additional Information

I have developed custom controllers that depend on this functionality and implemented a workaround using private, custom message definitions in a separate repository. I believe this feature would be beneficial to the ROS 2 community. I am willing to contribute to the development of this change. I will start by participating in community discussions. If the change is accepted, I will submit a pull request aligned with your feedback and the ROS 2 contribution guidelines.
I am also open to any suggestions or modifications that could improve the proposal and better fit the needs of the community.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.