so-arm100

Standard Open Arm 100

https://github.com/therobotstudio/so-arm100

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.1%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Standard Open Arm 100

Basic Info
  • Host: GitHub
  • Owner: TheRobotStudio
  • License: apache-2.0
  • Default Branch: main
  • Size: 184 MB
Statistics
  • Stars: 3,001
  • Watchers: 41
  • Forks: 236
  • Open Issues: 48
  • Releases: 1
Created almost 2 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog License Citation

README.md

Standard Open SO-100 & SO-101 Arms

SO-101 follower arm SO-101 leader arm

Build Your Own SO-101 Robot!

The SO‑101 is the next‑generation version of the SO‑100 robot arm, originally designed by the RobotStudio in collaboration with Hugging Face. It has improved wiring, is easier to assemble (no gear removal) and uses updated motors for the leader arm.

These arms are designed to work seamlessly with the open‑source 🤗 LeRobot library. Join our community on Discord to collaborate on both hardware and software, and help make end‑to‑end AI for robotics more accessible.

Documentation 📖

  • For the SO‑101 docs, follow this page further.
  • Here you can find the SO‑100 docs which is deprecated.

Getting Your Own SO‑101

You have two options: - Build it Yourself - Source the components from the Bill of Materials. - 3D print the parts (or order the 3D printed parts), explained in Printing the Parts. - Follow our Assembly Guide. - Buy a Kit - Buy assembled arms or a parts kit from one of the vendors here. - Optionally follow our Assembly Guide.

Setup with LeRobot 🤗

After sourcing all parts you can setup your SO-101 with LeRobot tutorial.

Optional Hardware 🔧

This repository also includes a range of optional hardware designs such as a raised leader base and different camera mounts. Here you can explore the full list.

Kits

You can find all optional for SO-100/SO-101 kits here:

Additionally you can find SO-100 follower arm kit (without leader arm) on Phospho. It can be especially useful if you own a VR headset.

Sourcing Parts

The follower and leader arm for this teleoperation setup will almost the same off the shelf parts (except for the motors). If you plan on creating the classic teleoperation set up to be used with the LeRobot library please buy from the Parts for Two Arms below.

We only have links for US, EU, CN, and JP for now. If you find links for other countries, please create an issue or PR so that we add them to the list. Note that prices and items may vary depending on geographic location.

[!IMPORTANT]
The STS3215 motors for the follower arm comes in two sizes. The 7.4V has a stall torque of 16.5kg.cm at 6V (and likely slightly less for a 5V power supply). The 12V version has a stall torque of 30kg.cm. While we found the 7.4V to be sufficient, if you would like more powerful motors you can buy the 12V version here. Note if you do this, you will also have to buy a 12V 5A+ power supply instead of a 5V one. The leader arm is always 7.4V for the SO101.

Parts For Two Arms (Follower and Leader Setup):

| Part | Amount | Unit Cost (US) | Buy US | Unit Cost (EU) | Buy EU | Unit Cost (RMB) | Buy CN | Unit Cost (JPY) | Buy JP | | ------------------------------------------- | ------ | -------------- | --------------------------------------------------------------------------------------------------------- | -------------- | ------------------------------------------------------------------------------------------------- | --------------- | ------------------------------------------------------------------------------- | --------------- | ------------------------------------------------------------------------------- | | STS3215 Servo 7.4V, 1/345 gear (C001) *2 | 7 | $13.89 | Alibaba | €12.2 | Alibaba | ¥97.72 | TaoBao | ¥2,980 | Akizuki Denshi | | STS3215 Servo 7.4V, 1/191 gear (C044) *2 | 2 | $13.89 | Alibaba | €12.2 | Alibaba | ¥97.72 | - | ¥2,980 | Akizuki Denshi | | STS3215 Servo 7.4V, 1/147 gear (C046) *2 | 3 | $13.89 | Alibaba | €12.2 | Alibaba | ¥97.72 | - | ¥2,980 | Akizuki Denshi | | Motor Control Board | 2 | $10.6 | Amazon | €11.4 | Amazon | ¥27 | TaoBao | ¥980 | Akizuki Denshi | | USB-C Cable 2 pcs | 1 | $7 | Amazon | €7 | Amazon | ¥23.9*2 | TaoBao | ¥1,498 | Amazon | | Power Supply | 2 | $10 | Amazon | €15.7 | Amazon | ¥22.31 | TaoBao | ¥1,550 | Akizuki Denshi | | Table Clamp 4pcs | 1 | $9 | Amazon | €9.7 | Amazon | ¥5.24 | TaoBao | ¥2,200 | Amazon | | Screwdriver Set1 | 1 | $6 | Amazon | €9 | Amazon | ¥14.9 | TaoBao | ¥500 | Amazon | | Total | --- | $229.88 | --- | €226.3 | --- | ¥1343.16 | --- | ¥44,530 | --- |

2: You can buy all six STS3215 servos needed for the SO-101 leader arm
(3 × 1/147 gear (C046), 2 × 1/191 gear (C044), 1 × 1/345 gear (C001)) in a single bundle on Alibaba.

Parts for One Follower Arm:

| Part | Amount | Unit Cost (US) | Buy US | Unit Cost (EU) | Buy EU | Unit Cost (RMB) | Buy CN | Unit Cost (JPY) | Buy JP | | ------------------------------------------- | ------ | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | --------------- | ------------------------------------------------------------------------------- | --------------- | ------------------------------------------------------------------------------- | | STS3215 Servo 7.4V, 1/345 gear (C001) | 6 | $13.89 | Alibaba | €12.2 | Alibaba | ¥97.72 | TaoBao | ¥2,980 | Akizuki Denshi | | Motor Control Board | 1 | $10.6 | Amazon | €11.4 | Amazon | ¥27 | TaoBao | ¥980 | Akizuki Denshi | | USB-C Cable 2 pcs | 1 | $7 | Amazon | €7 | Amazon | ¥23.9 | TaoBao | ¥1,498 | Amazon | | Power Supply | 1 | $10 | Amazon | €15.7 | Amazon | ¥22.31 | TaoBao | ¥1,550 | Akizuki Denshi | | Table Clamp 2pcs | 1 | $5 | Amazon | €8 | Amazon | ¥7.8 | TaoBao | ¥2,200 | Amazon | | Screwdriver Set1 | 1 | $6 | Amazon | €9 | Amazon | ¥14.9 | TaoBao | ¥500 | Amazon | | Total | --- | $121.94 | --- | €124.3 | --- | ¥682.23 | --- | ¥24,414 | --- |

1: You do not need to use this exact screwdriver set, but it is highly recommended to have phillips head screw driver sizes #0 and #1 for easiest screw installation and removal. These are both standard sizes which will likely appear in most small screwdriver sets.

Printing the Parts

A variety of 3D printers are acceptable to print the parts necessary of the follower and leader arm. Follow the steps below to ensure a good print.

Step 1: Choose a Printer

The STL files provided are ready to print on many FDM printers. Below are the tested and suggested settings though others may work. 1. Material: PLA+ 2. Nozzle Diameter and Precision: 0.4mm nozzle diameter at 0.2mm layer height or 0.6mm nozzle at 0.4mm layer height. 3. Infill Density: 15% 4. Sample Printers: Prusa MINI+, UP Plus 2, Creality Ender 3, Bambu Lab A/P/X-series

Step 2: Set up the Printer

  1. Ensure that the printer is calibrated and the bed level is correctly set using the printer specific instructions.
  2. Clean the print bed, making sure it is free from dust, or grease. If cleaning the bed using water, or other liquid, dry the bed.
  3. If your printer recommends it, use a standard glue stick and apply a thin, even layer of glue across the print area of the bed. Avoid clumping or uneven application.
  4. Load the printer filament using printer specific instructions.
  5. Ensure the printer settings match the ones suggested above (most printers have multiple settings so choose the ones that most closely match).
  6. Set for supports everywhere but ignore slopes greater than 45 degrees to the horizontal.
  7. There should be no supports in the screw holes with horizontal axes. ### Step 3: Check Printer Accuracy
  8. In the Gauges folder, there are two types of gauges, one to check the size of print against a standard 4x2 lego block and one against a STS3215 servo.
    1. If you have a STS3215 servo, print:
      1. Gauge Zero
      2. Gauge Tight
    2. If you have a standard lego block, print:
      1. Gauge Zero
      2. Gauge -0.1
  9. Test the gauge 0 against your given object (Lego or Servo). The fit should be similar to this tutorial.
  10. If the fit is appropriate, go onto Step 4, otherwise, change your printer settings and try again or create an issue. ### Step 4: Print the Parts All the parts for the leader or follower are for easy 3D printing already contained in a single file, correctly orientated for z upwards to minimize supports.
  11. For printer bed sizes of 220mmx220mm (such as the Ender), print these files:
  12. For printer bed sizes of 205mm x 250mm (such as the Prusa/Up):
    1. Follower
    2. Leader

This table contains all individual files:

Individual Part Files

Common Parts

| Part | Link | |-------------------------------------|------------------------------------------------------------------| | BasemotorholderSO101.stl | Basemotorholder_SO101.stl | | BaseSO101.stl | Base_SO101.stl | | MotorholderSO101Base.stl | MotorholderSO101_Base.stl | | MotorholderSO101Wrist.stl | MotorholderSO101_Wrist.stl | | UnderarmSO101.stl | UnderarmSO101.stl | | UpperarmSO101.stl | UpperarmSO101.stl | | RotationPitchSO101.stl | RotationPitchSO101.stl | | WristRollPitchSO101.stl | WristRollPitch_SO101.stl | | WaveShareMountingPlateSO101.stl | WaveShareMountingPlate_SO101.stl |

Leader‑Specific Parts

| Part | Link | |-----------------------|------------------------------------------| | HandleSO101.stl | Handle_SO101.stl | | TriggerSO101.stl | Trigger_SO101.stl | | WristRollSO101.stl | WristRollSO101.stl |

Follower‑Specific Parts

| Part | Link | |---------------------------------|--------------------------------------------------------------| | MovingJawSO101.stl | MovingJawSO101.stl | | WristRollFollower_SO101.stl | WristRollFollower_SO101.stl |

Step 5: Remove Supports

  1. After the print is done, use a putty knife to scrape the the parts off the print bed.
  2. Remove any support material from parts.

Don't Own a 3D printer?

Go here: Printing services

Optional Hardware

Extend your SO‑100/SO‑101 with these add-ons.

Add‑ons

0. XLeRobot

A dual-arm mobile robot for daily use, with 2x SO101 arms, 1x Lekiwi base, 1x 300Wh Anker Battery, 2x wrist RGB cameras, 1x head depth camera (with a 2-dof neck). Total cost 660$.

82c2b72eab7c716b90fafac0a9caf895

→ Full Documentation, with detailed BOM, 3D printing models, assembly guide, simulation, and teleop guide.

1. Mount Helper

Print the handy mount jig for easier alignment during assembly.

→ View README

Mount Helper

2. Overhead Camera Mount

For bird’s‑eye views in single or bi‑manual setups.
(SO100/101)

| Webcam | 32×32 Cam Module | |:---------------------:|:-------------------:| | | Instructions | Instructions

3. Base Mounts

| Raised Leader Base | 4040 Aluminum Profile Mount | |:-------------------:|:---------------------------:| |
Download STL | Instructions

4. Tactile Sensing (AnySkin)

Add touch sensing to your gripper.

→ Find on WOWROBO

AnySkin Sensor

5. Wrist‑Mount Cameras

| 32×32 UVC Hex Nut (SO101) | 32×32 UVC Integrated (SO100/101) | 32×32 UVC Plug‑on | RealSense D405 | RealSense D435/D435I | Webcam (Vinmooog) | | --- | --- | --- | --- | --- | --- | | | | | | | | | Instructions | Instructions | Instructions | Instructions | Instructions | Instructions |

6. Compliant Gripper

Add some flexibility to your gripper by downloading the compliant gripper parts and printing them using a flexible filament like TPU 95A.

→ View README.

7. Compliant Gripper (new)

Printed with TPU 95A for the finger and PLA for the base. Better structure and better grasp (both precision and power). No need to print support for the TPU finger. Requires 2 additional M3 screws, optional 3M gripper tape for higher friction. d2e57534a9e55a3d4dc0d644242cd044

→ Find on XLeRobot

Debugging Motors

For debugging, any Windows PC can connect over USB to program the servos and to debug or do tests. To do so download Feetech Software. For Ubuntu, you can use FTSCServoDebug_Qt. Note: This step is not necessary as motors can be configured using the LeRobot Library, but this can be helpful for debugging.

Owner

  • Name: TRS
  • Login: TheRobotStudio
  • Kind: user
  • Location: France
  • Company: The Robot Studio

A world leader in the development of 3d printed humanoid robots. Check out the videos on YouTube @therobotstudio

Citation (CITATION.cff)

cff-version: 1.2.0
date-released: 2024
message: "If you use this hardware, please cite it as below."
title: "Standard Open SO-100 & SO-101 Arms"
url: "https://github.com/TheRobotStudio/SO-ARM100"
address: "Online"
authors:
- family-names: "Knight"
  given-names: "Rob"
- family-names: "Kooijmans"
  given-names: "Pepijn"
- family-names: Wolf
  given-names: Thomas
- family-names: "Alibert"
  given-names: "Simon"
- family-names: "Aractingi"
  given-names: "Michel"
- family-names: "Aubakirova"
  given-names: "Dana"
- family-names: "Zouitine"
  given-names: "Adil"
- family-names: "Martino"
  given-names: "Russi"
- family-names: "Palma"
  given-names: "Steven"
- family-names: "Pascal"
  given-names: "Caroline"
- family-names: "Cadene"
  given-names: "Remi"

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 32
  • Total pull requests: 47
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 3 days
  • Total issue authors: 28
  • Total pull request authors: 26
  • Average comments per issue: 0.63
  • Average comments per pull request: 0.66
  • Merged pull requests: 26
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 31
  • Pull requests: 47
  • Average time to close issues: 23 days
  • Average time to close pull requests: 3 days
  • Issue authors: 27
  • Pull request authors: 26
  • Average comments per issue: 0.58
  • Average comments per pull request: 0.66
  • Merged pull requests: 26
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • jbrownkramer (4)
  • nomorewzx (2)
  • bicepjai (2)
  • Vacuame (2)
  • ZhangCYG (1)
  • kevinhelvig (1)
  • feisuo (1)
  • Russ76 (1)
  • wibed (1)
  • rabhishek100 (1)
  • miguelalonsojr (1)
  • shubaozhang (1)
  • jess-moss (1)
  • StoneT2000 (1)
  • chernyadev (1)
Pull Request Authors
  • pkooij (10)
  • philfung (8)
  • adityakamath (3)
  • mshr-h (2)
  • cmcgartoll (2)
  • Mr-C4T (2)
  • fenghan94 (1)
  • DipFlip (1)
  • dmosher42 (1)
  • yuyoujiang (1)
  • jess-moss (1)
  • vmayoral (1)
  • JanNogga (1)
  • KrishKrosh (1)
  • norips (1)
Top Labels
Issue Labels
Pull Request Labels
documentation (3) enhancement (2)