syntax = "proto3";
package celp.protobuf.svc;
import "celp_header.proto";
option optimize_for = SPEED;
message UDSRequest {
// Contains request specific info
message Request {
// CAN request frame ID
uint32 can_request_id = 1;
// expected CAN response frame ID
uint32 can_response_id = 2;
// Address to request
uint32 address = 3;
// UDS Service ID (SID) used for the request
uint32 sid = 4;
// Subfunction requested
optional uint32 subfunction = 5;
// Extra params
optional bytes params = 6;
}
// Defines the information about the request
message MetaRequest {
// Override the default transmission number
optional uint32 retransmission_count = 1;
// Override the default timeout value
optional uint64 timeout_ms = 2;
}
// Base header from CELP
celp.protobuf.Header header = 1;
// See structure above
Request request = 2;
// meta information about the request
MetaRequest meta = 3;
}