Skip to the content
PCBKitNew board
2 layers310 × 120 mmFlow 75, the printed circuit board in 3D

A premium, programmer-focused 75% mechanical keyboard designed for maximum cognitive flow and zero hand displacement.

Size
310 × 120 mm
Copper layers
2
Thickness
1.6 mm
Parts
214
Nets
151
Pads
956
Tracks, vias
1,587, 312
Pours
1
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
20 Aug 2026
Updated
7 Oct 2026

Overview

Flow 75 is an open-source printed circuit board by danigit, from the danigit/flow_75 repository on GitHub. It is a 2-layer board of 310 × 120 mm with 214 parts on 151 nets, routed with 1,587 tracks and 312 vias.

It is built around the RP2040, AP2112K-3.3 and 1N4148W, with the SK6812MINI-E among its other parts. Its parts include 87 diodes, 59 switches, 19 capacitors, 11 resistors and 2 ICs. It belongs with the keyboards and input boards and the RP2040 boards of this library.

Main components

4

README

README.md

Flow 75 — Programmer's Layered Keyboard

License: Dual PRs Welcome Contributor Covenant

A premium, programmer-focused 75% mechanical keyboard designed for maximum cognitive flow and zero hand displacement.


The Core Concept

Traditional keyboards force software developers to constantly lift and stretch their hands to reach symbols, arrows, navigation keys, and mouse controls. Flow 75 brings full ergonomic layer power into a standard 75% unibody form factor using a 3-way split spacebar and an intuitive Left-Column Modifier Cascade.

mermaid
graph TD
    %% Styling
    classDef spacebar fill:#2d3748,stroke:#4a5568,stroke-width:2px,color:#fff,font-weight:bold;
    classDef layer fill:#3182ce,stroke:#2b6cb0,stroke-width:2px,color:#fff;
    classDef standard fill:#4a5568,stroke:#2d3748,stroke-width:2px,color:#fff;
    
    subgraph The 3-Way Split Spacebar
        direction LR
        LS[Left Space<br>2.25u]:::spacebar
        C[Center Key<br>1.25u]:::spacebar
        RS[Right Space<br>2.75u]:::spacebar
        
        LS -->|Hold| IL((INPUT LAYER<br>Symbols & Operators)):::layer
        C -->|Tap| ENT((Fast ENTER)):::standard
        RS -->|Hold| AL((ACTION LAYER<br>Vim, Mods, Nav)):::layer
    end

    subgraph Left-Column Modifier Cascade
        direction LR
        P1[Physical Caps Lock]:::standard -->|Maps to| M1(SHIFT<br>Zero-stretch):::layer
        P2[Physical L-Shift]:::standard -->|Maps to| M2(CTRL<br>Comfort reach):::layer
        P3[Physical L-Ctrl]:::standard -->|Maps to| M3(CAPS LOCK<br>Cornered):::layer
    end

Key Highlights

  • Left Space (INPUT): Tap for space, hold for programming symbols ({, }, [, ], (, ), =, etc.) mapped directly on the home row.
  • Right Space (ACTION): Tap for space, hold for VIM navigation (I/J/K/L), word jumps, text edits (delete word, copy/paste, undo), and mouse emulation.
  • Center Key (ENTER): Fast thumb Enter without moving the right pinky off the home row.
  • Left-Column Shift: Caps Lock becomes Shift, Left Shift becomes Control, Left Ctrl becomes Caps Lock.
  • Dumb / Game Mode: A dedicated physical switch (or secondary firmware chord) to instantly switch to a standard ANSI layout for gaming or sharing.
  • Ambient Pomodoro LED: Hardware-level focus sprint indicator (25m focus / 5m rest) embedded beneath the center key.
  • Plug & Play: Powered by QMK firmware. No background software or drivers required.

Repository Structure

text
flow_75/
├── .gemini/             # Workspace rules, guidelines, and context
├── docs/                # Architectural guides, firmware instructions, and history
│   ├── 01_system_architecture.md      # Concept, hardware specs, and layers mental model
│   ├── 02_keymap_and_layers.md        # Exact keymap matrix, Input & Action logic
│   ├── 03_firmware_and_compilation.md # QMK environment setup and flashing instructions
│   └── CHANGELOG.md                   # Iteration history and bug fixes
├── firmware/
│   └── qmk/             # QMK firmware source, rules, config, and keymaps
├── hardware/            # Hardware design assets (KiCad schematics, CAD case models)
│   ├── pcb/
│   ├── cad/
│   └── keycaps/
├── tools/
│   └── simulator/       # Reserved for future browser keymap simulator
├── brainstorming/       # Initial ideation records and Six Hats debates
│   ├── ideation_memory_input.md
│   ├── ideation_memory_action.md
│   ├── six_hats_debate_input.md
│   ├── six_hats_debate_action.md
│   └── roadmap.md
└── README.md

Roadmap

Phase 0: Ideation & Concept Validation (In Progress)

  • Initial Brainstorming & Six Hats debate
  • Core Concept Definition (3-way split spacebar, Modifier cascade)
  • INPUT Layer Definition (Symbols & Operators mapping)
  • ACTION Layer Definition (Vim nav, text mutations, mouse emulation)
  • Base Layer Layout finalization (ANSI layout confirmed)
  • Finalize Architecture & Keymap Specification documentation

Phase 1: Firmware & Frankenstein Prototype (Completed)

  • Setup QMK Environment and scaffold flow_75 project
  • Draft Base Layer Matrix in C
  • Implement INPUT & ACTION Layers logic
  • Flash and validate on a commercial split-space board (Frankenstein prototype)
  • Initial tuning of Tap-Hold mechanics (TAPPING_TERM, PERMISSIVE_HOLD)

Phase 2: User Testing & Calibration

  • 2-week daily driving feedback loop
  • Timing optimization (zero space-lag vs false triggers)
  • Refine text mutation macros (e.g., delete line, undo/redo)

Phase 3: Hardware Engineering (PCB & MCU)

  • Component Selection (RP2040 MCU, Kailh hotswap sockets, ESD protection)
  • KiCad Schematics drafting (MCU, USB, Matrix, LED)
  • Custom Pomodoro LED circuit design
  • PCB Layout & Routing

Phase 4: Industrial Design & Enclosure

  • 75% unibody footprint definition (gasket mount)
  • CNC Aluminum Chassis CAD modeling (STEP/STL)
  • Custom side-printed keycap geometry and SVG legend art

Phase 5: Production & Launch

  • Order initial PCB and CNC prototype batch
  • Assembly & QA testing
  • Finalize Open Source release and build guides

Contributing

Flow 75 is an open-source project and we welcome contributions from the community! Whether you want to optimize the QMK firmware, tweak the layer maps, or contribute to the PCB design, please check out our Contributing Guidelines first.

Please note that this project is released with a Code of Conduct. By participating in this project you agree to abide by its terms.


License

Flow 75 uses a dual-licensing model:

  • Hardware designs: CERN Open Hardware Licence Version 2 - Permissive (CERN-OHL-P)
  • Firmware & Software: GNU General Public License v2.0 (GPL-2.0)

See the LICENSE file for full details.

Parts

214
QtyValueFootprintReferences
861N4148WDiode_SMD:D_SOD-123D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +70
12100nFCapacitor_SMD:C_0805_2012MetricC2, C3, C4, C5, C6, C7, C8, C9, C11, C13, C14, C16
31uFCapacitor_SMD:C_0805_2012MetricC1, C10, C12
210kResistor_SMD:R_0805_2012MetricR5, R8
215pFCapacitor_SMD:C_0805_2012MetricC17, C18
227Resistor_SMD:R_0805_2012MetricR3, R4
227RResistor_SMD:R_0805_2012MetricR6, R7
25.1kResistor_SMD:R_0805_2012MetricR1, R2
2SW_PushSW_SPST_B3U-1000PSW_BOOT, SW_RESET
1100MHzResistor_SMD:R_0805_2012MetricFB1
1100nFC_0805_2012MetricC19
110uFCapacitor_SMD:C_0805_2012MetricC15
112MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1
11MResistor_SMD:R_0805_2012MetricR9
11kR_0805_2012MetricR11
11kResistor_SMD:R_0805_2012MetricR10
1500mAFuse:Fuse_1206_3216MetricF1
1AP2112K-3.3Package_TO_SOT_SMD:SOT-23-5U1
1Conn_01x04Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ2
1RP2040Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mmU3
1SK6812MINILED_SMD:LED_SK6812MINI_PLCC4_3.5x3.5mm_P1.75mmLED1
1SW_R0C0MX_Alps_Hybrid:MXOnly-1U-HotswapSW1
1SW_R0C1MX_Alps_Hybrid:MXOnly-1U-HotswapSW2
1SW_R0C10MX_Alps_Hybrid:MXOnly-1U-HotswapSW11
1SW_R0C11MX_Alps_Hybrid:MXOnly-1U-HotswapSW12
1SW_R0C12MX_Alps_Hybrid:MXOnly-1U-HotswapSW13
1SW_R0C13MX_Alps_Hybrid:MXOnly-1U-HotswapSW14
1SW_R0C14MX_Alps_Hybrid:MXOnly-1U-HotswapSW15
1SW_R0C15MX_Alps_Hybrid:MXOnly-1U-HotswapSW16
1SW_R0C2MX_Alps_Hybrid:MXOnly-1U-HotswapSW3
1SW_R0C3MX_Alps_Hybrid:MXOnly-1U-HotswapSW4
1SW_R0C4MX_Alps_Hybrid:MXOnly-1U-HotswapSW5
1SW_R0C5MX_Alps_Hybrid:MXOnly-1U-HotswapSW6
1SW_R0C6MX_Alps_Hybrid:MXOnly-1U-HotswapSW7
1SW_R0C7MX_Alps_Hybrid:MXOnly-1U-HotswapSW8
1SW_R0C8MX_Alps_Hybrid:MXOnly-1U-HotswapSW9
1SW_R0C9MX_Alps_Hybrid:MXOnly-1U-HotswapSW10
1SW_R1C0MX_Alps_Hybrid:MXOnly-1U-HotswapSW17
1SW_R1C1MX_Alps_Hybrid:MXOnly-1U-HotswapSW18
1SW_R1C10MX_Alps_Hybrid:MXOnly-1U-HotswapSW27
1SW_R1C11MX_Alps_Hybrid:MXOnly-1U-HotswapSW28
1SW_R1C12MX_Alps_Hybrid:MXOnly-1U-HotswapSW29
1SW_R1C13MX_Alps_Hybrid:MXOnly-1U-HotswapSW30
1SW_R1C14MX_Alps_Hybrid:MXOnly-1U-HotswapSW31
1SW_R1C15MX_Alps_Hybrid:MXOnly-1U-HotswapSW32
1SW_R1C2MX_Alps_Hybrid:MXOnly-1U-HotswapSW19
1SW_R1C3MX_Alps_Hybrid:MXOnly-1U-HotswapSW20
1SW_R1C4MX_Alps_Hybrid:MXOnly-1U-HotswapSW21
1SW_R1C5MX_Alps_Hybrid:MXOnly-1U-HotswapSW22
1SW_R1C6MX_Alps_Hybrid:MXOnly-1U-HotswapSW23
1SW_R1C7MX_Alps_Hybrid:MXOnly-1U-HotswapSW24
1SW_R1C8MX_Alps_Hybrid:MXOnly-1U-HotswapSW25
1SW_R1C9MX_Alps_Hybrid:MXOnly-1U-HotswapSW26
1SW_R2C0MX_Alps_Hybrid:MXOnly-1U-HotswapSW33
1SW_R2C1MX_Alps_Hybrid:MXOnly-1U-HotswapSW34
1SW_R2C10MX_Alps_Hybrid:MXOnly-1U-HotswapSW43
1SW_R2C11MX_Alps_Hybrid:MXOnly-1U-HotswapSW44
1SW_R2C12MX_Alps_Hybrid:MXOnly-1U-HotswapSW45
1SW_R2C14MX_Alps_Hybrid:MXOnly-1U-HotswapSW46
1SW_R2C15MX_Alps_Hybrid:MXOnly-1U-HotswapSW47
1SW_R2C2MX_Alps_Hybrid:MXOnly-1U-HotswapSW35
1SW_R2C3MX_Alps_Hybrid:MXOnly-1U-HotswapSW36
1SW_R2C4MX_Alps_Hybrid:MXOnly-1U-HotswapSW37
1SW_R2C5MX_Alps_Hybrid:MXOnly-1U-HotswapSW38
1SW_R2C6MX_Alps_Hybrid:MXOnly-1U-HotswapSW39
1SW_R2C7MX_Alps_Hybrid:MXOnly-1U-HotswapSW40
1SW_R2C8MX_Alps_Hybrid:MXOnly-1U-HotswapSW41
1SW_R2C9MX_Alps_Hybrid:MXOnly-1U-HotswapSW42
1SW_R3C0MX_Alps_Hybrid:MXOnly-1U-HotswapSW48
1SW_R3C10MX_Alps_Hybrid:MXOnly-1U-HotswapSW57
1SW_R3C11MX_Alps_Hybrid:MXOnly-1U-HotswapSW58
1SW_R3C12MX_Alps_Hybrid:MXOnly-1U-HotswapSW59
1SW_R3C13MX_Alps_Hybrid:MXOnly-1U-HotswapSW60
1SW_R3C14MX_Alps_Hybrid:MXOnly-1U-HotswapSW61
1SW_R3C15MX_Alps_Hybrid:MXOnly-1U-HotswapSW62
1SW_R3C2MX_Alps_Hybrid:MXOnly-1U-HotswapSW49
1SW_R3C3MX_Alps_Hybrid:MXOnly-1U-HotswapSW50
1SW_R3C4MX_Alps_Hybrid:MXOnly-1U-HotswapSW51
1SW_R3C5MX_Alps_Hybrid:MXOnly-1U-HotswapSW52
1SW_R3C6MX_Alps_Hybrid:MXOnly-1U-HotswapSW53

The 184 most common of 214 parts.

Questions

How big is the Flow 75 PCB?

It measures 310 × 120 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Flow 75 use?

214 parts, built around the RP2040, AP2112K-3.3, 1N4148W and SK6812MINI-E. 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 Flow 75 KiCad files?

From the danigit/flow_75 repository on GitHub, at the commit this page was made from: the board is hardware/pcb/flow_75.kicad_pcb and its schematic hardware/pcb/flow_75.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Flow 75 design in my own project?

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

Similar boards

  • 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
  • 2 layers100 × 56.8 mmJoyKey, the printed circuit board in 3D

    JoyKey

    techy-robot/JoyKey

    A small macropad that simultaneously acts as game controller and an entertainment device.

    64 parts1CERN-OHL-S-2.0
  • 2 layers344.6 × 125.9 mmISOish87, the printed circuit board in 3D

    ISOish87

    seancaulfield/ISOish87

    h87 compatible keyboard PCB for my own preferred layout

    290 partsGPL-3.0
  • 2 layers344.6 × 117.8 mmISOish88e, the printed circuit board in 3D

    ISOish88e

    seancaulfield/ISOish88e

    Evo80 compatible keyboard PCB for my own preferred layout

    276 partsGPL-3.0
  • 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
  • 2 layers291.8 × 134.6 mmMegaXE keyboard, the printed circuit board in 3D

    MegaXE keyboard

    bleroy/3d-junkyard

    Random 3D models

    359 parts69
  • 2 layers226 × 92 mmChameleon v1 0, the printed circuit board in 3D

    Chameleon v1 0

    TweetyDaBird/Fat-Chameleon

    A Grid Ortho keyboard for BM40, JJ40/JJ50 cases inspired by Planck and Preonic

    205 parts14CC-BY-SA-4.0
  • 6 layers90 × 90 mmCodex micro wired revA route nognd, the printed circuit board in 3D

    Codex micro wired revA route nognd

    slopus/codex-keybored

    A 100% vibe-coded hardware build: Fusion 360, six-layer KiCad PCB, STM32 firmware, and live JLC factory handoff.

    97 parts10