🌱 Open source ecosystem for open FPGA boards
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
apio Fix add `dialout` group command Nov 9, 2018
docs Add cheat sheet Nov 6, 2018
test Fix uppercase typo Sep 1, 2018
.gitignore added vim temp files to .gitignore May 15, 2018
.travis.yml Add test for Python 3.6 Aug 15, 2018
CHANGELOG.md Merge branch '0.4' Nov 6, 2018
FAQ.md Fix add `dialout` group command Nov 9, 2018
LICENSE Add License file Sep 19, 2016
README.md Update command groups in docs Nov 6, 2018
setup.py Update package intervals Aug 15, 2018
tox.ini Add test for Python 3.6 Aug 15, 2018


Build Status Latest Version License Documentation Status


Open source ecosystem for open FPGA boards. It was inspired by PlatformIO.

Apio (pronounced [ˈa.pjo]) is a multiplatform toolbox, with static pre-built packages, project configuration tools and easy command interface to verify, synthesize, simulate and upload your verilog designs.

Apio is used by Icestudio.

Table of contents


  1. Install Python and pip

  2. Install the latest apio: pip install -U apio

Apio packages

Package Installation Description
drivers apio install drivers Drivers tools (only for Windows)
examples apio install examples Verilog basic examples, pinouts, etc
gtkwave apio install gtkwave Simulation viewer. GTKWave project (only for Windows)
icestorm apio install icestorm iCE40 FPGA synthesis, place & route and configuration tools. Icestorm project
iverilog apio install iverilog Verilog simulation and synthesis tool. Icarus Verilog project
scons apio install scons A software construction tool. Scons project
system apio install system Tools for listing the USB devices and retrieving information from the FTDI chips
verilator apio install verilator Verilog HDL simulator. Verilator project

Supported platforms

linux_x86_64, linux_i686, linux_armv7l, linux_aarch64, windows_x86, windows_amd64, darwin.

Supported boards


Board name Interface
IceZUM Alhambra FTDI
Nandland Go board FTDI
iCEstick Evaluation Kit FTDI
iCEblink40-HX1K Digilent Adept


Board name Interface
Alhambra II FTDI
BlackIce Serial
BlackIce II Serial
Kéfir I iCE40-HX4K FTDI
iCE40-HX8K Breakout Board FTDI


Board name Interface
TinyFPGA B2 Serial
TinyFPGA BX Serial


Board name Interface
UPDuino v1.0 FTDI
UPDuino v2.0 FTDI
iCEBreaker FTDI
iCEBreaker bitsy FTDI
FPGA 101 Workshop Badge Board FTDI
iCE40 UltraPlus Breakout Board FTDI

NOTE: all supported Icestorm FPGAs can be used with --fpga or --size, --type and --pack options.


The complete documentation of the project can be found in Read the Docs: http://apiodoc.readthedocs.io. There is also a list of frequently asked questions (FAQ) that you can check here.


git clone https://github.com/FPGAwars/apio.git
cd apio


pip install tox
tox -e offline
tox -e coverage


cd docs
make html
firefox _build/html/index.html

Debian packaging

Also you can find the debian scripts to package the full application and all the packages here: https://github.com/set-soft/apio-debian.

Thanks Salvador E. Tropea!


Apio in RPI2: iCEstick, Icezum and icoBOARD

Apio: an easy multi-platform toolbox for open FPGAs




  • FPGAwars community has developed this project in a voluntary and altruistic way since 11/2016.

  • BQ sponsored this project from 02/2016 to 11/2016. Thanks.


Licensed under GPL 2.0 and Creative Commons Attribution-ShareAlike 4.0 International License.