Skip to content

Change the operation mode#

The operator changes the operation mode, for example from stop to autonomous, or enables and disables Autoware control. A software switch in the application uses the operation mode API. A hardware switch on the vehicle changes the control mode directly, and AD API only reports the result.

Sequence#

Change the mode with a software switch#

The application calls one of the /api/operation_mode/change_to_* APIs, or /api/operation_mode/enable_autoware_control and /api/operation_mode/disable_autoware_control. The request fails if the target mode is not available. Check the is_*_mode_available flags of /api/operation_mode/state before the request.

The operator asks the application to change the mode. The application calls the operation mode API, and AD API changes the mode. Only the enable and disable requests change the control mode of the vehicle. The new state goes back to the operator.OperatorApplicationAD APIVehiclechange the mode/api/operation_mode/change_to_*or enable / disable_autoware_controlchange the control mode(enable / disable only)response statuscurrent control mode/api/operation_mode/stateshow the mode
Change the mode with a software switch in the application.

Change the mode with a hardware switch#

The operator uses a switch on the vehicle. The enable and disable APIs always fail on a vehicle that changes the control mode only by hardware.

The operator changes the control mode on the vehicle. The vehicle reports the control mode, and AD API sends the new operation mode state to the application.OperatorApplicationAD APIVehiclechange the control mode with a switchcurrent control mode/api/operation_mode/stateshow the mode
Change the mode with a hardware switch on the vehicle.