Skip to content

491. DSP API

491.1 DSP RPCs

The following Remote Procedure Calls (RPCs) are defined in the Protobuf file dsp.proto.

Method Name Description
init This RPC is used to initialize DSP This should always be the first message sent to DSP

Request Type: init_req
Response Type: init_resp
start_simulation This RPC is used to start the DUT process. In case of external DUT server process, this function should also perform the connection to the server. It is expected to execute asynchronously

Request Type: start_simulation_req
Response Type: start_simulation_resp
wait_start_simulation This RPC is used to wait till DSP finishes starting the DUT (including connection to the server if neccessary)

Request Type: wait_start_simulation_req
Response Type: wait_start_simulation_resp
end_simulation This RPC is used to end the DUT process

Request Type: end_simulation_req
Response Type: end_simulation_resp
start_step This RPC is used to signal DSP that it can start performing step

Request Type: start_step_req
Response Type: start_step_resp
wait_step This RPC is used to wait till DSP finishes performing step

Request Type: wait_step_req
Response Type: wait_step_resp
set_ego_control DEPRECATED. This RPC is used to change control of EGO

Request Type: set_ego_control_req
Response Type: set_ego_control_resp
get_ego_info This RPC is used to get EGO information

Request Type: get_ego_info_req
Response Type: get_ego_info_resp
ego_command This RPC is used to pass custom commands to DUT It can use the functionality that exists in the human driver interface of the Ego vehicle and any white box hooks that are exposed in the particular execution platform setup.

Request Type: ego_command_req
Response Type: ego_command_resp
set_ego_destination This RPC is used to set target destination for EGO

Request Type: set_ego_destination_req
Response Type: set_ego_destination_resp
set_steer_and_pedals_move DEPRECATED (use set_dynamic_move). This RPC is used to set a trajectory in the form of throttle/brake pedals and steering wheel commands to the vehicle actuators. The actuators commands expressed as polynomial functions in time

Request Type: set_steer_and_pedals_move_req
Response Type: set_steer_and_pedals_move_resp
set_dynamic_move This RPC is used to set a trajectory in the form of throttle/brake pedals and steering wheel commands to the vehicle actuators. This messages replaces set_steer_and_pedals_move message

Request Type: set_dynamic_move_req
Response Type: set_dynamic_move_resp
set_actor_command Sends a vehicle command such as gear shift or hand brake.

Request Type: set_actor_command_req
Response Type: set_actor_command_resp
send_messages This RPC is used to send (publish) messages to the DUT by the Message Bridge, e.g. pub/sub (ROS)

Request Type: send_messages_req
Response Type: send_messages_resp
get_messages This RPC is used to receive (subscribe) messages from the DUT by the Message Bridge, e.g. pub/sub (ROS)

Request Type: get_messages_req
Response Type: get_messages_resp
get_hlm_action Gets an action (objective or trajectory) to be performed by the DUT, as produced by a High Level Model

Request Type: get_hlm_action_req
Response Type: get_hlm_action_resp