From c3af0946eff13c1637eef6ee9ca1d71978efeb11 Mon Sep 17 00:00:00 2001 From: shantanuparab-tr Date: Fri, 27 Feb 2026 13:02:10 -0600 Subject: [PATCH] add error recovery for arms --- lerobot/common/robot_devices/motors/trossen_arm_driver.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lerobot/common/robot_devices/motors/trossen_arm_driver.py b/lerobot/common/robot_devices/motors/trossen_arm_driver.py index 073fc331cee..296065745c5 100644 --- a/lerobot/common/robot_devices/motors/trossen_arm_driver.py +++ b/lerobot/common/robot_devices/motors/trossen_arm_driver.py @@ -235,11 +235,14 @@ def disconnect(self): raise RobotDeviceNotConnectedError( f"TrossenArmDriver ({self.ip}) is not connected. Try running `motors_bus.connect()` first." ) + self.driver.cleanup() + model_name, model_end_effector = TROSSEN_ARM_MODELS[self.model] + self.driver.configure(model_name, model_end_effector, self.ip, True) self.driver.set_all_modes(trossen.Mode.velocity) self.driver.set_all_velocities([0.0] * self.driver.get_num_joints(), 0.0, False) self.driver.set_all_modes(trossen.Mode.position) self.driver.set_all_positions(self.home_pose, 2.0, True) - self.driver.set_all_positions(self.sleep_pose, 2.0, False) + self.driver.set_all_positions(self.sleep_pose, 2.0, True) self.is_connected = False