Skip to the content
PCBKitNew board
2 layers149.8 × 96.3 mmSnowflake, the printed circuit board in 3D

A weird, tightly spaced split keyboard

Size
149.8 × 96.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
114
Nets
78
Pads
430
Tracks, vias
956, 117
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
19 Jun 2021
Updated
19 Jun 2021

Overview

Snowflake is an open-source printed circuit board by kbranch, from the kbranch/snowflake_keyboard repository on GitHub, published under the MIT licence. It is a 2-layer board of 149.8 × 96.3 mm with 114 parts on 78 nets, routed with 956 tracks and 117 vias.

It is built around the ATMEGA32U4RC-AU and SK6805E-J. Its parts include 36 diodes, 14 capacitors, 5 resistors, 3 ICs and 1 switch. It belongs with the keyboards and input boards and the AVR (ATmega, ATtiny) boards of this library.

Main components

2

README

README.md

Snowflake Keyboard

Overview Image

This is a weird, tightly spaced split keyboard that I designed to be very specific to my needs. It uses 17x16 mm key spacing rather than the standard 19x19 mm (inspired by this post). The odd keys on the outside bottom corners are meant to be pressed with the pinky's knuckle rather than a fingertip. I haven't included every detail necessary to build the whole keyboard since it's so specific to my needs, but I'm happy to share and/or answer questions if somebody is interested in more detail for some reason.

The original CAD files are public on OnShape: Case and Keycaps. Generating the keycap legends is a pretty manual and sometimes fiddly process. I believe I included copies of all of the STLs I used, but I may have forgotten a few. 3mf files are included for the keycaps and legends, which should load into PrusaSlicer with all models in their correct quantities and print settings ready to go for a Prusa i3 MK3S.

All 3D printed parts are designed to be printed without support. I used manual mid-print color changes to embed the LED diffuser pieces into the case and for the keycap legends. M2 screws and nuts hold the PCB and plate to the case, and M3 screws and nuts hold the case halves and palm rests together. Little o-rings sit between the plate and case.

I used USB-C for both the actual USB connector and the board to board connection. I repurposed some USB-A to USB-C adapters to use as panel mount USB-C connectors. I ended up needing to grind the fronts down a bit to allow for cables to snap in fully through the case thickness.

The referenced QMK version includes a small tweak to allow the brightness of the indicator LEDs to follow the regular LED animation brightness. The LEDs are set up to indicate the active layer and the status of num, caps and scroll lock - they're not intended for flashy animations.

Inside Image

Parts

114
QtyValueFootprintReferences
32DDiode_SMD:D_SOD-123D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +16
32MX-NoLEDkeyswitches:Kailh_socket_MXMX1, MX2, MX10, MX11, MX12, MX13, MX14, MX15, MX16, MX17, MX18, MX19, MX20, MX21, MX22, MX23 +16
90.1ufCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC2, C3, C4, C5, C6, C10, C11, C12, C13
8, , , , , , ,
5MountingHoleMountingHole:MountingHole_2.2mm_M2H1, H2, H3, H4, H5
4SK6805LED_SMD:LED_SK6805_PLCC4_2.4x2.7mm_P1.3mmD33, D34, D35, D36
4SolderJumperJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmSJ1, SJ2, SJ3, SJ4
2 footprints:TPD2E2U06DCKRU2, U3
210kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR3, R4
210ufCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC1, C14
222Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR1, R2
222pfCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC7, C8
116MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mm_HandSolderingY1
11ufCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC9
1470Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR5
1500maFuse:Fuse_0805_2012Metric_CastellatedF1
1ATmega32U4RC-AUPackage_QFP:TQFP-44_10x10mm_P0.8mmU1
1AVR-ISP-6Connector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalISP
1LEDConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_HorizontalLED_OPT1
1SPLITConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_HorizontalSPLIT1
1SW_PushButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKSW1
1USBConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_HorizontalUSB1

Questions

How big is the Snowflake PCB?

It measures 149.8 × 96.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Snowflake use?

114 parts, built around the ATMEGA32U4RC-AU and SK6805E-J. 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 Snowflake KiCad files?

From the kbranch/snowflake_keyboard repository on GitHub, at the commit this page was made from: the board is pcb_files/snowflake.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Snowflake 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

  • 2 layers50 × 100 mmPSU PCB, the printed circuit board in 3D

    PSU PCB

    ThomasVDD/SmartSupplyMini

    118 parts16
  • 2 layers199.5 × 134.4 mmA500MiniKeyBoard, the printed circuit board in 3D

    A500MiniKeyBoard

    ea4gge/A500Mini-Internal-Functional-Keyboard

    This is the Ongoing project of the A500Mini internal functional keyboard based in 32U4 processor (Arduino leonardo, for example).

    170 parts7GPL-3.0
  • 4 layers149.2 × 113.9 mmZ80, the printed circuit board in 3D

    Z80

    tristanvandeweg/z80

    A z80 based computer, designed from scratch

    128 parts4GPL-2.0
  • 2 layers79.4 × 115.1 mmNumPad, the printed circuit board in 3D

    NumPad

    Marco-Antonio-Mares-Mejia/Proyecto-NumPad

    Proyecto de diseño de un pad numérico simple.

    50 parts
  • 2 layers69.6 × 80.4 mmUltrasonic localization, the printed circuit board in 3D

    Ultrasonic localization

    yycho0108/Eclectronics-Project-3

    Project 3 : Indoor Localization System for ENGR3430: Eclectronics

    212 parts
  • 2 layers95 × 95 mmPhotoSensors, the printed circuit board in 3D

    PhotoSensors

    ParadigmHyperloop/electrical

    All schematics and layouts in KiCad, plus some simulations

    118 parts11
  • 4 layers100 × 100 mmSolar mppt1, the printed circuit board in 3D

    Solar mppt1

    reivax-boucoi/PCB_Kicad

    Repo for all my home projects involving PCBs developped with Kicad

    154 parts1
  • 2 layersA500MiniKeyBoard, the printed circuit board in 3D

    A500MiniKeyBoard

    kitspace-test-repos/kicad6-file-collection

    105 partsMIT