Skip to the content
PCBKitNew board
2 layers264.8 × 109.2 mmKeyboard, the printed circuit board in 3D

Why are the Space and Tab keys so big? Completely unnecessary.

Size
264.8 × 109.2 mm
Copper layers
2
Thickness
1.6 mm
Parts
108
Nets
79
Pads
603
Tracks, vias
376, 81
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
18 Apr 2026
Updated
25 Jun 2026

Overview

Keyboard is an open-source printed circuit board by DiScarlet, from the DiScarlet/Keyboard repository on GitHub. It is a 2-layer board of 264.8 × 109.2 mm with 108 parts on 79 nets, routed with 376 tracks and 81 vias.

Its parts include 52 diodes and 52 switches. It belongs with the keyboards and input boards and the ESP32 boards of this library.

README

README.md

Duck Keyboard

Why are the Space and Tab keys so big? Completely unnecessary.

We are not accountants. Why should some keys get more space than others?

We demand equality. Equality and ducks.

52 keys. Zero keycap inequality.

Ducks, palm trees, and pure summer vibes. Tactile. Compact.

And yes — it quacks when you press it.

Built for minimalists who still want to have fun.

Features

  • 52-key compact layout
  • Uniform key sizes with no oversized Space or Tab keys
  • Tactile typing experience
  • Custom duck-themed design
  • Compact footprint for minimalist setups
  • Integrated sound effects: every keypress quacks

Design Philosophy

Most keyboards dedicate excessive space to a handful of keys while the rest compete for room.

The Duck Keyboard rejects keycap inequality. Every key deserves equal treatment.

Zine

Zine

CAD Model and Case

The keyboard case uses Gasket Mounting and was designed to complement the compact layout while maintaining a clean, minimalist appearance.

| CAD 1 | CAD 2 |

| CAD 3 | CAD 4 |

Electronics

Schematic

The keyboard electronics are based on a custom schematic designed usinf KiCAD.

Duck Keyboard electronic schematic

PCB

The custom PCB uses ESP32 Feather.

PCB layout

PCB

PCB

3D PCB View

3D render of the assembled Duck Keyboard PCB

Assembly Instructios

  1. Flash the ESP32 Feather with the firmware.
  2. Solder the hot-swap sockets and the ESP32 Feather to the PCB.
  3. Install the switches into the hot-swap sockets.
  4. 3D print the top case, bottom case, and keycaps.
  5. Place the PCB assembly into the case and secure it using M2 screws.
  6. Install the keycaps onto the switches.
  7. 3D print the decorative duck and palm tree elements.
  8. Attach the decorations to the designated area of the top case using instant glue (cyanoacrylate).
  9. (Optional) Print the angle-of-attack wedge to tilt the keyboard toward the user for a more comfortable typing position.

File Structure

The project layout is:

  • BoM.csv
  • README.md
  • CAD_Fusion/
    • ESP32-WROOM32-DEVBOARD_DIMENTIONS.f3d
    • Downloaded/
    • FullAssembly/
    • PCB/
    • SeparateElements/
  • Docs/
    • ESP32HUZZAH32.txt
    • keyboard-layout.json
    • Links_to_parts.txt
  • Hardware/
    • keyboard.kicad_sch
    • keyboard.kicad_pcb
    • keyboard.kicad_pro
    • keyboard.kicad_prl
    • keyboard-backups/
    • Libraries/
  • Images/
    • CAD/
    • PCB/
  • macropad/
    • Firmware/
    • kicad_care_package/
    • kicad_macropad_project/
  • Symbols/

Firmware

Refer to Firmware ReadMe

Parts

108
QtyValueFootprintReferences
52DDiode_SMD:D_SOD-123D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +36
52SW_PushPCM_marbastlib-choc:SW_choc_v1_HS_CPG135001S30_1uSW1, SW2, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW20, SW21, SW22, SW23 +36
3MountingHoleMountingHole:MountingHole_2.1mmH1, H2, H3
1Adafruit_Feather_HUZZAH32_ESP32Module:Adafruit_FeatherA1

Questions

How big is the Keyboard PCB?

It measures 264.8 × 109.2 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Keyboard use?

108 parts. 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 Keyboard KiCad files?

From the DiScarlet/Keyboard repository on GitHub, at the commit this page was made from: the board is Hardware/keyboard.kicad_pcb and its schematic Hardware/keyboard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Keyboard design in my own project?

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

Similar boards

  • 2 layers89.2 × 82.6 mmDesktop 50 Pin TopConn, the printed circuit board in 3D

    Desktop 50 Pin TopConn

    BlueSCSI/BlueSCSI-v2

    BlueSCSI v2/Ultra - an open source, open hardware, SCSI emulator using the Pi Pico PR2040 and Pico 2 RP2350

    108 parts459GPL-3.0
  • 2 layers312 × 140 mmTsynth2 Rev1.3, the printed circuit board in 3D

    Tsynth2 Rev1.3

    Electrotechnique/TSynth-Teensy4.1

    TSynth for Teensy 4.1

    108 parts182
  • 2 layers99.1 × 90.7 mmBgkeeb, the printed circuit board in 3D

    Bgkeeb

    sadekbaroudi/bgkeeb

    This is a reversible 100mm x 100mm pcb with support for mx or choc switches (no hotswap), per key led, rotary encoders, and exposes the SDA/SCL/GND/VCC lines in the form of the pimoroni trackball pins (meaning you can…

    108 parts108
  • 2 layers165 × 113 mmMask-0.0.0, the printed circuit board in 3D

    Mask-0.0.0

    marcoster/mask

    MArco's Split Keyboard

    108 parts44MPL-2.0
  • 2 layers262 × 113.9 mmQuacken, the printed circuit board in 3D

    Quacken

    Nuclear-Squid/Quacken

    Libre, ergonomic, polymorphic: a single PCB for many possible layouts.

    108 parts38GPL-3.0
  • 2 layers87 × 87 mmCn tester panel, the printed circuit board in 3D

    Cn tester panel

    aroum/cn_tester

    c!n tester is a hardware and software system designed for testing ProMicro-like microcontrollers.

    108 parts37MIT
  • 2 layers161.5 × 106 mmWaccaProtocolTranslator, the printed circuit board in 3D

    WaccaProtocolTranslator

    FizzyApple12/Waccon

    A repository for all of the files in my design for an open-source touch ring controller.

    108 parts33
  • 2 layers258.2 × 96.8 mmNarfkb, the printed circuit board in 3D

    Narfkb

    sebastian-stumpf/narfkb

    rp2040 powered split keyboard with rotary encoders and 6mm tactile buttons

    108 parts29MIT