

The USB-6002, manufactured by NI (National Instruments), is a multifunction data acquisition (DAQ) device designed for seamless integration with computers via USB. It provides a versatile platform for analog input, digital I/O, and counter/timer functionalities, making it ideal for a wide range of measurement and control applications. Its compact design and plug-and-play USB connectivity make it suitable for both laboratory and field use.








| Parameter | Specification |
|---|---|
| Analog Input Channels | 8 single-ended or 4 differential |
| Analog Input Resolution | 16 bits |
| Analog Input Range | ±10 V, ±5 V, ±2 V, ±1 V |
| Sampling Rate (Max) | 50 kS/s (aggregate) |
| Digital I/O Channels | 13 bidirectional |
| Digital I/O Voltage Levels | 0–5 V (TTL compatible) |
| Counter/Timer Channels | 1 |
| Counter Resolution | 32 bits |
| USB Interface | USB 2.0 |
| Power Supply | USB-powered |
| Operating Temperature | 0 °C to 45 °C |
The USB-6002 features a 16-pin screw terminal block for easy connectivity. Below is the pin configuration:
| Pin Number | Signal Name | Description |
|---|---|---|
| 1 | AI 0+ | Analog Input Channel 0 Positive |
| 2 | AI 0- | Analog Input Channel 0 Negative |
| 3 | AI 1+ | Analog Input Channel 1 Positive |
| 4 | AI 1- | Analog Input Channel 1 Negative |
| 5 | GND | Ground |
| 6 | AO 0 | Analog Output Channel 0 |
| 7 | AO 1 | Analog Output Channel 1 |
| 8 | PFI 0 | Programmable Function Interface 0 |
| 9 | PFI 1 | Programmable Function Interface 1 |
| 10 | DIO 0 | Digital I/O Channel 0 |
| 11 | DIO 1 | Digital I/O Channel 1 |
| 12 | DIO 2 | Digital I/O Channel 2 |
| 13 | DIO 3 | Digital I/O Channel 3 |
| 14 | +5 V | 5 V Power Output |
| 15 | GND | Ground |
| 16 | NC | Not Connected |
Although the USB-6002 is primarily used with NI software, it can interface with an Arduino UNO for digital I/O control. Below is an example of controlling a digital output pin on the USB-6002 using an Arduino:
// Example: Controlling a digital output pin on the USB-6002
// This code toggles a digital output pin connected to the USB-6002
// Ensure proper wiring between the Arduino and USB-6002
const int usb6002Pin = 7; // Pin on Arduino connected to USB-6002 DIO 0
void setup() {
pinMode(usb6002Pin, OUTPUT); // Set the pin as an output
}
void loop() {
digitalWrite(usb6002Pin, HIGH); // Set the pin HIGH
delay(1000); // Wait for 1 second
digitalWrite(usb6002Pin, LOW); // Set the pin LOW
delay(1000); // Wait for 1 second
}
Note: Ensure proper voltage level translation if the Arduino operates at 3.3 V logic levels, as the USB-6002 uses 5 V TTL logic.
Device Not Recognized by Computer:
Incorrect or No Signal Measurement:
Noise in Measurements:
Digital I/O Not Responding:
Q: Can the USB-6002 be used with third-party software?
A: Yes, the USB-6002 can be used with third-party software that supports NI-DAQmx or provides APIs for data acquisition.
Q: What is the maximum cable length for USB connectivity?
A: The maximum recommended USB cable length is 5 meters. Use a USB repeater or hub for longer distances.
Q: Can the USB-6002 output analog signals?
A: Yes, the USB-6002 has two analog output channels (AO 0 and AO 1) for generating signals.
Q: Is the USB-6002 suitable for portable applications?
A: Yes, its compact size and USB-powered design make it ideal for portable and field applications.