Teleoperation and Data Collection
Use this workflow only when collecting new demonstrations.
Start the NUC Server
ssh hcilab@192.168.4.4
cd /home/hcilab/Desktop/github/droid
bash scripts/server/launch_server.sh
Start the DROID Collection GUI
On the control laptop:
cd /home/kindred/Desktop/repo/droid
conda activate robot
python -c "from droid.controllers.oculus_controller import VRPolicy; from droid.robot_env import RobotEnv; from droid.user_interface.data_collector import DataCollecter; from droid.user_interface.gui import RobotGUI; env=RobotEnv(); controller=VRPolicy(right_controller=True); robot=DataCollecter(env=env, controller=controller, save_data=False); RobotGUI(robot=robot, right_controller=True)"
This script will open a GUI for you to collect demonstrations.
Teleoperation Notes
- Plug the Quest controller into the control laptop.
- Accept USB debugging inside the headset.
- Keep the controller visible to the headset cameras.
- Use the right controller unless the DROID controller code is changed.
- Hold the side grip button to apply motion.
- Use the front trigger for gripper control.
- Press the joystick to redefine the controller forward direction.
Start with Practice in the GUI before saving real trajectories.
Saved Data Layout
/oath_to_your_droid_repo/data/
success/
YYYY-MM-DD/
episode_name/
trajectory.h5
metadata_openpi.json
recordings/
MP4/
camera_id.mp4
failure/
YYYY-MM-DD/
...
The task text entered in the GUI is written into metadata_openpi.json and becomes the policy prompt after conversion.