All Projects → CaninoDev → MechanicalKeyboardKiCADTemplates

CaninoDev / MechanicalKeyboardKiCADTemplates

Licence: other
KiCAD Templates to design a mechanical keyboard with multiple MCU's included.

Projects that are alternatives of or similar to MechanicalKeyboardKiCADTemplates

Altium2kicad
Altium to KiCad converter for PCB and schematics
Stars: ✭ 490 (+610.14%)
Mutual labels:  pcb, schematics
gingham usbc pcb
A 60% throughole keyboard with USBC. Inspired by the Plaid
Stars: ✭ 23 (-66.67%)
Mutual labels:  pcb, mechanical-keyboards
elk-hardware
This repository contains the schematics and board files for Elk board
Stars: ✭ 24 (-65.22%)
Mutual labels:  pcb, schematics
Altium Library
Open source Altium Database Library with over 147,000 high quality components and full 3d models.
Stars: ✭ 875 (+1168.12%)
Mutual labels:  pcb, schematics
Dji Hardware Schematics
Community made schematics for the DJI drones and devices.
Stars: ✭ 72 (+4.35%)
Mutual labels:  pcb, schematics
tracy
gps + gprs tracker
Stars: ✭ 24 (-65.22%)
Mutual labels:  pcb, schematics
Awesome-Retro-Docs
A curated collection of technical documentation for Arcades, Handhelds, Consoles, Computers and MCU’s.
Stars: ✭ 128 (+85.51%)
Mutual labels:  pcb, schematics
djinn
Djinn Split Keyboard
Stars: ✭ 685 (+892.75%)
Mutual labels:  pcb, mechanical-keyboards
pcb-ws2812-wifi-controller
WiFi Controller for WS2812 LED Stripes
Stars: ✭ 48 (-30.43%)
Mutual labels:  pcb
bc-hardware
HARDWARIO Hardware (Schematic and Assembly Drawings)
Stars: ✭ 16 (-76.81%)
Mutual labels:  schematics
lumberjack-keyboard
5x12 ortholinear through-hole component keyboard PCB for standard 60% cases
Stars: ✭ 231 (+234.78%)
Mutual labels:  pcb
arduino-stoerbert
MP3 player for small children - firmware & PCB schematic
Stars: ✭ 31 (-55.07%)
Mutual labels:  pcb
loopy-docs
DIY Programmable 8 Loop Guitar Pedal Switcher
Stars: ✭ 21 (-69.57%)
Mutual labels:  pcb
programmable-air
A hardware kit to experiment with inflatable and vacuum based soft robotics.
Stars: ✭ 54 (-21.74%)
Mutual labels:  pcb
zx-sizif-512
ZX Spectrum CPLD-based clone for rubber case
Stars: ✭ 92 (+33.33%)
Mutual labels:  pcb
keyswitch-kicad-library
Footprints for popular keyboard switches
Stars: ✭ 163 (+136.23%)
Mutual labels:  pcb
ngx-env
Easily inject environment variables into your Angular applications
Stars: ✭ 73 (+5.8%)
Mutual labels:  schematics
SnowFlakeProject
All open source data of the snow flake project.
Stars: ✭ 37 (-46.38%)
Mutual labels:  pcb
pcb-checklist
A checklist for electronics and electrical design
Stars: ✭ 35 (-49.28%)
Mutual labels:  pcb
BelalHashmi-Assembly-Exercise-Solutions
💻 This repository provides solutions to most of the programming questions in the exercise given at the back of chapters for Bao Ji's Book (text book for course "Comp. Organization & Assembly Lang. EE213" at FAST). Sharing these with you, so that they might help you in understanding the concepts.
Stars: ✭ 30 (-56.52%)
Mutual labels:  pcb

KiCAD Templates

Mechanical Keyboard KiCAD Templates

A collection of KiCAD templates to help the budding designer start designing their own mechanical keyboards.

Github Issues Pending Pull-Requests License

Table of Contents


About The Project

This repository contains a collection of KiCAD mechanical keyboard templates using a variety of MCU's. Within each templates are schematics that lay out the basic connection between essential components as well as sub-sheets where the designer can implement their own key matrix and, in some cases, RGB LED underglow implementations. In most cases the KiCAD libraries in use were provided by ai03


Requirements

Installation

  • git clone https://github.com/CaninoDev/Mechanica_Keyboard_KiCAD_Templates $TEMPLATE_DIRECTORY where $TEMPLATE_DIRECTORY is the path to templates by your version of KiCAD. You can view and set the path by starting up KiCAD and going to Preferences --> Configure Path --> KICAD_USER_TEMPLATE_DIR
  • Once installed, go to File --> Start a New Project From Template and select the desired template from the list.

Notes

Key Terms

MCU / Microcontroller ESD Voltage Regulator Decoupling Capacitors Pull Down Resistors

Design Guidelines

PCB Design

  • Keep traces from the connector to the MCU as short as possible.
  • Generally, avoid the use of sharp bends when laying down track.
  • Power and Ground traces should be wide.
  • Place the crystal as close to the MCU as possible.
  • Isolate the oscillator as much as possible:
    • Separate the ground plane underneath the crystal generally.
  • D+ and D- traces should match up in distance as close as possible (so the signals are in sync). Use differential(90Ω) traces.
  • Fill Zones: It is not necessary to fill the entire PCB with ground/power plane. It is sufficient to encompass the crystal, USB and MCU footprints in a ground fill.

Reference Keyboards

Please note, some of the following keyboards have schematics that may be incomplete. I try to make note of those keyboards but cannot guarantee that I have caught them all.

atmega32

stm32

(NOTE: The stm32 MCU series are, for the most part, interchangeable with minimal changes. Pay particular attention that the F072 series have a built-clock suitable for USB data transmissions.)

Disclaimer

As I am still learning how to design keyboards, there may be some implementations that does not represent best practices or may even be incorrect. In such cases, please make a pull request and I will incorporate the corrections promptly. When creating a new design from template, KiCAD copies over the local libraries but doesn't preserve their respective git. This results in a relatively larger project with the inability to effortlessly update local libraries.


Contributing

As noted above, there may be some mistakes in implementation or improvements could be made. If you note either, please:

Step 1

- 🍴 Fork this repo!

Step 2

- 👯 Make a branch concering the variant that will be modified.

Step 3

- HACK AWAY🔨🔨🔨

Step 4

- 🔃 Create a new pull request using <a href="https://github.com/CaninoDev/Mechanica_Keyboard_KiCAD_Templates/compare/" target="_blank">`https://github.com/CaninoDev/Mechanica_Keyboard_KiCAD_Templates/compare/`</a> detailing in the comments whether it is a correction and reference the reasons either by explanation or datasheet reference. If it is an improvement, explain the improvement. This is so  that not only I can learn from mistakes but so that others can as well. 

Thanks

The following people have been invaluable in my journey in learning how to design keyboards:

  • Worldspawn#9316, Abec13#3342, Comrade. SeungheonOh#4283, and The_Royal • 🍦 GMK Fro.Yo 🍦#3000 at the '40% Keeb' Discord server.
  • ai03#2725, PheonixStarr#0371, Xaetral#3486 at the 'ai03 Design Studio' Discord server

KiCAD libraries to aid in the schematics and pcb design

These resources were immensely helpful

These are related resources to mechanical keyboard design

License

License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].