Purpose

Executes the WWH-OBD RoutineControl service. Reads a data record from the ECU.

Format

        long ndWWHOBDRequestRID (
       TD1 *diagRef,
       unsigned char mode,
       unsigned short routineIdentifier,
       unsigned char dataOut[],
       long *len,
       LVBoolean *success);
      

Input

diagRef

Specifies the diagnostic session handle, obtained from ndOpenDiagnosticOnCANFD and passed to subsequent diagnostic functions. Normally, it is not necessary to manually manipulate the elements of this struct.

mode

Defines the service operation mode. You can obtain the values from a ring control:

1: Start Routine

2: Stop Routine

3: Request Routine Results

Other values are application specific.

routineIdentifier

Defines the identifier of the routine to be started. The values are application specific. Output

dataOut

Returns application-specific output parameters from the routine.

len

On input, len must contain the dataOut array length. On return, it contains the number of valid elements 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

The WWH-OBD RoutineControl service is based on the UDS RoutineControl service (ISO 14229-1).