Dyros Robot Controller is a versatile C++ control library that implements control algorithms for various types of robots, including mobile robots, manipulators, and mobile manipulators.
It is designed to work seamlessly in both simulation and real-robot environments, enabling rapid development and testing of advanced control strategies.
Documentation of the Dyros Robot Controller is available here.
| ClearPath Husky | Summit XLS | DYROS PCV |
|---|---|---|
![]() |
![]() |
![]() |
| Franka FR3 | Universal Robots 5e |
|---|---|
![]() |
![]() |
| Husky FR3 | XLS FR3 | PCV FR3 |
|---|---|---|
![]() |
![]() |
![]() |
| Dual FR3 | Husky Dual FR3 |
|---|---|
![]() |
![]() |
-
Mobile Robots
- Supports differential drive, mecanum, and caster wheel configurations
- Provides kinematics-based Forward/Inverse Kinematics
-
Manipulators
- Joint-space position, velocity, and torque control
- Task-space control using Jacobian-based CLIK (Closed-loop Inverse Kinematics)
- Dynamic control using OSF (Operational Space Formulation)
- QP-based controllers that handle constraints (joint limits, velocity, collision avoidance, etc.)
-
Mobile Manipulators
- Whole-body torque-based controller
-
Simulation and Real-World Integration
- Validated in simulation with:
- Mobile robots: ClearPath Husky, Summit XL, 4-wheel powered caster vehicle
- Manipulators: Franka FR3, UR5
- Mobile manipulators: Husky-FR3, XLS-FR3
- Real robot integration in progress
- Validated in simulation with:
- Pinocchio – for kinematics and dynamics computation
- OSQP and OSQP-Eigen – for fast Quadratic Programming solvers
- Eigen3
- eigenpy and Boost.Python – for Python bindings
git clone https://github.com/JunHeonYoon/dyros_robot_controller.git
cd dyros_robot_controller
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX:PATH=<custom-folder> ../
make
make installAdd to ~/.bashrc:
export dyros_robot_controller_DIR="<custom-folder>"
export LD_LIBRARY_PATH="$dyros_robot_controller_DIR/lib:$LD_LIBRARY_PATH"dyros_robot_controller serves as a foundation for research and development in robot control, supporting:
- Mobile robot kinematic control
- Advanced manipulator control strategies
- Whole-body control for mobile manipulators
In the examples directory, we provide some basic examples of using dyros robot controller in Python and C++. It enables fast prototyping of novel controllers and facilitates seamless integration between simulation and real-world robotics platforms.
- Yoon Junheon, Dynamic Robotic Systems Laboratory (DYROS), Seoul National University
Copyright 2026 Electronics and Telecommunications Research Institute (ETRI).
This project was developed by Yoon Junheon at the Dynamic Robotic Systems Laboratory (DYROS), Seoul National University, under a research agreement with ETRI.
This project is licensed under the Apache License, Version 2.0. See LICENSE.









