FFP Control Software
The control software for FFP runs on your computer and uses the FFP hardware to program an FPGA or SPI flash. It is written in Rust.
Pre-built Binaries
Pre-built binaries are available for Windows and Linux on the Releases page. You must have libusb installed or available on your system.
Build Requirements
-
You must have a working Rust compiler installed. Visit rustup.rs to install Rust.
-
You'll need to set up drivers or permissions to access the USB device, see the drivers page for more details.
Building
cargo build --release
You can either run the ffp executable directly from target/release/ffp
, or
install it for your user using cargo install --path .
.
Installing
FFP software can be installed directly using Cargo:
cargo install ffp
Usage
Run ffp help
for detailed usage. Commonly used commands:
ffp fpga program bitstream.bin
ffp fpga reset
ffp fpga power on
ffp flash id
ffp flash program bitstream.bin
Python Alternative
The prototype for this software was written as a Python script which is also available (prog.py).
Cross-Compiling for Windows from Linux
From a stock Ubuntu 18.04 image, the following commands generate an ffp.exe
suitable for 64-bit Windows:
|
# (accept defaults)
The resulting binary is target/x86_64-pc-windows-gnu/release/ffp.exe
. It
needs the libusb-1.0.dll
file from /tmp/MinGW64/dll/
available on the
Windows system, either in the same directory as ffp.exe
or installed
system-wide.