diff --git a/examples/openarms/evaluate_with_rtc.py b/examples/openarms/evaluate_with_rtc.py index 860c919f8..2441ebecc 100644 --- a/examples/openarms/evaluate_with_rtc.py +++ b/examples/openarms/evaluate_with_rtc.py @@ -372,6 +372,12 @@ def actor_thread( prev_action = current_action interp_idx = 0 + else: + # No action yet - hold current position while waiting for first inference + obs = robot.get_observation() + hold_pos = {k: v for k, v in obs.items() if k.endswith(".pos")} + robot.send_action(hold_pos) + robot_send_count += 1 if interp_idx < len(interpolated_actions): action_to_send = interpolated_actions[interp_idx] diff --git a/examples/rac/rac_data_collection_openarms_rtc.py b/examples/rac/rac_data_collection_openarms_rtc.py index bf3b017f7..2a4bb691b 100644 --- a/examples/rac/rac_data_collection_openarms_rtc.py +++ b/examples/rac/rac_data_collection_openarms_rtc.py @@ -547,6 +547,11 @@ def main(cfg: RaCRTCConfig): prev_action = current_action interp_idx = 0 + else: + # No action yet - hold current position while waiting for first inference + hold_pos = {k: v for k, v in obs_filtered.items() if k.endswith(".pos")} + robot.send_action(hold_pos) + robot_send_count += 1 if interp_idx < len(interpolated_actions): action_to_send = interpolated_actions[interp_idx]