4. Extra Resources - zykrah/pcb-guide GitHub Wiki

UPDATE: I WILL CONTINUE THIS GUIDE HERE. THIS GUIDE MAY NOW BE OUTDATED.

NOTE: Regarding the resources I linked/mentioned below, most of the information available in those guides will likely all be repeated in this guide. I’m making this guide in an attempt to combine the information available in those guides, as well as build upon them. However, that doesn’t make them useless. I would still recommend going over them to corroborate and build your knowledge further.

Now, expanding on the whole concept of using this guide in combination with other resources, I can highly recommend the following resources (for now):

Hadi’s YouTube channel

  • Hadi’s series (parts 1-3) on keyboard PCB design is a great place to start with learning how to design keyboards in general.

  • In his first video, he goes over designing a keyboard layout in Keyboard Layout Editor (or KLE for short) and adding multi-layout stuff to it to create a plate. Don’t worry about the section where he generates a plate file towards the end of the video though. That’s not relevant to this guide (though note if you’re designing an entire keyboard including case, generating a plate file is more relevant to the case design).

  • In his second video, hadi goes over some more stuff that isn’t relevant to this tutorial. He does mention some minor things that might come into consideration later such as spacebar stab holes being too close to the bottom edge of the pcb.

  • His third video is very technical but is the most informative of the three and the most relevant to actual PCB design in my opinion. In it, he describes the pinout of the ATmega32u4 and how a basic keyboard matrix works. He also goes in depth on how you apply a switch matrix to a chosen layout, including how to account for multi-layout (e.g. split backspace). However, hadi doesn’t first describe some basics that may be confusing to beginners (to PCBs/EE) such as what an MCU is, and his long justification for why keyboard matrices are the way they are is slightly pedantic in my opinion.

    Note, as far as I’m aware, hadi’s keyboard design tutorial stops at part 3. Comments have suggested that parts 4+ have existed but have since been deleted for some undeclared reason.

Ai03’s keyboard PCB guide

  • Ai03’s guide is short and detailed, however, slightly outdated (it recommends using an older version of KiCAD). In my opinion, it does a good job of showing how to set up a development environment and electronically design a PCB using an ATmega32u4 controller.
  • However, it falls short in the fact that it shows this only for a 2x2 macropad, with a usb micro connector (at least in the main tutorial parts). Realistically, most people seeking to make a keyboard are going to be looking to integrate an MCU into a more standard keyboard size where you don’t have a lot of room to fit components. Also, sometimes things aren’t explained in a way clear to those unfamiliar with EE.

Masterzen’s PCB guide (parts 1-4)

  • Masterzen’s guide, as opposed to Ai03’s, shows how to make a keyboard PCB for a 65% Alps switch keyboard. Masterzen’s is more in depth than Ai03, including a lot of information including explanations of certain components and what they do, plus what you should be looking for in certain parts. The guide also covers things such as how to export files from KiCAD for manufacturing with JLCPCB and their assembly service (which is realistically what you’re going to be using if you’re on a budget), as well as how to physcially hand solder the board and even write QMK firmware for it.
  • However, the images of the guide aren’t always consistent (fwiw certain steps get skipped from image to image) or sometimes things aren’t explained in a way clear to those unfamiliar with EE. That can definitely confuse beginners. Also, the guide is also on the older KiCAD 5, and is a little outdated in terms of the whole part/component choice scheme.
  • I definitely like his tutorial though, so I’ll be taking a lot of inspiration from it while filling in some of the gaps (things that personally confused me) in this guide.

Further

Summary (My recommendations)

I would recommend going through at least hadi's first and third video before continuing.

I will be mostly repeating most of the content in the Ai03 and Masterzen tutorials, so they are technically optional. I highly recommend opening up a datasheet (e.g. for an ATmega32u4) while creating your schematic + pcb (and actually reading the content inside) as they have useful information.

Lastly, if you have any further questions that you cannot answer by going over above resources/googling, feel free to ask a question in the Atelier discord server.

Setup ->