Skip to content

Fashionstar Atom S: 10‑DOF Biped Robot

1. Overview

  • Project Name: Fashionstar Atom S 10‑DOF Open Source Robot Kit
  • Summary: A fully open‑source 10‑DOF humanoid robot designed to be a low‑cost, highly playable hardware platform for enthusiasts. Powered by 10 Fashionstar RA8‑U25H‑M bus servos and an extremely simple electronics stack so you can focus on creativity.
  • System Architecture: Bus servos + RUC‑01 interface board (power/communication) + Seeed Studio XIAO controller (optional Grove expansion) + 3D‑printed chassis.
  • DOF Layout: 10 DOF covering head, arms and legs.
  • Joint Actuators: Fashionstar RA8‑U25H‑M bus servos × 10 (bus communication, clean wiring).
  • Frame: Fully 3D‑printed with STP/STL provided. Damaged parts can be re‑printed at any time, or you can redesign the look as needed.
  • Control & I/O: USB Type‑C (PC debugging), UART (host comm), bus‑servo ports, Grove expansion (optional).

Tip

👉 Want to run Python AI? Use Raspberry Pi. 👉 Want IoT control? Use ESP32. 👉 Want low‑level control? Use STM32 or Arduino.

Atom S appearance

2. Hardware Architecture

2.1 Drive & Power Management (RUC‑01 Interface Board)

Acts as the power/communication hub handling bus management and power distribution:

  • Servo Bus: 4 bus‑servo ports on board (support daisy‑chain), carrying both signal and power.
  • PC Debug Port: Integrated USB Type‑C for direct connection to the PC motion editor.
  • System Power: Voltage conversion and stable supply for the controller board.
  • Communication: Standard UART to receive commands from the upper controller.

2.2 Logic Controller & Expansion (MCU + Grove Shield)

Acts as the “brain”, running control algorithms and processing sensors:

  • Core MCU: Seeed Studio XIAO series boards — compact yet capable.
  • Ecosystem: Grove expansion shield exposing rich general‑purpose ports.
  • Main Role: Run robot kinematics and connect sensors (ultrasonic, vision, voice, etc.) via Grove for advanced interaction.

2.3 Data Flow

Debug/Editor Mode

PC --(USB)--> RUC‑01 --(Bus)--> Servos

Note: Tune servo angles and save motion groups directly from PC, without the XIAO controller.

Autonomous Mode

Sensors/Remote --(signals)--> XIAO --(UART cmds)--> RUC‑01 --(Bus)--> Servos

Note: The XIAO controls the robot autonomously based on sensors or preloaded code.

3. Mechanical Structure

  1. Structure overview and default servo IDs
Structure & default IDs
  1. Default posture at 0‑degree for all servos
Zero‑degree posture

4. Motion Editor How‑To

Web Motion Editor: https://wiki.fashionrobo.com/uartbasic/robotstudiopro/

4.1 Editor Layout

Three modules:

  1. Serial connect/disconnect and traffic monitor
  2. Servo status/angle query and angle control
  3. Motion group editing, optimization, import/export
Editor layout

4.2 Controls

4.2.1 Connect / Disconnect Serial

Connect serial

4.2.2 Real‑Time Posture Page

  • Layout: Drag each servo widget on the canvas to roughly place robot parts; IDs correspond accordingly. Click to lock the layout.
  • Scan: Re‑scan all online servos.
  • Check: Detect abnormal states such as over/under‑voltage protection or stall.
  • Read Once: Read current servo angles once.
  • Status Colors: Green = angle‑control mode; Red = released/damping mode.
Real‑time posture

Angle control via drag:

  • Real‑time Read: Read servo angle continuously.
  • Speed: Limit rotation speed when dragging to avoid moving too fast.
  • Unlock Modes: Release servos for easier teaching — power‑off release / damping release.
Angle & unlock

4.2.3 Motion Group Page

  • Motion Groups: Unlimited user‑defined groups.
Motion groups
  • Add Group
Add group
  • Check Abnormalities (over/under‑voltage, stall)
Check status
  • Delete Group (keep at least one)
Delete group
  • Motion Verification: Validate added motions.
Verify motions
  • Loop Playback
Loop
  • Stop Playback
Stop
  • Reorder Motions: Drag to change order.
  • Time: Duration for a servo to reach the target angle (e.g., 2 s).
  • Interval: Wait time between motions.
Time & interval
  • Delete Motion
Delete motion
  • Run Motion
Run motion
  • Add Current Motion
Add current
  • Export Motion Group: Export servo data for controllers.
Export
  • Import Motion Group: Import an existing group for edits.
Import

4.3 From Editing to Offline Motions (Example: Seeed Studio XIAO ESP32S3 Sense)

  • 1. Click “Connect” to open the serial port.
Connect serial
  • 2. Select the target serial port.
Select port
  • 3. Scan all servos on the robot.
Scan servos
  • 4. Click “Release All” to free all servos for manual posing. For partial edits (e.g., arms or legs), unlock only the needed servos.
  • 5. Set “Time” and “Interval”.
  • 6. After finishing each motion, click “Add Current” to append it to the group.
  • 7. Play to verify the whole sequence.

Note: Each motion can be adjusted individually (angles, time, interval) and validated.

Motion verification
  1. Click “Export (JSON)” to export the motion group.
Export JSON
  1. Open the exported JSON and copy the content of frames (including the surrounding []).
Copy frames
  1. Replace jsonData in your program with the copied content, then build/flash to the controller. You can control the robot via a Bluetooth gamepad (see the “Robot Control Parameters” section).
Replace jsonData

5. Robot Control Parameters (adjust as needed)

5.1 Default Parameters

  • BAUDRATE: UART baud rate.
  • SERVO_NUM: Total number of servos.
Default parameters

5.2 Bluetooth Parameters (if used)

  • BLE_NAME: Bluetooth gamepad name.
  • BLE_UUID: Bluetooth gamepad UUID.
Bluetooth parameters

5.3 Web Remote Parameters (if used)

  • SERVICE_UUID: Service ID.
  • CHARACTERSTIC_UUID: Characteristic ID.
Web remote parameters

5.4 Teaching Mode Parameters

  • MAX_ACTIONNUM: Max number of motion groups in teaching mode.
  • Default_RobotRunSpeed_Demonstration: Default run speed.
  • MIN_RobotRunSpeed_Demonstration: Minimum run speed.
  • MAX_RobotRunSpeed_Demonstration: Maximum run speed.
  • Adjust_RobotRunSpeed_Step: Speed step when adjusting teaching‑mode speed (±200 each time).
Teaching mode parameters

5.5 Data Fields (customize as needed)

  • RemoteControl_DefaultDemoAction: Default demo action (exported from the editor).
  • RemoteControl_Exe: Teaching‑mode execute command.
  • RemoteControl_Record: Teaching‑mode record command.
  • RemoteControl_Damping: Damping‑mode command.
  • RemoteControl_Reset: Reset command.
  • RemoteControl_ReduceRunSpeed: Decrease teaching‑mode run speed.
  • RemoteControl_AddRunSpeed: Increase teaching‑mode run speed.

Bluetooth note: Actual button data depends on your controller; define buttons in code per your needs.