-
Notifications
You must be signed in to change notification settings - Fork 3.4k
add holosoma locomotion #2669
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
add holosoma locomotion #2669
Conversation
|
The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds the Holosoma whole-body locomotion controller for the Unitree G1 robot and refactors the existing GR00T locomotion example for better consistency. The Holosoma implementation comes from Amazon FAR's open-source project and provides an alternative locomotion policy that supports both FastSAC and PPO variants. The refactoring work aligns naming conventions and code structure between the two locomotion examples.
Key changes:
- Added new holosoma_locomotion.py example with support for FastSAC (default) and PPO policies
- Refactored gr00t_locomotion.py variable names and comments for consistency (e.g.,
locomotion_cmd→cmd,groot_locomotion_run→run_step) - Updated documentation to include holosoma locomotion instructions
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| examples/unitree_g1/holosoma_locomotion.py | New whole-body locomotion controller implementing Holosoma policies from Amazon FAR, with ONNX-based policy loading and KP/KD extraction from model metadata |
| examples/unitree_g1/gr00t_locomotion.py | Refactored for consistency with holosoma implementation - renamed variables, standardized method names, and updated comments/docstrings |
| docs/source/unitree_g1.mdx | Added holosoma locomotion example to documentation and updated section headers for clarity |
Comments suppressed due to low confidence (1)
examples/unitree_g1/gr00t_locomotion.py:50
- Inconsistent type annotations for module-level constants. Either all constants should have type annotations or none should. ACTION_SCALE and CONTROL_DT don't have type annotations while ANG_VEL_SCALE, DOF_POS_SCALE, DOF_VEL_SCALE, and CMD_SCALE do. For consistency, consider either adding type annotations to all constants or removing them from all.
ACTION_SCALE = 0.25
CONTROL_DT = 0.02 # 50Hz
ANG_VEL_SCALE: float = 0.25
DOF_POS_SCALE: float = 1.0
DOF_VEL_SCALE: float = 0.05
CMD_SCALE: list = [2.0, 2.0, 0.25]
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…dd default positions to config, add run function, and capitalize comments
Add holosoma locomotion from Amazon-FAR