RIG-Arm

RIG-Arm (Kaka) is a compact 5-DOF desktop AI robot arm and the first manipulation platform in the RIG series. It is designed for desktop embodied AI: a 5-axis servo arm, an ESP32-S3 mainboard, a round expressive LCD, camera, microphone, and speaker, all integrated into one printable desktop robot.
Like RIG-Puppy and RIG-Hover, RIG-Arm runs the LUWU OS firmware stack on the same RIG mainboard architecture. Development experience, drivers, and tooling carry over across the whole RIG family, and the arm adds real manipulation: closed-loop inverse kinematics (CLIK), semantic voice commands, and an extensible MCP tool framework.
What Is RIG-Arm?
RIG-Arm is an open-source desktop robot arm kit built around ESP32-S3 and the RIG-Omni firmware architecture. It is a compact hardware development platform for learning and experimenting with embedded robotics, closed-loop inverse kinematics, voice AI, expressive animation, camera tools, and maker-friendly mechanical design.
The project is intentionally shaped like a global open-source DIY kit: printable mechanical parts, documented hardware modules, reproducible firmware, and clear extension points for developers.
Highlights
Category | Capability |
Robot form | 5-DOF desktop arm: base rotation, shoulder, elbow, wrist, gripper/head |
Voice AI | Offline wake word, cloud ASR/TTS, semantic motion commands |
Emotion display | 1.09" round TFT with EAF expression animations |
Motion control | Closed-loop inverse kinematics (CLIK), preset actions, stall detection |
Vision | GC0308 camera for image understanding and snapshot tools |
Connectivity | 2.4 GHz Wi-Fi, BLE, Xiao Lu mini app provisioning, OTA update |
MCP tools | Built-in self.arm.* tools; extensible remote command framework |
Reproduction | Fully 3D-printable structure, STEP reference models on MakerWorld |
Hardware Specifications
Item | Specification |
Main controller | ESP32-S3-WROOM-1-N16R8 (dual-core 240 MHz), Wi-Fi + BLE 5 |
Joints | 5 DOF, dual-axis dual-UART bus servos with ID addressing |
Display | 1.09" TFT SPI round LCD, 240x240 |
Camera | GC0308, DVP interface |
Microphone | MEMS, -26 dB sensitivity, noise suppression |
Speaker | 8 ohm 2 W full-range, 200 Hz - 20 kHz |
Battery | 500 mAh Li-po, Type-C 5V/1A charging |
Key Features
- Expressive head: a round interactive terminal combining camera and display gives the robot both vision and personality, strengthening human-robot connection during collaboration.
- Modular reinforced base: a four-direction aluminum extrusion base provides the rigidity needed for accurate motion and leaves room for mounting on workstations or mobile platforms.
- Unified platform: same hardware scheme and mainboard as RIG-Puppy and RIG-Hover, so firmware knowledge and code migrate directly.
- STEAM education: a hands-on platform for learning inverse kinematics, path planning, and embodied AI, from simulation to a physical arm.
Documentation
- 02-Quick-Start - first power-on, provisioning, and voice interaction.
- 03-Replication-Guide - parts, 3D printing, flashing, and assembly.
- 04-Developer-Guide - firmware architecture, IK solver, and MCP tools.
- Desktop Web App - agent configuration, knowledge base, and voice cloning.
Firmware Source
RIG-Arm runs the RIG-Omni firmware. The arm board source (main/boards/arm) is part of the open-source repository:
https://github.com/LuwuDynamics/rig_omniBuild From Source
RIG-Arm builds with ESP-IDF v5.5.3 or later:
git clone https://github.com/Xgorobot/RIG-Omni.git
cd RIG-Omni
idf.py set-target esp32s3
idf.py menuconfig # RIG-Omni → Board Type → RIG-Arm
idf.py -p COM3 build flash monitorSee 04-Developer-Guide for the full toolchain setup, boot sequence, and motion-control internals.
Safety
- Keep hands, hair, and loose items away from the arm while it is moving.
- Place the robot on a flat, stable desktop and make sure the aluminum base sits firmly.
- Power the servos only from the 7.4 V battery path, never from the mainboard 5 V pins.
- Stop motion immediately if a servo makes abnormal noise or heats up.
- For long storage, keep the battery at about 50% charge. See the battery notes in 03-Replication-Guide.
