This is a Viam module for the SO-101 5-DOF + Gripper collaborative robotic arm designed by TheRobotStudio and HuggingFace. It can be used to control either the leader or follower arm, as well as configuring both has separate arm components for mirrored teleoperation!
Note
For more information on modules, see Modular Resources.
This SO-101 module is particularly useful in applications that require the SO-101 arm to be operated in conjunction with other resources (such as cameras, sensors, actuators, CV) offered by the Viam Platform and/or separately through your own code.
If you are setting up the arm for the first time: You'll need to follow some prerequisite steps before using this module.
This module ships seven models, split into focused per-model docs:
devrel:so101:arm— the hardware arm componentdevrel:so101:simulated— hardware-free simulated armdevrel:so101:gripper— the hardware gripper componentdevrel:so101:simulated-gripper— hardware-free simulated gripperdevrel:so101:calibration— the calibration sensor workflowdevrel:so101:discovery— the auto-discovery servicedevrel:so101:teleop— leader/follower teleoperation service
Also see:
- Power: Connect the properly rated power adapter to the arm's controller board, either 5-7.4V or 12V depending on your servos
- USB Communication: Connect the USB cable between the controller board and your computer
- Servo Connections: Ensure all servos are properly daisy-chained with 3-pin cables
- Initial Position: Manually position the arm in a safe configuration before powering on
Warning
- Always ensure the arm's workspace is clear before operation
- The arm can move quickly - maintain safe distances during operation
- Use the torque control features to enable safe manual positioning when needed
- Proper calibration is essential for safe operation within expected ranges
For more information about the SO-101 robotic arm: