Download my_scripts/example.txt from Ronaldo-GOAT/franka-gr00t-scripts: direct link, hf CLI and curl.
- Browser
- Download file 4.66 kB
-
https://huggingface.co/Ronaldo-GOAT/franka-gr00t-scripts/resolve/main/my_scripts/example.txt
- Command line
-
hf download hf://Ronaldo-GOAT/franka-gr00t-scripts/my_scripts/example.txt
-
curl -L -o example.txt https://huggingface.co/Ronaldo-GOAT/franka-gr00t-scripts/resolve/main/my_scripts/example.txt
4.66 kB
| ======================================================================== | |
| HOW TO ACTUALLY RUN THE ROBOT (pose6daug GR00T-N1.5, Franka EEF rig) | |
| ======================================================================== | |
| !! This MOVES the physical Franka arm. Have the e-stop in hand and the | |
| !! workspace clear before you launch. | |
| ------------------------------------------------------------------------ | |
| 0) WHICH COMMAND DOES WHAT (read this first) | |
| ------------------------------------------------------------------------ | |
| full_inference_mock.py -> DOES NOT MOVE THE ROBOT. Robot + cameras are | |
| mocked. Verification only. Safe to run anytime: | |
| PYTHONPATH=/home/jimin/myGR00T CUDA_VISIBLE_DEVICES=0 STEPS=48 \ | |
| /home/jimin/miniconda3/envs/gr00t/bin/python \ | |
| /home/jimin/jonghoon/mygr00t_franka_deploy/full_inference_mock.py | |
| deploy_franka_eef.py -> MOVES THE REAL ROBOT. This is the one below. | |
| ------------------------------------------------------------------------ | |
| 1) BEFORE YOU LAUNCH (checklist) | |
| ------------------------------------------------------------------------ | |
| [ ] Franka powered on, brakes released, e-stop within reach. | |
| [ ] Workspace clear; nothing in the arm's path. | |
| [ ] Both ZED cameras connected. Confirm the serials match: | |
| exterior = 37149196 wrist = 11845904 | |
| (if different, edit --left_camera_id / --wrist_camera_id below) | |
| [ ] The DROID robot server/NUC is up (the `droid` RobotEnv connects to it). | |
| [ ] GPU 0 is free. | |
| ------------------------------------------------------------------------ | |
| 2) RUN IT (easiest — the example script) | |
| ------------------------------------------------------------------------ | |
| bash /home/jimin/jonghoon/mygr00t_franka_deploy/run_example.sh | |
| - Task is preset to: "pick up the object and place it in the white basket" | |
| - Per-step translation clamp: 0.03 (safety) | |
| - Press Ctrl+C to stop the rollout early at any time. | |
| ------------------------------------------------------------------------ | |
| 3) RUN IT (explicit command — same thing, edit inline) | |
| ------------------------------------------------------------------------ | |
| PYTHONPATH=/home/jimin/myGR00T CUDA_VISIBLE_DEVICES=0 \ | |
| /home/jimin/miniconda3/envs/gr00t/bin/python -u \ | |
| /home/jimin/jonghoon/mygr00t_franka_deploy/deploy_franka_eef.py \ | |
| --task "pick up the object and place it in the white basket" \ | |
| --max_trans_per_step 0.03 \ | |
| --embodiment_tag=new_embodiment \ | |
| --data_config=droid_franka_eef_real \ | |
| --action_space=cartesian_position \ | |
| --left_camera_id=37149196 \ | |
| --wrist_camera_id=11845904 \ | |
| --inference_head=main \ | |
| --denoising_steps=4 \ | |
| --max-timesteps=1500 \ | |
| --logging_path=/home/jimin/droid/rollout_results/pose6daug-iclr120-20k \ | |
| policy:checkpoint \ | |
| --policy.config=franka_real_eef \ | |
| --policy.dir=/home/jimin/pose6daug-gr00t-iclr120-20k/checkpoint-20000 | |
| Omit --task to be prompted "Enter instruction:" interactively instead. | |
| Swap checkpoint-20000 for -5000/-10000/-15000 to try earlier steps. | |
| ------------------------------------------------------------------------ | |
| 4) CONTROL MODE -- CONFIRMED FROM THE CHECKPOINT | |
| ------------------------------------------------------------------------ | |
| Checked the training normalization stats in the checkpoint metadata: | |
| the ACTION distribution == the STATE distribution (EEF x,y,z spanning the | |
| ~0.3-0.6 m workspace, not centered on 0). So this model outputs: | |
| ABSOLUTE cartesian target positions, in meters | |
| (NOT relative/delta, NOT velocity) | |
| Therefore: | |
| * use --action_space=cartesian_position (as in sections 2/3). | |
| * --max_trans_per_step 0.03 is a SAFETY MOVE LIMIT: it caps | |
| (target - current_EEF) to +/- 0.03 m per step, so the arm walks | |
| toward each predicted target no faster than 3 cm/step. It does NOT | |
| clamp the absolute target (that would drag the arm toward 0,0,0). | |
| (This was fixed in deploy_franka_eef.py; verified in the mock.) | |
| * do NOT use cartesian_velocity for this checkpoint. | |
| Tip: on the first real run, set a small --max_trans_per_step (e.g. 0.02), | |
| watch a few steps, then raise it. | |
| ------------------------------------------------------------------------ | |
| 5) DO NOT | |
| ------------------------------------------------------------------------ | |
| - Do NOT pass --resize_video : this config's VideoToTensor needs native | |
| 720x1280 frames (it crops/resizes to 224 internally). Passing 192,320 | |
| will crash it. | |
| - Do NOT run full_inference_mock.py expecting motion (see section 0). | |
| ======================================================================== | |