--- id: pyadi-iio version: "0.0.21" license: ADI BSD license_treatment: permissive maintenance: active --- # pyadi-iio — Analog Devices python interfaces for hardware with Industrial I/O drivers License: permissive · Maintenance: active · Downloads: 327.4K/mo ## What it is and what it does pyadi-iio is a Python abstraction layer for Analog Devices hardware that exposes Industrial I/O drivers. Instead of writing low-level libIIO boilerplate, you instantiate device classes and call high-level methods to acquire data. The package ships with custom interfaces for specific ADI parts and development boards, each hiding the complexity of buffer management and parameter configuration behind a simpler API. The library depends on numpy for array handling and pylibiio for the underlying IIO interface to the hardware. It supports Python 3.8 through 3.12 and is actively maintained by Analog Devices. Use it when you need to control ADI RF transceivers, data converters, or other IIO-based hardware from Python without wrestling with low-level driver details. Use it for: - Rapid prototyping of RF signal acquisition and transmission with ADI hardware in a Python environment. - Automating test and measurement workflows that interact with ADI development boards or evaluation kits. - Building Python-based SDR applications using ADI hardware as the front end. - Integrating ADI analog-to-digital or digital-to-analog converters into data acquisition pipelines. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. pyadi-iio provides Python classes that wrap Analog Devices hardware with Industrial I/O drivers, reducing boilerplate and simplifying data acquisition from ADI transceivers and signal processing boards. Yes. The package is actively maintained, has no known vulnerabilities, installs with low friction, and carries a permissive license. Install it if you own or plan to use supported ADI hardware and want to control it from Python without writing low-level IIO code. Verify that your specific hardware model is in the supported parts list before committing. ## Install pip install pyadi-iio uv add pyadi-iio poetry add pyadi-iio ## Installing pyadi-iio Before you install: Low friction install with a pure-Python wheel. Actively maintained with a recent release 80 days ago and ongoing commits. Depends only on numpy and pylibiio, both stable packages. License in practice: Licensed under ADI BSD (permissive), allowing commercial and private use with minimal restrictions. Quickstart: pip install pyadi-iio import pyadi_iio # Create device from specific uri address data = pyadi_iio.rx() Requires libiio with Python bindings installed on the system; the package itself is a Python wrapper around that C library. Verify before relying: - Which specific ADI hardware models are supported—the description references a supported_parts.md but does not enumerate them. - Whether the optional jesd extra dependency adds significant functionality or is rarely needed. - Concrete example of how to instantiate and use device-specific classes beyond the generic rx() pattern. ## Package facts - License: ADI BSD (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 327.4K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags analog devices hardware python interface, IIO driver python wrapper, ADI transceiver control, signal acquisition python, industrial I/O python abstraction, hardware-interface, signal-processing, embedded-systems [View on SkillFed](https://skillfed.io/packages/pyadi-iio) · [View on PyPI](https://pypi.org/project/pyadi-iio/)