This repository provides deep-dive, unofficial development notes and hacks for the Unitree Go1 quadruped robot. It targets roboticists, researchers, and advanced hobbyists seeking to understand, modify, and extend the robot's capabilities beyond its stock firmware. The primary benefit is unlocking low-level control and custom functionality on non-EDU models.
How It Works
The project details the Go1's architecture, revealing its lineage from the MIT Cheetah SPIne design. It highlights the use of Raspberry Pi and Jetson boards for higher-level processing, communicating with an STM32 motion controller via an RS485 network. The notes cover network interfaces, firmware vulnerabilities, and methods for accessing and controlling various robot functions, including camera systems and motor commands.
Quick Start & Requirements
- Installation: Primarily involves cloning the repository and applying provided patches or code snippets to the Unitree SDK and ROS packages.
- Prerequisites: Requires a Unitree Go1 robot, Linux environment (e.g., on the robot's Raspberry Pi), ROS (ROS1/ROS2), and potentially specific SDK versions (e.g., v3.4.2, v3.5.0, v3.5.1, v3.8.0).
- Resources: Access to the robot's internal systems via SSH is crucial. Detailed instructions are provided for network sniffing, firmware backup, and software modification.
- Links:
Highlighted Details
- Exploits firmware vulnerabilities in the update and programming interfaces for arbitrary code execution.
- Details methods for re-enabling the "backflip" maneuver and controlling the robot via MQTT and Bluetooth.
- Provides extensive information on the robot's internal hardware, including camera components (Sunplus SPCA2610/2650), the STM32H743 motion controller, and Quectel 4G modems.
- Includes detailed guides for network analysis, firmware backup, and custom software deployment on the robot's onboard computers.
Maintenance & Community
Licensing & Compatibility
- The repository itself is not explicitly licensed, but it references and utilizes code derived from the MIT Cheetah Software, which is MIT licensed. Unitree acknowledges this MIT license in their own repositories.
- Compatibility is primarily with Unitree Go1 models and specific firmware/SDK versions.
Limitations & Caveats
- The project is unofficial and relies on reverse-engineering and exploiting firmware vulnerabilities, which may change with Unitree updates.
- Some advanced features, like the backflip, may cause hardware stress (e.g., hip joints).
- The repository contains sensitive information regarding security vulnerabilities and default credentials.