hide-key / kleeb

Collection of Kicad 6.0 symbols, footprints and 3D models useful in keyboard creation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Kleeb

This is a collection of the Kicad symbols, footprints and 3D models useful in keyboard creation other than normal mechanical switches and the ones included in Kicad's standard library, all in 6.0 format. I didn't create all of them, and some come from either other people on Discord, or from other online resources that isn't in a Git tree. Putting them in a centralized place means it's easier for people to use, distribute*, and compare, and changes can be made in a clearer way. I'll try to list the sources down below, but due to the nature of the sources they maybe incorrect/missing. If you have a problem with how I'm using/distributing them please let me know.

License

Those directly created by me is licensed under MIT. Those came from Discord are technically in a grey zone, as they are shared without a (explicit) license. For those that came from other sources, the original license should be used. I do not intend to claim ownership over them, and they are here so they can be easily included in future projects.

Symbols

ic

  • MCP23S08: From @petejohanson, converted to 6.0. 8-bit SPI bidirectional I/O expander, missing from Kicad libray
  • MT25QL128ABA1ESE: created by me. 128Mib/16MiB QSPI NOR flash
  • CMM4030D: I2S microphone
  • TMP117: I2C high accuracy temperature sensor
  • IS31FL3729: 16x8 or 15x9 I2C LED matrix driver
  • MAX98357A: I2S DAC amplifier

display

ic

  • CMM4030D, eTQFP-32_7x7mm_P0.8mm: created by me from datasheet

switch

  • SKRHA: created by me. 5-way joystick from Alps
  • diode-choc: created by me. Originally taken from @PJE66, but with some of the pins hidden as they are not needed for external connections. Even though they are still 2 pin "components", the diode is included for clarity in the schematics, and should be used with the autogenerated choc footprints.

mcu

  • holyiot-18010: From someone else on Discord, but modified by me. Holyiot 18010 nRF52840 BLE module
  • holyiot-18010-no-underside: Same as above, but without underside pads
  • xiao: created by me, merged from the xiao repo. The Xiao controller from Seeed Studio.
  • xiao-ble: Same as above. The Xiao BLE controller from Seeed Studio.
  • rp2040-zero: created by me. The RP2040 Zero controller by WaveShare.
  • ms88sf3-nrf52840, ms88sf3-nrf52840-split: From @Kurtis on Discord, who used a split symbol. I merged the ground pins and merged the units for the symbols, and corrected the footprint according to the datasheet, also making the keepout 5mm wide.

Footprints

display

  • LCD2.2in: created by me.
  • OLED-128x32: created by me.
  • OLED-128x32-cutout: Same as above, but show the display area. Data came from @rain on Discord
  • OLED-128x32-double-sided: Same as above, but has jumpers on both sides allowing the OLED to be installed on both sides. The jumpers on the reverse side of the display are to be soldered.
  • OLED-128x64: created by me.
  • TM022HDH26: created by me. Holes follow the positions on datasheet, pads are measured data
  • TM022HDH26_back: Same as above, but pads are on the different side of PCB
  • adafruit-sharp-memory-display-1.3in: From someone on Discord, modified by me
  • adafruit-sharp-memory-display-1.3in-no-mounting: Same as above
  • adafruit-sharp-memory-display-1.3in-no-mounting-no-useless: Same as above

mcu

  • holyiot-18010: Probably from someone on Discord, modified by me. Holyiot 18010 nRF52840 BLE module
  • holyiot-18010-no-underside: Same as above
  • xiao-smd: created by me, merged from the xiao repo. The Xiao controller with SMD pads, with throughole pads for the 4 underside pads.
  • xiao-tht: Same as above. The Xiao controller with THT pads, with throughole pads for the 4 underside pads.
  • xiao-ble-smd: Same as above. The Xiao BLE controller with SMD pads, with throughole pads for the 4 pads under USB-C connector, 2 battery pads, and 2 NFC pads.
  • xiao-ble-tht: Same as above. The Xiao BLE controller with THT pads, with throughole pads for the 4 pads under USB-C connector, 2 battery pads, and 2 NFC pads.
  • xiao-ble-tht-cutout: Same as above. The Xiao BLE controller with THT pads, with throughole pads for the 4 pads under USB-C connector, 2 battery pads, and 2 NFC pads, except there are cutouts around the underside pads, so that one can cut around the pads making it easier to solder those pads.
  • rp2040-zero-smd: created by me. The RP2040 Zero controller by WaveShare, with SMD pads and a cutout for the MCU itself.
  • rp2040-zero-tht: Same as above. The RP2040 Zero controller, with THT pads and a cutout for the MCU itself.
  • rp2040-zero-smd-pads and rp2040-zero-tht-pads: Experimental! Same as above, plus throughole pads to solder underside pads.
  • rp2040-zero-smd-pads-cutout and rp2040-zero-tht-pads-cutout: Experimental! Same as above, but the pads can be made into castellated ones by cutting through the pads?

misc

  • BA1AAAPC: From Digikey. Low profile AAA battery holder
  • auklet-cover-mount: created by me. Cover mounting positions for the Auklet steno board
  • auklet-mount: created by me. Bottom screw hole mounting positions for the Auklet steno board
  • batwings: created by me. The original batwings logo converted from some picture on the web
  • crides-pos: created by me. The logo for crides
  • crides-neg: Same as above, but inverted
  • debug-port: created by me. For use with pogo pin clamp for SWD debug
  • debug-port-single-side: Same as above, but only top side has solder mask
  • embedded: created by me. The embedded steno logo
  • hirose-df30fb-20ds-0.4v(82): probably from Digikey
  • CMS1609: created by me from datasheet
  • molex-503182-1852: probably from DigiKey

switch

  • SKRHA-boss: created by me, following datasheet from Alps
  • SKRHA-no-boss: same as above
  • switch-MSK-12C02-smd: Not sure where from
  • EVQWGD001: Fetched from @darryldh on Discord, not sure of origin

pg1350 and pg1232

These footprints are autogenerated with python scripts cuz I hate hand making all the variants I need for choc. It uses my fork of kicad-footprint-generator. The changes in the generator are basically usability changes for myself, and you'll see why in the diff.

The pg1350 footprint dimensions (i.e. pin sizes & locations) is originally taken from Keebio, and the pg1232 ones from here. They are converted to Python and modifications are added.

The outline on User.Comments is the outline of the side tabs, and the one on User.Drawings is slightly outside of the outline of the keycap, reflecting the spacing.

All of the footprints are auto generated now. Different letters signify different variations.

  • D: includes diode in the footprint. It uses choc LED hole for (optional) SOD-123 diode placement, and the internal connections are already made. The center of the footprint is placed on the center of the diode to help with PCBA, and it's meant to be used with the custom symbol signifying that it has a builtin diode;
  • R: footprint is reversible. Througholes are included for both sides, another pad is used to connect the duplicated hole, and vias are used inside of the diode pads to connect the diodes on both sides, and silkscreens are duplicated on both sides;

All the following variants are spacing variants, which is useless for most people and I keep it here for my own sake.

  • S: shorter spacing, only affects the cap outline. To be used with 15mm vertical spacing. This as close vertical as chocs gets without modding the switch itself;
  • SS: "Super Short": even shorter spacing, only affects the cap outline. To be used with 13.5mm vertical spacing. This as close vertical as choc minis (pg1232) gets without modding the switch itself;
  • L & R: only when used with SS; off centered spacing for use with same finger double column (e.g. most commonly the 2 columns for index finger, or columns for pinky).
  • N: only when used with SS; as narrow as possible (14.5mm; or is the intersection of the L and R variants)

Models

  • adafruit-sharp-memory-display: Obtained from @petejohanson on Discord, not sure of creator
  • adafruit-sharp-memory-display-no-mounting: As above, but edited to cut off mounting screw holes
  • BA1AAAPC: From Digikey. Low profile AAA battery holder
  • holyiot-18010: From @darryldh on Discord
  • hro-type-c-31-m-12: Not sure of source; I probably got it on Discord
  • MBK-1u: From @darryldh on Thingiverse
  • SKRHAD: From Alps
  • OLED-128x32: Not sure from where. Model for the 128x32 OLED displays
  • TF31-12S-0.5SH: Not sure from where exactly, should be a manufactorer model. 0.5mm pitched 12pin FPC ZIF socket
  • JST-PH-S2B-R: From SnapEDA on Digikey. JST PH SMD 2pin connector, commonly used for batteries. Product on Adafruit
  • pg1350, pg1350-mbk, pg1232, pg1232-mbk: created by me. pg1350 and pg1232 choc switch models with MBK 1u keycaps. The pg1350 model is taken directly from here, and the MBK model from here. The pg1232 model is made by me through cutting and rejoining pieces of the pg1350 model, which should immitate the general model but is otherwise very janky. The joint choc and MBK models are simply the combinations of the switch models and the MBK model.
  • rp2040-zero: From the low pro Discord from @gerrycave from WaveShare. Giant model of the RP2040-Zero, recentered by me through FreeCAD.
  • EVQWGD001: A copy of https://grabcad.com/library/panasonic-evqwgd001-encoder-1#!. Doesn't seem to match footprint
  • TM035035: From @freznel on Discord, originated from Cirque.

About

Collection of Kicad 6.0 symbols, footprints and 3D models useful in keyboard creation

License:MIT License


Languages

Language:Python 100.0%