From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Avoiding onboard device memory overflow

Solved!
Go to solution

I'm using NI USB-6356 with 64MB on-board FIFO. It is configured for AI as follows:

-8ch

-finite acquisition (~100k sample per ch)

-internal hardware clock at 1 MSPS

-reference trigger with ~10k pre-trigger points

 

My initial assumption was that DAQmx would configure  the board to use on-board FIFO as a circular buffer, overwriting old samples until the trigger, recording finite number of samples after the trigger, and stopping then. I would then read the data.

 

Turns out DAQmx driver also creates a local PC buffer and tries to stream all the pre-trigger data into PC all the time. This creates a problem - the USB link (special case vendor fibre extender) is too slow to keep up with live buffering, and DAQmx throws onboard device memory overflow error. I tried disabling PC buffer by calling configure input buffer with 0 size, as suggested in knowledge base, but it is not compatible with the configuration described above - "Non-buffered hardware-timed operations are not supported for this device and Channel Type."

 

Any workarounds?   

0 Kudos
Message 1 of 3
(2,483 Views)
Solution
Accepted by topic author Fedor

There's a deeply nested DAQmx property for AO tasks that lets you specify the use of onboard memory only.  I went looking for a similar property for AI but didn't find it.  However, I did find the following which *might* possibly help.  Can't really say for sure.

 

 

-Kevin P

 

accumulate AI onboard.png

CAUTION! New LabVIEW adopters -- it's too late for me, but you *can* save yourself. The new subscription policy for LabVIEW puts NI's hand in your wallet for the rest of your working life. Are you sure you're *that* dedicated to LabVIEW? (Summary of my reasons in this post, part of a voluminous thread of mostly complaints starting here).
Download All
0 Kudos
Message 2 of 3
(2,465 Views)

Kevin,

 

I tried setting data transfer request condition to when acquisition is complete and it worked like a charm.Thanks.

0 Kudos
Message 3 of 3
(2,451 Views)