Skip to content

Revo 2 Adaptation for Unitree G1

Overview

The Revo 2 dexterous hand can be mounted and integrated onto the Unitree G1 humanoid robot. The hand is controlled via serial port communication. This guide is provided for developers who need to adapt BrainCo dexterous hands to Unitree robotic platforms.

Video Demonstration

Code Repository

Release Notes

Update 2025.12.15: debug

Update 2025.11.13: Updated Unitree G1 Advanced Version (29 DoF)

Update 2025.09.03: Fixed abnormal arm movement immediately upon deactivation during the first action

Legacy Versions

v1.0.0 - Supports G1-23DoF only, available on the Releases Page.

brainco_ws

The G1 arm Inverse Kinematics (IK) calculation is based on the Unitree official example Unitree/xr_teleoperate. Dual-arm and dual-hand controls are implemented using ROS 2.

  • Main control: smach_action.py
  • State machine transition client: keyboard_call.py
  • G1 Degrees of Freedom (DoF) can be configured in brainco_ws/src/control_py/config/smach_config.yaml.

ros2_stark_ws

Differences between the dexterous hand SDK used in this example and the standard SDK: The BrainCo hands communicate with Unitree G1 via dual RS485 serial interfaces. That is, within a single ROS node, the left and right hands transmit data simultaneously through /dev/ttyUSB0 and /dev/ttyUSB1 respectively.

Contact & Support

If you have any questions or purchase inquiries, please contact the BrainCo Dexterous Hand Team or submit a support ticket via the Help portal in the top-right corner of the documentation page.