BB SO-101
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 bootstrap —
mix igniter.install bb_so101scaffolds a complete robot module, supervisor wiring, andSIMULATE-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.installto 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_so101Or scaffold a new project with the dashboard included:
mix igniter.new my_robot --install bb_so101,bb_liveviewThe 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/ttyUSB0See 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
bb— core Beam Bots frameworkbb_liveview— Phoenix LiveView dashboardbb_servo_feetech— Feetech STS servo driverfeetech— Feetech serial protocol library
Acknowledgements
- TheRobotStudio for the SO-ARM100 open-source design and reference URDF
- Feetech for the STS series servos