ndOBDRequestCurrentPowertrainDiagnosticData
- Updated2025-10-07
- 1 minute(s) read
Purpose
Executes the OBD Request Current Powertrain Diagnostic Data service. Reads an ECU data record.
Format
long ndOBDRequestCurrentPowertrainDiagnosticData(
TD1 *diagRef,
unsigned char PID,
unsigned char dataOut[],
long *len,
LVBoolean *success);
Input
diagRef
Specifies the diagnostic session handle, obtained from ndOpenDiagnosticOnCANFD or ndOpenDiagnosticOnIPStack and passed to subsequent diagnostic functions. Normally, it is not necessary to manually manipulate the elements of this struct.
PID
Defines the parameter identifier of the data to be read. The SAE J1979 standard defines the values. Output
dataOut
Returns the ECU data record. If you know the record data description, use ndConvertToPhys to interpret this record. You can obtain the description from the SAE J1979 standard.
len
On input, len must contain the dataOut array length. On return, it contains the number of valid data bytes in the dataOut array.
success
Indicates successful receipt of a positive response message for this diagnostic service.
Return Value
The return value indicates the function call status as a signed 32-bit integer. Zero means the function executed successfully. A negative value specifies an error, which means the function did not perform the expected behavior. A positive value specifies a warning, which means the function performed as expected, but a condition arose that may require attention.
Use the ndStatusToString function to obtain a descriptive string for the return value.