Command reference¶
This page lists every eden command and subcommand with its flags, as --help prints them. Use it to look up a
flag; the linked guides explain the workflows behind each command.
Every command prints its own help with --help. For the commands that take a task, add the task so that its
variant flags are listed too:
Without an activated virtual environment, run uv run eden ... in a clone, or python -m eden ... anywhere
Eden is installed.
Overview¶
| Command | What it does |
|---|---|
eden list |
List every registered task, its source and its task mods |
eden terms |
List registered terms and the parameters they accept |
eden train |
Train a registered task |
eden inference |
Roll out a trained checkpoint, or a published policy, in simulation |
eden export |
Export a checkpoint's policy as ONNX / TorchScript plus policy_spec.json |
eden deploy |
Run a policy on hardware, or against a MuJoCo model (--mujoco) |
eden smoke |
Build a task and step it a few times, as a sanity check |
eden preprocess |
Build a motion task's dataset cache ahead of training |
eden datagen |
Record scripted demonstrations of a task into HDF5 |
eden examples list / smoke |
Browse and smoke-run the runnable examples |
eden lerobot convert |
Convert an Eden HDF5 recording into a LeRobot v3 dataset |
eden pose gvhmr |
Estimate SMPL-X motion from monocular video |
eden retarget ... |
Retarget human motion to robots (OmniRetarget, OTRetarget, SOMA, DexRetargeter, FlashDexRetarget) |
eden gello ... |
Calibrate and stream a GELLO leader arm |
eden metaquest bridge |
Meta Quest WebXR teleoperation bridge |
eden pico bridge |
PICO (XRoboToolkit) teleoperation bridge |
eden teleop sonic ... |
SONIC whole-body teleoperation (robot process and operator station) |
eden wuji ... |
Find and monitor Wuji Gloves |
eden view / arrange / snap |
Look at an entity, arrange a scene, take a snapshot |
eden gif |
Convert an .mp4 to a .gif |
eden clean |
Remove empty log directories |
Global options¶
These go before the subcommand, because the task commands hand everything after their own flags to the task's parser:
| Flag | Meaning |
|---|---|
--log-theme {auto,human,agent} |
How the command renders console output. agent (the default): no ANSI colors, no greeting box. human: color. auto: color on a terminal, honoring NO_COLOR and FORCE_COLOR. It sets EDEN_LOG_THEME for this process and everything it launches. |
Putting --log-theme after the subcommand is an error that says where it goes. To pick a theme for a whole shell,
set EDEN_LOG_THEME instead (Environment variables).
Flags shared by the task commands¶
train, inference, export, deploy, smoke, preprocess and datagen share one argument parser. Every one of
them takes:
| Flag | Meaning |
|---|---|
--task TASK |
The registered task name (eden list). Adds the task's variant flags. |
--config CONFIG |
A .json, .yaml or .yml file. A config Eden saved (it carries its class metadata) replaces the task's config; any other file is merged into it as a partial override. |
--override YAML |
An inline YAML mapping merged into the config, e.g. --override 'env_options: {num_envs: 64}'. Repeatable; later ones win; applied after --config. |
--checkpoint CHECKPOINT |
Path to a checkpoint file. |
--cpu |
Use the CPU backend instead of the GPU. |
--run_name RUN_NAME |
A name folded into the run directory, <timestamp>-<run_name>-<id>, and so into the W&B run name. |
--<variant> |
One flag per argument of each of the task's mods, e.g. --difficulty {easy,medium,hard} for reacher. |
When --checkpoint points into a run directory that holds a config.json, inference, export and deploy
load that config instead of rebuilding the task from its current defaults. --config (as a partial) and
--override still apply on top, but a variant flag set away from its default is refused, because the saved
config already decides it.
Tasks¶
eden list¶
Prints every registered task with its source (eden for a built-in task, otherwise the distribution or module it
comes from) and the task mods that give it variant flags. Takes no flags, and imports no task module, so it is fast
and needs no network.
eden terms¶
eden terms # every registered term
eden terms --kind reward # one kind
eden terms --grep 'height|altitude'
eden terms --json # for tooling
| Flag | Meaning |
|---|---|
-k, --kind KIND |
Only this kind of term, e.g. reward, observation, event. |
-g, --grep PATTERN |
Only terms whose name, parameters or summary match PATTERN, a case-insensitive regular expression. Exits 1 with a message when nothing matches. |
--json |
Emit the catalog as JSON. |
--markdown |
Emit the catalog as the full docs page, with parameters (Term catalog is generated this way). |
--json and --markdown are mutually exclusive.
eden train¶
Trains a registered task with the runner its runner_options select: rsl_rl by default, rl_games when the
options are an rl_games runner's. Each run writes to logs/<task>/<timestamp>[-<run_name>]-<id>/ under the current
directory: checkpoints, config.json, run.json, and the logger's files. A task whose runner_options is None
is not trained through eden train. See Training runs.
Besides the shared flags:
| Flag | Meaning |
|---|---|
--num_envs N |
Override the task's number of parallel environments (per rank in a multi-GPU run). |
--logger {tensorboard,neptune,wandb} |
rsl_rl's logger. Default tensorboard. Ignored for rl_games. |
--resume REF |
Continue a previous run of this task, found under logs/<task>/: latest (the most recently modified), a run id, or a substring of a run name. Loads that run's latest checkpoint into a new run directory, which records its parent. Cannot be combined with --checkpoint. |
--wandb_group GROUP |
The W&B group for this run. Default: the task name. Ignored unless --logger wandb. |
--checkpoint starts training from that checkpoint's weights.
eden inference¶
eden inference --task <task> --checkpoint <path/to/model.pt> [flags]
eden inference --policy <name> [--task <task>] [flags]
Rolls a policy out in simulation, in evaluation mode, under logs/<task>/ (or logs/inference/ without a task).
It needs either --checkpoint (with --task) or --policy, which runs a frozen published policy instead; the two
cannot be combined. See Training runs and the policy zoo.
| Flag | Meaning |
|---|---|
--vis, --show_viewer |
Open the Genesis viewer. |
--rec |
Record an .mp4 through a rec camera, saved in the run's log directory. |
--num_envs N |
Parallel evaluation environments. Default 1. |
--steps N |
Stop after N steps. Default: one episode for a checkpoint, 1000 steps for --policy. |
--episodes N |
Run until each environment has finished ceil(N / num_envs) episodes. Not with --policy. |
--async, --sim2sim |
Run deployment-style: the policy runs in a background thread, the simulation is paced to wall-clock time, and the last action repeats when the policy is late. A simulation-side rehearsal of eden deploy. |
--policy NAME, --extension_policy NAME |
A published policy: a package name under eden/extensions/policies/ (e.g. holosoma, homie), its POLICY_REGISTRY key, or the key without _policy. Makes --task and --checkpoint optional. |
--robot ROBOT |
The robot options class from eden.robots for a --policy run without a task. Default G1Dofs29. Ignored with --task. |
--entity_name NAME |
The scene entity the policy controls. Default robot. |
--base_command VX VY WZ |
A constant velocity command for policies driven by one. Default: stand still. |
--motion_file FILE |
The reference motion .npz for motion-tracking policies (e.g. sonic); required by those. |
--clip_name CLIP |
The clip to track, for policies with per-clip checkpoints (e.g. beyondmimic_moves). |
eden export¶
Exports a trained checkpoint's policy for a runtime outside Eden, with a policy_spec.json describing its
observations, actions and control rate. The environment is built from the checkpoint's config.json, with one
environment. See Exporting a policy.
| Flag | Meaning |
|---|---|
--format FORMAT |
Comma-separated formats from onnx and jit. Default: all of them. |
--out DIR |
The output directory. Default: exported/<checkpoint name>/ beside the checkpoint. |
--no_verify |
Skip checking each exported graph against the policy on the environment's observations. The ONNX check needs the onnx extra. |
eden deploy¶
eden deploy --task <task> --checkpoint model.pt --mujoco [--vis] # sim-to-sim
eden deploy --task <task> --checkpoint model.pt # hardware
eden deploy --policy <name> [--mujoco] # a published policy, no task
Runs a policy through the deployment loop: on the real robot that the task's scene names, or, with --mujoco,
against a MuJoCo model of it. Training-time randomization is stripped, and the deploy config is saved as
deploy_config.json in the run directory. Read Deployment before using it on hardware:
it explains every safety flag below.
Policies and slots. Several policies can be loaded at once and switched live (the G1 remote's Select button,
or the keys n and 1 to 9; nine at most).
| Flag | Meaning |
|---|---|
--checkpoint PATH |
The trained policy. |
--policy NAME, --extension_policy NAME |
A published policy to load as an extra slot (repeatable). Makes --task and --checkpoint optional. |
--extra_checkpoint PATH |
Another checkpoint to preload as a slot (repeatable). |
--base_policy {auto,holosoma,none} |
A known-good policy loaded as slot 1 and active on boot. auto (default) loads the Holosoma walking policy on a G1 29-DOF and nothing elsewhere. |
--policy_checkpoint NAME=PATH |
Point a published policy at a local checkpoint (repeatable). |
--robot ROBOT |
The robot for a task-less --policy deploy. Default G1Dofs29. |
--entity_name NAME |
The scene entity to deploy. Default robot. For a composite rig (an arm with a hand), every part deploys through its own backend; name one part to deploy it alone. |
--motion_file FILE |
The reference motion for motion-tracking policies; the motion restarts from frame 0 at each switch. |
--on_motion_end {continue,stand,switch} |
What a motion-imitation deploy does when its clip ends. Default continue. |
--motion_end_slot N |
The slot --on_motion_end switch hands control to. Default 1. |
--stand_steps N |
Control cycles of the --on_motion_end stand ramp. Default 100. |
Gains and commands.
| Flag | Meaning |
|---|---|
--deploy_kp_kd_scale S |
Scale on the default Kp/Kd. Ramp up from 0.2 to 1.0 when commissioning. |
--gain_ramp_steps N |
Control steps over which a slot switch ramps to the new slot's gains. Backend default 50; 0 jumps. |
--target_lpf A |
First-order low-pass on the commanded joint targets, a in (0, 1]; 1.0 is off. |
--init_steps N |
Control cycles of the ramp to the start pose before the policy takes over. Default 250; 0 disables it. |
--init_target {default,motion,motion_rsi} |
Where that ramp drives the joints: the default pose, or frame 0 of the tracked clip. motion_rsi also teleports the base and works only with --mujoco. |
--velocity_command {constant,keyboard,gamepad,task} |
What drives the task's velocity command. Default constant (holds --base_command). task keeps the training-time random command generator. |
--base_command VX VY WZ |
The constant velocity command. Default: stand still. |
--velocity_command_scale VX VY WZ |
A per-axis limit on the substituted velocity command. |
--gamepad_layout {ps4,xbox} |
Axis scaling for --velocity_command gamepad. Default ps4. |
--disable_joints NAME ... |
Joint names or patterns sent with kp = kd = 0, for bench debugging. Never on load-bearing joints of an unsupported robot. |
--ignore_action_terms TERM ... |
Action terms whose commands the wire format cannot carry and that you drive yourself; without it, deployment refuses to start. |
--part_option PART.OPTION=VALUE |
Composite rigs: set one option of one part's backend (repeatable), e.g. --part_option robot.robot_ip=172.16.0.2. |
State estimation and diagnostics.
| Flag | Meaning |
|---|---|
--estimate_lin_vel |
Estimate the base linear velocity onboard with a contact-aided Kalman filter. |
--feet_links LINK ... |
The foot links that filter uses. Default: the robot's declared feet. |
--debug_record |
Record commanded targets and measured state, written as an .npz. |
--debug_record_path PATH |
Where. Default <log_dir>/deploy_record.npz. |
--debug_record_flush_steps N |
Steps per streamed chunk of the recording. Backend default 100. |
Backend-specific.
| Flag | Meaning |
|---|---|
--publish_rate HZ |
LimX Oli, Unitree G1 and Go2: the rate at which the held command is re-sent between control ticks. Backend defaults: 1000 Hz (Oli), 500 Hz (G1, Go2). |
--power_protect_factor N |
Unitree Go1 only: the SDK's power-protection factor, 1 to 10 (10%–100% of rated power). Backend default 10. |
MuJoCo sim-to-sim (with --mujoco).
| Flag | Meaning |
|---|---|
--mujoco |
Deploy against a MuJoCo model of the robot instead of hardware. Works for any task or robot. Add --vis for MuJoCo's viewer. |
--menagerie |
Use the robot's MuJoCo Menagerie model instead of its own training asset. Errors if the robot has none. |
--async |
Run the physics on its own thread in wall-clock time, as a robot's controller does, instead of in lockstep. |
--mujoco_props [ENTITY ...] |
Composite rigs: the scene entities to simulate besides the rig. Default: every colliding one but the ground. |
--imu_noise ACC GYRO |
White noise on the simulated IMU (per-axis standard deviation). |
--imu_bias AX AY AZ GX GY GZ |
A constant bias on the simulated IMU. |
--imu_noise_seed SEED |
Seed for --imu_noise. |
--gantry |
Hang the robot from a simulated overhead hoist. Simulation only. |
--gantry_body LINK ... |
The bodies the ropes are tied to. Default: the robot's declared mount links, else its base. |
--gantry_attach X Y Z |
The attachment point in each rope's body frame, in metres. |
--gantry_height Z |
The world height of the anchor. Default: 1 m above the attachment point. |
--gantry_step M |
Metres the + / - keys move the anchor. Default 0.05. |
--gantry_slack M |
Slack in the rope. Default 0 (taut). |
--gantry_support S |
Scale on the rope force, 0 to 1. Default 1. |
--gantry_no_draw |
Do not draw the ropes and their force arrows in the viewer. |
--gantry_force_scale S |
Metres of force arrow per newton. Default 1e-3. |
--vis (--show_viewer) opens the Genesis viewer mirroring the hardware state, or MuJoCo's viewer with --mujoco.
eden smoke¶
Builds a task and steps it a few times with no action, under logs/smoke/<task>/. It runs every term's build(),
so a wrong name in the config fails here in seconds rather than in a training run. Prints
✅ smoke OK: built '<task>' with N env(s) and ran M step(s). on success.
| Flag | Meaning |
|---|---|
--num_envs N |
Environments to build. Default 2. |
--steps N |
Steps to run. Default 2. |
--eval_mode |
Build in evaluation mode (training and randomization off). |
--show_viewer |
Open the Genesis viewer. |
--profile |
Time each term's compute() instead, and write term_cost.json. |
--profile_warmup N |
Warm-up steps before measuring, with --profile. Default 10. |
--profile_steps N |
Measured steps, with --profile. Default 50. |
eden preprocess¶
Builds the dataset cache of a motion task ahead of training. With --num_batches N greater than 1 the clip list is
split into N contiguous batches and this process handles one, so you can run one process per GPU.
| Flag | Meaning |
|---|---|
--num_batches N |
Split the clip list into this many batches. |
--batch_idx I |
The batch this process owns, in [0, N). Default 0: pass it to every process, or they all build batch 0. |
eden datagen¶
Rolls a task's scripted demonstrator out in parallel environments and records the episodes to HDF5. Only tasks with a scripted demonstrator support it. See Scripted demonstrations.
| Flag | Meaning |
|---|---|
--num_episodes N |
Episodes to record. Default 100. |
--num_envs N |
Parallel environments. Default 16. |
--output_dir DIR |
The dataset's directory. Default data/demos. |
--filename NAME |
The file name without extension. Default: the task name. |
--export {all,succeeded,separate} |
Keep every episode (tagged with its success), only the successful ones, or the failed ones in a separate <filename>_failed file. Default all. |
--seed SEED |
Seed of the environment and the demonstrator. Default 0. |
--p_mistake P |
Probability that a subgoal is a deliberate mistake. Default: the demonstrator's own. |
--episode_length_s S |
The episode time limit. Default: the demonstrator's own, else 90. |
--camera_only |
Locate objects through the task's cameras instead of the simulator's state (demonstrators that support it, e.g. robosuite_pick_place). |
--show_viewer |
Open the Genesis viewer. |
Examples¶
These read the examples/ directory of a clone; a PyPI install has none. See Examples.
eden examples list¶
| Flag | Meaning |
|---|---|
--tier {project,policy,recipe} |
Only this tier. |
--capability TAG |
Only examples with this capability: a full namespace.leaf tag (sensor.lidar) or a namespace (sensor). |
--hardware {cpu,gpu,gpu-fp64,real-robot} |
Only examples with this hardware requirement. |
--search QUERY |
A substring search over key, purpose and capabilities. |
--json |
Print JSON records instead of a table. |
eden examples smoke¶
Runs one example headless for a few steps, with EDEN_SMOKE=1. The key is positional, as eden examples list
prints it. It refuses (exit 2, with the reason) examples that need real hardware, a teleoperation device, a missing
optional dependency, or a GPU the machine lacks.
| Flag | Meaning |
|---|---|
--timeout SECONDS |
Per-example timeout. Default 900. |
Data¶
eden lerobot convert¶
eden lerobot convert --hdf5 teleoperation.hdf5 --output-dir lerobot_output --repo-id local/teleop --force
Converts an Eden HDF5 recording into a LeRobot v3 dataset. It reads state/qpos, state/dofs_vel, state/pos,
state/quat, action and timestamp from each demo_* group under /data, the layout the state and action
recorders write. See Datasets and recording.
| Flag | Meaning |
|---|---|
--hdf5 PATH |
The input HDF5 file. |
--output-dir DIR |
Where the LeRobot dataset is created. |
--repo-id ID |
The LeRobot dataset repo_id. |
--robot-type TYPE |
The robot type recorded in the LeRobot metadata. |
--task TEXT |
The task string stored for every frame. |
--image-writer-threads N |
Threads LeRobot uses to encode videos. |
--force |
Overwrite --output-dir if it exists (it must be empty or a LeRobot dataset). |
eden pose gvhmr¶
Recovers world-grounded SMPL-X motion from monocular video with GVHMR and writes AMASS-style .npz files. Needs the
pose extra and GVHMR's checkpoints (gvhmr-download-checkpoints). See Pose estimation.
| Flag | Meaning |
|---|---|
--src SRC |
A video, or a directory searched recursively. Required. |
--out OUT |
The output directory (the source tree is mirrored), or an .npz file for a single video. Required. |
--pattern GLOB |
The file pattern for a directory --src. Default *.mp4. |
--checkpoint-root DIR |
GVHMR's checkpoint directory. Default: $GVHMR_CHECKPOINT_ROOT, else ./inputs/checkpoints. |
--ckpt FILE |
The GVHMR checkpoint. Default <root>/gvhmr/gvhmr_siga24_release.ckpt. |
--static-cam |
Assume a static camera (skips visual odometry; much faster). |
--use-dpvo |
Use DPVO instead of SimpleVO for camera motion. |
--f-mm MM |
Full-frame focal length in mm. Default: estimated. |
--output-root DIR |
Where GVHMR writes and reuses its per-video intermediates. |
--skip-existing |
Skip a video whose output already exists. |
--verbose |
Save GVHMR's intermediate overlays. |
eden retarget¶
Each retargeter is a subcommand. See Retargeting and Hand retargeting.
eden retarget omniretarget¶
Robot-only OMOMO to G1 retargeting with OmniRetarget, ignoring the object.
| Flag | Meaning |
|---|---|
--src DIR |
The OMOMO dataset directory (the .pt sequence files). Required. |
--out DIR |
The output directory; joint positions are written as <task-name>.npy. Required. |
--task-name NAME |
The sequence to retarget, with or without .pt. Default sub3_largebox_003. |
--num-frames N |
Truncate the sequence to N frames. |
--skip-existing |
Skip when the output exists. |
eden retarget otretarget¶
Joint robot and object retargeting from surface interactions with OTRetarget. Needs the ot-retargeter extra.
| Flag | Meaning |
|---|---|
--source {omomo,seed} |
The demonstration format. Required. |
--src PATH |
omomo: a sequence directory or a folder of them; seed: a .bvh file or a directory of them. Required. |
--out DIR |
The output directory; one <rig>_<clip>.npz per clip. Required. |
--body-model-path PATH |
omomo: the folder with SMPLX_{NEUTRAL,MALE,FEMALE}.npz; seed: SOMA_neutral.npz. Required. |
--objects-dir DIR |
omomo: the release's objects/ folder. |
--rig {g1_wuji,oli_wuji,g1,oli} |
The target embodiment. Default g1_wuji. |
--num-frames N |
Truncate each clip to N frames. |
--cpu |
Run Genesis on the CPU. |
--skip-existing |
Skip a clip whose output exists. |
--shard K/N |
Retarget only every N-th clip of the sorted list, starting at the K-th. Default 0/1. |
--clip-list FILE |
A text file of clip names, one per line: retarget only those. |
--supports |
omomo: add the untracked tables the object rests on as fixed plates. |
--keep-going |
On a clip that raises, write <rig>_<clip>.error.txt and continue; exit non-zero at the end. |
eden retarget soma¶
Batch retargeting of AMASS-style SMPL, SMPL-H or SMPL-X motion to a robot with SomaRetargeter. Needs the
soma-retargeter extra (uv in a clone only).
| Flag | Meaning |
|---|---|
--src PATH |
An .npz clip, or a directory searched recursively. Required. |
--out PATH |
The output directory (source tree mirrored), or a file for a single clip. Required. |
--body-model {smpl,smplh,smplx} |
The source body model. Default smplx. |
--body-model-path PATH |
The body-model file (e.g. SMPLX_NEUTRAL.npz) or a per-gender directory. Required. |
--robot {unitree_g1,limx_oli} |
The target robot. Default unitree_g1. |
--gender {neutral,male,female} |
The default gender; a clip's own gender field overrides it. Default neutral. |
--target-fps FPS |
The frame rate every clip is resampled to. Default 30. |
--source-fps FPS |
Override the source frame rate when the clip's metadata is missing or wrong. |
--num-frames N |
Truncate each clip to N frames. |
--snap-to-ground |
Shift each clip vertically so its lowest collision point touches the ground. |
--skip-existing |
Skip a clip whose output exists. |
--cpu |
Use the CPU backend. |
eden retarget dex¶
Offline position retargeting of MANO keypoints to a dexterous hand with DexRetargeter. Needs the dex-retargeter
extra.
| Flag | Meaning |
|---|---|
--src PATH |
An .npz with keypoints (T, 21, 3) and fps, or a directory of them. Required. |
--out PATH |
An output .pkl file (single input) or directory. Required. |
--preset {xhand1_right_position} |
The hand preset. Default xhand1_right_position. |
--skip-existing |
Skip a clip whose output exists. |
eden retarget flashdex import¶
Imports a released hand-object dataset (MANO hands and object poses) into a FlashDexRetarget dataset:
<dataset>/human_demo/<clip>.npz and <dataset>/objects/<id>/visual.obj. Needs the flashdexretarget extra.
| Flag | Meaning |
|---|---|
--source {dexycb,hot3d,oakink2,taco} |
The release, read by its eden.datasets loader. |
--raw DIR |
The downloaded release's root directory. |
--dataset DIR |
The dataset directory to write. |
--mano-dir DIR |
The directory with MANO_RIGHT.pkl and MANO_LEFT.pkl. |
--sides {both,right,left} |
The hands to import. Default both. |
--textures |
Export the objects with their materials and textures, for rendering. |
--config FILE |
A .yaml or .json file of option values (eden.options.extensions.flashdexretarget). |
--override YAML |
An inline YAML mapping merged over the options last; repeatable. |
eden retarget flashdex kinematic¶
Kinematic retargeting of an imported dataset onto robot hands: support disks and reject rules
(<robot>/report.csv), convex object parts, MuJoCo physics IK (<robot>/retargeted/), <robot>/motion.pt and
object SDF grids.
| Flag | Meaning |
|---|---|
--dataset DIR |
The dataset directory from the import. |
--robot {xhand,sharpa} |
The target robot. Default xhand. |
--workers N |
Processes. Default: half the CPU cores. |
--config FILE |
A .yaml or .json file of option values. |
--override YAML |
An inline YAML mapping merged over the options last; repeatable. Steps can be skipped, e.g. --override "steps: {retarget: false, pack: false}". |
Teleoperation and devices¶
See Teleoperation for the full pipelines.
eden gello calibrate¶
Computes per-joint offsets and a gripper range for a GELLO leader arm held at a known pose, and prints a
ready-to-paste GelloLeaderConfig(...). Needs the gello extra.
eden gello calibrate --port /dev/ttyUSB0 --start-dofs 0 0 0 0 0 0 --signs 1 1 -1 1 1 1 --gripper \
--output configs/gello_ur5e.yaml
| Flag | Meaning |
|---|---|
--port PORT |
The Dynamixel serial port. |
--start-dofs RAD ... |
The arm's known joint positions (rad) at the calibration pose. |
--signs S ... |
The sign (-1 or 1) of each arm joint. |
--joint-ids ID ... |
Dynamixel IDs of the arm joints. Default 1..N. |
--gripper |
A gripper is attached. |
--gripper-id ID |
The gripper's Dynamixel ID. Default N+1. |
--baudrate, --warmup-reads, --max-pi-multiple, --gripper-open-delta-deg, --gripper-close-delta-deg |
Low-level calibration settings. |
-o, --output PATH |
Save the GelloLeaderConfig (.json, .yaml or .yml). |
eden gello leader¶
Reads calibrated joint positions from the leader arm and sends them to a GelloZMQServer over ZMQ.
| Flag | Meaning |
|---|---|
-c, --config PATH |
The GelloLeaderConfig file from eden gello calibrate. |
--port PORT |
The Dynamixel serial port. |
--zmq-host HOST |
The ZMQ host. |
--zmq-port PORT |
The ZMQ port. |
eden metaquest bridge¶
Runs the televuer WebXR server that a Meta Quest connects to over Wi-Fi, and bridges its poses and the stereo view
to Eden over ZMQ. On start it prints the URL to open in the headset's browser. Needs the metaquest extra and its
git group.
| Flag | Meaning |
|---|---|
--width PX |
The full stereo frame width (both eyes). Default 1280. |
--height PX |
The frame height. Default 480. |
--fps FPS |
The headset display rate. Default 30. |
--display-mode {immersive,ego,pass-through} |
Default immersive. |
--tracking {hand,controller} |
Track hand joints (default) or motion controllers. |
Note
eden metaquest bridge --help currently prints Vuer's own parameters instead of these flags. The table above is
read from eden/utils/devices/metaquest/xr_bridge.py.
eden pico bridge¶
Publishes PICO headset and controller tracking over ZMQ and streams Eden's rendered view back to the headset. Needs
the pico extra and the xrobotoolkit_sdk module built from source.
| Flag | Meaning |
|---|---|
--fps FPS |
The pose publish rate (frames are forwarded as they arrive). |
--control-address HOST:PORT |
Where to listen for the app's OPEN_CAMERA / CLOSE_CAMERA commands. |
--pose-port PORT |
The ZMQ PUB port for the tracking state. |
--frame-port PORT |
The ZMQ PULL port for Eden's rendered frames. |
--no-video |
Publish tracking only. |
--no-derived-body |
Publish only the lossless body_raw, without the derived per-joint body and trackers. |
--tracker-role SERIAL=ROLE |
Label a motion tracker by serial, e.g. --tracker-role PA1234=waist (repeatable). |
eden teleop sonic robot¶
The robot side of SONIC whole-body teleoperation: a G1 body, the SONIC policy and its planner, listening for the
operator's commands. The body is the Genesis simulator by default. Needs the sonic extra and an onnx extra.
| Flag | Meaning |
|---|---|
--mujoco / --real |
Drive the body through the eden deploy MuJoCo backend, or the real Unitree G1 over DDS. |
-v, --vis |
Show the viewer (MuJoCo's own under --mujoco). |
-c, --cpu |
Use the CPU backend. |
-s, --steps N |
Stop after N control ticks. |
--operator-host HOST |
The host running the operator station. |
--cmd-port PORT, --debug-port PORT |
The command and debug ports. |
--encoder-path, --decoder-path, --planner-path |
Local overrides for the SONIC ONNX models. |
--max-close-ratio R |
The Dex3 close limit in [0.2, 1.0] (Genesis body only). |
--no-band |
Start with the elastic band (the gantry under --mujoco) released. |
--drop-band-after SECONDS |
Release the band this many seconds in. |
--auto-reset |
Reset to the launch state when the base falls with the band off. |
--deploy_kp_kd_scale, --target_lpf, --disable_joints, --debug_record, --debug_record_path |
As for eden deploy, with --mujoco or --real. |
--joint-vel-limit RAD_S |
--real: stop when any body joint exceeds this speed (0 disables). |
eden teleop sonic operator¶
The operator station: PICO body tracking, calibration, the mode state machine, and streaming to the robot process.
| Flag | Meaning |
|---|---|
--robot-host HOST |
The host running eden teleop sonic robot. |
--port PORT, --feedback-port PORT |
The command publish port and the robot's debug port. |
--target-fps FPS |
The pose stream rate. |
--num-frames N |
Frames per pose message. |
--record-dir DIR |
Record each sent pose message as .npz here. |
--no-service-start |
Do not spawn the XRoboToolkit PC service. |
--bridge-host HOST |
Connect to an eden pico bridge on this host instead of spawning one. |
--bridge-port PORT, --bridge-fps FPS |
The bridge's pose port and publish rate. |
--no-bridge-start |
Connect to a bridge already running locally. |
--sdk |
Read the XRoboToolkit SDK in-process instead of through the bridge. |
--vis-vr3pt |
Visualize the calibrated VR 3-point pose (needs the sonic-viz extra). |
--vis-smpl |
Also render the SMPL body (needs --vis-vr3pt). |
--waist-tracking, --no-g1 |
Visualization only: the waist follows the neck; hide the G1 mesh. |
eden wuji scan¶
Lists every Wuji Glove on the bus. Needs the wuji extra (Linux only). Takes no flags.
eden wuji monitor¶
Shows a Wuji Glove's live hand pose and tactile sheet in the terminal, the first check after plugging one in.
| Flag | Meaning |
|---|---|
--sn SN |
The glove's serial number. Default: the only one found. |
--side {left,right} |
Pick between two connected gloves. |
--streams STREAM ... |
The streams to subscribe to, from hand_skeleton, hand_joint_angles, tip_poses, emf_poses, tactile, tactile_zones, tactile_binary, tactile_residual, tactile_point_cloud. Default hand_skeleton hand_joint_angles tactile. |
--rate-hz HZ |
Lower the device's push rate. Default 120 Hz. |
--seconds S |
Run for this long; 0 runs until Ctrl-C. |
--exclusive |
Take the glove for this process alone. |
Viewing and utilities¶
eden view¶
Opens an entity, by the name of its options class or a composite rig's name, or a Gaussian-splat .ply file, in a
viewer.
| Flag | Meaning |
|---|---|
-c, --collision |
Show collision geometry (entity mode). |
-m, --multiplier M |
The splat's radiance multiplier (splat mode). |
--env-brightness B |
A constant-color environment map's brightness in [0, 1] (splat mode). |
eden arrange¶
Spawns entities (by options class name) with ImGui sliders for each one's base pose and joints, and exports a
SceneOptions snippet with the arrangement. Needs the vis extra.
| Flag | Meaning |
|---|---|
-c, --collision |
Show collision geometry. |
-o, --output PATH |
Also write the snippet to this file. |
--spacing M |
Initial x-spacing between entities. Default 1.0 m. |
eden snap¶
Renders one image of an entity.
| Flag | Meaning |
|---|---|
-o, --output PATH |
The output image. Default snapshot.png. |
-c, --collision |
Show collision geometry. |
eden gif¶
Converts an .mp4 to a .gif at 10 fps and 640 px wide. Calls ffmpeg, which must be on your PATH.
eden clean¶
Removes empty log directories, and run directories that hold only a config.json (runs that stopped before saving
anything else). Takes no flags.
Warning
eden clean currently looks for a logs/ directory inside the installed eden package
(eden/utils/logs), not the logs/ directory of your working directory, so it usually finds nothing.