What You Will Accomplish
This unit covers the full hardware bring-up sequence: physical setup, software environment, first motion, and calibration. At the end you will drive the arm from a browser tab — no code required yet. Code comes in Unit 2.
The complete step-by-step setup guide lives at hardware/openarm/setup. This unit frames that guide within the learning path context and highlights the five steps you absolutely must not skip.
Safety First — Read Before Touching the Arm
Before you begin, read the OpenArm Safety Guide. It takes 5 minutes. The key rules:
- Keep your hands clear of joint paths when the arm is powered.
- Always home the arm before any motion sequence.
- Never exceed 20% velocity in your first session — use the web UI's speed slider.
- Know the emergency stop: press the physical E-stop button or unplug the power supply. The web UI also has a software stop button.
The 5 Most Critical Setup Steps
The full setup guide has many steps. These five are the ones where most people run into problems. Pay close attention to each.
-
Enable SocketCAN on your USB adapter
OpenArm joints communicate over CAN bus. You must bring up the
can0interface before launching ROS 2. Run:sudo ip link set can0 up type can bitrate 1000000. If this command fails, your USB-CAN adapter driver is not loaded — see the software setup section for the driver install commands. -
Source your ROS 2 workspace before every terminal
New terminal tab? Run
source /opt/ros/humble/setup.bash && source ~/openarm_ws/install/setup.bash. Forgetting this is the most common cause of "package not found" errors. Add it to your~/.bashrcto make it automatic. -
Run fake hardware mode first
Before connecting real hardware, launch with
use_fake_hardware:=true. This validates your entire software stack in simulation. If the fake hardware launch fails, there is a software problem — do not connect the real arm until fake hardware works. -
Set joint zeros during calibration
With the arm in its physical zero pose (all joints at mechanical zero), run the homing sequence from the web UI. If you skip this, all subsequent joint angle commands will be offset and the arm will behave erratically. You can re-run calibration at any time.
-
Verify workspace limits before free movement
After calibration, use the web UI to jog each joint individually through its full range. Watch for unexpected collisions between links. If a joint hits a physical stop before the software limit, your calibration needs refinement — do not force past physical stops.
Full Setup Guide
Work through the complete setup guide at your own pace. Come back here when you reach the completion check:
OpenArm 101 Setup Guide
Covers unboxing through calibration and first motion. Est. 2 hours with troubleshooting time.
Open Full Setup Guide →Unit 1 Complete When...
Your OpenArm is mounted and powered. ROS 2 is running with real hardware (not fake). You can open the web UI at http://localhost:8080 and move the arm using the joint sliders. All six joints move smoothly and return to the homed position. If any joint is stiff, skipping, or hitting limits unexpectedly — work through the calibration section again before moving to Unit 2.