Enum ecu_diagnostics::uds::UdsError
source · #[repr(u8)]pub enum UdsError {
Show 40 variants
GeneralReject = 16,
ServiceNotSupported = 17,
SubFunctionNotSupported = 18,
IncorrectMessageLengthOrInvalidFormat = 19,
ResponseTooLong = 20,
BusyRepeatRequest = 33,
ConditionsNotCorrect = 34,
RequestSequenceError = 36,
NoResponseFromSubnetComponent = 37,
FailurePreventsExecutionOfRequestedAction = 38,
RequestOutOfRange = 49,
SecurityAccessDenied = 51,
InvalidKey = 53,
ExceedNumberOfAttempts = 54,
RequiredTimeDelayNotExpired = 55,
UploadDownloadNotAccepted = 112,
TransferDataSuspended = 113,
GeneralProgrammingFailure = 114,
WrongBlockSequenceCounter = 115,
RequestCorrectlyReceivedResponsePending = 120,
SubFunctionNotSupportedInActiveSession = 126,
ServiceNotSupportedInActiveSession = 127,
RpmTooHigh = 129,
RpmTooLow = 130,
EngineIsRunning = 131,
EngineIsNotRunning = 132,
EngineRunTimeTooLow = 133,
TemperatureTooHigh = 134,
TemperatureTooLow = 135,
VehicleSpeedTooHigh = 136,
VehicleSpeedTooLow = 137,
ThrottleTooHigh = 138,
ThrottleTooLow = 139,
TransmissionRangeNotInNeutral = 140,
TransmissionRangeNotInGear = 141,
BrakeSwitchNotClosed = 143,
ShifterLeverNotInPark = 144,
TorqueConverterClutchLocked = 145,
VoltageTooHigh = 146,
VoltageTooLow = 147,
}
Expand description
UDS Error definitions
Variants§
GeneralReject = 16
ECU rejected the request (No specific error)
ServiceNotSupported = 17
Service is not supported by the ECU
SubFunctionNotSupported = 18
Sub function is not supported by the ECU
IncorrectMessageLengthOrInvalidFormat = 19
Request message was an invalid length, or the format of the request was incorrect
ResponseTooLong = 20
The response message is too long for the transport protocol
BusyRepeatRequest = 33
The ECU is too busy to perform this request. Therefore, the request Should be sent again if this error occurs
ConditionsNotCorrect = 34
The requested action could not be preformed due to the prerequisite conditions not being correct
RequestSequenceError = 36
The ECU cannot perform the request as the request has been sent in the incorrect order.
For example, if [SecurityOperation::SendKey
] is used before [SecurityOperation::RequestSeed
],
then the ECU will respond with this error.
NoResponseFromSubnetComponent = 37
The ECU cannot perform the request as it has timed out trying to communicate with another component within the vehicle.
FailurePreventsExecutionOfRequestedAction = 38
The ECU cannot perform the requested action as there is currently a DTC or failure of a component that is preventing the execution of the request.
RequestOutOfRange = 49
The request message contains data outside of a valid range
SecurityAccessDenied = 51
The request could not be completed due to security access being denied.
InvalidKey = 53
The key sent from [SecurityOperation::SendKey
] was invalid
ExceedNumberOfAttempts = 54
The client has tried to obtain security access to the ECU too many times with incorrect keys
RequiredTimeDelayNotExpired = 55
The client has tried to request seed_key’s too quickly, before the ECU timeout’s period has expired
UploadDownloadNotAccepted = 112
The ECU cannot accept the requested upload/download request due to a fault condition
TransferDataSuspended = 113
The ECU has halted data transfer due to a fault condition
GeneralProgrammingFailure = 114
The ECU has encountered an error during reprogramming (erasing / flashing)
WrongBlockSequenceCounter = 115
The ECU has detected the reprogramming error as the blockSequenceCounter is incorrect.
RequestCorrectlyReceivedResponsePending = 120
The ECU has accepted the request, but cannot reply right now. If this error occurs,
the [SecurityOperation
] will automatically stop sending tester present messages and
will wait for the ECUs response. If after 2000ms, the ECU did not respond, then this error
will get returned back to the function call.
SubFunctionNotSupportedInActiveSession = 126
The sub function is not supported in the current diagnostic session mode
ServiceNotSupportedInActiveSession = 127
The service is not supported in the current diagnostic session mode
RpmTooHigh = 129
Engine RPM is too high
RpmTooLow = 130
Engine RPM is too low
EngineIsRunning = 131
Engine is running
EngineIsNotRunning = 132
Engine is not running
EngineRunTimeTooLow = 133
Engine has not been running for long enough
TemperatureTooHigh = 134
Engine temperature (coolant) is too high
TemperatureTooLow = 135
Engine temperature (coolant) is too low
VehicleSpeedTooHigh = 136
Vehicle speed is too high
VehicleSpeedTooLow = 137
Vehicle speed is too low
ThrottleTooHigh = 138
Throttle or pedal value is too high
ThrottleTooLow = 139
Throttle or pedal value is too low
TransmissionRangeNotInNeutral = 140
Transmission is not in neutral
TransmissionRangeNotInGear = 141
Transmission is not in gear
BrakeSwitchNotClosed = 143
Brake is not applied
ShifterLeverNotInPark = 144
Shifter lever is not in park
TorqueConverterClutchLocked = 145
Automatic/CVT transmission torque convert is locked
VoltageTooHigh = 146
Voltage is too high
VoltageTooLow = 147
Voltage is too low
Trait Implementations§
source§impl Ord for UdsError
impl Ord for UdsError
source§impl PartialEq for UdsError
impl PartialEq for UdsError
source§impl PartialOrd for UdsError
impl PartialOrd for UdsError
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more