{"library":"pyadi-iio","title":"pyadi-iio","description":"pyadi-iio is a Python abstraction module developed by Analog Devices for interfacing with their hardware devices that utilize Industrial I/O (IIO) drivers. It simplifies interaction with complex IIO interfaces by providing device-specific APIs, reducing boilerplate code for common operations like data acquisition and control. The current version is 0.0.20, and the library is actively maintained with ongoing development and contributions.","language":"python","status":"active","last_verified":"Mon May 18","install":{"commands":["pip install pyadi-iio","pip install pyadi-iio[jesd]"],"cli":null},"imports":["import adi"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import adi\nimport os\n\n# Replace with your device's actual IP address or leave empty for local/USB detection\n# Ensure the target hardware is powered on and configured for network/USB communication\n# For network connection, the IP address should be accessible from the host.\n# Example: 'ip:192.168.2.1' for Ethernet, 'usb:1.24.5' for specific USB device\ndevice_uri = os.environ.get('ADIIO_URI', 'ip:192.168.2.1') \n\ntry:\n    # Create a device interface for a supported device, e.g., AD9361\n    sdr = adi.ad9361(uri=device_uri)\n\n    # Example: Print RX LO Frequency\n    print(f\"RX LO Frequency: {sdr.rx_lo}\")\n\n    # Example: Capture and print some RX data (ensure device is transmitting/receiving)\n    # This part assumes the device is configured and streaming data.\n    # In a real scenario, you'd configure sample rates, gains, etc. before reading.\n    sdr.rx_buffer_size = 2**12  # Set buffer size\n    data = sdr.rx()\n    print(f\"Captured {len(data)} RX samples.\")\n    # print(f\"First 10 RX samples: {data[:10]}\") # Uncomment to see sample values\n\nexcept Exception as e:\n    print(f\"Could not connect to or interact with device at {device_uri}: {e}\")\n    print(\"Please ensure libiio is installed and the device is accessible. \"\n          \"Refer to pyadi-iio documentation for device-specific setup.\")\n","lang":"python","description":"Initializes a connection to an Analog Devices IIO device, typically an SDR like AD9361, using its URI (IP address for network connection). It then demonstrates reading a device property and capturing a block of RX data. The `ADIIO_URI` environment variable can be used to specify the device's address, otherwise a default IP is attempted. This requires the `libiio` C library to be installed and the hardware device to be reachable.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-18","installed_version":"0.0.20","pypi_latest":"0.0.20","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":4.4,"avg_import_s":null,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"91.6M"},{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"115.6M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":3.7,"import_time_s":null,"mem_mb":null,"disk_size":"88M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":5.3,"import_time_s":null,"mem_mb":null,"disk_size":"112M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"99.6M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"124.5M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":3.7,"import_time_s":null,"mem_mb":null,"disk_size":"95M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":4.8,"import_time_s":null,"mem_mb":null,"disk_size":"120M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"87.9M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"112.7M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":3.4,"import_time_s":null,"mem_mb":null,"disk_size":"83M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":4.5,"import_time_s":null,"mem_mb":null,"disk_size":"108M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"87.4M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"112.1M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":3.6,"import_time_s":null,"mem_mb":null,"disk_size":"83M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":4.6,"import_time_s":null,"mem_mb":null,"disk_size":"107M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"99.4M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"124.2M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pyadi-iio","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":4.4,"import_time_s":null,"mem_mb":null,"disk_size":"98M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"jesd","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":6.1,"import_time_s":null,"mem_mb":null,"disk_size":"122M"}]}}