Skip to content

beam-bots/bb_so101

Beam Bots Logo

BB SO-101

CI License: Apache 2.0 Hex version badge REUSE status

Beam Bots installer and operator tools for TheRobotStudio's SO-101 — a 6-DOF desktop robot arm built around Feetech STS3215 serial bus servos.

Features

  • Single-command bootstrapmix igniter.install bb_so101 scaffolds a complete robot module, supervisor wiring, and SIMULATE-aware boot options
  • Full SO-101 topology — kinematic chain matches the official URDF; six revolute joints with calibrated limits and visual geometry
  • Feetech wiring out of the box — composes bb_servo_feetech.install to set up controller, parameter bridge, and serial port config
  • Operator mix tasks — interactive wizards for assigning servo IDs and calibrating mechanical zeroes
  • Hardware-free development — run the generated project in simulation mode with SIMULATE=1

Installation

In an existing project:

mix igniter.install bb_so101

Or scaffold a new project with the dashboard included:

mix igniter.new my_robot --install bb_so101,bb_liveview

The Getting Started tutorial walks the rest of the way through powering up the arm, setting servo IDs, calibrating, and driving the dashboard.

Installer Options

Option Default Description
--robot {App}.Robot Module name for the generated robot module
--device /dev/ttyUSB0 Default serial device path

The generated application.ex reads the device path from SIMULATE / your config and boots the robot in :kinematic simulation mode when SIMULATE=1 is set in the environment.

Operator Tasks

Once your project is generated and your servos are wired, two mix tasks help you bring the arm up:

# One-time: assign servo IDs 1-6 to each servo in turn
mix bb_so101.setup_servos /dev/ttyUSB0

# Per-arm: write mechanical-zero offsets so `0 rad` is the joint centre
mix bb_so101.calibrate /dev/ttyUSB0

See the Set Up Servo IDs and Calibrate the Arm how-to guides for detail.

Requirements

  • Elixir ~> 1.19
  • An SO-101 arm (or run in simulation mode)
  • A USB-to-TTL serial adapter (Feetech URT-1 or compatible) for hardware mode
  • 6–7.4 V DC power for the servos

Documentation

Tutorials

  • Getting Started — bootstrap a project, set servo IDs, calibrate, and drive the dashboard

How-to Guides

Full API documentation is available at HexDocs.

Related Packages

Acknowledgements

  • TheRobotStudio for the SO-ARM100 open-source design and reference URDF
  • Feetech for the STS series servos

About

Beam Bots package for the SO-101 6-DOF robot arm from TheRobotStudio.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages