DAQmx Read VI Returning an Empty Array

Updated Dec 5, 2018

Reported In

Software

  • LabVIEW

Driver

  • NI-DAQmx

Issue Details

Every couple of reads from the DAQmx Read VI, I'll get an array size of 1, equal to zero. Normal acquisition will get a much larger array. This problem gets worse as I increase the frequency of my reads. How can I fix this?

Solution

By default, the DAQmx Read VI returns the entire input buffer at once. If the buffer is read again before more data is added, the VI returns an empty array. In most cases, wiring a value into the number of samples per channel terminal will resolve this.
The VI will wait until at least this many samples are placed into the input buffer before executing or until a timeout occurs. For continuous acquisition, this value should usually be the same as the samples per channel terminal of the DAQmx Timing VI.

For a more in-depth explanation of this, you can read this article on the DAQmx PC Buffer.

WAS THIS ARTICLE HELPFUL?

Not Helpful