Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Problems with CAN PCMCIA Cards in laptops

Actually we are working with a Labview application (desktop based) to control CAN devices, using PCI CAN card. This is actually working very fine for hours and hours of tests. This application was developped by a NI partner.
The same application with a PCMCIA card and a laptop crashes after several hours. The configuration between the Laptop and the desktop are approximately the same: same operating system WinXP, same CAN driver...
To troubleshoot the problem we have installed the PCMCIA card in an adapter in a desktop, the application works fine.
Looks like the problem is between the laptop and the PCMCIA card ( we have tried several laptops, several cards and several versions of the CAN drivers, same problem).
The CAN speed is 500KB.
 
Error codes:
 
Error -1074388990 occurred at NI-CAN Write
CAN Object
(ncWriteObj.vi)
NI-CAN:  (Hex 0xBFF62002)
 
Can someone help me finding a way to have it work fine with laptops and PCMCIA cards?
We keep continuing our tests because this is an important issue for my company but I hope that someone can drive us to the root cause of this problem.
 
0 Kudos
Message 1 of 9
(6,695 Views)
Hey lionel_t_123
I took a look at that error code you sent, and saw that it is related to an internal error related to corrupted driver issues. There is a knowledge base about this error and some possible solutions:
http://digital.ni.com/public.nsf/allkb/25A1726C45E10F48862568F700715733?OpenDocument
Since you said that you used several laptops, several cards, and several drivers, this may not be the fix. If you could get back to me with the results from that KB, I'll try to get you something.
Could you also let me know what the laptop make and model were you used, along with the card names and the driver versions.

Thanks,
Can Wong
0 Kudos
Message 2 of 9
(6,676 Views)

Here is a description of the hardware that we are using:

Brand: DELL (used as a standard in our company)

Models used for the tests: Latitude D620, Latitude D820, Optiplex GX270 (desktop on which it works fine).

Drivers version used are the 2.1.2 and 2.5.1

PCMCIA card model: NI PCMCIA-CAN/2 Series 2

A test has been running during the Week end on a laptop with no antivirus, no Windows updates, entirely new rebuilt system, but after 60 hrs of tests it has stopped with the same error code.

0 Kudos
Message 3 of 9
(6,665 Views)

If such an error occures the NI-CAN 2.5.1 driver generates a "nicanErr.txt" file within the NI-CAN/bin folder. Please post this file for further investigations.

DirkW

0 Kudos
Message 4 of 9
(6,650 Views)
I have inserted the file you are asking for. I hope that it will help
0 Kudos
Message 5 of 9
(6,642 Views)

Hi,

This error code means the firmware running on your PCMCIA board crashed badly. In order to investigate, hy this happens, we would need to reproduce this crash here with NI.

Therefore i would need your code causing this issue. Pehaps if it is not confidential you could post it to this thread. If it is confindential you could send it to me by mail. Use the following E-Mail address: canpse@ni.com.

Could you try to use a different board, to be sure it isn't a hardware issue, meanwhile i investigate your code.

DirkW

0 Kudos
Message 6 of 9
(6,635 Views)
I got your VIs and had a look to it. Overall i can not see any problem. I saw you are using the obsolete "reset.vi". This VI can cause problems if used together with other driver calls. See the picture below for a suggested change in your code.
If this doesn't help i would ask you to create a Spy Log File. The NI-CAN driver installs the NI-SPY tool. It loggs all api calls and errors if they happen.
You can run this tool in parallel to your application.
If you opened the Tool go to SPY>>Options>>General and specify 100000 lines for Logging. Then go to >>Error Action and choose "continue capturing and ignore errors"
Then start capturing, run your application and stop it immediately. Make sure your CAN part gets initialized.
Go to save as and save it to a log file named config.spy.
Then clean the capture window and start again. Now run the application until it crashes. If it crashes the Logger should stop. Safte the file, name it crash.spy and attache both files or send them to me.
 
DirkW
0 Kudos
Message 7 of 9
(6,626 Views)
I have realised the test that you have proposed me to do, the first one has generated a 3Gb file causing the test to stop because of low disk space error. the second one was more successful. I have sent with "youSendIt" the spy file generated by the crash. And I have included in this Email the spy file with no error. I hope that this can help you do something.
0 Kudos
Message 8 of 9
(6,586 Views)
The complexity of your program seems to trigger a board firmware crash from time to time. There is a lot of communication going on. How many ports are used with your application? 4 or 8 or more?
It seems changing to a PCI adapter and a faster processor i guess, changes the timing, thus the firmware gets a little bit more time to handle the traffic.
My suggestions are:
 
1. get rid of these Transceiver warnings, by fixing your cabeling or what ever causes the NERR Pin to report a failure.
 
2. Don't use so many waits with short timeouts. Instead use the get attribute with "read entrys pending" to look for frames available in the queue. This gives you the exact number of frames available, thus you could read them all. That avoids frameloss, which i saw in your log file too. (Error BFF62028)
 
That may change the timing, thus the firmware stops crashing or resetting because of to much work to do.
 
DirkW
 
 
 
0 Kudos
Message 9 of 9
(6,576 Views)