06-09-2009 02:58 AM
HI Everyone,
I am trying to use Automotive Diagnostic Command Set to read parameters from ECU. When i run my program i get this error Error -8260 occurred at ISOTP Receive.vi.
Possible reason(s):
NI Automotive Diagnostics Command Set:
Diagnostic command timeout. A response from the ECU was not received.
I tried increasing the timeout but no change. I believe the transmit and Receive ID is same as arbitration ID of the ECU.
I had a look at my CAN bus and i found a bunch of ID's transmitting CAN frames. Just to experiment, i entered one of those ID's that appears on the bus, i do not get this error but the program does not read anything (as i expect becos it is not the right ID).
When i enter the correct ID, i get this error message.
When i tried the same thing with an another software (custom built) i am getting positive response from the ECU. It conforms that ECU is alive and does respond. Unfortunately this ECU does not transmit any periodic messages (the reason why it did not appear in the Bus monitor) but it responds if the message is addressed to it.
Any help would be much appreciated. Thanks
Solved! Go to Solution.
06-09-2009 05:57 PM
Hi Everyone,
I found the problem. By default, ADCS do not send 8 bytes of data. I mean, it does not append 0 to fill the frame. We need to set the global Fill CAN Frames to true. It can be done using Diag Set Property.
06-10-2009 09:10 AM
09-27-2011 02:24 AM
I also faced same problem for communicating Bosch ECU using NI USB CAN 8473s.
Wile establishing communication, the CAN led bliks for a while and goes off. While vis, it gives error 8210.
Please suggest solution.
10-04-2011 07:38 AM
There are two CAN IDs involved in communicating with the ECU: the tester (your VI) sends messages to the ECU on the Transmit ID, and the ECU responds to the tester on the Receive ID. Both must be set correctly for communication to take place. You mentioned that you can communicate with another software... does this allow for some basic logging? That way, you could probably verify which CAN IDs are used for communication, and use those in ADCS.
Christian
07-16-2012 02:44 PM
I am facing the same issue with the same 8260 error message. I added the Diag Set Property VI to the beginning of my code before any data flow takes place and set it to true but I'm still getting that error. Do I need to change the sample rate or the timeout? I've attached a copy of the code I'm working with. Any assistance would be great.
07-17-2012 03:40 AM
You are using the default IDs from ADCS for the Transmit ID and the Receive ID. These IDs only working with the ADCS examples and the ADCS DemoECU.
You should set the Transmit and Receive ID related to your existing ECU.
See also the comment before from Ceule. (10-04-2011 07:38 AM)
07-17-2012 12:31 PM
Would you mind further explaining how I go about changing the Transmit and Receive ID and how to find out what the correct ID for my ECU is?
07-17-2012 01:05 PM
Also do I need to set my ISO TP to Mixed Mode?
07-17-2012 01:23 PM
all of the ADCS examples offer to select the Transmit and Response IDs withoin the OpenDiagnostic.VI command. Here a screenshot from a LabVIEW example.
All communication parameters differ from ECU to ECU vendor, so you would need to know those, NI cannot anticipate which ECU you are using.
But have a look on our examples which should give you a good starting point