Skip to content

arm: emit end-effector pose from TrossenArmProducer#269

Open
abhichothani42 wants to merge 2 commits into
eef-02-mcap-backendfrom
eef-03-arm-producer
Open

arm: emit end-effector pose from TrossenArmProducer#269
abhichothani42 wants to merge 2 commits into
eef-02-mcap-backendfrom
eef-03-arm-producer

Conversation

@abhichothani42

@abhichothani42 abhichothani42 commented Jun 28, 2026

Copy link
Copy Markdown
Collaborator

Summary

TrossenArmProducer now co-emits an EndEffectorPoseRecord alongside each JointStateRecord.

Changes

  • Emit EndEffectorPoseRecord per poll() call. Position fields [x, y, z, rx, ry, rz] come from the arm driver's forward kinematics output; gripper_position from the joint state.
  • Both records share the same seq and timestamp so they can be aligned trivially in downstream tooling.
  • Emission is guarded on cartesian.positions.size() >= 6 to skip partial reads during startup.

Test Plan

  • Builds cleanly (make build)
  • Tests pass (make test)
  • Lint passes (pre-commit run --all-files)
  • Tested on hardware (if applicable)

Breaking Changes

None. Existing MCAP recordings are unaffected. New recordings gain one additional topic per arm.

Related Issues

Part of the end-effector pose recording feature stack.

abhichothani42 commented Jun 28, 2026

Copy link
Copy Markdown
Collaborator Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 2 comments.

Comment thread src/hw/arm/trossen_arm_producer.cpp
Comment thread src/hw/arm/trossen_arm_producer.cpp Outdated
TrossenArmProducer now co-emits an EndEffectorPoseRecord alongside each
JointStateRecord. Both records share the same timestamp and sequence
number. Position comes from the arm driver's forward kinematics output;
gripper position is read from the joint state.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants