Title here
Summary here
Build the GB-Link firmware locally for development or custom board targets.
west package managerThe firmware is built against Zephyr 3.7.99. Newer versions should also be compatible.
git clone https://github.com/GB-Link/GBLink-Firmware.git
cd GBLink-Firmware
west init -l .
west updatewest build -b <board_name>The firmware ships overlays for these Zephyr board targets:
| Board target | Hardware | Notes |
|---|---|---|
rpi_pico | GB-Link USB V2, GB-Link USB V1 (Etsy), Pico PCB, Pico Zero PCB, Raspberry Pi Pico | Default target — official releases and CI builds use this board. All RP2040 GB-Link adapters share the same pinout; see Hardware & Wiring. |
nucleo_f070rb | STM32 Nucleo-F070RB | Legacy Celio development board (STM32F070). Useful for porting work; not used for production GB-Link hardware. |
Examples:
# GB-Link USB V2, V1, DIY Pico boards, or Raspberry Pi Pico
west build -b rpi_pico
# STM32 Nucleo (legacy / development)
west build -b nucleo_f070rbFor a custom MCU or pinout, add a new overlay under boards/ and pass your board name to west build. See
Porting to Other MCUs.
# Build produces gblink.uf2
# Hold BOOTSEL, connect USB, drag .uf2 to RPI-RP2 driveUse launcher.gblink.io to flash the built UF2 over WebUSB.
Key files:
| File | Purpose |
|---|---|
prj.conf | Zephyr Kconfig options |
Kconfig | Application-specific config |
west.yml | West manifest and dependencies |
CMakeLists.txt | Build targets and sources |
Host-side tests live in tests/host/:
# Run host tests (see tests/host/ for specifics)For WebUSB development on Linux:
./scripts/setup-permissions.shGitHub Actions workflows in .github/workflows/ handle automated builds and releases.
Pre-built gblink.uf2 files are available on the
releases page.