We are having a recurring problem on one of our test systems which uses multiple USB-LIN adapters, specifically NI USB-8476 LIN. The test system is an automated test line which has multiple test "cells" where a LIN based automotive part undergoes a series of tests. They are moved from one cell to the next by a robot and connect to the test system via test connectors made up of a cluster of "pogo pins" that interface to the part's normal i/o connector. At random times during a normal day of testing, the LabVIEW test program (an .exe) will start having all the parts fail for a LIN connection failure. To restore proper operation requires restarting the whole computer, but the program doesn't exit properly, and once it is ultimately stopped (usually through task manager), windows won't shutdown properly either, starting the shutdown, but never completing.
Our theory, at this point, is that somehow we are shorting pins on the device/pogo pin interface, which "glitches" the PCI bus. This is partially based on the fact that we have had an unusually high failure rate of the USB-8476 modules on this line (they are used extensively (and expensively when replaced too often) on almost every test line here (several) and we don't see this type of failure rate on the other lines. The units being tested are not particulaly unique, internally, so we don't think it because of them.
My question, at this point, is any thoughts on ways to log what might be happening (we have writes to the windows debugger salted throughout the program) and is there an off the shelf hardware "isolation" module that can be placed between the USB-8746 and the unit under test? I tried looking for any info as to what their built in isolation was, but haven't found any on the NI site. I was asked to see if there was any off the shelf "buffer" before we designed one and built it.
I do not believe that we have any off-the-shelf solution for an isolation that would go between the 8476 and that which is being measured, but I will double check.
The assumption that something might be getting shorted sounds quite reasonable, but what exactly do you see from your bus monitoring after the problem begins? Do you receive still the same information from the USB Device or is there nothing coming in?
In what concerns logging, the first thing that comes to mind is simply logging everything that is being read to a set of files, but you are quite likely already doing that.
How quick is this failure that you are seeing anyhow?
Furthermore, windows won't shut down, does it stay stuck at the shutdown menu or does it simply not do anything after closing all programs?
When this "event" occurs, subsequent read attempts from any of the LIN devices (there are multiple test "nests" for different aspects of the testing) all return invalid data. All of the LIN devices are plugged into a PCI USB card. When the event has occured the LabVIEW test exe won't completely shutdown, requiring a "termination with extreme prejudice" via task manager. Then, when a shutdown is attempted of Windows it goes to the "shutting down" screen and never completes.
Have a whole team from different groups here watching it, trying to figure out what is going on. The suspicion is that pins are shorting, but when the power down/power up of the whole system is performed, our restarted LabVIEW code can once again talk to the units under test, leading us to guess that if it is pins shorting it is a transient event as the robot inserts the part into the nest.
Another thing that comes to mind when I hear about this type of problem is a problem with your ground reference: If there is a ground potential difference station-to-station or between the stations/DUT's, then a large amount of current can flow in your LIN and USB ground lines.
To test for this, disconnect the LIN adapters from the stations/DUT's and measure the voltage between the LIN adapter's ground pin and the station/DUT's ground pin. If there is any appreciable voltage then you probably have a ground reference problem that you need to look into.
As far as isolation, there are USB isolators that you could try to put between the computer and the hub and/or the hub and your LIN adapters. I've never used one, so I can't say how well they actually work.
Electrical Validation Engineer