Skip to content
humanoidrobot.build

Build package

Build HopeJR

The Robot Studio & Hugging Face · Humanoid · active · 2025

Open-source DIY full-size humanoid with dexterous hands and exoskeleton teleoperation, targeting ~$3,000, with LeRobot integration.

L1CompiledGate: Package validates against the spec; every fact has a source.

Build is partial: Only one arm + dexterous hand and its exoskeleton/glove teleop (Arm/) are buildable from upstream. The full humanoid has a right-leg + pelvis URDF, a draft torso and a legs STEP; no assembly guide and no license on the Arm/ files.

Fig 1/3PhotoHOPEJr humanoid artwork, three figures, one on a hoverboard base
Concept artwork from the HOPEJr Humanoid folder, not a photo of a build.© The Robot Studio (HOPEJr) · Apache-2.0 · source
Drawing
/huggingface/hopejr
Maker
The Robot Studio & Hugging Face
Country
FR
Package rev
v0.1.0
Level
L1 Compiled
Availability
DIY
Openness
90/100
HW licence
unknown
Last checked
2026-09-25
DOF
66
Actuators
Robstride 02 (humanoid body update)

Repo has no LICENSE detected by GitHub (license API returns none, 2026-09-25); Humanoid/LICENSE is Apache-2.0 text with an 'all rights reserved' header and covers only Humanoid/, so no license is declared here. Arm/hand + exoskeleton (Arm/ dir, LeRobot) is the most developed part. sim=true rests on the right-leg + pelvis URDF only. Commercial shipping status in 2026 unconfirmed. HQ left null (joint project). Repo last pushed May 2026.

01

Configure

Saved in the URL. Share the link to share the build.
Region · where parts ship to
Printer bed (square, mm)
Printed parts
Estimate for United States
—+ 31 unpriced lines: lower bound
No BOM line has a price yet
02

Source

One cart across 2 vendors · prices in USD as listed

31 lines · 156 parts · 29 without an offer in US · 2/31 lines sourced in 2+ regions (L3 gate)

#PartCategoryQtyUnitLineOffer
Amazon1 line · unpriced
1
Velcro strap 20 mm wide: 2x forearm, 2x shoulder, 2x half-torso length
other.velcro-strap
other6unpriced—AmazonLink from upstream BOM (one listing for all three lengths)
Umagnets1 line · unpriced
2
Diametrically magnetised N38 neodymium disc magnet, 3 mm x 2 mm (one per joint)
sensor.magnet-3x2
sensor23unpriced—Umagnetsships globallyLink from upstream BOM
No offer in this region29 lines · unpriced
3
Feetech SCS0009 micro serial servo, hand (3 per finger x4 + 4 thumb)
actuator.scs0009 · MPN SCS0009 · 1 alt
actuator16unpriced—Offers in CN only
4
Feetech STS3250 50 kg.cm serial bus servo, shoulder yaw + elbow flex
actuator.sts3250 · MPN STS3250
actuator2unpriced—Offers in CN only
5
Feetech STS3215 12 V 30 kg.cm serial bus servo, arm
actuator.sts3215-12v · MPN STS3215 (12 V) · 1 alt
actuator4unpriced—Offers in CN only
6
Feetech SM8512BL 12 V 85 kg high-torque servo, shoulder pitch
actuator.sm8512bl · MPN SM8512BL
actuator1unpriced—Offers in CN only
7
Feetech URT-1 serial bus adapter board (arm bus)
electronics.urt-1
electronics1unpriced—Offers in CN only
8
Waveshare serial bus servo driver board (hand bus)
electronics.waveshare-servo-driver
electronics1unpriced—Offers in EU, CN only
9
Power supply 12 V 5 A + DC adapter (arm)
power.psu-12v-5a
power1unpriced—Offers in EU only
10
Power supply 5 V 4 A (hand)
power.psu-5v-4a
power1unpriced—Offers in EU only
11
USB-C to USB-A cable, 3 m (arm + hand)
cable.usb-c-a-3m
cable2unpriced—Offers in EU only
12
M2 screw assortment set (hand)
fastener.m2-set
fastener1unpriced—Offers in EU only
13
M4 nut assortment set (arm)
fastener.m4-nuts
fastener1unpriced—Offers in EU only
14
M4 screws: 6x 65 mm, 1x 50 mm, 1x 45 mm, 1x 35 mm, 3x 30 mm, 1x 25 mm (shoulder, armpit, wrist, humeral, elbow)
fastener.m4-screws
fastener13unpriced—Offers in EU only
15
M6 x 35 mm screw (2x elbow, 2x shoulder)
fastener.m6x35
fastener4unpriced—Offers in EU only
16
M6 spacer set (2x elbow, 2x shoulder)
fastener.m6-spacers
fastener1unpriced—Offers in EU only
17
Ball bearing 70 x 90 x 10 mm (wrist)
structure.bearing-70x90x10
structure1unpriced—Offers in EU only
18
Ball bearing 50 x 65 x 7 mm (shoulder)
structure.bearing-50x65x7
structure1unpriced—Offers in EU only
19
Ball bearing 20 x 27 x 4 mm (arm)
structure.bearing-20x27x4
structure18unpriced—Offers in EU only
20
Tension spring 15 mm long, 0.3 mm wire, 3 mm OD (set of 10; thumb + fingers)
other.spring-15mm
other1unpriced—Offers in CN only
21
Tension spring 20 mm long, 0.3 mm wire, 3 mm OD (sets of 10; fingers)
other.spring-20mm
other2unpriced—Offers in CN only
22
Braided fishing line 0.33 mm, 63 lb test (finger tendons)
other.tendon-line
other1unpriced—Offers in CN only
23
PTFE tube (3D-printer filament type) for tendon sheaths
other.ptfe-tube
other1unpriced—Offers in EU only
24
Finger protectors (fingertip covers)
other.finger-protectors
other5unpriced—Offers in EU only
25
M3 screw assortment set (exoskeleton + glove)
fastener.m3-set
fastener1unpriced—Offers in EU only
26
Ball bearing 6 x 10 x 3 mm (exoskeleton upper-arm joints)
structure.bearing-6x10x3
structure10unpriced—Offers in EU only
27
Homunculus sensor PCB, JLCPCB-assembled (ESP32-C3-WROOM-02, CD74HC4067 16-ch mux, 3x OPA340UA, AMS1117-3.3, USB-C, 16x JST-SH 3-pin)
electronics.pcb-homunculus
electronics2unpriced—Offers in CN only
28
12-connector breakout PCB (12x JST EH B3B 2.50 mm vertical)
electronics.pcb-12-connector
electronics1unpriced—Offers in CN only
29
7-connector breakout PCB (7x JST, LCSC C722693)
electronics.pcb-7-connector
electronics1unpriced—Offers in CN only
30
SS49E linear Hall sensor (1 per hand/wrist joint, 2 per upper-arm joint)
sensor.ss49e · MPN SS49E
sensor28unpriced—Offers in EU only
31
JST-SH 3-pin pre-crimped cables, sets of 10: 1x 10 cm, 1x 15 cm, 2x 20 cm, 1x 30 cm (same-direction for 15-30 cm)
cable.jst-3pin
cable5unpriced—Offers in CN only
Cart total · US156$0.0031 lines unpriced, not in total
03

Fabricate

Planned for a 256 mm bed
Fabricated parts
7
Print time (sum)
—
Material (sum)
—
Plates · estimate
—

No plate estimate: the package does not list grams per part yet, and we will not guess them. Slice the source files for your 256 mm bed.

PartProcessMaterialQtyh / partg / partProfile
Right shoulder (right_shoulder.stl; left_shoulder.stl for a left arm)
printed.shoulder
FDMNot specified upstream1——source
Right humeral / upper arm (right_humeral.stl)
printed.humeral
FDMNot specified upstream1——source
Right forearm (right_forearm.stl)
printed.forearm
FDMNot specified upstream1——source
Right hand, palm + fingers (right_hand.stl, multi-body file)
printed.hand
FDMNot specified upstream1——source
Tendon spool cover (spoolcover.stl; copies needed not stated)
printed.spoolcover
FDMNot specified upstream1——source
Right teleop exoskeleton (right_exo.stl)
printed.exo
FDMNot specified upstream1——source
Right teleop glove (right_glove.stl)
printed.glove
FDMNot specified upstream1——source
Not specified upstream · 7 parts · g unknown
04

Assemble

Every step ends in a check
Steps
14
Subassemblies
7
Hands-on time (sum)
—
Critical path
—
Your progress · this device
—

14 steps have no time estimate; times above are lower bounds.

Assembly graph · lanes are subassemblies, columns are dependency depthcritical pathdonesafety

Steps, in build order

  1. Fabrication
    01

    Print the arm and hand

    Print the four right-side arm files and the spool cover from Arm/3dprint files/arm (left_* files for a left arm). The upstream gives no material, layer or infill settings. Arm/STEP/arm.step and hand.step are the reference geometry. Tolerances were relaxed in the 2025 revision and threaded inserts were replaced by through-bolts.

    CHECKA 20 x 27 x 4 mm bearing and a Feetech STS servo each drop into their printed pockets by hand with no visible play.
    Parts in
    • Right shoulder (right_shoulder.stl; left_shoulder.stl for a left arm)printed.shoulder
    • Right humeral / upper arm (right_humeral.stl)printed.humeral
    • Right forearm (right_forearm.stl)printed.forearm
    • Right hand, palm + fingers (right_hand.stl, multi-body file)printed.hand
    • Tendon spool cover (spoolcover.stl; copies needed not stated)printed.spoolcover
    Tools
    FDM printer
    Torque
    —
    Time
    —
    After
    Start
  2. 02

    Print the exoskeleton and glove

    Print right_exo.stl and right_glove.stl from Arm/3dprint files/exoskeleton. Geometry reference: Arm/STEP/exoskeleton.step and glove.step.

    CHECKA 3 x 2 mm magnet and a 6 x 10 x 3 mm bearing seat in their printed pockets on the exoskeleton, and the glove fits the operator's hand.
    Parts in
    • Right teleop exoskeleton (right_exo.stl)printed.exo
    • Right teleop glove (right_glove.stl)printed.glove
    Tools
    FDM printer
    Torque
    —
    Time
    —
    After
    Start
  3. 03

    Order the assembled PCBs from JLCPCB

    For each folder in Arm/PCB, upload gerber.zip to JLCPCB, select PCB assembly, then upload that folder's BOM and POS (CPL) files. The Homunculus board carries the ESP32-C3, 16-channel mux and op-amp buffers for the Hall sensors; the connector boards join servo/sensor cables so no soldering is needed.

    CHECKJLCPCB's placement preview shows every BOM designator placed (e.g. U1-U6 on the Homunculus board), and a delivered Homunculus board enumerates as a USB serial device when plugged in over USB-C.
    Parts in
    • Homunculus sensor PCB, JLCPCB-assembled (ESP32-C3-WROOM-02, CD74HC4067 16-ch mux, 3x OPA340UA, AMS1117-3.3, USB-C, 16x JST-SH 3-pin)electronics.pcb-homunculus
    • 12-connector breakout PCB (12x JST EH B3B 2.50 mm vertical)electronics.pcb-12-connector
    • 7-connector breakout PCB (7x JST, LCSC C722693)electronics.pcb-7-connector
    Tools
    —
    Torque
    —
    Time
    —
    After
    Start
  4. Hand
    04

    Hand: finger servos, tendons, springs

    No step-by-step guide is published; work from hand.step. Per the Arm README: each finger has three SCS0009 servos (radial flexor, ulnar flexor, PIP/DIP) and the thumb four (CMC, MCP, PIP, DIP), the DIP joint is underactuated, tendons are locked with screws rather than crimps, run through PTFE tubes, and wind on spools that linearise finger motion against servo angle. Assign servo IDs 1-16 in the order LeRobot's hope_jr_hand.py expects (thumb_cmc=1 ... pinky_pip_dip=16).

    CHECKWith tendons tensioned, turning each servo horn by hand flexes the matching finger and the springs return it to open; all 16 servos answer on the bus with IDs 1-16.
    Parts in
    • Right hand, palm + fingers (right_hand.stl, multi-body file)printed.hand
    • Tendon spool cover (spoolcover.stl; copies needed not stated)printed.spoolcover
    • Feetech SCS0009 micro serial servo, hand (3 per finger x4 + 4 thumb)actuator.scs0009
    • Braided fishing line 0.33 mm, 63 lb test (finger tendons)other.tendon-line
    • PTFE tube (3D-printer filament type) for tendon sheathsother.ptfe-tube
    • Tension spring 15 mm long, 0.3 mm wire, 3 mm OD (set of 10; thumb + fingers)other.spring-15mm
    • Tension spring 20 mm long, 0.3 mm wire, 3 mm OD (sets of 10; fingers)other.spring-20mm
    • Finger protectors (fingertip covers)other.finger-protectors
    • M2 screw assortment set (hand)fastener.m2-set
    • Ball bearing 20 x 27 x 4 mm (arm)structure.bearing-20x27x4
    Tools
    —
    Torque
    —
    Time
    —
    After
    01
  5. Arm
    05

    Arm: shoulder, humeral, elbow, forearm, wrist

    No step-by-step guide is published; work from arm.step and the BOM's placement notes (M4x65: 2 upper shoulder, 2 armpit, 2 wrist; M4x50/45/35 and one M4x30: humeral; two M4x30: lower shoulder; M4x25: upper elbow; M6x35 with spacers: 2 elbow, 2 shoulder; 70x90x10 bearing at the wrist, 50x65x7 at the shoulder). Servo IDs per LeRobot hope_jr_arm.py: shoulder_pitch=1 (SM8512BL), shoulder_yaw=2, shoulder_roll=3, elbow_flex=4, wrist_roll=5, wrist_yaw=6, wrist_pitch=7. Route wires behind the mantle.

    CHECKUnpowered, every arm joint turns through its range by hand with no binding, and all 7 servos answer on the URT-1 bus at their IDs 1-7.
    Parts in
    • Right shoulder (right_shoulder.stl; left_shoulder.stl for a left arm)printed.shoulder
    • Right humeral / upper arm (right_humeral.stl)printed.humeral
    • Right forearm (right_forearm.stl)printed.forearm
    • Feetech SM8512BL 12 V 85 kg high-torque servo, shoulder pitchactuator.sm8512bl
    • Feetech STS3250 50 kg.cm serial bus servo, shoulder yaw + elbow flexactuator.sts3250
    • Feetech STS3215 12 V 30 kg.cm serial bus servo, armactuator.sts3215-12v
    • Ball bearing 70 x 90 x 10 mm (wrist)structure.bearing-70x90x10
    • Ball bearing 50 x 65 x 7 mm (shoulder)structure.bearing-50x65x7
    • Ball bearing 20 x 27 x 4 mm (arm)structure.bearing-20x27x4
    • M4 screws: 6x 65 mm, 1x 50 mm, 1x 45 mm, 1x 35 mm, 3x 30 mm, 1x 25 mm (shoulder, armpit, wrist, humeral, elbow)fastener.m4-screws
    • M4 nut assortment set (arm)fastener.m4-nuts
    • M6 x 35 mm screw (2x elbow, 2x shoulder)fastener.m6x35
    • M6 spacer set (2x elbow, 2x shoulder)fastener.m6-spacers
    Tools
    —
    Torque
    —
    Time
    —
    After
    01
  6. Teleop
    06

    Exoskeleton: Hall encoders, bearings, straps

    No step-by-step guide is published; work from exoskeleton.step. Each exo joint mirrors a robot joint; each joint gets one diametric magnet, upper-arm joints use two SS49E sensors (sin/cos pair). Plug sensors into the Homunculus PCB with the JST cables, and strap the exo to forearm, shoulder and torso with the velcro straps.

    CHECKFlashed with exo.cs, the serial monitor at 115200 baud prints 16 raw values plus 5 angles (0-3600), and rotating each instrumented joint changes only its own angle smoothly with no wrap mid-range.
    Parts in
    • Right teleop exoskeleton (right_exo.stl)printed.exo
    • Ball bearing 6 x 10 x 3 mm (exoskeleton upper-arm joints)structure.bearing-6x10x3
    • Diametrically magnetised N38 neodymium disc magnet, 3 mm x 2 mm (one per joint)sensor.magnet-3x2
    • SS49E linear Hall sensor (1 per hand/wrist joint, 2 per upper-arm joint)sensor.ss49e
    • Homunculus sensor PCB, JLCPCB-assembled (ESP32-C3-WROOM-02, CD74HC4067 16-ch mux, 3x OPA340UA, AMS1117-3.3, USB-C, 16x JST-SH 3-pin)electronics.pcb-homunculus
    • JST-SH 3-pin pre-crimped cables, sets of 10: 1x 10 cm, 1x 15 cm, 2x 20 cm, 1x 30 cm (same-direction for 15-30 cm)cable.jst-3pin
    • M3 screw assortment set (exoskeleton + glove)fastener.m3-set
    • Velcro strap 20 mm wide: 2x forearm, 2x shoulder, 2x half-torso lengthother.velcro-strap
    Tools
    —
    Torque
    —
    Time
    —
    After
    02, 03
  7. 07

    Glove: finger Hall sensors

    No step-by-step guide is published; work from glove.step and Project Homunculus (the glove's origin). One magnet + one SS49E per hand joint, wired to the second Homunculus PCB.

    CHECKFlashed with glove.cs, the serial stream at 115200 baud shows 16 raw readings and flexing each finger moves only its own channels.
    Parts in
    • Right teleop glove (right_glove.stl)printed.glove
    • Diametrically magnetised N38 neodymium disc magnet, 3 mm x 2 mm (one per joint)sensor.magnet-3x2
    • SS49E linear Hall sensor (1 per hand/wrist joint, 2 per upper-arm joint)sensor.ss49e
    • Homunculus sensor PCB, JLCPCB-assembled (ESP32-C3-WROOM-02, CD74HC4067 16-ch mux, 3x OPA340UA, AMS1117-3.3, USB-C, 16x JST-SH 3-pin)electronics.pcb-homunculus
    • JST-SH 3-pin pre-crimped cables, sets of 10: 1x 10 cm, 1x 15 cm, 2x 20 cm, 1x 30 cm (same-direction for 15-30 cm)cable.jst-3pin
    • M3 screw assortment set (exoskeleton + glove)fastener.m3-set
    Tools
    —
    Torque
    —
    Time
    —
    After
    02, 03
  8. Arm
    08

    Mount the hand on the wrist

    Join the hand to the wrist bearing and route the hand servo bus back along the arm to the Waveshare driver.

    CHECKWrist roll, yaw and pitch still move freely by hand with the hand attached, and no cable pulls tight at any wrist extreme.
    Parts in
    • Right hand, palm + fingers (right_hand.stl, multi-body file)printed.hand
    • Right forearm (right_forearm.stl)printed.forearm
    Tools
    —
    Torque
    —
    Time
    —
    After
    04, 05
  9. Bring-up
    09

    Flash the ESP32-C3 teleop firmware

    Arm/code/exo.cs and glove.cs are Arduino sketches (despite the .cs extension): rename to .ino, build for ESP32-C3 and upload to the exo and glove boards respectively. Both read a 16-channel mux on S0-S3 = GPIO 5, 6, 8, 7 and analog input GPIO 4, and stream at 115200 baud, matching LeRobot's homunculus baud_rate default.

    CHECK`lerobot-find-port` lists both teleop boards, and each streams one line of space-separated integers per scan.
    Parts in
    • Homunculus sensor PCB, JLCPCB-assembled (ESP32-C3-WROOM-02, CD74HC4067 16-ch mux, 3x OPA340UA, AMS1117-3.3, USB-C, 16x JST-SH 3-pin)electronics.pcb-homunculus
    • USB-C to USB-A cable, 3 m (arm + hand)cable.usb-c-a-3m
    Tools
    Arduino IDE (or arduino-cli) with ESP32 core
    Torque
    —
    Time
    —
    After
    06, 07
  10. Electrical
    10

    Wire servo buses and power

    Safety · human-verified required

    Arm bus: 12 V 5 A supply into the URT-1 board. Hand bus: 5 V 4 A supply into the Waveshare driver (SCS0009 are low-voltage servos, never put them on 12 V). Connect each board to the host with a 3 m USB-C cable. Use the connector PCBs to join servo leads without soldering.

    CHECKBefore plugging servos in, a multimeter reads about 12 V on the arm bus and about 5 V on the hand bus with correct polarity; with servos connected, `lerobot-find-port` shows both adapters.

    This step can hurt a person or ruin parts. Its instructions need sign-off by a human who has done it before relying on them. Stop and ask if anything differs from what you see.

    Parts in
    • Feetech URT-1 serial bus adapter board (arm bus)electronics.urt-1
    • Waveshare serial bus servo driver board (hand bus)electronics.waveshare-servo-driver
    • Power supply 12 V 5 A + DC adapter (arm)power.psu-12v-5a
    • Power supply 5 V 4 A (hand)power.psu-5v-4a
    • USB-C to USB-A cable, 3 m (arm + hand)cable.usb-c-a-3m
    • 12-connector breakout PCB (12x JST EH B3B 2.50 mm vertical)electronics.pcb-12-connector
    • 7-connector breakout PCB (7x JST, LCSC C722693)electronics.pcb-7-connector
    Tools
    —
    Torque
    —
    Time
    —
    After
    08
  11. Bring-up
    11

    Install LeRobot with HopeJR extras

    Clone huggingface/lerobot and `pip install -e ".[hopejr]"` (pulls the Feetech SDK and pygame for the calibration GUI). Run `lerobot-find-port` and note the ports for arm, hand, exoskeleton and glove.

    CHECK`python -c "import lerobot.robots.hope_jr"` succeeds and four distinct serial ports are identified.
    Parts in
    —
    Tools
    Host computer (Linux/macOS), Python
    Torque
    —
    Time
    —
    After
    10, 09
  12. 12

    Calibrate hand, arm, glove and exoskeleton

    Safety · human-verified required

    `lerobot-calibrate --robot.type=hope_jr_hand --robot.side=right ...` and `--robot.type=hope_jr_arm ...` open a range-finder GUI: set min/max per joint and Save (writes limits to the motors). Keep ulnar and radial flexor ranges the same size. Then `--teleop.type=homunculus_glove` and `--teleop.type=homunculus_arm`: move every joint through its full range and press ENTER. Files land in ~/.cache/huggingface/lerobot/calibration.

    CHECKFour calibration JSON files exist under ~/.cache/huggingface/lerobot/calibration, and each teleop joint's recorded MIN < MAX.

    This step can hurt a person or ruin parts. Its instructions need sign-off by a human who has done it before relying on them. Stop and ask if anything differs from what you see.

    Parts in
    • Feetech SCS0009 micro serial servo, hand (3 per finger x4 + 4 thumb)actuator.scs0009
    • Feetech STS3250 50 kg.cm serial bus servo, shoulder yaw + elbow flexactuator.sts3250
    • Feetech STS3215 12 V 30 kg.cm serial bus servo, armactuator.sts3215-12v
    • Feetech SM8512BL 12 V 85 kg high-torque servo, shoulder pitchactuator.sm8512bl
    Tools
    —
    Torque
    —
    Time
    —
    After
    11
  13. 13

    First motion: teleoperate hand and arm

    Safety · human-verified required

    Run `lerobot-teleoperate` for the hand (hope_jr_hand + homunculus_glove) and, in a separate shell, for the arm (hope_jr_arm + homunculus_arm); the docs say both cannot share a process due to Feetech middleware globals. Start at --fps=30. hope_jr_arm supports max_relative_target to clamp step size; set it for the first run and keep the arm clear of people.

    CHECKClosing the glove hand closes the robot hand, and moving each exo joint moves the matching robot joint in the same direction, with --display_data=true showing matching values.

    This step can hurt a person or ruin parts. Its instructions need sign-off by a human who has done it before relying on them. Stop and ask if anything differs from what you see.

    Parts in
    —
    Tools
    —
    Torque
    —
    Time
    —
    After
    12
  14. Policy
    14

    Record, train and evaluate an ACT policy (experimental)

    `lerobot-record` with a camera and the glove to capture episodes, `lerobot-train --policy.type=act` on the dataset, then `lerobot-record --policy.path=...` to evaluate. The docs mark record/replay/train for HopeJR as experimental and only show the hand.

    CHECKA recorded episode replays with `lerobot-replay` and the robot hand repeats the demonstrated motion.
    Parts in
    —
    Tools
    USB camera (OpenCV)
    Torque
    —
    Time
    —
    After
    13

Progress is stored in this browser only (localStorage). Nothing is sent anywhere.

05

Bring-up

Flash · calibrate · first policy
  1. A

    Flash firmware

    TargetsHomunculus exoskeleton PCB (ESP32-C3, Arm/code/exo.cs), Homunculus glove PCB (ESP32-C3, Arm/code/glove.cs), Robot arm + hand: stock Feetech servo firmware driven from LeRobot over URT-1 / Waveshare bus adapters

    Repogithub.com/huggingface/lerobot

    Robot side has no custom firmware: LeRobot's hope_jr_arm (FeetechMotorsBus, IDs 1-7) and hope_jr_hand (16x scs0009, IDs 1-16, protocol_version=1) talk to the servos directly. Teleop firmware is two short Arduino sketches in https://github.com/TheRobotStudio/HOPEJr/tree/main/Arm/code (mux scan, 115200 baud; exo.cs also converts 5 sin/cos Hall pairs to 0-3600 angles). Teleoperator drivers: https://github.com/huggingface/lerobot/tree/main/src/lerobot/teleoperators/homunculus. Arm/hand drivers: https://github.com/huggingface/lerobot/blob/main/src/lerobot/robots/hope_jr/hope_jr_arm.py, https://github.com/huggingface/lerobot/blob/main/src/lerobot/robots/hope_jr/hope_jr_hand.py.

  2. B

    Calibrate

    Calibrationlerobot-calibrate for hope_jr_hand, hope_jr_arm (GUI range finder, writes limits to motors), homunculus_glove and homunculus_arm (record min/max); files in ~/.cache/huggingface/lerobot/calibration.

    Log the output. It goes in your build report.

  3. C

    First policy

    • hand manipulation via ACT (train-your-own recipe)LeRobot (ACT) source
    Run it in sim on humanoidrobots.training →

Try the policy in the browser sim before it touches hardware. Keep a hand near the power switch the first time a policy runs on the real robot.

06

Report your build

Moves HopeJR toward L4 · Built

A build report is the only thing that proves a package works. It raises the level, puts a point on the map, and tells the Foreman which steps to rewrite.

Robot/huggingface/hopejr

Sends JSON to POST hyperspawn.io/api/v1/reports. Reports are reviewed before they count toward L4 or appear on the map.

GATE

Level gate

Holds L1 · evidence, not confidence
  1. L0
    Indexed

    Known to exist. Atlas page only.

    • 4 sources on record(met)
    held
  2. L1
    Compiled

    Package validates against the spec; every fact has a source.

    • Build package compiled(met)
    • 25 sources across robot and package(met)
    held
  3. L2
    Sim-verified

    Loads in browser and GPU sim, mass within tolerance of the BOM, holds a stand. Unlocks .training.

    • URDF/MJCF is public(met)
    • Sim load, mass tolerance and stand are checked on .training(checked elsewhere)
    next
  4. L3
    Sourced

    Every BOM line resolves to a live offer in at least two regions. Unlocks the one-click cart.

    • 1/31 BOM lines have offers in 2+ regions(not met)
    locked
  5. L4
    Built

    At least one community build report with photos and bring-up logs. Unlocks Build it as the main action.

    • 0 reviewed build reports(not met)
    • Review feed unreachable at last refresh; count is registry-only(checked elsewhere)
    locked
  6. L5
    Certified

    The robot's maintainer signs the package. Unlocks certified teams and kit sales.

    • Maintainer signature not recorded(not met)
    locked

Levels are cumulative and set by the registry from reviewed evidence. This panel shows what can be measured from the package today.

Same robot, other verbs

REV

Revisions and sources

Every fact on this sheet traces to one of these
RevDescriptionChecked
PKGBuild package, current revision 0.1.0—
S1TechCrunchtechcrunch.com2026-09-24
S2Official repogithub.com2026-09-24
S3HOPEJr Humanoid/URDF/Right_Leg (only URDF)github.com2026-09-25
S4LeRobot HopeJR docs (arm, hand, exoskeleton, glove)huggingface.co2026-09-25
S5TheRobotStudio/HOPEJr (repo, tree at pinned commit)github.com2026-09-25
S6HOPEJr top-level README (Humanoid vs Arm split)github.com2026-09-25
S7Arm/BOM.md (HopeJr + Homunculus teleop BOM)github.com2026-09-25
S8Arm/README.md (Hugging Face 2025 revision)github.com2026-09-25
S9Arm/PCB (12-connector, 7-connector, homunculus_pcb gerbers/BOM/POS)github.com2026-09-25
S10Arm/code (exo.cs, glove.cs)github.com2026-09-25
S11Arm/3dprint files/armgithub.com2026-09-25
S12Arm/3dprint files/exoskeletongithub.com2026-09-25
S13Arm/STEP (arm, hand, exoskeleton, glove)github.com2026-09-25
S14Humanoid/README.mdgithub.com2026-09-25
S15Humanoid/LICENSE (Apache-2.0 text)github.com2026-09-25
S16Second_Arm_Draft BOM (older HOPELite arm)github.com2026-09-25
S17First_Hand_Draft BOM (older hand)github.com2026-09-25
S18Humanoid/Robstride RS02 Updategithub.com2026-09-25
S19Humanoid/URDF/Right_Leggithub.com2026-09-25
S20LeRobot docs: HopeJRhuggingface.co2026-09-25
S21LeRobot hope_jr_arm.py (motor map)github.com2026-09-25
S22LeRobot hope_jr_hand.py (motor map)github.com2026-09-25
S23LeRobot homunculus teleoperatorsgithub.com2026-09-25
S24Project Homunculus (glove + exo origin)github.com2026-09-25
S25Example HopeJR hand datasethuggingface.co2026-09-25