Skip to the content
PCBKitNew board
2 layers132.2 × 144.1 mmHexKeyboard, the printed circuit board in 3D

A 25 x 25 keypad with a LED display and many features.

Size
132.2 × 144.1 mm
Copper layers
2
Thickness
1.6 mm
Parts
83
Nets
85
Pads
509
Tracks, vias
1,022, 58
Pours
1
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
25 Apr 2024
Updated
31 May 2024

Overview

HexKeyboard is an open-source printed circuit board by hansliss, from the hansliss/HexKeyboard repository on GitHub, published under the BSD-2-Clause licence. It is a 2-layer board of 132.2 × 144.1 mm with 83 parts on 85 nets, routed with 1,022 tracks and 58 vias.

It is built around the ATMEGA32U4-AU, 74LVC125AD and MAX7219M, with the AMS1117-3.3 and AT24CS64-XHM-B among its other parts. Its parts include 27 diodes, 25 switches, 7 capacitors, 7 resistors and 5 ICs. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

5

README

README.md

HexKeyboard

A 25 x 25 keypad with a LED display and many features.

HexKeyboard_1 HexKeyboard_1

  • The matrix rows are on pins 4, 12, 6, 7, 23
  • The matrix columns are on pins 22, 21, 20, 19, 18

The SD card holder is connected to SPI, plus

  • Card Detect = PB0 / pin 17
  • Chip Enable = PB4 / pin 8

Note that CD is connected to the RXLED pin, so it will probably collide with serial data.

The display is connected like this:

  • CLK = 9
  • CS = 10
  • DIN = 11

This requires a local max7219.h with the defines modified. Just copy

Serial LED pins

If you want to eliminate problems with the two LED pins (see above), you can always just disable the entire functionality, by modifying USBCore.cpp (probably found here: C:\Users\Yourname\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino).

Just comment out everything to do with RXLED and TXLED, and the file will be recompiled upon the next build.

Misc

The SPI pins for the MAX7219 display aren't actually SPI pins. Still, the max7219 library just bit-bangs the protocol so it doesn't really matter.

If you add an ESP-01/ESP-01S (with the Espressif "AT" firmware, for instance), set it to use 9600 baud on the serial interface. The default 115200 baud seems a bit too fast.

If you print the case, and want a LED indicator for the ESP-01, print out the included wifiSign model on a resin printer using transparent resin, then drill a 3.5mm hole roughly 3.7mm below the lower edge of the display and 13mm to the right of the right edge of the display, insert the transparent plug, and then pour black resin carefully around the symbol (preferably using a syringe and microscope) and cure it with a UV light.

Parts

83
QtyValueFootprintReferences
25DDiode_SMD:D_0603_1608MetricD1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +9
6MountingHole_PadMountingHole:MountingHole_3.2mm_M3_Pad_ViaH1, H2, H3, H4, H5, H6
3100nFCapacitor_SMD:C_0603_1608MetricC1, C2, C4
33k3Resistor_SMD:R_0603_1608MetricR1, R2, R3
222Resistor_SMD:R_0603_1608MetricR4, R5
25k6Resistor_SMD:R_0603_1608MetricR6, R7
29pFCapacitor_SMD:C_0603_1608MetricC5, C6
2BZX384-xxxDiode_SMD:D_SOD-323D26, D27
110uF/10VCapacitor_SMD:C_0805_2012MetricC3
116MHzCrystal:Crystal_SMD_2520-4Pin_2.5x2.0mmY1
11uFCapacitor_SMD:C_0603_1608MetricC7
174LVC125Package_SO:TSSOP-14_4.4x5mm_P0.65mmU2
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U1
1AT24CS64-XHMSocket:DIP_Socket-14_W4.3_W5.08_W7.62_W10.16_W10.9_3M_214-3339-00-0602JU4
1ATmega32U4-AUPackage_QFP:TQFP-44_10x10mm_P0.8mmU3
1Conn_01x04Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ2
1Conn_02x04_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_VerticalJ3
1Conn_02x04_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x04_P2.54mm_VerticalJ4
1MAX7219MyFootprints:Display_x8_MAX7219U5
1Micro_SD_CardMicroSD:GCT_MEM2075J1
1SW_1keyswitches:Kailh_socket_MX_optional_compatibleSW1
1SW_10keyswitches:Kailh_socket_MX_optional_compatibleSW10
1SW_11keyswitches:Kailh_socket_MX_optional_compatibleSW11
1SW_12keyswitches:Kailh_socket_MX_optional_compatibleSW12
1SW_13keyswitches:Kailh_socket_MX_optional_compatibleSW13
1SW_14keyswitches:Kailh_socket_MX_optional_compatibleSW14
1SW_15keyswitches:Kailh_socket_MX_optional_compatibleSW15
1SW_16keyswitches:Kailh_socket_MX_optional_compatibleSW16
1SW_17keyswitches:Kailh_socket_MX_optional_compatibleSW17
1SW_18keyswitches:Kailh_socket_MX_optional_compatibleSW18
1SW_19keyswitches:Kailh_socket_MX_optional_compatibleSW19
1SW_2keyswitches:Kailh_socket_MX_optional_compatibleSW2
1SW_20keyswitches:Kailh_socket_MX_optional_compatibleSW20
1SW_21keyswitches:Kailh_socket_MX_optional_compatibleSW21
1SW_22keyswitches:Kailh_socket_MX_optional_compatibleSW22
1SW_23keyswitches:Kailh_socket_MX_optional_compatibleSW23
1SW_24keyswitches:Kailh_socket_MX_optional_compatibleSW24
1SW_25keyswitches:Kailh_socket_MX_optional_compatibleSW25
1SW_3keyswitches:Kailh_socket_MX_optional_compatibleSW3
1SW_4keyswitches:Kailh_socket_MX_optional_compatibleSW4
1SW_5keyswitches:Kailh_socket_MX_optional_compatibleSW5
1SW_6keyswitches:Kailh_socket_MX_optional_compatibleSW6
1SW_7keyswitches:Kailh_socket_MX_optional_compatibleSW7
1SW_8keyswitches:Kailh_socket_MX_optional_compatibleSW8
1SW_9keyswitches:Kailh_socket_MX_optional_compatibleSW9
1USB_AConnector_USB:USB_C_Receptacle_G-Switch_GT-USB-7010ASVJ5

Questions

How big is the HexKeyboard PCB?

It measures 132.2 × 144.1 mm and has 2 copper layers, 1.6 mm thick.

What parts does the HexKeyboard use?

83 parts, built around the ATMEGA32U4-AU, 74LVC125AD, MAX7219M and AMS1117-3.3. 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 HexKeyboard KiCad files?

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

Can I use the HexKeyboard design in my own project?

Its repository publishes it under the BSD-2-Clause 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 layers56 × 78 mmK1921VG015 board, the printed circuit board in 3D

    K1921VG015 board

    LeikoDmitry/k1921vg015

    Отладочная плата микроконтроллера K1921VG015

    64 parts1MIT
  • 2 layers52 × 25.4 mmUINIO Logic-24MHz, the printed circuit board in 3D

    UINIO Logic-24MHz

    uinika/UINIO-Logic-24MHz

    the 24MHz sampling rate Logic Analyzer base on CY7C68013A.

    55 parts10
  • 2 layers51.8 × 51.8 mmI2c multi, the printed circuit board in 3D

    I2c multi

    Sluggcat/Stage_TerraForma

    31 parts
  • 2 layers40.3 × 75.7 mmMusiq player hardware, the printed circuit board in 3D

    Musiq player hardware

    bytecod3/MusiQ-Player

    An MP3 player clone built on ESP32

    64 parts7
  • 2 layers29.5 × 22 mmCE Makerverse MicroSD Card Adapter, the printed circuit board in 3D

    CE Makerverse MicroSD Card Adapter

    CoreElectronics/CE-Makerverse-MicroSD-Card-Adapter

    This is the repo for the Core Electronics Makerverse™ MicroSD Card Adapter.

    31 parts5
  • 2 layers32.4 × 25.5 mmUSD Turbo, the printed circuit board in 3D

    USD Turbo

    68ec020/uSD-Turbo

    TurboMMC uSD card interface for the BBC Micro and MMFS

    15 parts1GPL-2.0
  • 2 layers85 × 56 mmEconet AtoMMC, the printed circuit board in 3D

    Econet AtoMMC

    kgl2001/Atom_Econet_AtoMMC

    Combined AtoMMC & Econet interface board for Acorn Atom

    40 parts1CC-BY-SA-4.0