I ran into an issue after cloning and running the repository.
When running rd record_calibration_poses, the command starts normally, cameras open correctly, and CAN interfaces are detected. However, both leader arms become stiff / unresponsive in the calibration pose recording mode, so I cannot move the leaders to record calibration poses as described in the instructions.
In contrast, rd teleop works normally, and regular teleoperation is possible.
Cause:
After tracing the code, it looks like setup_for_teleop_recording() in raiden/robot/controller.py initializes the robots, moves them home, and puts the leaders into gravity compensation mode, but it does not actually call start_teleoperation().
As a result, the leaders enter gravity compensation, but the leader-follower teleoperation loop is never started.
Workaround / fix:
I was able to fix this locally by adding:
self.start_teleoperation()
at the end of setup_for_teleop_recording() in:
raiden/robot/controller.py
So the function becomes:
def setup_for_teleop_recording(self):
"""Complete setup for teleoperation-based recording: init -> home -> grav comp"""
# Check CAN interfaces
print("Checking CAN interfaces...")
self.check_can_interfaces()
# Initialize robots
self.initialize_robots(gravity_comp_mode=False)
# Move to home positions
self.move_to_home_positions(simultaneous=True)
# Enable gravity compensation mode for leaders only
print(
" - Disabling position control on leaders for gravity compensation mode..."
)
if self.leader_r:
self.leader_r.update_kp_kd(kp=np.zeros(6), kd=np.zeros(6))
if self.leader_l:
self.leader_l.update_kp_kd(kp=np.zeros(6), kd=np.zeros(6))
print("✓ Leaders in gravity compensation mode")
# Gripper ready signal
self.signal_ready_with_grippers()
# Footpedal soft e-stop (optional)
print("Initializing footpedal...")
self.attach_footpedal()
self.start_teleoperation()
After this change, the leaders can be moved and the followers follow as expected during calibration pose recording.
I’m sharing this here in case it helps others.
I ran into an issue after cloning and running the repository.
When running rd record_calibration_poses, the command starts normally, cameras open correctly, and CAN interfaces are detected. However, both leader arms become stiff / unresponsive in the calibration pose recording mode, so I cannot move the leaders to record calibration poses as described in the instructions.
In contrast, rd teleop works normally, and regular teleoperation is possible.
Cause:
After tracing the code, it looks like setup_for_teleop_recording() in raiden/robot/controller.py initializes the robots, moves them home, and puts the leaders into gravity compensation mode, but it does not actually call start_teleoperation().
As a result, the leaders enter gravity compensation, but the leader-follower teleoperation loop is never started.
Workaround / fix:
I was able to fix this locally by adding:
self.start_teleoperation()at the end of setup_for_teleop_recording() in:
raiden/robot/controller.pySo the function becomes:
After this change, the leaders can be moved and the followers follow as expected during calibration pose recording.
I’m sharing this here in case it helps others.