Skip to content

wait_homed

Runs in the client Sends nothing to the robot

Wait until the robot is homed and no homing is running. It waits until the robot's status shows the arm homed and the robot out of HOMING mode, so the homed flag of an earlier homing does not end the wait while a new one runs. It sends no command: start homing with home(), or call home(wait=True) to do both. It returns at once when the arm is homed and no homing runs.

When homing ends in an error, it raises HomingFailed at once instead of waiting out the timeout. It also raises it when the arm is not homed and an error is latched, such as a pressed E-stop, even if no homing ran. Warnings do not count.

Syntax

robot.wait_homed(timeout=180.0)

Arguments

Name Type Default Description
timeout float | None 180.0 Seconds to wait at most. None waits as long as it takes.

Returns

Nothing.

Examples

robot.wait_homed()
robot.enter_exec_mode(wait=True)

Further details

Note

Right after home() on an arm that is already homed, the status can still show the earlier homing: this call then returns before the new homing starts. To home again and wait, call home(wait=True).

Exceptions

  • HomingFailed: Homing ended with an error, or an error is latched while the arm is not homed. Its errors lists the robot's error and warning keys, for example J3:HOMING_FAILED.
  • RobotTimeout: The arm was not homed within timeout, for example because the robot refused or abandoned the homing.
  • RobotConnectionError: The client is not connected, or lost its connection while waiting.

See also