Die Matrixschaltung bildet das elektrische Fundament jeder Tastatur. Sie ermöglicht es, mit einer begrenzten Anzahl an Mikrocontroller-Pins Tastendrücke über Dutzende oder Hunderte von Switches zu erkennen. Ein solides Verständnis des Matrix-Designs ist essenziell für das Keyboard-PCB-Design, da die Matrix die Firmware-Konfiguration, die Rollover-Fähigkeit und die gesamte Tastaturfunktion bestimmt.
HILPCB fertigt Keyboard-PCBs mit der gleichbleibenden Qualität, die für einen zuverlässigen Matrixbetrieb nötig ist – präzise Bohrbilder für Switches und saubere Leiterbahn-Connectivity für exakte Tasterkennung.
In diesem Leitfaden
- Warum Tastaturen Matrixschaltungen nutzen
- Ablauf des Matrix-Scans
- Das Ghosting-Problem
- Diodenlösung für N-Key Rollover
- COL2ROW vs ROW2COL Konfigurationen
- Strategien zur Matrix-Optimierung
- QMK-Firmware-Konfiguration
Warum Tastaturen Matrixschaltungen nutzen
Direktverdrahtung – also jeder Switch an einen eigenen MCU-Pin – wäre für jede Tastatur über ein Nummernpad hinaus unpraktisch. Eine Full-Size-Tastatur mit 104 Tasten würde 104 GPIO-Pins benötigen und damit die Möglichkeiten günstiger Mikrocontroller wie ATmega32U4 (26 I/O-Pins) oder sogar RP2040 (30 GPIO) deutlich übersteigen.
Matrixschaltungen lösen diese Einschränkung, indem Switches an den Schnittpunkten von Zeilen- und Spaltenleitungen angeordnet werden. Die mathematische Effizienz ist überzeugend:
Direktverdrahtung (104 Tasten): 104 Pins erforderlich
8×14‑Matrix (104 Tasten): 22 Pins erforderlich (8 Reihen + 14 Spalten)
Pin-Reduktion: 79%
Für ein 60%-Keyboard (61 Tasten) benötigt eine 8×8‑Matrix nur 16 Pins – damit bleiben reichlich I/Os für LEDs, Rotary-Encoder, OLED-Displays und weitere Features.
Der Trade-off ist zusätzliche Komplexität: Matrix-Scanning bringt Timing-Aspekte mit sich und ohne zusätzliche Bauteile sind Matrizen anfällig für „Ghosting“, was gleichzeitige Tastenerkennung begrenzt. Diese Herausforderungen sind jedoch gut verstanden und lassen sich durch korrektes Design zuverlässig lösen.
Ablauf des Matrix-Scans
Matrix-Scanning ist ein sequenzieller Prozess: Der Mikrocontroller aktiviert jeweils eine Zeile (oder Spalte) und liest gleichzeitig alle Positionen auf der Gegenachse aus. Durch schnelles Wiederholen über alle Zeilen ermittelt die MCU, welche Switches geschlossen sind.
Scan-Sequenz
- MCU setzt Row 0 auf LOW, alle anderen Rows HIGH (oder floating mit internen Pull-ups)
- MCU liest alle Column-Pins gleichzeitig ein
- Jede Column, die LOW liest, entspricht einem gedrückten Switch an Row 0, dieser Column
- MCU setzt Row 1 auf LOW (Row 0 geht zurück auf HIGH) und wiederholt das Einlesen
- Prozess läuft über alle Rows weiter und beendet einen vollständigen Scan
- Die gesamte Sequenz wiederholt sich hunderte bis tausende Male pro Sekunde
Scanrate und Latenz
Die Scanrate beeinflusst direkt das gefühlte Reaktionsverhalten der Tastatur:
- 125Hz (8ms pro Scan): Spürbarer Lag bei schnellem Tippen oder Gaming
- 500Hz (2ms): Für die meisten Nutzer akzeptabel
- 1000Hz (<1ms): Standard bei hochwertigen Keyboards, praktisch sofort
- 8000Hz (0,125ms): Marketing-getrieben für Competitive Gaming, in der Praxis kaum Vorteil gegenüber 1000Hz
QMK erreicht 1000Hz auf typischer ATmega32U4- oder RP2040-Hardware mit einfachen Matrix-Setups. Komplexe Konfigurationen (große Matrizen, viel RGB, OLED-Displays) können die erreichbare Rate senken, 500Hz+ bleiben jedoch üblich.
Vergleich der Matrix-Effizienz
Das Ghosting-Problem
Ghosting tritt auf, wenn Matrixschaltungen unbeabsichtigte Strompfade bilden und die MCU Tastendrücke erkennt, die gar nicht stattgefunden haben. Wer den Mechanismus versteht, erkennt auch, warum Dioden so wichtig sind.
Wie Ghosting entsteht
Stellen Sie sich drei gleichzeitig gedrückte Tasten vor, die drei Ecken eines Rechtecks in der Matrix bilden – Positionen (Row0, Col0), (Row0, Col1) und (Row1, Col0).
Beim Scannen von Row0: Col0 und Col1 lesen korrekt LOW (diese Switches sind gedrückt).
Beim Scannen von Row1: Col0 liest korrekt LOW. Col1 liest jedoch ebenfalls LOW, obwohl der Switch an (Row1, Col1) NICHT gedrückt ist. Der Strom fließt rückwärts: von der LOW‑Row1‑Leitung durch den gedrückten Switch (Row1, Col0) in Col0, durch den gedrückten Switch (Row0, Col0) in Row0, durch den gedrückten Switch (Row0, Col1) und schließlich nach Col1 – ein „Sneak Path“, der eine nicht gedrückte Taste als gedrückt erscheinen lässt.
Ghosting-Merkmale
- Erfordert mindestens 3 gleichzeitige Tastendrücke
- Diese Tasten müssen 3 Ecken eines Rechtecks in der Matrix bilden
- Die 4. Ecke wird fälschlicherweise als gedrückt erkannt
- Je mehr gleichzeitige Tasten, desto mehr mögliche Ghosting-Muster
Einige Budget-Keyboards implementieren „Blocking“ – bestimmte Kombinationen werden gar nicht registriert, statt Ghosts zu erzeugen. Das ist für Gaming und schnelles Tippen inakzeptabel, da komplexe Tastenkombinationen dort üblich sind.
Diodenlösung für N-Key Rollover
Eine in Serie zu jedem Switch eingesetzte Diode eliminiert Ghosting, indem sie Rückstrom durch die Matrix verhindert. Dioden leiten nur in eine Richtung – von Anode zu Kathode – und blockieren so die Sneak Paths, die Ghosts verursachen.
Wie Dioden Ghosting verhindern
Bei korrekt ausgerichteten Dioden kann Strom von einem Switch zu seiner Row‑ (oder Column‑) Leitung fließen, jedoch nicht rückwärts von dieser Leitung durch einen anderen Switch. Jede Switch-Position wird elektrisch so isoliert, dass keine Ghost-Schaltungen entstehen. Die MCU liest nur echte Tastendrücke – unabhängig davon, wie viele Tasten gleichzeitig gedrückt werden.
Ergebnis: N-Key Rollover (NKRO)
Mit einer Diode pro Switch:
- Jede Tastenkombination wird korrekt erkannt
- Keine Blocking-Kombinationen
- Konsistentes Verhalten bei gleichzeitigen Tastendrücken
- Essenziell für Gaming und schnelles Tippen
Darum enthalten alle hochwertigen mechanischen Tastaturen eine Diode pro Switch. Bauteilkosten und Bestückungsaufwand sind durch den deutlichen Funktionsgewinn gerechtfertigt.
Häufige Diodenoptionen
- 1N4148 (THT, DO‑35): Klassiker, leicht von Hand zu löten, größerer Footprint
- 1N4148W (SOD‑123): Standard‑SMT, guter Kompromiss aus Größe und Handhabung
- 1N4148WS (SOD‑323): Kleinere SMT‑Variante für platzkritische Designs
- BAV70 (SOT‑23): Dual‑Diode mit gemeinsamer Kathode – versorgt zwei Switches, reduziert Bauteilanzahl
Details zur Ausrichtung in Keyboard Diode Direction.

COL2ROW vs ROW2COL Konfigurationen
Es gibt zwei Standardkonfigurationen für Keyboard-Matrizen. Sie unterscheiden sich darin, welche Achse den Strom treibt und welche die Ergebnisse einliest. Beide funktionieren gleich gut – die Wahl hängt meist von der Routing-Bequemlichkeit ab.
COL2ROW (am häufigsten)
- Die Kathode (markiertes Ende) wird mit der ROW‑Leitung verbunden
- Column-Pins als Outputs, die während des Scans LOW treiben
- Row-Pins als Inputs mit Pull-up-Widerständen
- Merksatz: „COL2ROW = Cathode to Row“ – das „C“ steckt in beiden Wörtern
QMK-Konfiguration: #define DIODE_DIRECTION COL2ROW
ROW2COL (Alternative)
- Die Kathode wird mit der COLUMN‑Leitung verbunden
- Row-Pins als Outputs, die während des Scans LOW treiben
- Column-Pins als Inputs mit Pull-ups
- Signal fließt von Row durch Switch und Diode ZU COLumn
QMK-Konfiguration: #define DIODE_DIRECTION ROW2COL
Kritische Anforderung
Die Firmware muss exakt zur Hardware passen. Nutzt das PCB COL2ROW, die Firmware ist aber auf ROW2COL gesetzt, funktioniert die gesamte Matrix nicht. Dieses Mismatch ist eine häufige Ursache für „tote Tastatur“-Probleme beim ersten Bring-up.
Gängige Tastatur-Matrixgrößen
Strategien zur Matrix-Optimierung
Eine durchdachte Matrixorganisation vereinfacht das PCB-Routing, erleichtert die Firmware-Entwicklung und minimiert den GPIO-Bedarf.
Reihen und Spalten ausbalancieren
Für eine gegebene Tastenanzahl sind mehrere Dimensionen mathematisch möglich. Ein 60‑Key‑Board kann z. B. 5×12 (17 Pins), 6×10 (16 Pins) oder 8×8 (16 Pins mit 4 ungenutzten Positionen) nutzen.
Quadratische oder annähernd quadratische Matrizen minimieren oft die Gesamtzahl der Pins und balancieren gleichzeitig die Routing-Komplexität zwischen den Lagen. Ähnliche horizontale und vertikale Linienanzahlen verteilen die Routing-Arbeit gleichmäßiger.
Physische Ausrichtung
Wenn Matrix-Rows mit den physischen Tastaturreihen ausgerichtet sind, wird Routing und Firmware deutlich einfacher:
- Row-Traces laufen natürlich horizontal (entspricht dem physischen Layout)
- Column-Traces laufen vertikal
- Keymap-Definition wird intuitiv (visuelle Übereinstimmung zur Tastatur)
- Weniger Kreuzungen und weniger Vias
Reservepositionen
Lassen Sie ungenutzte Matrixpositionen für Layout-Varianten frei:
- Split Backspace (zwei 1u‑Tasten statt einer 2u)
- ISO Enter vs ANSI Enter
- Split Right Shift
- Alternative Bottom-Row-Konfigurationen
Eine 8×8‑Matrix mit 61 Keys lässt 3 Positionen für Alternativen übrig – ohne zusätzliche Pins.
QMK-Firmware-Konfiguration
QMK benötigt eine exakte Matrix-Spezifikation passend zur Hardware. Die Firmware braucht Matrixdimensionen, Pin-Zuordnungen und die Diodenrichtung.
Konfiguration in config.h
#define MATRIX_ROWS 8
#define MATRIX_COLS 8
#define MATRIX_ROW_PINS { B0, B1, B2, B3, B4, B5, B6, B7 }
#define MATRIX_COL_PINS { D0, D1, D2, D3, D4, D5, D6, D7 }
#define DIODE_DIRECTION COL2ROW
Die Pin-Namen variieren je nach MCU: ATmega nutzt B0, D2, F4; RP2040 nutzt GP0, GP1 usw. Prüfen Sie die Zuordnung anhand des jeweiligen MCU-Datenblatts.
Test und Verifikation
Bevor Sie die Firmware finalisieren:
- Basis-Firmware mit aktivem Matrix-Debug flashen
- Jede Switch-Position mit einer Pinzette kurzschließen
- Debug-Ausgabe auf korrekte Row/Column-Erkennung prüfen
- Gleichzeitige Tastendrücke testen, um Ghosting auszuschließen
- Verifizieren, dass alle erwarteten Positionen korrekt registrieren
Typische Fehlerbilder:
- Ganze Row/Column tot → Routing-Fehler oder falsche Pin-Zuordnung
- Vereinzelte tote Tasten → einzelne Diodenprobleme
- Gesamte Matrix tot → DIODE_DIRECTION-Mismatch
HILPCB Matrix-PCB-Fertigung
HILPCB fertigt Keyboard-PCBs mit der Präzision, die für zuverlässige Matrixschaltungen erforderlich ist:
- Bohrbild-Genauigkeit: Konsistente Switch-Ausrichtung über das gesamte Board
- Via-Plating: 20–25μm Barrel-Kupfer für zuverlässige Durchkontaktierungen
- Leiterbahnuniformität: ±10% über Panels für konsistente elektrische Eigenschaften
- Diodenbestückung: SMT assembly mit verifizierter Orientierung für alle gängigen Packages
Wir unterstützen Keyboard-Projekte von Prototypenstückzahlen bis zu Group-Buy-Volumen – mit gleichbleibender Qualität in jedem Maßstab.
Kontaktieren Sie HILPCB für Matrix-Design-Review und ein Fertigungsangebot.

