Lattice iCE40

Configuration:platform = lattice_ice40

The iCE40 family of ultra-low power, non-volatile FPGAs has five devices with densities ranging from 384 to 7680 Look-Up Tables (LUTs). In addition to LUT-based,low-cost programmable logic, these devices feature Embedded Block RAM (EBR), Non-volatile Configuration Memory (NVCM) and Phase Locked Loops (PLLs). These features allow the devices to be used in low-cost, high-volume consumer and system applications.

For more detailed information please visit vendor site.

Stable and upstream versions

You can switch between stable releases of Lattice iCE40 development platform and the latest upstream version using platform option in “platformio.ini” (Project Configuration File) as described below.


; Latest stable version
platform = lattice_ice40
board = ...

; Custom stable version
platform = lattice_ice40@x.y.z
board = ...


platform =
board = ...


Name Description
toolchain-icestorm Tools for analyzing and creating bitstream files for FPGA IceStorm
toolchain-iverilog Verilog simulation and synthesis tool


Linux Users:

Windows Users:

Please check that you have a correctly installed USB driver from board manufacturer




Name Debug MCU Frequency Flash RAM
IceZUM Alhambra FPGA No ICE40-HX1K-TQ144 12MHz 32KB 32KB


Name Debug MCU Frequency Flash RAM
Lattice iCEstick FPGA Evaluation Kit No ICE40-HX1K-TQ144 12MHz 32KB 32KB