![]() |
ihmc-open-robotics-software repositoryjava robotics whole-body-control walking humanoid-robot ihmc rhino_beetle_description ihmc_robotics multisense_sl_description ihmc_demo_py atlas_msgs behavior_msgs controller_msgs exoskeleton_msgs ihmc_common_msgs perception_msgs system_monitor_msgs test_msgs toolbox_msgs generator_test_msgs grid_map_msg osrf_msgs sandia_hand_msgs |
Repository Summary
Description | Robotics software featuring legged locomotion algorithms and a momentum-based controller core with optimization. Supporting software for world-class robots including humanoids, running birds, exoskeletons, mechs and more. |
Checkout URI | https://github.com/ihmcrobotics/ihmc-open-robotics-software.git |
VCS Type | git |
VCS Version | develop |
Last Updated | 2025-07-31 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | java robotics whole-body-control walking humanoid-robot ihmc |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
rhino_beetle_description | 0.0.0 |
ihmc_robotics | UNKNOWN |
multisense_sl_description | UNKNOWN |
ihmc_demo_py | 0.1.0 |
atlas_msgs | 0.0.1 |
behavior_msgs | 0.0.1 |
controller_msgs | 0.1.0 |
exoskeleton_msgs | 0.0.1 |
ihmc_common_msgs | 0.0.1 |
perception_msgs | 0.0.1 |
system_monitor_msgs | 0.0.1 |
test_msgs | 0.0.1 |
toolbox_msgs | 0.0.1 |
generator_test_msgs | 0.0.1 |
grid_map_msg | 0.1.0 |
osrf_msgs | UNKNOWN |
sandia_hand_msgs | UNKNOWN |
README
IHMC Open Robotics Software
Current Continuous Integration Status
Current develop status
Current release status
Robots
This software has been used to power a wide variety of humanoid robots. This includes
Licensing
All of the software in IHMC Open Robotics Software is licensed under the Apache 2.0 license.
Developing with IHMC Open Robotics Software from source
IHMC Open Robotics Software uses the Gradle build system, and requires JDK 17. We recommend working in IntelliJ.
See the following tutorials for installing and using IHMC Open Robotics Software:
Arch Linux will work fine for development. Other GNU/Linux distros will likely work, however largely untested. macOS is partially supported, but incomplete at this time.
To get set up, use our public Confluence pages: https://ihmcrobotics.atlassian.net/wiki/spaces/PUBLIC/overview
Other IHMC Libraries
IHMC Open Robotics Software both depends on and is depended on by many other IHMC Robotics Libraries. A sampling of our other software depended on by this repository includes
Simulation Construction Set 2, our own simulation environment with built-in analysis tools: https://github.com/ihmcrobotics/simulation-construction-set-2
Simulation Construction Set, a deprecated simulation engine that’s still used for base visualization
Euclid, an alternative vector/geometry library for Java with support for additional structures common in 3D geometry without needing vecmath or Java3D: https://github.com/ihmcrobotics/euclid
Mecano, a rigid-body dynamics library built on top of Euclid and EJML: https://github.com/ihmcrobotics/mecano
IHMC YoVariables, our core data structures tools that enable the time-series tracing and analysis of Simulation Construction Set: https://github.com/ihmcrobotics/ihmc-yovariables
JOctoMap, a Java implementation of OctoMap: https://github.com/ihmcrobotics/joctomap
IHMC Realtime, a library for enabling soft real-time threading for Java on Linux using the RT_PREEMPT patches: https://github.com/ihmcrobotics/ihmc-realtime
IHMC EtherCAT Master, a Java library using IHMC Realtime and Simple Open EtherCAT Master (SOEM) that makes it simple to start a software EtherCAT Master and pure Java data structures that map to EtherCAT Slave defintions: https://github.com/ihmcrobotics/ihmc-ethercat-master
IHMC Robot Data Logger, an application for logging yo variables.
IHMC Matrix Library
IHMC Convex Optimization, an implementation of a number of algorithms for solving convex optimization problems.
File truncated at 100 lines see the full file
CONTRIBUTING
How to contribute
TODO work in progess