Skip to main content

FPGA Interface Python API

Build Status

Overview

The National Instruments FPGA Interface Python API is used for communication between processor and FPGA within NI reconfigurable I/O (RIO) hardware such as NI CompactRIO, NI Single-Board RIO, NI FlexRIO, and NI R Series multifunction RIO.

With the FPGA Interface Python API, developers can use LabVIEW FPGA to program the FPGA within NI hardware and communicate to it from Python running on a host computer. This gives engineers and scientists with Python expertise the ability to take advantage of compiled LabVIEW FPGA bitfiles, also the option to reuse existing Python code.

Installation

NiFpga can be installed by cloning the master branch and then in a command line in the directory of setup.py run:

pip install --pre .

Or by installing from PyPI using:

pip install nifpga

nifpga supports Python 3.5+.

Examples

The FPGA Interface Python API is session based. LabVIEW FPGA will generate bitfiles (.lvbitx) that can be used to program the hardware. For additional information on sessions view our Read the docs documentation

Example usage of FPGA configuration functions:

with Session(bitfile="BitfilePath.lvbitx", resource="RIO0") as session:
    session.reset()
    session.run()
    my_control = session.registers["MyControl"]
    my_control.write(4)
    data = my_control.read()

See our readthedocs page for more detailed examples and documentation.

Release files for nifpga 22.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for nifpga 22.0.0
File Interpreter ABI Platform
nifpga-22.0.0-py3-none-any.whl Python 3 none any Details

Release files / nifpga-22.0.0-py3-none-any.whl

Download URL nifpga-22.0.0-py3-none-any.whl
Size 38.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
51e858f810bd331be6ad84ed58a87b2a6aa37b529eb2294e4e087fc6b12fe36d
BLAKE2b-256 checksum
How to use checksums
31e8d48ff01b18eec5e0f49a7e79038481308d0b3e76dd4043159a17dbeae579
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.9

Release history Release notifications | RSS feed

This release

22.0.0 This release

1 release file

20.0.0

1 release file

19.0.0

1 release file

18.1.2

1 release file

18.1.1

1 release file

18.1.0

1 release file

18.0.0

1 release file

17.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page