Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
C

Cheetah-Software

> 编程语言
Open source

Cheetah-Software This repository contains the Robot and Simulation software project. For a getting started guide, see the documentation fol…

3.3K stars0 likes0 views
WebsiteGitHub

About

Cheetah-Software This repository contains the Robot and Simulation software project. For a getting started guide, see the documentation fol…

Cheetah-Software

This repository contains the Robot and Simulation software project. For a getting started guide, see the documentation folder.

The common folder contains the common library with dynamics and utilities The resources folder will contain data files, like CAD of the robot used for the visualization The robot folder will contain the robot program The sim folder will contain the simulation program. It is the only program which depends on QT. The third-party will contain small third party libraries that we have modified. This should just be libsoem for Cheetah 3, which Pat modified at one point.

Build

To build all code:

mkdir build
cd build
cmake ..
./../scripts/make_types.sh
make -j4

If you are building code on your computer that you would like to copy over to the mini cheetah, you must replace the cmake command with

cmake -DMINI_CHEETAH_BUILD=TRUE

otherwise it will not work. If you are building mini cheetah code one the mini cheetah computer, you do not need to do this.

This build process builds the common library, robot code, and simulator. If you just change robot code, you can simply run make -j4 again. If you change LCM types, you'll need to run cmake ..; make -j4. This automatically runs make_types.sh.

To test the common library, run common/test-common. To run the robot code, run robot/robot. To run the simulator, run sim/sim.

Part of this build process will automatically download the gtest software testing framework and sets it up. After it is done building, it will produce a libbiomimetics.a static library and an executable test-common. Run the tests with common/test-common. This output should hopefully end with

[----------] Global test environment tear-down
[==========] 18 tests from 3 test cases ran. (0 ms total)
[  PASSED  ] 18 tests.

Run simulator

To run the simulator:

  1. Open the control board
./sim/sim
  1. In the another command window, run the robot control code
./user/${controller_folder}/${controller_name} ${robot_name} ${target_system}

Example)

./user/JPos_Controller/jpos_ctrl 3 s

3: Cheetah 3, m: Mini Cheetah s: simulation, r: robot

Run Mini cheetah

  1. Create build folder mkdir mc-build
  2. Build as mini cheetah executable cd mc-build; cmake -DMINI_CHEETAH_BUILD=TRUE ..; make -j
  3. Connect to mini cheetah over ethernet, verify you can ssh in
  4. Copy program to mini cheetah with ../scripts/send_to_mini_cheetah.sh
  5. ssh into the mini cheetah ssh [email protected]
  6. Enter the robot program folder cd robot-software-....
  7. Run robot code ./run_mc.sh

Dependencies:

  • Qt 5.10 - https://www.qt.io/download-qt-installer
  • LCM - https://lcm-proj.github.io/ (Please make it sure that you have a java to let lcm compile java-extension together)
  • Eigen - http://eigen.tuxfamily.org
  • mesa-common-dev
  • freeglut3-dev
  • libblas-dev liblapack-dev

To use Ipopt, use CMake Ipopt option. Ex) cmake -DIPOPT_OPTION=ON ..

GitHub Issues· 60 open

View all on GitHub
  • #89

    How to create new .dat files for alternate Back and Front flip moves?

    Updated Mar 30, 2026
  • #103

    default terrian stairs-1 not working

    Updated Sep 15, 2025
  • #50

    SharedMemoryObject::attach shm_open(development-simulator) failed: No such file or directory terminate called after throwing an instance of 'std::runtime_error' what(): Failed to create shared memory! Aborted (core dumped)

    Updated Sep 15, 2025
  • #98

    donot find /build/user/MIT_Controller/libuser_controller.so

    Updated Jun 28, 2025
  • #88

    can't complete 'make -j'

    Updated Jan 23, 2025
  • #33

    Overall Software Usage - Request

    Updated Nov 29, 2024
  • #104

    Workflow in intergrating the MIT software and hardware dog

    Updated Nov 18, 2024
  • #58

    Problems about the simulation model when robot is climbing stairs

    Updated Oct 18, 2024
  • #36

    Problems about joystick

    Updated Sep 12, 2024
  • #60

    How to control Cheetah without Joystick

    Updated Dec 26, 2023

Highlights

  • •Qt 5.10 - https://www.qt.io/download-qt-installer
  • •LCM - https://lcm-proj.github.io/ (Please make it sure that you have a java to let lcm compile java-extension together)
  • •Eigen - http://eigen.tuxfamily.org
  • •mesa-common-dev
  • •freeglut3-dev
  • •libblas-dev liblapack-dev

> Tags

C++

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言