Using Third-Party USB or FireWire Devices with LabVIEW or LabWindows/CVI
Primary Software: LabVIEW Development Systems>>LabVIEW Full Development System
Primary Software Version: 1.0
Primary Software Fixed Version: N/A
Secondary Software: N/A
What kind of support do LabVIEW and LabWindows/CVI provide for third-party Universal Serial Bus (USB) or IEEE 1394 (FireWire) devices? Can I use the Serial VIs and functions to communicate with my USB device?
USB communication is supported with NI-VISA 3.0 and later on Windows and with NI-VISA 3.2 and later on Macintosh and Linux. For the latest version of NI-VISA please see Drivers and Updates: VISA (linked below).
NI-VISA supports instrument class 488.2 devices conformant to the USBTMC spec and non-class devices that do not have a default Windows driver. For more information on controlling a USB device with NI-VISA, please review the Developer Zone tutorial USB Instrument Control Tutorial (linked below).
No generic IEEE 1394 (FireWire) or USB driver is available for non-Windows platforms, just as no generic PCI or ISA bus driver is available. As with PCI and ISA, you or the third-party device vendor must supply a device-specific driver, such as a DLL, that you can call from LabWindows/CVI or LabVIEW using the Call Library Function Node.
Note: In LabVIEW 8.0 or later, refer to the Fundamentals»Calling Code Written in Text-Based Programming Languages book in the LabVIEW Help for more information about using external code in LabVIEW. In LabVIEW 7.1 or earlier, refer to the Using External Code in LabVIEW manual (linked below) for more information about using external code in LabVIEW.
National Instruments IEEE 1394 (FireWire) and USB hardware devices are supported through standard National Instruments driver interfaces such as NI-DAQ.
Note: Although USB contains the word serial, it is not the same serial protocol used in RS-232. Therefore, you cannot use the Non-VISA Serial VIs or functions to interact with a USB device. Any bus protocol, including USB and IEEE 1394 (FireWire), should have a well-defined interface for the user because device manufacturers do not want users to have unrestricted access to memory locations on the bus.
Drivers and Updates: VISA
Tutorial: USB Instrument Control Tutorial
LabVIEW Support: LabVIEW 8.5 Help
Product Manuals: Using External Code in LabVIEW
Report Date: 04/10/1998
Last Updated: 11/10/2016
Document ID: 18964UWV