These are the UDS NRC as per ISO 14229-1.
NRC Value(in Hex) | NRC Name | Description |
---|---|---|
0x00 | Positive Response | This NRC shall not be used in a negative response message. This positiveResponse parameter value is reserved for server internal implementation. |
0x01 – 0x0F | ISO SAE Reserved | This range of NRC is reserved for the future use. |
0x10 | General Reject | This NRC indicates that the requested action has been rejected by the server. The generalReject response code shall only be implemented in the server if none of the negative response codes meet the needs of the implementation. |
0x11 | Service Not Supported | This NRC indicates that the requested action will not be taken because the server does not support the requested service. The server shall send this NRC in case the client has sent a request message with a service identifier which is unknown, not supported by the server, or is specified as a response service identifier. Therefore this negative response code is not shown in the list of negative response codes to be supported for a diagnostic service, because this negative response code is not applicable for supported services. |
0x12 | Sub-function Not Supported | This NRC indicates that the requested action will not be taken because the server does not support the service specific parameters of the request message. The server shall send this NRC in case the client has sent a request message with a known and supported service identifier but with “sub-function“ which is either unknown or not supported. |
0x13 | Incorrect Message Length or Invalid Format | This NRC indicates that the requested action will not be taken because the length of the received request message does not match the prescribed length for the specified service or the format of the parameters do not match the prescribed format for the specified service. |
0x14 | Response Too Long | This NRC shall be reported by the server if the response to be generated exceeds the maximum number of bytes available by the underlying network layer. This could occur if the response message exceeds the maximum size allowed by the underlying transport protocol or if the response message exceeds the server buffer size allocated for that purpose. |
0x15 – 0x20 | ISO SAE Reserved | This range of NRC is reserved for the future use. |
0x21 | Busy Repeat Request | This NRC indicates that the server is temporarily too busy to perform the requested operation. In this circumstance the client shall perform repetition of the “identical request message” or “another request message”. The repetition of the request shall be delayed by a time specified in the respective implementation documents. |
0x22 | Conditions Not Correct | This NRC indicates that the requested action will not be taken because the server prerequisite conditions are not met. |
0x23 | ISO SAE Reserved | This NRC is reserved for the future use. |
0x24 | Request Sequence Error | This NRC indicates that the requested action will not be taken because the server expects a different sequence of request messages or message as sent by the client. This may occur when sequence sensitive requests are issued in the wrong order. |
0x25 | No Response from Subnet Component | This NRC indicates that the server has received the request but the requested action could not be performed by the server as a subnet component which is necessary to supply the requested information did not respond within the specified time. The noResponseFromSubnetComponent negative response shall be implemented by gateways in electronic systems which contain electronic subnet components and which do not directly respond to the client’s request. |
0x26 | Failure Prevents Execution of Requested Action | This NRC indicates that the requested action will not be taken because a failure condition, identified by a DTC (with at least one DTC status bit for TestFailed, Pending, Confirmed or TestFailedSinceLastClear set to 1), has occurred and that this failure condition prevents the server from performing the requested action. This NRC can, for example, direct the technician to read DTCs in order to identify and fix the problem. |
0x27 – 0x30 | ISO SAE Reserved | This range of NRC is reserved for the future use. |
0x31 | Request Out of Range | This NRC indicates that the requested action will not be taken because the server has detected that the request message contains a parameter which attempts to substitute a value beyond its range of authority (e.g. attempting to substitute a data byte of 111 when the data is only defined to 100), or which attempts to access a dataIdentifier/routineIdentifer that is not supported or not supported in active session. This NRC shall be implemented for all services, which allow the client to read data, write data or adjust functions by data in the server. |
0x32 | ISO SAE Reserved | This NRC is reserved for the future use. |
0x33 | Security Access Denied | This NRC indicates that the requested action will not be taken because the server’s security strategy has not been satisfied by the client. The server shall send this NRC if one of the following cases occur: ⎯ the test conditions of the server are not met, ⎯ the required message sequence e.g. DiagnosticSessionControl, securityAccess is not met, ⎯ the client has sent a request message which requires an unlocked server. |
0x34 | ISO SAE Reserved | This NRC is reserved for the future use. |
0x35 | Invalid Key | This NRC indicates that the server has not given security access because the key sent by the client did not match with the key in the server’s memory. This counts as an attempt to gain security. The server shall remain locked and increment its internal securityAccessFailed counter. |
0x36 | Exceeded Number of Attempts | This NRC indicates that the requested action will not be taken because the client has unsuccessfully attempted to gain security access more times than the server’s security strategy will allow. |
0x37 | Required time delay not expired | This NRC indicates that the requested action will not be taken because the client’s latest attempt to gain security access was initiated before the server’s required timeout period had elapsed. |
0x38 – 0x4F | Reserved by Extended Data Link Security | This range of values is reserved by extended data link security Document. |
0x50 – 0x6F | ISO SAE Reserved | This range of NRC is reserved for the future use. |
0x70 | Upload Download Not Accepted | This NRC indicates that an attempt to upload/download to a server’s memory cannot be accomplished due to some fault conditions. |
0x71 | Transfer Data Suspended | This NRC indicates that a data transfer operation was halted due to some fault. The active transferData sequence shall be aborted. |
0x72 | General Programming Failure | This NRC indicates that the server detected an error when erasing or programming a memory location in the permanent memory device (e.g. Flash Memory). |
0x73 | Wrong Block Sequence Number | This NRC indicates that the server detected an error in the sequence of blockSequenceCounter values. Note that the repetition of a TransferData request message with a blockSequenceCounter equal to the one included in the previous TransferData request message shall be accepted by the server. |
0x74 – 0x77 | ISO SAE Reserved | This range of NRC is reserved for the future use. |
0x78 | Request correctly received, Response Pending | This NRC indicates that the request message was received correctly, and that all parameters in the request message were valid, but the action to be performed is not yet completed and the server is not yet ready to receive another request. As soon as the requested service has been completed, the server shall send a positive response message or negative response message with a response code different from this. |
0x79 – 0x7D | ISO SAE Reserved | This range of NRC is reserved for the future use. |
0x7E | Sub function Not Supported in Active Session | This NRC indicates that the requested action will not be taken because the server does not support the requested sub-function in the session currently active. This NRC shall only be used when the requested sub-function is known to be supported in another session, otherwise response code SFNS (sub-functionNotSupported) shall be used (e.g., servers executing the boot software generally do not know which subfunctions are supported in the application (and vice versa) and therefore may need to respond with NRC 0x12 instead). This NRC shall be supported by each diagnostic service with a sub-function parameter, if not otherwise stated in the data link specific implementation document, therefore it is not listed in the list of applicable response codes of the diagnostic services. |
0x7F | Service Not Supported in Active Session | This NRC indicates that the requested action will not be taken because the server does not support the requested service in the session currently active. This NRC shall only be used when the requested service is known to be supported in another session, otherwise response code SNS (serviceNotSupported) shall be used (e.g., servers executing the boot software generally do not know which services are supported in the application (and vice versa) and therefore may need to respond with NRC 0x11 instead). This NRC is in general supported by each diagnostic service, as not otherwise stated in the data link specific implementation document, therefore it is not listed in the list of applicable response codes of the diagnostic services. |
0x80 | ISO SAE Reserved | This NRC is reserved for the future use. |
0x81 | RPM Too High | This NRC indicates that the requested action will not be taken because the server prerequisite condition for RPM is not met (current RPM is above a preprogrammed maximum threshold). |
0x82 | RPM Too Low | This NRC indicates that the requested action will not be taken because the server prerequisite condition for RPM is not met (current RPM is below a preprogrammed minimum threshold). |
0x83 | Engine is Running | This NRC is required for those actuator tests which cannot be actuated while the Engine is running. This is different from RPM too high negative response, and needs to be allowed. |
0x84 | Engine is not Running | This NRC is required for those actuator tests which cannot be actuated unless the Engine is running. This is different from RPM too low negative response, and needs to be allowed. |
0x85 | Engine Run Time too Low | This NRC indicates that the requested action will not be taken because the server prerequisite condition for engine run time is not met (current engine run time is below a pre-programmed limit). |
0x86 | Temperature Too High | This NRC indicates that the requested action will not be taken because the server prerequisite condition for temperature is not met (current temperature is above a pre-programmed maximum threshold). |
0x87 | Temperature Too Low | This NRC indicates that the requested action will not be taken because the server prerequisite condition for temperature is not met (current temperature is below a pre-programmed minimum threshold). |
0x88 | Vehicle Speed Too High | This NRC indicates that the requested action will not be taken because the server prerequisite condition for vehicle speed is not met (current VS is above a preprogrammed maximum threshold). |
0x89 | Vehicle Speed Too Low | This NRC indicates that the requested action will not be taken because the server prerequisite condition for vehicle speed is not met (current VS is below a preprogrammed minimum threshold). |
0x8A | Throttle too High | This NRC indicates that the requested action will not be taken because the server prerequisite condition for throttle/pedal position is not met (current TP/APP is above a pre-programmed maximum threshold). |
0x8B | Throttle too Low | This NRC indicates that the requested action will not be taken because the server prerequisite condition for throttle/pedal position is not met (current TP/APP is below a pre-programmed minimum threshold). |
0x8C | Transmission range not in Neutral | This NRC indicates that the requested action will not be taken because the server prerequisite condition for being in neutral is not met (current transmission range is not in neutral). |
0x8D | Transmission range not in Gear | This NRC indicates that the requested action will not be taken because the server prerequisite condition for being in gear is not met (current transmission range is not in gear). |
0x8E | ISO SAE Reserved | This NRC is reserved for the future use. |
0x8F | Brake not applied | This NRC indicates that for safety reasons, this is required for certain tests before it begins, and must be maintained for the entire duration of the test. |
0x90 | Shift Lever not in Park | This NRC indicates that for safety reasons, this is required for certain tests before it begins, and must be maintained for the entire duration of the test. |
0x91 | Torque Converter Clutch locked | This NRC indicates that the requested action will not be taken because the server prerequisite condition for torque converter clutch is not met (current TCC status above a pre-programmed limit or locked). |
0x92 | Voltage Too High | This NRC indicates that the requested action will not be taken because the server prerequisite condition for voltage at the primary pin of the server (ECU) is not met (current voltage is above a pre-programmed maximum threshold). |
0x93 | Voltage Too Low | This NRC indicates that the requested action will not be taken because the server prerequisite condition for voltage at the primary pin of the server (ECU) is not met (current voltage is below a pre-programmed maximum threshold). |
0x94 – 0xEF | Reserved for Specific Condition not Correct | This range of values is reserved by this document for future definition. |
0xF0 – 0xFE | OEM specific CNC | This range of values is reserved for vehicle manufacturer specific condition not correct scenarios. |
0xFF | ISO SAE Reserved | This NRC is reserved for the future use. |