Star Arm 102 Project 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
- Drawings and Model Downloads: view local engineering drawings and the MakerWorld model entry.
- Assembly Guide: view pre-assembly preparation, assembly-resource status, and safety check recommendations.
- GitHub Hardware Directory: view BOM, CAD, and assembly resource source files.
- MakerWorld Model Page: obtain 3D printing model resources.
Detailed Documentation
- Product Specifications
- Drawings and Model Downloads
- Python SDK
- ROS2
- LeRobot
- Configuration Tools
- Open Resources
- FAQ

