Tutorials
A curated path through the best OpenArm materials — from SocketCAN communication through teleoperation and data logging. Start here, then go deeper through the research articles.
Best First Links
If you are new to OpenArm, start with these four sources before exploring the SVRC research articles. They give you the official ground truth on how the stack works.
Official OpenArm documentation & GitHub
-
1OpenArm Software Guide (official) Robot description, SocketCAN, ROS2 integration, and advanced controls. The authoritative overview before diving into specifics. Read official guide →
-
2ROS2 Control Docs Launch files, fake hardware mode, controller setup, and motion commands. Read this before touching real hardware. Open ROS2 control docs →
-
3CAN Library Docs SocketCAN architecture, class layout, MIT control mode, motor IDs, callback modes, and timing. Essential before writing any control code. Open CAN docs →
-
4Main GitHub Repository Repository entry point: hardware, software, issues, and ecosystem links. Open issues to find answers to common problems. View GitHub →
Communication: SocketCAN & CAN Bus
Understand how the arm communicates before writing control code. Most bringup issues are CAN issues.
SocketCAN Setup Guide
Communication checks, motor ID mapping, CAN error frames, and interface bringup. The canonical SVRC reference for CAN setup problems.
Read guide → Official DocsOpenArm CAN Library
Full API docs for openarm_can: motor classes, MIT control packet format, callback modes, and timeout configuration.
Driver Setup (this hub)
Step-by-step CAN driver installation: kernel module loading, interface bringup, candump verification, and persistent configuration.
View steps →What actually matters in practice
The most common sources of CAN problems are not API misuse — they are callback mode switching, timeout tuning, and inconsistent CAN ID mapping across motors after firmware updates. Check these first before anything else.
Control: ROS2 & MIT Control Modes
Hardware bringup flows and controller configuration. Always run fake hardware first, then real hardware.
ROS2 Control Guide
Fake hardware mode, real hardware bringup, controller discipline, launch file options, and trajectory command examples.
Read guide → Research GuideMIT Control Gains Guide
Kp/Kd tuning notes, safe starting values for each joint, safety margins, and what to do when gains cause oscillation.
Read guide → Research GuideCalibration & Homing Guide
Joint zero-setting procedure, homing sequence, workspace verification, and common calibration failure modes.
Read guide →Mock first, real later
OpenArm supports fake hardware mode out of the box. Always validate your control code with use_fake_hardware:=true before connecting to real motors. This alone prevents most hardware damage incidents.
Gains and safety margins
Start with Kp=20, Kd=0.5 for all joints. Increase slowly. The MIT gains guide documents the maximum safe values per joint — staying within them prevents motor overheating and mechanical stress.
Teleoperation & Data Logging
Record high-quality demonstrations for policy training. Hardware setup, recording commands, and dataset management.
Teleop & Data Logging Guide
End-to-end teleoperation setup: operator device connection, synchronized recording of joints and cameras, episode replay, and RLDS/LeRobot export.
Read guide → Hub PageData Collection (this hub)
Hardware connections, LeRobot recording workflow, dataset format explanation, and quality checklist. Full step-by-step.
Go to page → Research ArticleHow to Collect Demonstration Data
Principles behind high-quality robot demonstration collection: scene consistency, operator training, failure handling, and dataset versioning.
Read article →AI Model Training
After you have a dataset, the next step is policy training. OpenArm works out of the box with ACT, Diffusion Policy, and OpenVLA.
OpenArm: A Data-Centric Platform
Full design philosophy: data capture architecture, failure as data, sim-to-real alignment, and learning-ready output format.
Read article → SVRC ModelsCompatible AI Models
ACT, Diffusion Policy, and OpenVLA — pre-trained checkpoints and fine-tuning guides for OpenArm datasets.
Browse models → SVRC DatasetsPublic OpenArm Datasets
Community and SVRC datasets in LeRobot format, ready for training. Skip straight to training if you do not want to collect data first.
Browse datasets →All SVRC OpenArm Resources
Every internal page and research article indexed in one place. Use these when you are searching for a specific implementation problem.
- › Quickstart — Unit 0 Orientation
- › Setup Guide — Full step-by-step
- › Software — SDK, drivers, ROS2, LeRobot
- › Specifications — Mechanical & electrical
- › Data Collection — Recording workflow
- › Safety — Read before powering on
- › Community — Forum & FAQ
- › Research: SocketCAN Setup
- › Research: ROS2 Control
- › Research: MIT Control Gains
- › Research: Calibration & Homing
- › Research: Teleop Data Logging
- › Research: Data-Centric Platform
- › Research: ROS2 vs Custom Stack
- › Research: Collecting Demonstration Data
- › OpenArm Forum Hub
- › Wiki: SDK Quickstart
- › Wiki: Full API Reference