Skip to content

Star Arm 102 Project Overview

Programming Language Framework Hardware OS License

Star Arm 102 robotic arm overview

Project Introduction

StarArm 102 is a 6+1 DOF robotic arm teleoperation control project. It supports real-time remote control of a Follower robotic arm through a Leader robotic arm. The project provides three control methods: Python SDK, ROS2 Humble, and LeRobot. It is suitable for robotics research, teleoperation teaching, AI training data collection, and other scenarios.

To purchase the hardware, use the following channels:

  • Independent Store: recommended for users outside mainland China.
  • Taobao: recommended for users in mainland China.

Core Features

  • Open source, low cost, and flexible to obtain: lowers the learning and usage threshold. You can purchase a preassembled unit or print the structural parts and purchase components for self-assembly.
  • Scientifically designed arm configuration: 6 active joints plus 1 end effector. The joint configuration satisfies the Pieper criterion and supports analytical inverse kinematics.
  • LD model suitable as a teleoperation leader: Star Arm 102-LD can teleoperate the FL model in the same series, and is also compatible with reBot and other robotic arms with the same or similar configurations.
  • Multi-platform compatibility: supports direct teleoperation through Python SDK and is compatible with the LeRobot, ROS2, MoveIt, and Gazebo ecosystems.
  • Complete learning resources: provides tutorials, API documentation, example code, and hardware resources from beginner to advanced levels.

Arm Specifications

Item Star Arm 102-LD Star Arm 102-FL
Degrees of freedom 6+1 6+1
Accuracy - 5-8 mm
Recommended maximum payload - 300 g
Joint range Joint 1: ±110°
Joint 2: 0°~180°
Joint 3: 0°~270°
Joint 4: ±90°
Joint 5: ±65°
Joint 6: ±150°
Gripper: 0°~90°
Joint 1: ±110°
Joint 2: 0°~180°
Joint 3: 0°~270°
Joint 4: ±90°
Joint 5: ±65°
Joint 6: ±150°
Gripper: 0°~90°
servo configuration Joints #1, #2, #3, and #4 use RA8-U01H-M;
Joint #5 uses RA8-U02H-M;
Joint #6 and the handle joint use RA8-U03H-M
Joints #1, #4, #7, and the gripper use RA8-U25H-M;
Joints #2 and #3 use RX8-U45H-M;
Joint #5 uses RA8-U25H-M
Communication hub UC-01 UC-01
Communication method UART UART
Power specification (optional) 12V2A / XT30 12V10A / XT30
Tools and fasteners Screws, threadlocker, woodworking clamps x2, spare PCB (UC01), DC power adapter cable (5.5 x 2.5 mm connector), 200 mm servo extension cable, USB-A to USB-C cable, mouse pad Screws, threadlocker, woodworking clamps x2, spare PCB (UC01), DC power adapter cable (5.5 x 2.5 mm connector), 200 mm servo extension cable, USB-A to USB-C cable, mouse pad
Angle sensor 12-bit magnetic encoder 12-bit magnetic encoder
Weight 663 g 791 g
Recommended operating temperature range 0-40°C 0-40°C
LeRobot support
ROS 2 support
MoveIt support -
Gazebo support -

Quick Start

Environment Requirements

Item Requirement
Operating system Ubuntu 22.04
ROS version ROS2 Humble
Python version Python 3.8+
Hardware device StarArm 102 robotic arm (Leader + Follower)
Driver CH340 USB Driver

Method 1: Direct Teleoperation with Python SDK

pip install pyserial fashionstar-uart-sdk
sudo chmod 777 /dev/ttyUSB*
python3 ./Python_SDK/stararm102_ro.py

Method 2: ROS2 Humble

cd ~/Star-Arm-102/ROS2_HUMBLE
colcon build
source install/setup.bash

For detailed steps, see ROS2 Tutorial.

Method 3: LeRobot Framework

For detailed steps, see LeRobot Tutorial.

Project Structure

Star-Arm-102/
|-- Hardware/                                # 硬件资料
|   |-- assembly/                            # 装配说明
|   |-- cad/                                 # CAD 模型与工程图纸说明
|   |-- parts/                               # 零件清单与 BOM
|   `-- README.md                            # 硬件总览
|-- Lerobot/                                 # LeRobot 框架控制方式
|   |-- lerobot-robot-stararm102/            # Follower 机器人配置
|   |-- lerobot-teleoperator-stararm102/     # Leader 遥操作器
|   |-- stararm102_en.md                     # LeRobot 使用文档(英文)
|   |-- stararm102.md                        # LeRobot 使用文档
|   `-- README.md                            # 使用步骤
|-- Media/                                   # README 与文档使用的图片资源
|-- Python_SDK/                              # Python SDK 控制方式
|   |-- stararm102_ro.py                     # 主从控制程序
|   `-- README.md                            # 详细使用文档
|-- ROS2_HUMBLE/                             # ROS2 控制方式
|   `-- src/
|       |-- arm_moveit_read/                 # 位姿读取节点
|       |-- arm_moveit_write/                # 位姿写入节点
|       |-- arm_read_pose/                   # 实时位姿读取
|       |-- robo_driver/                     # 机械臂硬件驱动节点
|       |-- robo_interfaces/                 # 自定义 ROS2 接口
|       |-- ros2_bag_recorder/               # 示教轨迹录制
|       |-- stararm102_controller/           # 机械臂控制器
|       |-- stararm102_description/          # 机械臂 URDF 模型描述
|       |-- stararm102_gazebo/               # Gazebo 仿真环境配置
|       `-- stararm102_moveit_config/        # MoveIt 2 运动规划配置
|-- README.md                                # 中文说明文档
`-- README_EN.md                             # English README

Control Method Comparison

Feature Python SDK ROS2 Humble LeRobot
Difficulty Easy Medium Advanced
Real-time performance High Medium-high Medium-high
Extensibility Basic control extension Strong system integration capability AI data and training oriented
Application scenarios Quick testing and teaching Robot system integration, simulation, and motion planning AI training, data collection, and research

Joint Mapping

Joint Angle Range Description
Joint1 -110° ~ 110° Base rotation
Joint2 0° ~ 180° Shoulder pitch
Joint3 0° ~ 270° Elbow pitch
Joint4 -90° ~ 90° Wrist rotation
Joint5 -65° ~ 65° Wrist yaw
Joint6 -150° ~ 150° Wrist rotation
Gripper (joint7_left) 0° ~ 90° Rotating gripper

Note

The rotating gripper is controlled through joint7_left. joint7_right is the linked joint and automatically synchronizes in the opposite direction.

Hardware Resources

Star Arm 102 hardware resources preview

Detailed Documentation