Skip to the content
2 layers84.2 × 100 mmFabpack out v5 8, the printed circuit board in 3D

Fabpack out v5 8

yuz207/agentpad1341

agentpad13 — open-source 13-key macropad for agentic work (RP2040, vial-qmk, planar joystick, Raw HID agent-status protocol)

Size
84.2 × 100 mm
Copper layers
2
Thickness
1.6 mm
Parts
126
Nets
87
Pads
507
Tracks, vias
1,125, 186
Pours
3
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
15 Jul 2026
Updated
26 Aug 2026

Overview

Fabpack out v5 8 is an open-source printed circuit board by yuz207, from the yuz207/agentpad13 repository on GitHub. It is a 2-layer board of 84.2 × 100 mm with 126 parts on 87 nets, routed with 1,125 tracks and 186 vias.

It is built around the RP2040, TTP223-TD and W25Q128JVSIQ, with the AP2112K-3.3, SN74LVC1T45DBV and USBLC6-2SC6 among its other parts. Its parts include 49 capacitors, 25 diodes, 15 switches, 12 resistors and 6 ICs. It belongs with the keyboards and input boards and the RP2040 boards of this library.

Main components

9

README

README.md

agentpad13

A 13-key macropad for agentic work, designed from scratch: RP2040, USB-C, 12×1U + 1×2U hot-swap keys, a clickable EC11 encoder, an analog tilt joystick, a capacitive-touch key, and 24 RGB LEDs (per-key plus edge underglow) that an open Raw HID protocol drives to show what your agents are doing — thinking, running, waiting, done, one key each.

Build one

→ Open the configurator

Pick your options, turn the pad around in 3D, and get back an order sheet where every line links to the exact file you upload to a fab or drop into a slicer. That is the way in. Prefer paper? release/HOW-TO-ORDER.md is the same thing, static.

agentpad13 v5 board in the v2 case, from CAD

The shipping v5 board in the v2 case, straight from the CAD.

What is where

text
release/            The bundle — everything you order, print or flash.
  HOW-TO-ORDER.md     The configurator's static form.
  RELEASE.md          What shipped and why, section by section.
  MANIFEST.md         Every file in the bundle with its md5 and byte count.
  hardware/           Board fab package, case, plate, bases, keycaps, toppers, gasket.
  firmware/           Flashable UF2s, BRING-UP.md, POLARITY-NOTE.md.
configurator/       The published site and its consumption assets; current outputs are copied from development.
firmware/           vial-qmk tree, simulations, conformance tests, BUILD.md.
docs/               The Raw HID protocol contract, and the design reviews.

Before you send anything to a fab, run python3 manifest_selfverify.py — it should print 9/9 checks PASS. Every listed file is present with the right hash, and nothing unlisted is hiding in the bundle.

Printed toppers already? Print them again

The v1 encoder knobs and stick caps are retired. The current release carries three Ø17.5 encoder knob styles and three joystick toppers: a compact nub, restored TPU puck, and a conventional Ø12 topper paired with a TPU restrictor. Details are in release/RELEASE.md §(f).

Status

  • PCB — complete. v5_8, 84.2 × 100 mm, 2-layer, DRC clean, fab package ready to upload. It retains the v5.7 LED correction, adds the Ø4.0 TP5 solder landing, and factory-populates the encoder.
  • Case — complete. v2.17: FR4 or printed plate, band in three sidewalls, printed tray.
  • Bases — complete. Three optional printed bases; the case is finished without one.
  • Firmware — validated. Emulator-booted and protocol-conformant. Flash agentpad13.uf2.
  • Configurator — live. Static files: no build step, no network calls, no dependencies.

AgentPad13 Direct OAI (experimental alternative)

The isolated codex_oai keymap is an experimental alternative for direct Codex Desktop control. It is not Vial firmware and does not replace the normal, recommended release/firmware/prebuilt/agentpad13.uf2. Codex Desktop talks to this target directly—no helper, daemon, bridge, or Vial protocol—using the locked Codex Micro Lab OAI LED identity (303A:8360, usage FF00:61, Report ID 6, 64-byte reports).

The current unflashed candidate is release/firmware/prebuilt/agentpad13_codex_oai.uf2, 93,696 bytes, SHA-256 fcb50b2419419be43b7cf90b00a96b16063fcaf182bc24b9642d57e2e8adf54d. Start with the keymap contract, source hand-off, and Direct OAI build procedure. Run the complete host suite from the repository root:

sh
python3 -m unittest discover -s firmware/tests/codex_oai -p 'test_*.py'

The checked-in emulator capture and current manifest bind that exact UF2 to the offline USB/protocol/LED checks. Physical validation is still entirely PENDING; no install or flash occurred. Any future hardware operation requires the literal authorization and observation record in the physical runbook.

First power-on

Flash agentpad13.uf2 — hold BOOTSEL and drag the file on. Then hold SW14, the button in the back, for about a second and follow the 13 key LEDs: the board measures its own joystick and stores the result. About 15 seconds, no host software, no reflash, once ever — full procedure in release/firmware/BRING-UP.md. If an axis reads backwards that is polarity, not calibration: release/firmware/POLARITY-NOTE.md.

Firmware source is in firmware/loudest_micro/; the exact Vial/QMK build recipe and validation commands are in firmware/BUILD.md. The plain-QMK, byte-reproducible build is agentpad13_reference.uf2.

Licensing

  • release/hardware/ — CERN-OHL-W-2.0 (PCB and case CAD).
  • firmware/ and release/firmware/ — GPL-2.0-or-later (QMK/vial-qmk derivative), except firmware/tests/conformance/protocol_oracle.py, which is MIT. Corresponding source for the prebuilt UF2s = this tree built against vial-qmk per firmware/BUILD.md.

Parts

126
QtyValueFootprintReferences
40100nC_0402_1005MetricC1, C2, C3, C10, C13, C20, C21, C22, C23, C24, C26, C27, C28, C29, C30, C31 +24
14SK6812MINI-ELED_6028RLED1, LED2, LED3, LED4, LED5, LED6, LED7, LED8, LED9, LED10, LED11, LED12, LED13, LED14
13MX_HotswapSW_MX_HS_CPG151101S11_1uSW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9, SW10, SW11, SW12, SW13
10SK6812-SIDELED_WS2812_4020LED15, LED16, LED17, LED18, LED19, LED20, LED21, LED22, LED23, LED24
41kR_0402_1005MetricR5, R6, R11, R12
41uC_0402_1005MetricC11, C12, C14, C15
3H5, H6, H7
3Fiducial_1mm_Mask2mmFiducial_1mm_Mask2mmFID1, FID2, FID3
210uC_0805_2012MetricC16, C17
215pC_0402_1005MetricC18, C19
227R_0402_1005MetricR3, R4
24.7kR_0402_1005MetricR8, R9
25.1kR_0402_1005MetricR1, R2
10RR_0402_1005MetricR10
110kR_0402_1005MetricR7
112MHz ABM8-272-T3Crystal_SMD_3225-4Pin_3.2x2.5mmY1
13V3TestPoint_Pad_D1.5mmTP3
1600R@100MHzL_0402_1005MetricFB1
1750mAFuse_1812_4532MetricF1
1AP2112K-3.3SOT-23-5U3
1BOOTSW_SPST_PTS645Sx43SMTR92SW14
1DNPC_0402_1005MetricC25
1EC11RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mmRE1
1EXPANSIONPinHeader_1x08_P2.54mm_VerticalJ2
1GNDTestPoint_Pad_D1.5mmTP4
1MX_2u_stabSTAB_MX_2uSTAB1
1RESETSW_SPST_PTS645Sx43SMTR92SW15
1RP2040QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mmU1
1SD05CD_SOD-323D1
1SN74LVC1T45SOT-23-6U5
1SWCLKTestPoint_Pad_D1.5mmTP1
1SWDIOTestPoint_Pad_D1.5mmTP2
1TOUCHPADTestPoint_Pad_D4.0mmTP5
1TTP223SOT-23-6U6
1USB-CUSB_C_Receptacle_HRO_TYPE-C-31-M-12J1
1USBLC6-2SC6SOT-23-6U4
1W25Q128JVSIQSOIC-8_5.3x5.3mm_P1.27mmU2
1YA13-FL7.4-B5KaJoystick:YA13-FL7.4-B5Ka_C37323742JS1

Similar boards

  • 2 layers393.7 × 138.3 mmTHE KEYBOARD, the printed circuit board in 3D

    THE KEYBOARD

    Gusus169/INERTIA-102-The-Mechanical-Keyboard

    A custom Mechanical keyboard featuring an embedded RP2040 processor, hot-swap sockets, 1800 layout, full RGB and much more!

    481 partsMIT
  • 2 layers58 × 63 mmCamping LightRelay, the printed circuit board in 3D

    Camping LightRelay

    Rustaphor/LightRelay4Camping

    Analog light sensor to night power up LED garland. For Camping use.

    91 parts2GPL-3.0
  • 2 layers86.3 × 100 mmMacropad, the printed circuit board in 3D

    Macropad

    alx-alexpark/macropad

    101 parts
  • 2 layers95 × 95 mmEspac, the printed circuit board in 3D

    Espac

    metehus/espac

    ESP32 AC controller

    82 parts1
  • 4 layers72 × 44 mmPicflash board, the printed circuit board in 3D

    Picflash board

    nthclrd/picflash

    Programmeur PIC open source en Rust : remplace MPLAB IPE/XC8 pour les PIC16, pilote les PICkit 4/5/Basic ou une carte RP2040 maison (KiCad)

    115 parts1MIT
  • 2 layers24.6 × 35 mmLED CC DRIVER, the printed circuit board in 3D

    LED CC DRIVER

    laforestlabs/KiCraft

    KiCad PCB automation toolkit — placement, routing, scoring, and experiment management

    13 parts
  • 2 layers308.8 × 99.3 mmHem, the printed circuit board in 3D

    Hem

    marcocampione/Hem-keyboard

    A 65% ANSI keyboard PCB with an RP2040 on the board

    302 partsMIT
  • 4 layers100 × 142.5 mmKeeb4x4, the printed circuit board in 3D

    Keeb4x4

    TheRealBluesun/keeb4x4

    4x4 macropad: STM32G431, per-key RGB, ScreenKey display keycaps, encoder. KiCad + Rust/Embassy firmware, USB bootloader, host CLI, printable base.

    127 partsCERN-OHL-P-2.0

Questions

How big is the Fabpack out v5 8 PCB?

It measures 84.2 × 100 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Fabpack out v5 8 use?

126 parts, built around the RP2040, TTP223-TD, W25Q128JVSIQ and AP2112K-3.3. 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 Fabpack out v5 8 KiCad files?

From the yuz207/agentpad13 repository on GitHub, at the commit this page was made from: the board is release/hardware/pcb/fabpack_out_v5_8/source.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Fabpack out v5 8 design in my own project?

Its repository states no licence, so its author keeps all rights: ask yuz207 before reusing the design.