Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

PCI-6713/PCI-6733 Error -200016 in MAX

Solved!
Go to solution

I am new to the forum so I hope this post is in the right place.

I have 3 AO cards (2 PCI-6733 and 1 PCI-6713) and I am using DAQmx for .NET (c#) to create an experiment control software using the aforementioned cards. The output is expected to be 100KHz on all channels of all cards and the output values are changing (so regeneration is not an option) after running the tasks (3 tasks one per card) for a varying time (5-30 mins) I get the following error:
Error -200016 Onboard device memory underflow...

The SmpleQuantityMode is FiniteSamples and I am already using DMA.

 

To elemenate the possibility that synchronization could have a role or that the PCI bus has too many cards, I plugged out all but 1 card (repeated the same procedure with every card) and used MAX for testing:

I created an analog output task (using the 8 channels) and ran the following tests which all lead to the same error (-200016) after varying times:


Generation Mode     | Samples to Write | Rate (Hz)
Continuous Samples | 100k                       | 100k

Continuous Samples | 100k                       | 50k

Continuous Samples | 100k                       | 1k

N Samples                | 2M                          | 100k

N Samples                | 2M                          | 50k

 

for all the tests the Sample Clock Type was "Internal" , the timeout set to 200S, and the Regeneration Mode set to "Do not allow regeneration".

The PC itself is pretty powrful (Windows 7 64-bits, 16 GB RAM, Intel Xeon(R) CPU E3-1225 V5 @ 3.30GHz) and apparently not doing a big load caused by other applications.

 

What could be the problem, and what do you suggest to try?

0 Kudos
Message 1 of 5
(3,128 Views)

Hi Ghareeb,

 

Seeing as though it is an underflow error, everything in the buffer has already been pulled by the time before the software stops acquiring. If you change the timeout to -1, what happens? Similarly, can you put a buffer node down to track the behavior? You might even be able to change the buffer size. Here are some articles that I believe will be useful --

 

Understanding and Avoiding Overwrite and Overflow Errors with NI-DAQmx

http://digital.ni.com/public.nsf/allkb/A224DA0551EEA073862574F60060AB6F

 

 

How Is the DAQmx Buffer Size Allocated for a Finite or Continuous Acquisition?

http://digital.ni.com/public.nsf/allkb/E1E67695E76BA75B86256DB1004E9B07

 

DAQ mx Write Underflow

http://forums.ni.com/t5/LabVIEW/DAQ-mx-Write-Underflow/td-p/2798882

Aulia V.
0 Kudos
Message 2 of 5
(3,085 Views)

Thank you for the reply. Changing the timeout to -1 and/or increasing the buffer size does not solve the problem. Decreasing the buffer size is not allowed as the generation mode is finite samples and it has to fit at least the number of provided samples.

0 Kudos
Message 3 of 5
(3,065 Views)
Solution
Accepted by topic author ghareeb

The problem was solved by moving the cards to another PC. 

In the first PC I noticed that the Windows 7 event log was showing a hardware-related warning  (

Event ID: 17

Source: WHEA-Logger

A corrected hardware error has occurred.

Component: PCI Express Root Port

Error Source: Advanced Error Reporting (PCI Express)

...)

whenever I ordered output on any of the cards. That's why I have just moved the cards to another computer (with other motherboard and CPU and now everything works fine!

The motherboard in the first PC is ASUS P10S-X and I assume it was the cause of the problem.

0 Kudos
Message 4 of 5
(3,064 Views)

Ah, I see... it was the actual port itself, which would make sense when you move it to another computer. Perfect, I'm happy to hear that everything works!

Aulia V.
0 Kudos
Message 5 of 5
(3,029 Views)