

Normal-60
A keyboard generator tool
- Size
- 284.3 × 116.2 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 152
- Nets
- 105
- Pads
- 722
- Tracks, vias
- 1,421, 155
- Pours
- 4
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 29 Sep 2019
- Updated
- 10 Dec 2021
Overview
Normal-60 is an open-source printed circuit board by keyboardio, from the keyboardio/Keygen repository on GitHub. It is a 2-layer board of 284.3 × 116.2 mm with 152 parts on 105 nets, routed with 1,421 tracks and 155 vias.
It is built around the ATMEGA32U4-MU, V5.5MLA0603NH and PRTR5V0U2X. Its parts include 13 capacitors, 7 resistors, 1 IC, 1 diode and 1 connector. It belongs with the AVR (ATmega, ATtiny) boards of this library.
Main components
3ATMEGA32U4-MU
VQFN-44-EP(7x7)-40℃~+85℃ 10bit 16MHz 1KB 2.5KB 2.7V~5.5V 26 32KB 8 Bit AVR Built-in FLASH VQFN-44-EP(7x7) Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)V5.5MLA0603NH
06031.27nF@1MHz 100mJ 17.5V 30A 4V 5.5V 8.2V 0603 Varistors ROHSLittelfuseVaristorsPRTR5V0U2X
SOT-143-55℃~+125℃ 0.3pF、0.8pF 100W 10V、15V 5V 6.5V 6A 80nA ESD IEC 61000-4-2、IEC 61000-4-5、IEC 61000-4-4 Three channels Unidirectional SOT-143 ESD and Surge Protection (TVS/ESD) ROHSTECH PUBLICESD And Surge Protection (TVS/ESD)
README
READMESetting up:
- Install perl modules
- Check out git submodule
Perl Dependencies:
JSON::XS Moose
Non-perl Dependencies:
This tool currently builds KiCad 6.0 projects. That's not strictly necessary. If you need us to back down to 5.1, please say so.
There's a git submodule of 'kicad', which includes the keyboardio kicad footprints. Pull requests over there are welcome.
Usage:
perl layout.pl --usb=c --project=104-key --layout=kle-layouts/104.json cd 104-key kicad 104-key.pro
Notes:
It currently generates schematics and layouts assuming a ATMega32U4. The schematic has sheets for three different ways to wire things up: components-on-pcb, teensy 2.0++, arduino-micro. I know the pro micro is more popular in Japan and I'm happy to have that added as an option. It'd just need another schematic sheet in the template project and a footprint for adding it to the pcb. led support is a boolean option. Right now, LEDs are designed as dumb rgb pixels + an issi controller. the logic parts of the PCB don't get placed or connected to the switch and led matrix automatically. That's a much harder wiring problem. Instead, I hand-drew layouts for those and place them off the side of the PCB for you to drag into place and wire up. I have produced two PCBs based on earlier versions of this tool with some manual rework. They did -work-. But results are not guaranteed.
-Jesse jesse@keyboard.io
Parts
152| Qty | Value | Footprint | References |
|---|---|---|---|
| 61 | 1N4148 | D_SOD-123 | D_SW_1, D_SW_2, D_SW_10, D_SW_11, D_SW_12, D_SW_13, D_SW_14, D_SW_15, D_SW_16, D_SW_17, D_SW_18, D_SW_19, D_SW_20, D_SW_21, D_SW_22, D_SW_23 +45 |
| 6 | 1uF 10V X5R 10% | Capacitor_SMD:C_0603_1608Metric | C1, C2, C3, C4, C6, C8 |
| 2 | 22R | Resistor_SMD:R_0603_1608Metric | R4, R5 |
| 2 | 27pF | Capacitor_SMD:C_0603_1608Metric | C5, C7 |
| 2 | 27pF DNP | Capacitor_SMD:C_0603_1608Metric | C12, C13 |
| 2 | 4.7uF 16V X7R | Capacitor_SMD:C_0805_2012Metric | C9, C10 |
| 2 | 5.1K | Resistor_SMD:R_0603_1608Metric | R6, R7 |
| 2 | Alt | MX-KailhClip-1.00u-large-pads | SW_56, SW_58 |
| 2 | Ctrl | MX-KailhClip-1.00u-large-pads | SW_54, SW_61 |
| 2 | Shift | MX-KailhClip-1.00u-large-pads | SW_42, SW_53 |
| 2 | V5.5MLA0603NH | Resistor_SMD:R_0603_1608Metric | RV1, RV2 |
| 2 | Win | MX-KailhClip-1.00u-large-pads | SW_55, SW_59 |
| 1 | ! / 1 | MX-KailhClip-1.00u-large-pads | SW_2 |
| 1 | " / ' | MX-KailhClip-1.00u-large-pads | SW_40 |
| 1 | # / 3 | MX-KailhClip-1.00u-large-pads | SW_4 |
| 1 | $ / 4 | MX-KailhClip-1.00u-large-pads | SW_5 |
| 1 | % / 5 | MX-KailhClip-1.00u-large-pads | SW_6 |
| 1 | & / 7 | MX-KailhClip-1.00u-large-pads | SW_8 |
| 1 | ( / 9 | MX-KailhClip-1.00u-large-pads | SW_10 |
| 1 | ) / 0 | MX-KailhClip-1.00u-large-pads | SW_11 |
| 1 | * / 8 | MX-KailhClip-1.00u-large-pads | SW_9 |
| 1 | + / = | MX-KailhClip-1.00u-large-pads | SW_13 |
| 1 | 10K | Resistor_SMD:R_0603_1608Metric | R1 |
| 1 | 10nF 100V | Capacitor_SMD:C_0805_2012Metric | C11 |
| 1 | 16Mhz-18pF | Crystal:Crystal_SMD_SeikoEpson_TSX3225-4Pin_3.2x2.5mm | X1 |
| 1 | 1N4148 | Diode_SMD:D_SOD-123 | D2 |
| 1 | 330R 5% | Resistor_SMD:R_0603_1608Metric | R2 |
| 1 | 500K | Resistor_SMD:R_0603_1608Metric | R3 |
| 1 | : / ; | MX-KailhClip-1.00u-large-pads | SW_39 |
| 1 | < / , | MX-KailhClip-1.00u-large-pads | SW_50 |
| 1 | > / . | MX-KailhClip-1.00u-large-pads | SW_51 |
| 1 | ? / / | MX-KailhClip-1.00u-large-pads | SW_52 |
| 1 | @ / 2 | MX-KailhClip-1.00u-large-pads | SW_3 |
| 1 | A | MX-KailhClip-1.00u-large-pads | SW_30 |
| 1 | ATMEGA32U4-MU | Package_DFN_QFN:QFN-44-1EP_7x7mm_P0.5mm_EP5.2x5.2mm_ThermalVias | U1 |
| 1 | B | MX-KailhClip-1.00u-large-pads | SW_47 |
| 1 | BLM31PG391SN1L | Resistor_SMD:R_1206_3216Metric | L1 |
| 1 | Backspace | MX-KailhClip-1.00u-large-pads | SW_14 |
| 1 | C | MX-KailhClip-1.00u-large-pads | SW_45 |
| 1 | Caps Lock | MX-KailhClip-1.00u-large-pads | SW_29 |
| 1 | D | MX-KailhClip-1.00u-large-pads | SW_32 |
| 1 | E | MX-KailhClip-1.00u-large-pads | SW_18 |
| 1 | Enter | MX-KailhClip-1.00u-large-pads | SW_41 |
| 1 | F | MX-KailhClip-1.00u-large-pads | SW_33 |
| 1 | G | MX-KailhClip-1.00u-large-pads | SW_34 |
| 1 | H | MX-KailhClip-1.00u-large-pads | SW_35 |
| 1 | I | MX-KailhClip-1.00u-large-pads | SW_23 |
| 1 | ICSP | Keyboardio:Model_01_ICSP_cutout_pins | J1 |
| 1 | J | MX-KailhClip-1.00u-large-pads | SW_36 |
| 1 | K | MX-KailhClip-1.00u-large-pads | SW_37 |
| 1 | L | MX-KailhClip-1.00u-large-pads | SW_38 |
| 1 | M | MX-KailhClip-1.00u-large-pads | SW_49 |
| 1 | Menu | MX-KailhClip-1.00u-large-pads | SW_60 |
| 1 | N | MX-KailhClip-1.00u-large-pads | SW_48 |
| 1 | O | MX-KailhClip-1.00u-large-pads | SW_24 |
| 1 | P | MX-KailhClip-1.00u-large-pads | SW_25 |
| 1 | PRTR5V0U2X | Keyboardio:PRTR5V0U2X | ESD1 |
| 1 | Q | MX-KailhClip-1.00u-large-pads | SW_16 |
| 1 | R | MX-KailhClip-1.00u-large-pads | SW_19 |
| 1 | S | MX-KailhClip-1.00u-large-pads | SW_31 |
| 1 | SW_PUSH | Button_Switch_SMD:SW_SPST_TL3342 | SW1 |
| 1 | T | MX-KailhClip-1.00u-large-pads | SW_20 |
| 1 | Tab | MX-KailhClip-1.00u-large-pads | SW_15 |
| 1 | U | MX-KailhClip-1.00u-large-pads | SW_22 |
| 1 | USB_C_Receptacle | Connector_USB:USB_C_Receptacle_GCT_USB4085 | USB1 |
| 1 | V | MX-KailhClip-1.00u-large-pads | SW_46 |
| 1 | W | MX-KailhClip-1.00u-large-pads | SW_17 |
| 1 | X | MX-KailhClip-1.00u-large-pads | SW_44 |
| 1 | Y | MX-KailhClip-1.00u-large-pads | SW_21 |
| 1 | Z | MX-KailhClip-1.00u-large-pads | SW_43 |
| 1 | ^ / 6 | MX-KailhClip-1.00u-large-pads | SW_7 |
| 1 | _ / - | MX-KailhClip-1.00u-large-pads | SW_12 |
| 1 | { / [ | MX-KailhClip-1.00u-large-pads | SW_26 |
| 1 | | / \ | MX-KailhClip-1.00u-large-pads | SW_28 |
| 1 | } / ] | MX-KailhClip-1.00u-large-pads | SW_27 |
| 1 | ~ | MX-KailhClip-1.00u-large-pads | SW_57 |
| 1 | ~ / ` | MX-KailhClip-1.00u-large-pads | SW_1 |
Questions
How big is the Normal-60 PCB?
It measures 284.3 × 116.2 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Normal-60 use?
152 parts, built around the ATMEGA32U4-MU, V5.5MLA0603NH and PRTR5V0U2X. 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 Normal-60 KiCad files?
From the keyboardio/Keygen repository on GitHub, at the commit this page was made from: the board is normal-60/normal-60.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Normal-60 design in my own project?
Its repository states no licence, so its author keeps all rights: ask keyboardio before reusing the design.
More from keyboardio/Keygen
3- 2 layers248.6 × 5.3 mm

- 2 layers

- 2 layers14 × 5.3 mm

Similar boards
- 2 layers229.6 × 158.2 mm

Space banana
obra/space-banana
https://twitter.com/erinbeess/status/1503424797224677376?s=20&t=_vethJano1TXJZ3IsSkWwQ
129 parts2 - 2 layers171.5 × 152.4 mm

- 2 layers458.2 × 116.3 mm

- 4 layers108.2 × 64.3 mm

Luxmètre
Korotaa/luxmetter-design_HW-PCB_SW
Le module est un End Device LoRa. C'est un dispositif IoT permettant de mesurer le niveau de luminosité grace au capteur TSL2571 et transmettre ces données à un serveur LoRaWAN (NetWork Serveur + Application Serveur) .
110 parts1 - 2 layers344 × 124.5 mm

- 2 layers285 × 95.1 mm

- 2 layers285 × 95.1 mm

- 2 layers285.7 × 95.5 mm

Jones
jpskenn/Jones
Row-staggered 60% keyboard with gapless R2-R3 row. GH60 case compatible.
249 parts12MIT