Interface a NI DAQ Device With Arduino

Updated Dec 22, 2023

Reported In

Hardware

  • USB-6341

Driver

  • NI-DAQmx

Other

Arduino hardware

Issue Details

I have a NI DAQ device, such as USB-6341.  I would like to write an application to read data from it and run this application on Arduino target.

Is this possible? Which protocol or API should I use in the Arduino application?
 

Solution

NI DAQ devices are supported by NI-DAQmx driver, which is supported by Windows operating system according to this compatibility table. This driver installs API for different programming environment, such as LabVIEW, C, C++, .NET and Python.

However, there is no specific API for Arduino targets and NI-DAQmx functions cannot be called on Arduino. Also, there is no documentation on the low-level USB protocol supported by NI USB DAQ devices, since DAQmx is required for application development.
 

Additional Information

You can program your DAQmx application and interface Arduino targets from LabVIEW. This way, you will be able to communicate to both the DAQmx device and Arduino target.
To communicate with the Arduino, you can transfer data as you would any serial communication, including using NI-VISA. You may need to perform pre and post processing of the communicated information in LabVIEW and on the Arduino as well.
You can also explore using the LabVIEW Hobbyist Toolkit to communicate with your Arduino using LabVIEW.