09-07-2012 08:22 AM
Hi, thanks for reading this!
I am in the process of upgrading an SCXI system so that it can be used with a LapTop instead of a DeskTop PC.
The SCXI configuration is:
SCXI-1001 12 slot-chassis with 3 SCXI-1120 and 8 SCXI-1102 modules. (so total of 280 channels)
The upgrade will use a SCXI-1600 USB DAQ device in Slot 12 instead of a PCI-6040E card in the PC.
I am able to configure and use the SCXI-1600 thru the USB 2.0 port in my LapTop. So far so good.
But the problem is that my LabVIEW software will run only a few minutes (typically < 2 min) before stopping with the -200010 error:
Error -200010 occurred at an unidentified location
Possible reason(s):
Onboard device memory overflow. Because of system and/or bus-bandwidth limitations, the driver could not read data from the device fast enough to keep up with the device throughput.
Reduce your sample rate, alter the data transfer method (from interrupts to DMA), use a product with more onboard memory, or reduce the number of programs your computer is executing concurrently.
I am even getting this error if I just use a simple LabVIEW example (Cont Acq&Graph Voltage-Int Clock Clk.vi).
My scan rate is 120 Samples/s and I am also reading the samples from the buffer at the rate of 20 Samples/read.
The SCXI-1600 has a 4096 sample FIFO, and I think it it is overflowing the FIFO and hence the error.
(the older PCI-6040E with only 512 Sample FIFO worked fine).
I have tried setting the Data Transfer Mechanism to "USB" explicitly (even though this might be redundant).
The only way I can get the application to run for at least 1 hours is to drastically reduce the scan rate to 10 Samples/s!
Can someone tell me if this is all the SCXI-1600 is capable of?
According the SCXI-1600 manual, the theoretical scan rate with 280 channels is:
Max Scan Rate = 1 / (5us x # of Channels) = 714 Samples/s
Yet I am not able to get more than 10 Samples/s. Am I missing something here?
Any suggestions would be greatly appreciated.
Sincerely
Sundaram Raghuraman
09-10-2012 12:45 PM
Hi LVUser94,
I had a few questions for you regarding this issue to see if we can figure out what is going on here. First, how do you have the SCXI-1600 connected to the laptop, directly with a USB cable or through a USB HUB (Also what length of cable are you using)? Have you tried to increase the rate at which you are reading samples from the buffer? If so, did this have any effect on the speed you could sample at and for how long you could sample? Could you try to connect this to the PC that you were using with your other set up to see if you are able to sample at the higher rate on the PC to make sure we can eliminate the USB side of things?
Regards,
09-11-2012 06:59 AM
Hello Tommy G,
Thanks for your response
The SCXI-1600 is directly connected to the LapTop with a short 6ft USB cable.
Yes, I have tried to read the samples as fast as 10Samples/read but the FIFO overflow still occurs at 120 Scans/s.
I also tried with a slower scan rate of 50 Scans/s. The error -200010 occurred in about 20 minutes.
I won't be able to connect my SCXI to the other PC as I don't have access to it.
Thanks
S R
09-12-2012 01:38 PM
Hi LVUser94,
Have you tried to put the samples/read to down to 1 or to -1 to read whenever a sample becomes available? Could you post a screenshot of your block diagram so we can see what all is going on in the loop and on the code? Also, do you have anything else plugged into your USB ports on your computer?
Regards,
09-14-2012 07:29 AM
Hello Tommy G,
I was using one of the LabVIEW example VIs called "Cont Acq&Graph Voltage-Int Clk.vi" when the error happened.
I played with the Sample Read parameter and set it to a wide range, but I can't remember if I set it to -1.
I won't be able to try that for another 2 weeks.
The first attachment - Cnt Acq&Graph Voltage+Int Clk (original).png is the original LabVIEW example.
The second attachment - Cnt Acq&Graph Voltage+Int Clk (modified).png has some modifications I tried but did not really improve the error situation.
Thank you
Sincerely
S R
09-17-2012 07:54 AM
Hi LVUser94,
When you try the test again in two weeks, try to set the Sample Read parameter to a low number such as 1 and you can even try -1 using the original example code since only the read is in the while loop and it does not have to worry about other tasks within loop. Also, make sure when you try this there are no other USB devices in the USB ports since these will take some of the bandwidth.
Regards,
10-17-2012 03:22 PM
Tommy G, I tried both suggestions (using Samples to Read 1 and -1) but the error -200010 still occurs within a few minutes.
There is nothing else connected to the LapTop except the SCXI system. No other USB or any other connections.
10-18-2012 09:50 PM
Hi LVUser94,
In the following link is an article which talks about how to determine the maximum scan rate for Multiple SCXI modules which you might find useful for this issue: http://digital.ni.com/public.nsf/websearch/410A70C25A4D12B486256A1E0070BDAE?OpenDocument.
Regards,
10-31-2012 12:19 PM
With my testing, I found that SCXI-1600 will eventually stop working due to FIFO overflow error -200010.
This happens at even the lowest sample rate of 1 S/s using 280 channels after 1-2 hours.
I believe the reason is SCXI-1600 is only USB 2.0 Full-Speed compatible (12 MBits/s) and not USB 2.0 High-Speed (480 MBits/s).
So its transfer speed is only 1/40th that of USB 2.0 hi-speed, and around 1/100th that of PCI bus!
For anyone looking for an alternative to SCXI-1600, consider only Hi-Speed USB devices such as USB-6255.
Check the datasheet for the product and confirm it says USB 2 Hi-Speed, not USB 2 Full-Speed!!