$npx skillfedfor your agent

nidaqmx

Official NI-DAQmx Python API

Worth itPyPI Hardware DriversReleased Aug 2026117.4K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — nidaqmx-1.6.0-py3-none-any.whl
v1.6.0 · released 2026-08-07 · Python <4.0,>=3.9 · 10 runtime deps: click, deprecation, distro, hightime, nitypes, numpy, python-decouple, requests

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

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'.
Same gist for agents: .md · .json

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.

Worth 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

LicenseMIT permissive
Python supportSupports the current Python release <4.0,>=3.9
Install frictionLow. Pure-Python wheel
Runtime dependencies
10 packages
clickdeprecationdistrohightimenitypesnumpypython-decouplerequeststyping_extensionstzlocal
MaintenanceActively maintained 7 days since the last release
Last repo commit
First released
Downloads117,351 / month, #12,166 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone 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

Capabilities
NI DAQ device control pythondata acquisition hardware interfaceanalog digital input outputNI-DAQmx python wrapperhardware timing acquisitionmeasurement device driverni daqmx python api
Topics
hardware-controldata-acquisitioninstrumentation
PyPI keywords
nidaqmxnidaqdaqmxdaq

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

python-can Worth it
PyPI · Utilities · released Aug 2025

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.

LGPL-3.0-onlypure Python · 3.9+
5.2Mdownloads / mo
pyusb With conditions
PyPI · Libraries · released Jan 2025

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.

BSD-3-Clausepure Python · 3.9.0+aging
4.7Mdownloads / mo
pyftdi Worth it
PyPI · Python Modules · released Jun 2026

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.

permissive licensepure Python · 3.9+
791.2Kdownloads / mo
libusb1 With conditions
PyPI · Libraries · released May 2026

Python wrapper for libusb-1.0 that enables synchronous and asynchronous USB device communication across multiple operating systems.

LGPL-2.1-or-laterpure Python
619.0Kdownloads / mo
pyjoulescope-driver With conditions
PyPI · Scientific/Engineering · released Aug 2026

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.

Apache-2.0compiled wheel
259.6Kdownloads / mo
dlipower With conditions
PyPI · Python Modules · released Jun 2018

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.

BSD-3-Clausebuilds from sourcedormant
232.7Kdownloads / mo

See also pyadi-iio · pymata-express · dash-daq · pylibiio · phidget22 · joulescope · logic2-automation · qm-octave · npTDMS