Skip to the content
PCBKitNew board
4 layers50.8 × 22.9 mmRPGA Feather, the printed circuit board in 3D

Home of everything RPGA! From schematics and board files to buildable examples!

Size
50.8 × 22.9 mm
Copper layers
4
Thickness
1.6 mm
Parts
82
Nets
96
Pads
327
Tracks, vias
1,035, 133
Pours
4
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
27 May 2024
Updated
2 Oct 2026

Overview

RPGA Feather is an open-source printed circuit board by Oak-Development-Technologies, from the Oak-Development-Technologies/RPGA-Feather repository on GitHub, published under the MIT licence. It is a 4-layer board of 50.8 × 22.9 mm with 82 parts on 96 nets, routed with 1,035 tracks and 133 vias.

It is built around the ICE5LP1K-SG48ITR, ECS-327ATQMV-AS-TR and MBR0520LT1G, with the SM04B-SRSS-TB(LF)(SN)(P) and UHD1110-FKA-CL1A13R3Q1BBQFMF3 among its other parts. Its parts include 28 capacitors, 16 resistors, 6 ICs, 3 connectors and 1 diode. It belongs with the microcontroller boards boards and the RP2040 and FPGA and CPLD boards of this library.

Main components

5

README

README.md

RPGA-Feather

Welcome to the RPGA Feather GitHub page. This page is designed to be a single source of truth for this board, including board files like schematics, production files, BOM, and more. In addition to that, there are also a handful of examples available to build with just a little effort specifically for the RPGA Feather.

Continue reading to get started.

Getting Started

What is the RPGA Feather? RPGA Feather is a development board which provides the ease of use of the RP2040 from Raspberry Pi with the wide open source support of the iCE40 FPGA line. RPGA Feather combines the RP2040 with an iCE5LP4K FPGA from Lattice Semiconductor which has 3520 LUTs, 2 hardware SPI and I2C blocks, a bright RGB LED driver, two internal oscillators, and 1 PLL which can be used to generate additional clocks for your designs.

RPGA Feather provides up to 11 direct GPIO connected between the RP2040 and the iCE5LP4K. This includes the 3 pins used for programming the bitstream onto the FPGA.

Having a good pinout guide can be useful for getting started. We provide this pinout card with every RPGA Feather purchased from our shop.

You can find the PDF under the Hardware Directory Here. Thanks to @skliffmueller for making and sharing it.

usage examples

We provide a few examples in this repository for getting familiar with interfacing with the iCE5LP4K FPGA.

Following the comments in the top.v file under the src directory can enable you to build these specific examples quickly. Once you have the example set up in the file, you can build it using the following command:

make
make build

Building requires using Yosys OSS CAD Suite, which can be found by visiting the OSS CAD Suite build github repository. Follow the instructions for setting up the tools on your OS and you'll be good to go.

Once you have a top.bin file which should be in the base directory of the repository, you can simply copy it over onto your RPGA Feather CIRCUITPY drive. If you haven't downloaded the CircuitPython Community Bundle to get IcePython you can head to the CircuitPython Libraries page to download it, or download the latest release directly.

Once you have IcePython and the top.bin file loaded onto your RPGA Feather, the next step is to get your code setup to load the FPGA.

Using Mu or your favorite CircuitPython compatible IDE, open up the code.py file and past the following code:

py
# SPDX-FileCopyrightText: 2017 Scott Shawcroft, written for Adafruit Industries
# SPDX-FileCopyrightText: Copyright (c) 2023 Seth Kerr for Oak Development Technologies
#
# SPDX-License-Identifier: Unlicense

"""
Example showing how to program an iCE40 FPGA with circuitpython!
"""

import time
import board, busio
import oakdevtech_icepython
import gc

print("Mem Free: ",gc.mem_free(),"Mem Alloc", gc.mem_alloc())
spi = busio.SPI(clock=board.F_SCK, MOSI=board.F_MOSI, MISO=board.F_MISO)

iceprog = oakdevtech_icepython.Oakdevtech_icepython(
    spi, board.F_CSN, board.F_RST, "top.bin"
)

timestamp = time.monotonic()

iceprog.program_fpga()

Save the file and you should see the green CDONE LED light up on your board. Depending on the example you built, you might see the RGB LED light up that is next to the FPGA.

Questions?

If you have any questions, please feel free to open an issue. Issues are a great way to raise concerns or bugs with the examples or hardware itself. And your feedback is critical to making sure we can fix issues and improve the quality of life for everyone's experience with RPGA Feather.

Parts

82
QtyValueFootprintReferences
160.1uCapacitor_SMD:C_0402_1005MetricC4, C5, C7, C8, C9, C10, C11, C12, C13, C14, C17, C18, C23, C24, C25, C26
410kRPGA Feather:R0402R1, R7, R10, R15
41uCapacitor_SMD:C_0402_1005MetricC3, C6, C16, C19
44.7uCapacitor_SMD:C_0603_1608MetricC21, C22, C27, C28
45k1RPGA Feather:R0402R4, R5, R13, R14
4JUMPER-SMT_3_1-NC_TRACE_SILKRPGA Feather:SMT-JUMPER_3_1-NC_TRACE_SILKJP1, JP2, JP3, JP4
20.47uCapacitor_SMD:C_0402_1005MetricC15, C20
21kRPGA Feather:R0402R2, R6
227RPGA Feather:R0402R8, R9
227pCapacitor_SMD:C_0402_1005MetricC1, C2
2SOF-232HSTRPGA Feather:3.3X2.9U$4, U$5
1100kRPGA Feather:R0402R3
12kResistor_SMD:R_0402_1005MetricR16
1953RPGA Feather:R0402R11
1CONN_02-JST-2MM-SMTRPGA Feather:JST-2-SMDJ2
1DMG3415U-7X2-DFN2015-3RPGA Feather:X2-DFN2015-3U1
1ECS-327ATQMV-AS-TRRPGA Feather:XTAL_ECS-327ATQMV-AS-TRY1
1FEATHER_BASERPGA Feather:FEATHER_PINSU$1
1G***kibuzzard-6601FCFEkibuzzard-6601FCFE
1G***kibuzzard-66022711kibuzzard-66022711
1G***kibuzzard-6601FCEAkibuzzard-6601FCEA
1G***kibuzzard-6601FC9Ekibuzzard-6601FC9E
1G***kibuzzard-6601CDB5kibuzzard-6601CDB5
1G***kibuzzard-6657261Ckibuzzard-6657261C
1G***kibuzzard-6601CD6Fkibuzzard-6601CD6F
1G***kibuzzard-660226BEkibuzzard-660226BE
1G***kibuzzard-6601FC47kibuzzard-6601FC47
1G***kibuzzard-6601FCCEkibuzzard-6601FCCE
1G***kibuzzard-6601FC5Ekibuzzard-6601FC5E
1G***kibuzzard-66565BE9kibuzzard-66565BE9
1G***kibuzzard-6601FD10kibuzzard-6601FD10
1G***kibuzzard-6601CD49kibuzzard-6601CD49
1G***kibuzzard-6601CDBDkibuzzard-6601CDBD
1GREENRPGA Feather:LED-0603CDONE0
1ICE5LP1K-SG48ITRRPGA Feather:QFN50P700X700X100-49NU6
1LED0603RPGA Feather:LED-0603CHG0
1MBR0520LT1GRPGA Feather:SOD3716X117(SOD-123)U$2
1MCP73831T-2ACI/OTSOT-23-5_MC-LRPGA Feather:SOT-23-5_MC-LU2
1R-US_R0402RPGA Feather:R0402R12
1RP2040_M0+RPGA Feather:QFN-56U$3
1SM04B-SRSS-TB_LF__SN_Connector_JST:JST_SH_BM04B-SRSS-TB_1x04-1MP_P1.00mm_VerticalJ3
1TLV75533PDBVRDBV5_TEX-LRPGA Feather:DBV5_TEX-LU4
1TPS73201DBVRDBV5-LRPGA Feather:DBV5-LU3
1UHD1110-FKA-CL1A13R3Q1BBQFMF3RPGA Feather:LED_UHD1110-FKA-CL1A13R3Q1BBQFMF3D1
1USB_C_Receptacle_USB2.0_14PConnector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_HorizontalJ1
1USERRPGA Feather:LED-0603USER1
1W25Q16JVUXIQW25Q16JVUXIQ_WIN-LRPGA Feather:W25Q16JVUXIQ_WIN-LU7

Questions

How big is the RPGA Feather PCB?

It measures 50.8 × 22.9 mm and has 4 copper layers, 1.6 mm thick.

What parts does the RPGA Feather use?

82 parts, built around the ICE5LP1K-SG48ITR, ECS-327ATQMV-AS-TR, MBR0520LT1G and SM04B-SRSS-TB(LF)(SN)(P). The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the RPGA Feather KiCad files?

From the Oak-Development-Technologies/RPGA-Feather repository on GitHub, at the commit this page was made from: the board is hardware/RPGA Feather.kicad_pcb and its schematic hardware/RPGA Feather.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the RPGA Feather design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 4 layers50.8 × 22.9 mmLattice FPGA feather wing, the printed circuit board in 3D

    Lattice FPGA feather wing

    Oak-Development-Technologies/Lattice-FeatherWing

    Home of the Lattice FeatherWing

    30 parts7MIT
  • 2 layers88.5 × 64.1 mmPcb files, the printed circuit board in 3D

    Pcb files

    open-seneca/modular-aq-sensor

    The repo contains the firmware, 3d-printed casing, PCB-files, and documentation for our modular open-seneca sensor based on a "Black Pill" MCU. It can be flashed using Arduino IDE.

    24 parts25
  • 4 layers17.8 × 50.8 mmReDIP CIA, the printed circuit board in 3D

    ReDIP CIA

    daglem/reDIP-CIA

    MOS 6520 PIA / MOS 6522 VIA / MOS 6526/8520/8521 CIA replacement

    61 parts66CERN-OHL-S-2.0
  • 6 layers50.2 × 50.7 mmAdc usb, the printed circuit board in 3D

    Adc usb

    EnPassant123/FMCW_radar_2

    FMCW radar - version 2

    305 parts2GPL-3.0
  • 4 layers181.5 × 182.3 mmStencil, the printed circuit board in 3D

    Stencil

    jerry-kerenzikov/ytterbium

    Project files for Ytterbium modular CPU platform and Yprog programming tool

    421 partsCERN-OHL-S-2.0
  • 2 layers27.5 × 48.3 mmICE40DevBoard, the printed circuit board in 3D

    ICE40DevBoard

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    41 parts915
  • 2 layers44 × 27 mmRvice adc, the printed circuit board in 3D

    Rvice adc

    dragonlock2/kicadboards

    Offsite backup for the miscellaneous KiCad boards that don't fit elsewhere

    124 parts14Apache-2.0