Automotive Diagnostic Command Set Toolkit Help

ndReadMemoryByAddress

  • Updated2024-08-07
  • 2 minute(s) read

ndReadMemoryByAddress

Purpose

Executes the ReadMemoryByAddress service. Reads data from the ECU memory.

Format

long ndReadMemoryByAddress(
       TD1 *diagRef,
       unsigned long address,
       unsigned char size,
       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.

address

Defines the memory address from which data are read. Only three bytes are sent to the ECU, so the address must be in the range 0–FFFFFF (hex).

size

Defines the length of the memory block to be read.

Output

dataOut

Returns the ECU memory data.

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.

Description

This function requests ECU memory data identified by the address and size parameters. The dataOut format and definition are vehicle manufacturer specific. dataOut includes analog input and output signals, digital input and output signals, internal data, and system status information if the ECU supports them.

For further details about this service, refer to the ISO 14230-3 standard.

Log in to get a better experience