Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 8 additions & 15 deletions lerobot/common/robot_devices/control_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@

import cv2
import torch
import tqdm
from deepdiff import DeepDiff
from termcolor import colored

Expand Down Expand Up @@ -276,24 +275,18 @@ def control_loop(
break


def reset_environment(robot, events, reset_time_s):
def reset_environment(robot, events, reset_time_s, fps):
# TODO(rcadene): refactor warmup_record and reset_environment
# TODO(alibets): allow for teleop during reset
if has_method(robot, "teleop_safety_stop"):
robot.teleop_safety_stop()

timestamp = 0
start_vencod_t = time.perf_counter()

# Wait if necessary
with tqdm.tqdm(total=reset_time_s, desc="Waiting") as pbar:
while timestamp < reset_time_s:
time.sleep(1)
timestamp = time.perf_counter() - start_vencod_t
pbar.update(1)
if events["exit_early"]:
events["exit_early"] = False
break
control_loop(
robot=robot,
control_time_s=reset_time_s,
events=events,
fps=fps,
teleoperate=True,
)


def stop_recording(robot, listener, display_cameras):
Expand Down
2 changes: 1 addition & 1 deletion lerobot/scripts/control_robot.py
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,7 @@ def record(
(recorded_episodes < cfg.num_episodes - 1) or events["rerecord_episode"]
):
log_say("Reset the environment", cfg.play_sounds)
reset_environment(robot, events, cfg.reset_time_s)
reset_environment(robot, events, cfg.reset_time_s, cfg.fps)

if events["rerecord_episode"]:
log_say("Re-record episode", cfg.play_sounds)
Expand Down
Loading