Skip to content

Make arm MIT control fully accessible#8

Open
euyniy wants to merge 1 commit into
enactic:mainfrom
euyniy:send-mit
Open

Make arm MIT control fully accessible#8
euyniy wants to merge 1 commit into
enactic:mainfrom
euyniy:send-mit

Conversation

@euyniy

@euyniy euyniy commented Mar 17, 2026

Copy link
Copy Markdown
Contributor

The goal is to make the arm motors’ MIT control fully accessible. Right now, the send_position method sets velocity and torque to zero and doesn’t expose those parameters, but many use cases require them. At the same time, the functionality with send_position has been preserved.

However, the current index management approach with mixed control mode (using self.num_mit_motors) feels somewhat fragile and error-prone. Appreciate more input thoughts on this.

@kou kou changed the title Make arm mit control fully accessible Make arm MIT control fully accessible Mar 17, 2026
Comment thread src/openarm_driver/driver.py Outdated
Comment thread src/openarm_driver/driver.py Outdated
Comment thread src/openarm_driver/driver.py Outdated
self.last_command = target_pos
Args:
position: Desired joint positions for the mit motors (first n).
velocity: Desired joint velocity feedforward. Defaults to zeros if None.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Should we add the _ff suffix to velocity like we did for torque_ff?

@euyniy euyniy Mar 18, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Usually it is only added to feed forward torque term. The velocity comment is inaccurate and I will fix that.

Comment thread src/openarm_driver/driver.py Outdated
Comment on lines +175 to +176
velocity: Desired joint velocity feedforward. Defaults to zeros if None.
torque_ff: Desired joint torque feedforward. Defaults to zeros if None.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I'm not familiar with MIT control but is it natural that we use zeros as the default value? If zeros isn't so natural, it may be better that we require velocity and torque instead of making them optional.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Having zeros at these places approximate position control (which is commonly used in current policy deployments). I agree that we can require them for now. However, I am wondering if we should make the gains (kp/kd) also accessible @tokirobot any inputs for this?

Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
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