A Python Package for Communicating with Peripheral Electronic Devices

Abstract

We are developing a data acquisition system (DAQ) for real-time feedback that uses FPGA based control of and acquisition from various electronic chips, or peripherals. Because these peripherals communicate over multiple protocols (SPI, I2C, LVDS) through an FPGA, we designed pyripherals to organize and abstract registers, the communication protocol, and the host computer interface to each communication controller. The software and firmware are designed for Opal Kelly FPGA modules, yet the Python developments are generally useful to organize communication with peripheral chips.

Publication
Journal of Open Source Software