Skip to the content
PCBKitNew board
2 layers86.4 × 177.8 mmKeyboard pcb, the printed circuit board in 3D

Keyboard pcb

eshazen/hex-calc

Hex/Binary/Decimal calculator inspired by HP-16C

Size
86.4 × 177.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
72
Nets
60
Pads
286
Tracks, vias
443, 49
Pours
2
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
4 Apr 2023
Updated
30 May 2025

Overview

Keyboard pcb is an open-source printed circuit board by eshazen, from the eshazen/hex-calc repository on GitHub. It is a 2-layer board of 86.4 × 177.8 mm with 72 parts on 60 nets, routed with 443 tracks and 49 vias.

It is built around the ATMEGA328-PU. Its parts include 30 diodes, 28 switches, 5 resistors, 3 capacitors and 3 ICs. It belongs with the keyboards and input boards and the AVR (ATmega, ATtiny) boards of this library.

Main components

1

README

README.md

hex-calc

Simple Hex/Binary/Decimal calculator inspired by HP-16C and TI Programmer.

front view large image

Features:

  • Hex / Decimal / Binary display in signed or unsigned mode
    • Entire stack for 8/16 bits, two levels for 32 bits
  • four-function two-compliment or unsigned arithmetic
  • 8 / 16 / 32 / 64 bit word size
  • four-level RPN stack with roll / swap

Runs on ATMeg328 at 8MHz. Power is 4xAA batteries regulated to 5V. Industry-standard 16x2 backlit LCD. Three LEDs:

  • Power
  • f key (function/shift) active
  • signed display mode

Code in src/calc_hw.

KiCAD design in keyboard-pcb.
Schematic: keyboard-pcb.pdf

See https://github.com/eshazen/calc-demo-xwin for an X-windows app written in C which illustrates the general idea.

Enhancements

Thinking about some added features to support fractional arithmetic for woodworking. Display options to round to nearest fraction (1/4, 1/8, 1/16, 1/32, 1/64) and switch between decimal inch, fraction inch and decimal mm. Ft/inches another useful display option.

This would involve either floating point or scaled integer math. For this application the range is pretty limited, maybe 8 ft (~100 in) max.

Base units could be 2.54e-6 in (1um). 100 inches would require ~25 bits.

keyboard layout

Parts

72
QtyValueFootprintReferences
271N914Diode_THT:D_DO-35_SOD27_P7.62mm_HorizontalD10, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23, D24, D25, D26 +11
26SW_PushButton_Switch_Keyboard:SW_Cherry_MX_1.00u_PCBSW1, SW2, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW20, SW21, SW22, SW23 +10
4470Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1, R2, R3, R5
3LEDLED_THT:LED_D3.0mmD1, D2, D11
20.1uFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC1, C3
110kPotentiometer_THT:Potentiometer_Bourns_3266P_HorizontalRV1
110kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR4
110uFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC2
14xAAAAAA_batt_holder:Keystone_4xAAA_2481BT1
1ATmega328-PPackage_DIP:DIP-28_W7.62mmU2
1Conn_02x03_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ1
1R1500HPackage_TO_SOT_SMD:SOT-89-5_HandsolderingU1
1RC1602ADisplay:WC1602AU3
1SW_PushButton_Switch_Keyboard:SW_Cherry_MX_2.00u_PCBSW28
1SW_SPSTmy_switch:ANT11TFHQE_switchSW5

Questions

How big is the Keyboard pcb PCB?

It measures 86.4 × 177.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Keyboard pcb use?

72 parts, built around the ATMEGA328-PU. 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 pcb KiCad files?

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

Can I use the Keyboard pcb design in my own project?

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

Similar boards

  • 2 layers104.9 × 75.2 mmHandipi kb, the printed circuit board in 3D

    Handipi kb

    brickbots/HandiPi

    Handheld RPI4 based computer with keyboard and display

    95 parts814MIT
  • 2 layers228 × 98 mmPlaid, the printed circuit board in 3D

    Plaid

    hsgw/plaid

    12x4 ortholinear usb keyboard made by Through Hole components ONLY.

    139 parts779MIT
  • 2 layers94.6 × 46.1 mmHeaterMeterPI, the printed circuit board in 3D

    HeaterMeterPI

    CapnBry/HeaterMeter

    HeaterMeter and LinkMeter Arduino BBQ Controller

    66 parts557MIT
  • 2 layers50 × 50 mmAvrcraft poed, the printed circuit board in 3D

    Avrcraft poed

    cnlohr/avrcraft

    Minecraft server optimized for 8-bit devices.

    58 parts471
  • 2 layers284.7 × 94.2 mmLumberjack, the printed circuit board in 3D

    Lumberjack

    peej/lumberjack-keyboard

    5x12 ortholinear through-hole component keyboard PCB for standard 60% cases

    165 parts403MIT
  • 2 layers132.1 × 45.7 mmIPoS, the printed circuit board in 3D

    IPoS

    peterheinrich/InternetOverSpaghetti

    Transmitting IP packages over a pair of spaghetti thus demonstrating how media independent IP really is.

    42 parts342
  • 2 layers63.3 × 57.2 mmRam Tester, the printed circuit board in 3D

    Ram Tester

    tops4u/Ram-Tester

    Ram Tester for vintage CBM Computer RAM Chips

    42 parts118
  • 2 layers285 × 117 mmTartan, the printed circuit board in 3D

    Tartan

    hsgw/tartan

    60% keyboard made by through-hole parts only

    171 parts98