Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

CAN USB-8473

hi,

 

im using the NI-CAN 8473 to communicate with the CAN bus on my car through an OBDII connector.

im using for this the Automotive Diagnostic Command Set. I tried a simple code to get the supported PIDs in the car, but there was no communication between the CAN-USB and the car ECU.

 

 

0 Kudos
Message 1 of 12
(11,766 Views)

Hi,

 

Have you tried using OBD-II CAN Car Monitor Demo, pre-compiled example?! 

http://zone.ni.com/devzone/cda/epd/p/id/5411 

 

Do you get any specific error when using it?

 

 

Applications Engineer

Franjo Tonkovic 

 

0 Kudos
Message 2 of 12
(11,739 Views)

I did actually and it didn't work either.

I got the error code -8260 which has the explanation:

         NI Automotive Diagnostics Command Set:
         Diagnostic command timeout. A response from the ECU was not received.

 

any idea of what could be the reason for that?

0 Kudos
Message 3 of 12
(11,734 Views)

Hi

typical problems could be

 

- incorrect baudrate

- incorrect cable termination

- incorrect CAN IDs

 

Can you  double check that these parameters are correct for your test setup?

 

- gibson

0 Kudos
Message 4 of 12
(11,720 Views)

HI,

 

I had the same problem. There is a global variable  called Diagnostic Globals. We need to set the Fill CAN Frames to True. By Default it is False so it does not send entire frame. When you set it to true, it fills the frames with zeros for all the unused bytes. You can set the global using Diag set property

Message 5 of 12
(11,709 Views)

After several attempts with my code and the example code (changing baud rate, CAN ID, changing the car!) i still can't make any of the two codes work.

The main problem seems to be in the OBD open.vi (for my code) and the Open Diagnostic.vi (in the example code).

Can anyone tell me more about how these vi's are supposed to work (especially the transmit id and receive id inputs)?

0 Kudos
Message 6 of 12
(11,662 Views)

Hi meesha,

 

I am afraid, that your problem could be in the hardware connection and not in the SW.

The question is how old is your car and which specific typ and producer?

Different producers uses or used different connections even when they call it OBDII and the connector is the same.

 

The error with timeout could be simply that the right pins are not connected.

 

As a rule of thumb, GM cars and light trucks use SAE J1850 VPW (Variable Pulse Width Modulation). Chrysler products and all European and most Asian imports use ISO 9141 circuitry. Fords use SAE J1850 PWM (Pulse Width Modulation) communication patterns.

 

Look at this http://www.obdii.com/connector.html

 

Regards,

 

Jiri Keprt

 

NIE Czech Republic 

CLA, CTA

0 Kudos
Message 7 of 12
(11,618 Views)

My understanding is that the Automotive Diagnostic Command Set works with all vehicles. To my knowledge this is a standard interface which works with all vehicles 2008 and later utilizing CAN. You can reference the SAE J1979 spec document/spec by googling. It will show you the standard CAN pins for all vehicles which should be the same (CAN+, CAN-, and gnd). This standard provides for the legislative pids which are mandated by the government so the guy on the corner garage can diagnose your trouble codes. Like when you go to your local Auto parts and the guy brings out his tester to tell you your trouble code and reset your engine on light. He's accessing the trouble codes and also the legislative pids. The transmit ID is normally 7E0 and the receive ID is 7E8. That's also in the spec.

Now for my problem, I can't get the Automotive Diagnostic Command Set to work with my USB 8473s. I'm using the engine example that comes with the kit trying to measure RPM, TPS, and ECT on a 2010 Ford Escape. Here's my question:

Should the Automotive Diagnostic Command Set work with Windows7 64 bit and LabVIEW 2010 32 bit?

I installed it on my machine and it installed in the LabVIEW 2010 directory. I can't get it to work on any of the vehicles I tried. I have checked the wiring and confirmed the pinouts of the OBDII connector. The USB led is a steady yellow and the OBD lights flash green on the USB 8473s but the sofware hangs in the OBD Open.vi. I've checked with our CAN communication OBDII engineering team and confirmed the transmit and rcv adrresses. I have the baud rate set to 500K. Any help would be most appreciated! I've been told the toolkit is Plug & Play. Mine Plugs, but won't play!

0 Kudos
Message 8 of 12
(10,598 Views)

Thanks Nathan! You made my day. I set the global to true and voila! Kudos!!!!!!

If you don't mind my asking, how did you determine that was an issue? I started looking at the code, but after being at work 13 hrs. it was time to go.

Thanks again!Smiley Happy

0 Kudos
Message 9 of 12
(10,580 Views)

Hi Meesha,

CAN high is pin 6, CAN lo is pin 14, sig gnd is pin 5. You can buy the standard OBDII cable on-line if you haven't already.

The Ford and Volkswagen baud rate is 500Khz. Transmit id is 7E0, rcv is 7E8.

I verified operation on several Ford vehicle 1996 to date and one 2010 Volkswagen (please don't punch me).

Make sure the "Fill CAN Frames?" vi "Diagnostic Globals" type def is set to true as described by Nathan in a previous post.Smiley Happy

 

ref:

http://en.wikipedia.org/wiki/On-board_diagnostics#OBD-II_Diagnostic_connector

0 Kudos
Message 10 of 12
(10,577 Views)