LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

ndStartDiagnosticSession Hangs Up

Using the Automotive Diagnostic Command Set 18.5,

LabWindows/CVI 2015 on WIN7 Host PC

NI-USB-8506

 

ndStartDiagnosticSession command call is hanging up during program execution and never exits. 

Seems some infinite Tx/Rx loop is happening between the ECM and the Interface.

 

When executing the program in debug configuration, simply stopping and resuming the execution of the program clears the problem and the program continues

 

The sequence flow:

int = ndOpenDiagnosticOnLIN (Interface, 10417, 98, "MasterReq" , "SlaveResp" , &DiagStruct);

SUCCESS

int = ndStartDiagnosticSession(&DiagStruct,dataIn,0) No return, 

Program just HANGS here in an indefinite Tx/Rx interchange between interface and ECM.

*

*

Manually break execution & resume >

SUCCESS

int = ndDiagnosticService (&DiagStruct, &resp, &dataIn, word_size, dataOut, &size_word);

SUCCESS

 

I've tried increasing the Timeout Diag  & Timeout FC (Bs) properties without success.

Looking for ideal way to handle this condition

Is there a timeout top force the exit? 

Is this something I may need to address in the ADCS_Lin_Database?

 

Thanks

0 Kudos
Message 1 of 2
(754 Views)

to re-phrase and clarify if it helps....

 

The ECU at some point begins to transmit repeated negative responses of {7F 10 12} indefinitely, indicating an unsupported sub function error occurs. 

No timeout from the ndStartDiagnosticSession command ever occurs,

therefore the program execution is stalled at that point in the code indefinitely waiting for this function to exit.

 

Ultimately I need to resolve what | why the negative response.

However I need a way to break out of this condition to continue and handle it in the code.

Somewhat green here so I am unsure whether this is done using a timeout property of the ADCS, editing the ADCS_LIN_Database, or other.

 

0 Kudos
Message 2 of 2
(711 Views)