FTH 0 · The humanoid's body|INEMA.CLUB-PRO

Lesson 8 · 15 min

The spec sheet for your humanoid

A manufacturer spec sheet, a simulation file, and a measurement don't say the same thing, and sim-to-real lives in the difference. In this lesson you compare two Menagerie humanoids by script, build a spec sheet that separates the three sources, and leave with the study plan for the program.

Start the lesson
Two mockups of humanoid robots of different heights side by side on a dark table, with a caliper and an open notebook.

In this lesson you will

  1. 1comparar.py: 7 items read from the file, side by side
  2. 2The sheet in three columns: manufacturer, file, measurement
  3. 3Which robot a lab would buy today, and why
  4. 4The dated plan for the next FTH courses

Goal: compare two Menagerie humanoids by script and build your own spec sheet, separating manufacturer, file, and measurement.

01Three sources, one sheet

Each row of the sheet says where it came from. Tap each block.

Click each block in the diagram to see what it does.

The "difference" column is the sim-to-real to-do list.

02Which robot a lab would consider in Oct 2026

With a price only when there is a source, and always varying by version and reseller. Tap each one.

1. Unitree G1 EDU

It is the platform that shows up in almost everything: Menagerie (29 degrees of freedom), unitree_rl_lab, mjlab, retargeting (GMR), SONIC with open weights, and LeRobot.

The base (US$ 13.5 thousand) has no SDK; the EDU, which does, is on request.

03Compare by script and fill in the sheet

comparar.py prints 7 items from the two files. The sheet template has the three columns; the brackets are what you fill in.

Terminal · G1 × H1
F=${FTH:-$HOME/fth}; cd $F/anatomia && . $F/.venv/bin/activate
python3 kit/comparar.py unitree_g1/scene.xml unitree_h1/scene.xml; echo "saída: $?"
File · kit/ficha-modelo.md
# Ficha técnica — [robot] (version [base/EDU/…])

Data: [DD/MM/YYYY] · Simulation model: [Menagerie folder] @ [commit]

| item | fabricante (fonte, data) | arquivo MJCF | medido no curso | diferença |
|---|---|---|---|---|
| graus de liberdade | [n] ([URL], [date]) | nu = [n] | — | [different version?] |
| massa (kg) | [n] | [n] | — | [%] |
| altura do CoM em pé (m) | — | [n] | — | — |
| maior torque (N·m) | [n or "not published"] | [n] ([joint]) | agachado 90°: [n] | [%] |
| sensores | [list from the sheet] | [n] no arquivo | + [added] | [what is missing] |
| bateria | [mAh, S, h] | — | [Wh, derived calculation] | — |
| computação | [CPU / Orin / Thor] | — | — | — |
| equilíbrio sem controlador | — | — | fica com [n] N · cai com [n] N (0,2 s) | — |
| estágio | [demo/piloto/produção] ([URL], [date]) | — | — | — |
Example from the repository
item                               unitree_g1           unitree_h1
GDL acionados (nu)                         29                   19
massa do modelo (kg)                     33.3                 51.4
altura do CoM (m)                        0.69                 0.95
maior torque (N·m)                        139                  300
junta do maior torque        right_knee_joint           right_knee
sensores no arquivo                         4                    0
pose inicial                            stand                 home
FICHA: 7 itens comparados
saída: 0

The H1 is heavier and taller (CoM at 0.95 m) and has a 300 N·m knee in the model, but fewer degrees of freedom and no sensor declared in the file.

04What you built in this course

Four main deliverables. Tap a step to see "done when".

Lesson 1Table

6 robots

3 exercises

Stage, source, and date for 6 humanoids.

See the lesson
Lesson 2Workbench

MuJoCo + Menagerie

3 exercises

~/fth with pinned versions.

See the lesson
Lessons 3–5Body

joints, torque

3 exercises

Joints, torque, and sensors read from the file.

See the lesson
Lessons 6–8Limits

balance, spec sheet

3 exercises

Push limit and a three-column spec sheet.

See the lesson
At the end of the courseWorkbench ready, body read from the file, and a spec sheet with the differences noted.
8 lessons
Click an exercise to see what to do and the "done when".
  1. 1/5

    Table

    The table that separates demo, pilot, and production. Update it with every news item: the date is what keeps the table honest.

  2. 2/5

    Workbench

    The workbench that courses 1 through 4 reuse: venv, MuJoCo 3.16.0, and Menagerie at the tested commit.

  3. 3/5

    Body

    Joint tree, torque measured in the squat, and sensors checked against body weight: the body described by your own numbers.

  4. 4/5

    Limits

    The limit of the body without a controller, the energy calculation, and the spec sheet: the starting point of the locomotion course.

  5. 5/5

    The whole course

    Four deliverables in sequence. The workbench from lesson 2 is a prerequisite for every practice in the next FTH courses.

Order matters: without the workbench, nothing from lessons 3 to 8 runs.

05Build your plan with dates

Pick a start date and how much time you have per week. The plan lists the practices for each lesson.

06Practice

Compare, fill in, and decide.

E1 · G1 × H1

3 min

Run the comparison block and explain in one sentence why the H1 has a higher CoM.

Done when: python3 kit/comparar.py unitree_g1/scene.xml unitree_h1/scene.xml; echo "saída: $?" → FICHA: 7 itens comparados and saída: 0.

E2 · The G1 spec sheet

20 min

Copy kit/ficha-modelo.md to ~/fth/ficha-g1.md and fill in the three columns with what you read and measured in lessons 1 to 7.

Done when: grep -c "\[" ~/fth/ficha-g1.md → 0 (no brackets left to fill in).

E3 · A third robot

10 min

Add another folder to the sparse-checkout (for example apptronik_apollo) and compare it with the G1. Heads up: the PAL TALOS has no scene.xml; use pal_talos/scene_position.xml.

Done when: python3 kit/comparar.py unitree_g1/scene.xml [pasta]/scene.xml | tail -1 → FICHA: 7 itens comparados.

07Lesson quiz

The explanation appears after you answer.

Question 1 of 3

What is the "diferença" column of the spec sheet for?skill

08In three sentences

Three sourcesManufacturer, file and measurement, each row with its own origin.
DifferenceWhat diverges between model and robot is the sim-to-real work.
NextWith the bench and the spec sheet ready, course 1 teaches the G1 to walk.

To go further