Skip to content

2. Basic Knowledge

Zykrah edited this page Feb 13, 2022 · 34 revisions

Disclaimer, this will likely be a poor/entry-level explanation of aspects of EE (Electrical Engineering) and other information relevant to keyboard PCB design. I recommend using other sources (e.g. Googling/YouTube) if you want proper, comprehensive explanations.

Many of the terms used throughout the guide will be explained in this section, so I recommend going over this section and educating yourself to avoid future confusion. Feel free to come back to this section if there’s some sort of term or concept you don’t understand in the middle of the guide. I may also miss a few things, so this section is definitely subject to change in the future.

Voltage, Current, Resistance (+ Resistors)

In case you don't already know about the basics of electronics, I would highly advise looking through YouTube/Google for resources on learning them. Having a solid understand of electronics basics sets the foundation for what you can learn in terms of PCB design.

I would recommend at least understanding these terms/concepts before continuing:

  • Circuits (open vs closed)
  • Switches (what they do as an electrical component in general)
  • Voltage (V), Current (I), Resistance (R)
  • Resistors
  • AC Power vs DC Power
  • Electric circuit diagrams

Diodes

Better resource: What is a Diode? | Fluke

Diodes basically allow current to only flow in one direction. They are essential to the functionality of a switch matrix (will be explained further later in this guide).

Capacitors

Better resource: Capacitors Explained - The basics how capacitors work working principle

Capacitors (or ‘caps’ for short) are mainly used in keyboard PCBs to reduce noise (unwanted change of a signal/current due to electromagnetic interference, or "EMI") in a circuit. This will be explained more further down the page (decoupling capacitors).

Image examples of what capacitors look like in real life:

image

Ground [WIP]

(maybe) Explanation of grounding, what the purpose is.

Light Emitting Diodes (LEDs) [Optional]

If you’re living in the 21st century, you probably know what Light Emitting Diodes (LEDs) are. They take a voltage, and emit light. They can be pretty bright for how small they are, but can also be power hungry at full brightness if used in large quantities/arrays.

ARGB (adressable red, green, blue) LEDs, e.g. WS2812(B) LEDs, will consume more power because they actually consist of three LEDs, one for red, green and blue. They also contain a controller on-board to interpret a data signal that requires further power.

I won’t be covering how to add a per-key RGB LED switch matrix as it is out of the scope of this guide, but I may make a follow up tutorial in the future. Other resources exist online already if you want to learn how (or you can just ask people), but I wouldn’t recommend attempting it for a first PCB.

NOTE: Dumb/common anode LEDs require a matrix and dedicated RGB controller chip, whereas ARGB LEDs such as WS2812s have onboard controllers.

[WIP] Add images

Printed Circuit Boards (PCBs)

Good videos about PCBs (second video is pretty informative): How Do PCBs Work? / What is a PCB?

Essentially, PCBs are made of core fiberglass material (most commonly FR4) with various layers of copper in which traces connect various components together.

Layers

Complex PCBs such as PC motherboards can have upwards of 14 layers, however PCBs can get as simple as just 1 layer. For keyboards, 2 layers is generally all you need.

Vias

Vias act as pathways between layers, connecting traces and allowing signals to hop from layer to layer. They are important, but should only be used when necessary. I'll be going over via usage further in depth later. What are PCB vias?

The below image shows a 6 layer pcb, and how vias connect traces between the layers:

image

WIP:

  • SMT/D and THT
  • Component “form factors” (packages)
  • Symbols
  • Footprints

USB

This is an optional (but interesting and informative) video on USB and how it applies to keyboards: How does a USB keyboard work?.

USB2.0

Modern keyboards generally operate at USB 2.0 speeds. USB (2.0) connections consist of the following four lines: one for power (+/5V/VCC), one for ground (-/GND) and a pair of data lines. Below is the pinout of a USB-A connector:

image

Micro-USB

Smaller USB connectors are preffered for devices such as keyboards or phones. Micro-USB is an example of one that used to be very popular.

Below is the pinout of a Micro USB connector:

image

Type-C

Many keyboards nowadays opt to use a USB Type-C connector. Type-C connectors have a few extra pins required for hitting USB 3+ speeds that aren’t important for USB 2.0 operation.

These are the pins on a standard Type-C connector required for a USB 2.0 keyboard:

image

Type-C connections running on USB 2.0 devices also require 5.1k pullup resistors between the CC pins and ground. You'll see this in the schematic for the keyboard later in the guide.

There are different types of Type-C connectors (e.g. top mount, mid mount), but I'll go over those in the next section.

MicroController Units (MCUs) [WIP]

  • Crystal oscillators
  • Bootloader/DFU
  • Flashing headers (e.g. ISP)
  • Reset circuit
  • Eeprom/Flash storage
  • EMI reduction
  • Data traces
  • ESD
  • (Poly)Fuse
  • Ground fills (will be expanded upon later)

Integrated Circuits (ICs)

Great resource to read: Integrated Circuits - Sparkfun

Essentially, an Integrated Circuits are the black chips you see on PCBs. They have many small internal components that work together to perform certain functions. MCUs take inputs and give outputs. They are the brains of most PCBs. ICs can range in complexity, from simple logic gates (e.g. AND/OR gates) to desktop CPUs.

Image of two different types of ICs:

image

Microcontrollers (MCUs)

I highly recommmend watching these videos, as I won't be explaining MCUs too indepth. The following videos should give you a good fundamental understanding of MCUs: This video gives you a good idea of what a MCU consists of and how it functions. This other video has useful information, however, the MSP430 section is irrelevant.

The Microcontroller is the brain of a keyboard PCB. They are a subcategory of ICs that can range in complexity.

For keyboards PCBs, 32-64 pin MCUs (E.g. ATMega32u4, STM32Fxxx) are generally used for their relative affordability and official QMK support. I'll be going further in depth on the choices you have later (in the design considerations section).

Before you move on, it's a good idea you at least recognise and/or understand the following terms/concepts:

  • Integrated Circuit (IC)
  • Microcontroller (MCU)
    • RAM
    • ROM/Flash storage
    • GPIO (General Purpose Input Output)
    • Clock/frequency

IC Packages

ICs come in a wide variety of packages with varying sizes and usecases.

Note: Sometimes you might see extra letters added to the package. E.g."TQFP" or "LQFP" vary slightly, but both fall under the same general "QFP" category. The same applies to other packages. QFN/QFP are just generalisations.

The below image shows some common IC packages

image

In terms of the common keyboard MCUs, most are either QFN or QFP.

Common keyboard MCUs (brief)

These are some common microcontrollers that keyboards use. I'll discuss the pros and cons of each MCU in the following list in the Design Considerations section, but here is the list for now:

  • AVR family (AVR)
    • ATmega16U2 / ATmega32U2
    • ATmega16U4 / ATmega32U4
    • AT90USB64 / AT90USB128
    • AT90USB162
  • STM family (ARM)
    • STM32F072
    • STM32F042
    • STM32F103
    • STM32F303
    • STM32F411
    • STM32F401
  • Raspberry family (ARM)
    • RP2040 (new, pending QMK support)

EEPROM/Flash Storage

This storage is used to store information used by/with programs like VIA/VIAL. E.g. keymap, layout, macros, etc.

Note: Not all MCUs have/support EEPROM by default. I'll discuss this more later.

Crystal Oscillator

WIP

Decoupling Capacitors

Better resource: What is the Use of a Decoupling Capacitor?

Decoupling capacitors are used to help provide ICs with a steady voltage/supply of power. MCUs, for example, are an IC that require a steady voltage to protect the sensitive circuitry inside. EMI can cause noise throughout the PCB/circuit and lead to an unsteady voltage. By placing decoupling capacitors close to the controller, they can effectively reduce noise by creating a small power loop. Supplementary power is supplied when the voltage drops too low and excess power is absorbed when voltage is too high.

Placement/routing of decoupling capacitors is important. Correct placement and routing allows them to properly fulfil their role/purpose. While the chances are low, controllers may not function correctly if supplied voltage is too unstable. There are many resources online regarding decoupling capacitor placement/routing (one is linked above), but I’ll be going over how you should layout them later on (specifically for the MCU we will be using in this guide).

Note: “decoupling capacitor” or is just a name given to certain capacitors with that specific role, they aren’t a special type of capacitor.

The following image demonstrates an electrical diagram of how a decoupling capacitor is connected and reduces noise (less voltage fluctuation):

image

Design Considerations ->

Clone this wiki locally