ICENode

An open-source FPGA development board based on the Lattice iCE40UP5K, designed for education, experimentation, and embedded system development.

View Project on GitHub Get Started →
ICENode FPGA development board

ICENode FPGA development board featuring USB interface, ADC, and Arduino-compatible expansion.

Overview

ICENode is a custom FPGA development board built around the Lattice iCE40 UltraPlus UP5K. The board is intended as an accessible and open platform for working with digital logic, Verilog, and FPGA-based embedded systems.

The project is developed for and in collaboration with DrOJ Elektronikk. The project aims to provide a Norwegian-developed alternative in a field where most available development boards are international products.

Get Started

Ready to try ICENode? Follow the step-by-step guide to install the toolchain, configure your project, and upload your first design.

Go to Getting Started →

Why ICENode?

Many FPGA boards are either closed, expensive, or not well suited for introductory and mixed-signal experimentation. ICENode was created to offer a simpler and more accessible platform that supports open-source tools and practical lab work.

By combining FPGA functionality with integrated analog input capability, the board supports both digital design exercises and experiments involving real-world sensor signals.

Key Features

Lattice iCE40UP5K Open-source toolchain FT2232H USB interface Integrated ADC SPI / UART / GPIO Arduino-style headers

Expansion & Compatibility

ICENode is designed with Arduino-style headers, allowing the use of existing shields for rapid prototyping and hardware experimentation.

ICENode with Arduino-compatible shield

Example setup using Arduino-compatible shield support for extended functionality.

Specifications

FPGALattice iCE40 UltraPlus UP5K (SG48)
Clock12 MHz external oscillator (SG-210STF)
USB InterfaceFT2232H for programming and communication
ADCMCP3202, 12-bit, 2-channel SPI ADC
Voltage Domains1.2 V core, 3.3 V I/O
ToolchainAPIO, Yosys, nextpnr, iceprog
InterfacesSPI, UART, GPIO
ExpansionArduino-style header compatibility

Use Cases

ICENode is intended for teaching, prototyping, and experimentation. Possible use cases include introductory Verilog projects, digital logic labs, SPI and UART interface testing, and mixed-signal experiments using the onboard ADC.

Demo Video

Demonstrations include an analog distance sensor, a seven-segment display using an Arduino-compatible shield, and a traffic light system implementation.

Team

ICENode is developed by

Vebjørn Lundal
Fredrik Spydevold
Jarand Aspelund
Kristoffer Berget

The development Team are third-year electronics engineering students specializing in Automation and Robotics at OsloMet. The project is part of their bachelor theisis in defense of the degree Bachelor in Engingeering.

The project is carried out in collaboration with Dr. Ola Jetlund, academic leader for electronics at OsloMet and associated with DrOJ Elektronikk - DrOJ Electronics.

Release

Planned release date: June 4, 2026