Unitree SDK: ROS2, Python, C++ — Where a Developer Should Start
An overview of the Unitree SDK for developers: what is in unitree_sdk2, which language to start with, how to bring up the MuJoCo and Isaac Sim simulators, where to grab GitHub examples. A 2026 guide for the robotics newcomer.

In short: start with Python via unitree_sdk2_python — it's the fastest path to a first working program. For serious development, real-time control and ROS2 integration, move to C++ via unitree_sdk2. The MuJoCo simulator is for debugging without hardware; Isaac Sim is for GPU-accelerated model training and large experiments. Everything lives on the Unitree Robotics GitHub — open code, active community, regular updates.
This article is for developers starting with Unitree (Go2 EDU, G1 EDU, H1, Z1). It explains the SDK architecture and helps you pick the first language/tool.
What's in unitree_sdk2
- unitree_sdk2 (C++) — the basis of real-time control, low-level DDS messages.
- unitree_sdk2_python — Python wrapper for prototyping and training.
- unitree_ros2 — ROS2 packages (Humble and newer) for integration with a standard ROS stack.
- unitree_mujoco — MuJoCo-based simulator, free and fast.
- unitree_rl_gym — reinforcement learning environment on Unitree robots.
- Documentation and examples on GitHub: step-by-step guides, videos, ready scripts.
Which language to start with
Python — for most tasks
If you're starting out — pick Python. unitree_sdk2_python lets you connect to the robot and send a movement command in 10 lines. Fits: first experiments, teaching students, integration with AI/ML libraries (PyTorch, JAX, TensorFlow), fast prototyping.
C++ — for production and real-time
When you need low latency (control at 1000 Hz), integration with existing C++ code, or work with the low-level API — move to C++. This is the standard for industrial applications, real-time motion control, custom low-level behavior.
ROS2 — for robotics-stack integration
If you work in a team using ROS2 or plan to integrate with MoveIt, Nav2, RViz — use unitree_ros2. This is the standard path for university labs and integration into automation systems with other ROS-compatible components.
Simulators: MuJoCo vs Isaac Sim
| Parameter | MuJoCo | Isaac Sim |
|---|---|---|
| Cost | Free | Free (NVIDIA) |
| GPU acceleration | No (CPU) | Yes (requires RTX GPU) |
| Physics quality | High | High |
| Visuals | Simple | Photorealistic |
| Parallel envs | Tens | Thousands (for RL) |
| Best for | Prototyping, debugging | Large RL, VLA training |
First steps: what to do in a week
- Day 1: Install Python 3.10+, clone unitree_sdk2_python from GitHub, run a hello world script.
- Day 2–3: Install MuJoCo, run unitree_mujoco with a G1 or Go2 model, play with basic commands.
- Day 4–5: Install ROS2 Humble, clone unitree_ros2, try integration with MoveIt.
- Day 6: If you have hardware — connect to the real robot via DDS, run the same scripts as in the simulator.
- Day 7: Explore RL examples (unitree_rl_gym) or AI (OpenVLA on G1) — pick your specialisation.

quadruped
Unitree Go2 EDU
Новое существо воплощённого AI
Baseline start: Go2 EDU + Python SDK. Enough for most education and research tasks.

humanoid
Unitree G1
Гуманоидный AI-аватар
For humanoid development: G1 EDU U1+ with open SDK access.

arm
Unitree Z1
6-осевой робот-манипулятор
Z1 + Python SDK — for manipulation, pick-and-place, imitation learning.
FAQ
Do I need hardware to start?
No. With the MuJoCo simulator and unitree_mujoco models you can fully debug logic before buying a robot. The standard path is 1–2 months in the simulator, then buying hardware.
Which ROS version is supported?
ROS2 Humble (LTS until 2027) and newer. ROS1 is no longer supported. If you're on ROS1 — time to migrate; Unitree does not officially support ROS1 in new releases.
Where do I get code examples?
Unitree Robotics GitHub is the main repo. The community publishes open-source projects on G1 / H1 at ICRA, IROS — searching "unitree g1 site:github.com" returns hundreds of working repos.
Can I use the SDK on macOS?
The Python SDK runs on macOS. The C++ SDK is DDS-based — it also works. However, for real-time control Linux (Ubuntu 22.04 LTS) is recommended — that's the standard of most robotics teams.
Where to find SDK training in Russian / Kazakh?
The official Unitree docs are in English. The Russian-speaking roboticist community publishes tutorials on YouTube and Habr. Alashed (Unitree.kz) runs paid SDK courses for teams buying a robot.
Источники
- Unitree SDK2 — GitHub — Unitree Robotics
- Unitree SDK2 Python — GitHub — Unitree Robotics
- Unitree ROS2 — GitHub — Unitree Robotics
- MuJoCo — DeepMind
- NVIDIA Isaac Sim — NVIDIA
Получите расчёт под вашу задачу
Цена зависит от конфигурации и комплектации. Инженер Alashed соберёт КП и предложит подходящую модель Unitree за 30 минут.