The enable robot example program will allow you to enable/disable/reset/stop the robot. You can also get the robot's current state. The robot must be enabled in order to control the motors.
To Enable the robot:
To Disable the robot:
In order to control Baxter's arms, the robot must be put in the 'Enabled' state. Enabling the robot provides power to the joint motors, which are initially in the 'Disabled' state on start-up or after a serious error, such as an E-Stop (Emergency-Stop). The robot's 'State' can be checked with the enable_robot tool.
Note: If an error has occurred, the robot state may need to be reset (
-r) before being enabled again.
To get help on enable_robot use the
- h, --help show this help message and edit
- s, --state Print current robot state
- e, --enable Enable the robot
- d, --disable Disable the robot
- r, --reset Reset the robot
- S, --stop Stop the robot
To get the current robot state use
The state output above indicates a normal (all-clear) status, as you would see after power-up. Once you enable the robot to control the arms, you should see the same status but with
-e to enable the robot.
The robot state
enabled field should then switch to True.
-d to disable the robot.
The robot state
enabled field should then switch to False.
-r to reset the robot after an error (if the robot state gives
This should clear the
error field, setting it back to
-S (capital S) to stop the robot. This is similar to a "software" E-Stop.
This will disable the robot and also cause the
stopped field and the
error field to go True. You will need to reset the robot before enabling it again.
EStop and Robot State
For more information about the E-Stop states and the robot state message, see: Robot State and EStop.
Robot fails to enable or reset
If your robot "fails to reset" when you run robot enable, the first thing to check is if the E-Stop is engaged:
estop_button: field says '
1', it means the E-Stop is engaged (from [
Disengage the E-Stop by twisting the red top until it 'pops'-up, then try resetting the robot.
$ rosrun baxter_tools enable_robot -e