Skip to content

Calibration

Leg Zero Calibration

This procedure resets the zero position of the leg actuators, so that the default controller and full homing bring the robot into its known nominal position.

Calibrate the leg length fully crouched (ROS 1)

In ROS 1, the leg length zero must be set with the leg length at its lowest possible position (fully crouched), not fully extended. The fully extended zero calibration is only correct for ROS 2.

Workflow

  1. Stop the deployer

    pal-stop deployer
    

  2. Insert the jigs Put the jigs into all 2x5 linear actuators (5 per leg).

  3. Move the leg length to its lowest position Move the leg length of both legs to its lowest possible position (fully crouched). Do not calibrate with the legs fully extended — that is only correct for ROS 2.

  4. Reset the leg zero positions Connect to the robot and run the reset script from the home directory:

    ssh pal@kangaroo-5c
    ~/kangaroo_legs_zero_reset.sh
    

  5. Remove the jigs

  6. Reboot the robot Wait until the Kangaroo Doctor is green.

  7. Verify Start the default controller and run full_homing. The robot should now move into the known nominal position. If full_homing is rejected or a motor is in error, follow the next step that the Kangaroo Doctor suggests.

leg_length_motor reports out of range / nan absolute position

If the legs are fully stretched, the absolute position of the leg_length_motor can be out of range or nan. Tap the motor in the Kangaroo Doctor body map to see its absolute position. Put the robot down on the floor a bit so that the legs bend, then power it up again.