Skip to content

feat(servo): register the Feetech STS3235 under the STS3215 definition - #158

Merged
pierre-rouanet merged 1 commit into
pollen-robotics:developfrom
PrinceP:feat/feetech-sts3235
Oct 29, 2026
Merged

pierre-rouanet merged 1 commit into
pollen-robotics:developfrom
PrinceP:feat/feetech-sts3235

Conversation

@PrinceP

@PrinceP PrinceP commented Oct 17, 2026

Copy link
Copy Markdown
Contributor

Adds the Feetech STS3235 under the STS3215 definition with model number 2057 (bytes [9, 8] little-endian at address 3).

Motivation

This enables LeRobot to address Feetech STS3235 servos natively via rustypot.find_model("sts3235"), as discussed in huggingface/lerobot#4898.

The STS3235 shares the exact same control table and register layout as the STS3215 series (operating mode, baud rates, encoder resolution 4096, little-endian word order, sign-magnitude encodings).

Changes

  • Registered (STS3235, 2057) under the STS3215 definition in src/servo/mod.rs.
  • Added unit tests verifying find_model("sts3235"), sts3215::DEFINITION.models, and ServoKind::try_from(2057).
  • Updated README.md and Changelog.md.

Validation

  • cargo test: all 96 unit tests and 11 doc-tests pass.
  • cargo test --features python: Python bindings and pyo3 tests pass.

An STS3235 answers model number 2057 (bytes 9, 8 at address 3,
read little-endian as for the STS3215) and reads and moves through the
STS3215 control table.

Registering it lets find_model("sts3235") return the STS3215 definition,
so LeRobot and other rustypot consumers can natively drive STS3235 servos.
The tests pin the name to its number and definition.

@pierre-rouanet pierre-rouanet left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM, thanks!

@pierre-rouanet
pierre-rouanet merged commit 5498141 into pollen-robotics:develop Oct 29, 2026
15 checks passed
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