nidaqmx
Official NI-DAQmx Python API
Decision gist · record as of 2026-08-14
Yes. This is the official, actively maintained API for NI DAQ hardware in Python, with no known vulnerabilities, permissive MIT licensing, and low install friction. Install it if you own or have access to NI DAQ hardware and need to control it from Python. Do not install if you do not have the NI-DAQmx driver available on your system or lack compatible hardware.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires NI-DAQmx driver to be installed on the system; supports CPython 3.9+ and PyPy3 (except gRPC use cases); Windows and Linux only where the driver is supported.
- Low friction installation via pip; actively maintained with a release 7 days ago and recent commits.
- Depends on 10 runtime packages including numpy and click, all common and stable.
License · maintenance · safety
MIT (permissive) — MIT license (permissive); you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
last release 2026-08-07 (7 days) · last repo commit 2026-08-10 · 585 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 117,351 downloads/mo, #12,166 on PyPI
Alternatives
Verify before relying
import nidaqmx
with nidaqmx.Task() as task:
task.ai_channels.add_ai_voltage_chan("Dev1/ai0", min_val=-10.0, max_val=10.0)
data = task.read()- Whether all 10 runtime dependencies (click, deprecation, distro, hightime, nitypes, numpy, python-decouple, requests, typing_extensions, tzlocal) are required for core DAQ functionality or only for optional features like gRPC.
- Performance characteristics and latency guarantees for hardware-timed acquisition at various sample rates.
- Compatibility matrix between specific nidaqmx versions and NI-DAQmx driver versions beyond 'all versions supported'.
What it is and what it does
nidaqmx is the official Python wrapper around the NI-DAQmx C API, letting you write instrumentation and data acquisition applications that control National Instruments DAQ hardware. It abstracts the low-level C interface into an object-oriented Python layer, handling tasks (collections of channels with timing and triggering), virtual channels (software representations of physical measurement points), and both software and hardware-timed acquisition or generation.
You create a task, add analog or digital input/output channels with specified ranges and configurations, set up timing parameters, and read or write data. The package supports finite and continuous acquisition modes, multiple channels per task, and hardware clocking for precise timing. It requires the NI-DAQmx driver to be installed separately on your system and works on Windows and Linux where that driver is supported.
Use it for
- Acquire voltage or current measurements from analog sensors connected to an NI DAQ device at specified sample rates.
- Generate analog or digital signals from a DAQ device to control external hardware or test equipment.
- Build automated test systems that synchronize measurement and control using hardware timing and triggering.
- Stream continuous data from multiple channels simultaneously with hardware-controlled sample timing.
- Prototype measurement applications in Python before deploying to production NI systems.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
This is the official, actively maintained API for NI DAQ hardware in Python, with no known vulnerabilities, permissive MIT licensing, and low install friction. Install it if you own or have access to NI DAQ hardware and need to control it from Python. Do not install if you do not have the NI-DAQmx driver available on your system or lack compatible hardware.
Install
nidaqmx on PyPI
Before you install
Low friction installation via pip; actively maintained with a release 7 days ago and recent commits. Depends on 10 runtime packages including numpy and click, all common and stable.
Requires NI-DAQmx driver to be installed on the system; supports CPython 3.9+ and PyPy3 (except gRPC use cases); Windows and Linux only where the driver is supported.
License in practice
MIT license (permissive); you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
Quickstart
import nidaqmx
with nidaqmx.Task() as task:
task.ai_channels.add_ai_voltage_chan("Dev1/ai0", min_val=-10.0, max_val=10.0)
data = task.read()
Verify before relying
- Whether all 10 runtime dependencies (click, deprecation, distro, hightime, nitypes, numpy, python-decouple, requests, typing_extensions, tzlocal) are required for core DAQ functionality or only for optional features like gRPC.
- Performance characteristics and latency guarantees for hardware-timed acquisition at various sample rates.
- Compatibility matrix between specific nidaqmx versions and NI-DAQmx driver versions beyond 'all versions supported'.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <4.0,>=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 10 packagesclickdeprecationdistrohightimenitypesnumpypython-decouplerequeststyping_extensionstzlocal |
| Maintenance | Actively maintained 7 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 117,351 / month, #12,166 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: ManufacturingIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: System :: Hardware :: Hardware Drivers |
Evidence: nidaqmx-1.6.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “NI DAQ device control python”
- nidaqmxProvides a Python API to control and acquire data from National…
- brainstemProvides Python bindings to control and interact with Acroname…
- dash-daqProvides interactive data acquisition and control components for…
Give your agent the search over MCP, or paste the wish link into any chat.
More Hardware Drivers packages
Provides Python abstractions and utilities for Controller Area Network (CAN) communication, supporting multiple hardware backends and message logging formats.
Install it if you need to communicate with CAN buses from Python.
PyUSB provides Python access to USB devices on the host machine through a backend-neutral API, supporting libusb 1.0, libusb 0.1, and OpenUSB backends.
PyFtdi provides a pure-Python user-space driver for FTDI USB devices, enabling serial, SPI, I2C, GPIO, and JTAG communication without requiring platform-specific binary drivers.
Install it if you work with FTDI hardware; the only caveat is that libusb must be available on your system, and Windows support is not officially guaranteed.
Python wrapper for libusb-1.0 that enables synchronous and asynchronous USB device communication across multiple operating systems.
Python bindings for the Joulescope DC energy analyzer driver, enabling communication with JS110, JS220, and JS320 Joulescope devices to configure operation and receive measurement data.
Manages Digital Loggers web-based network power switches through a Python class and command-line interface, allowing remote control of outlet power states and configuration.
See also pyadi-iio · pymata-express · dash-daq · pylibiio · phidget22 · joulescope · logic2-automation · qm-octave · npTDMS