Richtung von Tastaturdioden: Leitfaden zu COL2ROW und ROW2COL

So funktionieren COL2ROW und ROW2COL, so lassen sich Anode und Kathode erkennen, und so wird die Diodenrichtung an den Matrix-Scan angepasst.

Richtung von Tastaturdioden: Leitfaden zu COL2ROW und ROW2COL

Die Diodenrichtung ist ein zentraler Bestandteil des Tastatur-Matrixdesigns. Eine falsch herum bestückte Diode kann dazu führen, dass Tasten nicht erkannt werden, die gesamte Matrix scheinbar ausfällt oder bei der Fehlersuche verwirrende Spannungswerte auftreten.

Wichtig ist: COL2ROW und ROW2COL beschreiben gemeinsam Diodenrichtung und Matrix-Scan. Sie dürfen nicht einfach als Richtung verstanden werden, in der ein Signal oder Strom immer fließen muss.

Bei einer Matrix nach dem üblichen QMK-Prinzip hängt die korrekte Orientierung davon ab, welche Matrixseite gescannt und welche gelesen wird. QMK definiert COL2ROW als Konfiguration, bei der die Kathodenmarkierung zur Row-Seite zeigt; ROW2COL kehrt diese Richtung um. Der Standard-Matrixcode von QMK unterscheidet außerdem das Lesen von Spalten bei COL2ROW und von Reihen bei ROW2COL.

Das ist entscheidend, weil eine Schaltung, die eine Column auf LOW zieht und die Row liest, die entgegengesetzte Diodenorientierung zu einer Schaltung benötigt, die eine Row auf LOW zieht und die Column liest.

Dieser Leitfaden erklärt die elektrische Beziehung Schritt für Schritt, damit sich die Diodenrichtung aus der realen Schaltung und nicht nur aus ihrer Bezeichnung prüfen lässt.

Inhalt dieses Leitfadens

  1. Wie eine Tastaturmatrix Dioden nutzt
  2. Anode und Kathode erkennen
  3. COL2ROW: richtige Diodenrichtung und Scanlogik
  4. ROW2COL: richtige Diodenrichtung und Scanlogik
  5. Die häufigste Ursache für Verwirrung
  6. PCB-Footprint und Schaltplan
  7. Test und Fehlersuche
  8. Praktische Design-Checkliste

Wie eine Tastaturmatrix Dioden nutzt

Eine Tastaturmatrix reduziert die Zahl der MCU-GPIOs, die zum Abfragen vieler Schalter erforderlich sind. Statt jede Taste mit einem eigenen Eingang zu verbinden, liegen die Schalter an den Schnittpunkten von Reihen und Spalten.

Eine typische Matrix enthält:

  • Row-Leiterbahnen
  • Column-Leiterbahnen
  • mechanische oder elektrische Schalter
  • bei einem Standarddesign gegen Ghosting je Schalter eine Diode
  • mit Reihen und Spalten verbundene MCU-GPIOs
  • Firmware, die eine Matrixseite auswählt und die andere liest

Die Diode sorgt für gerichtete Entkopplung. Ohne sie kann Strom durch mehrere gedrückte Schalter fließen und unerwünschte elektrische Wege bilden, die als Ghosting bezeichnet werden.

Die Diode gibt daher nicht bloß eine bevorzugte PCB-Einbaurichtung vor. Ihre Polarität muss zur elektrischen Richtung des Matrix-Scanners passen.

Durchlass- und Sperrrichtung

Eine gewöhnliche Diode leitet, wenn die Anode ausreichend höher als die Kathode liegt.

  • Durchlassrichtung: Strom kann von der Anode zur Kathode fließen.
  • Sperrrichtung: Die Diode blockiert den Strom von der Kathode zur Anode weitgehend.

Die entscheidende Frage lautet deshalb:

Kann die Diode bei angesteuerter Matrixleitung und gedrückter Taste von der angesteuerten zur abgetasteten Seite leiten?

Diese Frage ist zuverlässiger, als die Antwort aus COL2ROW oder ROW2COL abzuleiten.

Warum die Diode Ghosting verhindert

Bei mehreren gleichzeitig gedrückten Tasten können Schalter ohne gerichtete Entkopplung unerwünschte Wege zwischen verschiedenen Reihen und Spalten bilden.

Eine Diode an jedem Schnittpunkt begrenzt den Strom auf eine Richtung. Dadurch werden viele falsche Wege verhindert und die Firmware kann aktive Schalterpunkte bestimmen.

QMK beschreibt dasselbe Prinzip: Die Diode liegt nach dem Schalter und vor der Matrixleitung, damit Strom nur in eine Richtung fließt. Im dokumentierten COL2ROW-Beispiel zeigt die schwarze Markierung zur Row-Seite.


Anode und Kathode einer Diode erkennen

Vor der Entscheidung zwischen COL2ROW und ROW2COL muss die physische Polarität des Bauteils korrekt identifiziert werden.

THT-1N4148

Bei einer Glas-1N4148 im DO-35-Gehäuse gilt:

  • Der schwarze Ring kennzeichnet die Kathode.
  • Der gegenüberliegende Anschluss ist die Anode.

Der Ring ist beim Bestücken die verlässlichste Referenz. Nach dem Kürzen oder Biegen der Anschlüsse ist deren Länge kein dauerhafter Polaritätshinweis.

SMD 1N4148W und ähnliche Bauteile

Bei SMD-Schaltdioden wie 1N4148W markiert der Hersteller die Kathode am Gehäuse. Das genaue Aussehen hängt von Hersteller und Gehäuse ab.

Die 1N4148W von Diodes Incorporated ist beispielsweise eine SOD-123-Schaltdiode mit Kathodenband. Vor der Serienfertigung ist immer das Datenblatt des exakten Herstellers, Typs und Gehäuses zu prüfen.

Ähnlich aussehende Diodengehäuse verwenden nicht zwingend dieselbe Markierung.

BAV70-Dualdiode

BAV70 ist in der üblichen SOT-23-Ausführung eine Dual-Schaltdiode mit gemeinsamer Kathode. Beim Pinout der Nexperia-BAV70 gilt:

  • Pin 1 = Anode von Diode 1
  • Pin 2 = Anode von Diode 2
  • Pin 3 = gemeinsame Kathode

Andere Hersteller können Varianten mit anderem Gehäuse oder Pinout anbieten. Vor der Erstellung des Footprints ist daher das konkrete Datenblatt zu prüfen.

Nicht jede dreipolige Dualdiode besitzt dasselbe Pinout.

Prüfung mit dem Multimeter

Bei unklarer Markierung hilft die Diodentestfunktion des Multimeters.

Eine typische Silizium-Schaltdiode zeigt gewöhnlich eine Durchlassspannung bei:

  • rote Messspitze → Anode
  • schwarze Messspitze → Kathode

Mit vertauschten Spitzen sollte das Gerät normalerweise offen oder Überlast anzeigen.

Der Spannungswert hängt von Diode und Prüfstrom ab. Der Test dient daher primär der Polaritätsbestimmung, nicht der Bestätigung einer bestimmten Spannung.


COL2ROW: richtige Diodenrichtung und Scanlogik

QMK definiert COL2ROW als Matrixkonfiguration, bei der die schwarze Markierung der Diode, also die Kathode, zur Row-Seite zeigt und zwischen Schalter und Row liegt. Dazu gehört die COL2ROW-Lesefunktion matrix_read_cols_on_row().

Die Hardware-Regel

COL2ROW: Kathode → Row

Daraus folgt:

  • Anode → Schalter-/Column-Seite
  • Kathode → Row-Seite

Die Bauteilmarkierung zeigt zur Row.

Typischer elektrischer Pfad

Column-Seite
    |
  Schalter
    |
  Anode
    |
  Diode
    |
  Kathode
    |
 Row-Seite

Bei einem gültigen Durchlasspfad muss der Strom so fließen:

Column → Schalter → Diode → Row

GPIO-Ruhepegel, Aktivpegel, Pull-up, Pull-down und Polarität hängen von der Firmware ab. Die entscheidende Hardwarebeziehung ist die Leitfähigkeit von der Column- zur Row-Seite.

QMK-Konfiguration

In einer QMK-Konfiguration:

#define DIODE_DIRECTION COL2ROW

In einer neueren keyboard.json entsprechend:

{
    "diode_direction": "COL2ROW"
}

QMK dokumentiert COL2ROW und ROW2COL als die beiden unterstützten Richtungen einer klassischen Diodenmatrix.

Wichtige Klarstellung zu „Column to Row“

COL2ROW bedeutet nicht, dass der MCU die Column immer auf LOW zieht.

Merke dir besser:

COL2ROW
Kathode → Row

Danach wird das tatsächliche Scanverhalten der Firmware geprüft.

QMK beschreibt COL2ROW anhand der zur Row zeigenden Markierung; die Low-Level-Matrix-API beschreibt dieselbe Konfiguration als reihenbasiertes Lesen der Columns.


ROW2COL: richtige Diodenrichtung und Scanlogik

ROW2COL kehrt die Diodenrichtung gegenüber COL2ROW um.

Die Hardware-Regel

ROW2COL: Kathode → Column

Daraus folgt:

  • Anode → Row-Seite
  • Kathode → Column-Seite

Die Bauteilmarkierung zeigt zur Column.

Typischer elektrischer Pfad

Row-Seite
    |
  Schalter
    |
  Anode
    |
  Diode
    |
  Kathode
    |
Column-Seite

Der Durchlassstrom fließt somit:

Row → Diode → Schalter → Column

Je nach Zeichnungsnorm kann die Reihenfolge von Schalter und Diode im Schaltplan anders dargestellt sein; die elektrische Polarität muss jedoch gleich bleiben.

QMK-Konfiguration

In config.h:

#define DIODE_DIRECTION ROW2COL

Oder in keyboard.json:

{
    "diode_direction": "ROW2COL"
}

Die QMK-Matrix-API nennt die passende Leseoperation matrix_read_rows_on_col() und macht damit die Beziehung zwischen ausgewählter Column und gelesenen Rows klar.

Wann ROW2COL sinnvoll ist

ROW2COL kann passen, wenn:

  • die vorhandene Tastaturhardware diese Richtung bereits nutzt;
  • die umgekehrte Diodenorientierung das PCB-Routing deutlich vereinfacht;
  • die Firmware bereits für ROW2COL ausgelegt ist;
  • eine eigene Matriximplementierung diese elektrische Richtung benötigt;
  • ein bestehendes Tastaturdesign mit unveränderter Hardwareschnittstelle gepflegt wird.

Keine Richtung ist elektrisch grundsätzlich überlegen. Firmware und Hardware müssen übereinstimmen.


Die häufigste Ursache für Verwirrung: Welche Seite wird angesteuert?

Dieser Abschnitt ist bei der Fehlersuche an einer Tastaturmatrix besonders wichtig.

COL2ROW und ROW2COL werden oft missverstanden, weil sie fälschlich nur als Richtung eines GPIO-Signals interpretiert werden.

Bestimme die Schaltung anhand von drei Fragen:

  1. Welche Seite wird vom MCU angesteuert?
  2. Welche Seite wird vom MCU gelesen?
  3. In welche Richtung leitet die Diode?

Fall A: Column angesteuert, Row gelesen

Angenommen, die Schaltung ist so vorgesehen:

Column = Ausgang
Row    = Eingang

und die ausgewählte Column wird auf LOW gezogen.

Bei einem Pull-up am Row-Eingang:

3.3 V
  |
Row-Pull-up
  |
ROW-Eingang
  |
Diode
  |
Schalter
  |
COLUMN-Ausgang
  |
LOW

Damit ein Tastendruck die Row-Spannung absenkt, muss die Diode von Row nach Column leiten.

Daher gilt:

Anode   → Row
Kathode → Column

Das ist die ROW2COL-Diodenorientierung.

Wenn die Column auf LOW liegt, die Taste gedrückt wird und die Row trotzdem etwa 3,3 V misst, kann die Diode in COL2ROW-Richtung bestückt und damit sperrend sein.

Genau deshalb kann ein SPICE-Modell einer vereinfachten Erklärung scheinbar widersprechen: Es folgt der tatsächlichen Polarität, nicht dem Konfigurationsnamen.

Fall B: Row angesteuert, Column gelesen

Bei der umgekehrten Scan-Anordnung:

Row    = Ausgang
Column = Eingang

Wird die Row auf LOW gezogen und der Column-Eingang HIGH gehalten:

3.3 V
  |
Column-Pull-up
  |
COLUMN-Eingang
  |
Diode
  |
Schalter
  |
ROW-Ausgang
  |
LOW

Die Diode muss von Column nach Row leiten.

Daher gilt:

Anode   → Column
Kathode → Row

Das ist die COL2ROW-Diodenorientierung.

Der richtige Vergleich

Matrixkonfiguration Angesteuerte Seite Gelesene Seite Dioden-Anode Dioden-Kathode
COL2ROW Row Column Column-Seite Row-Seite
ROW2COL Column Row Row-Seite Column-Seite

Diese Tabelle ist die sicherste Zusammenfassung der Beziehung.

Nicht jeder eigene Tastatur-Scanner verwendet exakt diese aktiv-LOW-Schaltung. QMK unterstützt benutzerdefinierte Matrix-Scans, die GPIO-Steuerung kann also anders sein. Bei einer nicht standardmäßigen Matrix muss die Firmware geprüft werden.

Warum eine Row bei 3,3 V bleiben kann

Wenn:

ROW = 3.3 V über Pull-up
COLUMN = 0 V

und die Diode so orientiert ist:

Kathode → ROW
Anode   → COLUMN

dann gilt:

ROW = 3.3 V
COLUMN = 0 V

Die Diode ist damit rückwärts vorgespannt und stellt den erwarteten Weg von Row nach Column nicht bereit.

Ein Tastendruck muss den Row-Eingang folglich nicht auf LOW ziehen. Das ist kein rätselhafter MCU-Fehler, sondern die erwartete Folge der Diodenpolarität.


PCB-Footprint und Schaltplan für eine eindeutige Diodenrichtung

Auch ein elektrisch korrekter Entwurf kann bei der Bestückung scheitern, wenn der Footprint die Polarität nicht eindeutig zeigt.

Schaltplansymbol

Verwende ein Standardsymbol aus einer verlässlichen CAD-Bibliothek und prüfe die Pinbezeichnungen.

Das Symbol muss Anode, Kathode und Kathodenbalken unterscheiden. Beschreibe es nicht als „Pfeil“: Die Kathode wird durch den Balken markiert, das Diodensymbol selbst ist kein Pfeil. Gehäusemarkierung und Schaltplan-Kathode müssen übereinstimmen.

PCB-Footprint-Markierung

Jeder Dioden-Footprint braucht eine klare Kathodenmarkierung, etwa:

  • einen mit der Kathode ausgerichteten Silkscreen-Balken;
  • ein markiertes Kathoden-Pad;
  • eine Polaritätsangabe in der Bestückungszeichnung;
  • eine einheitliche Bauteilausrichtung auf der ganzen Platine;
  • Pin-1- oder Pad-Referenzen, sofern zutreffend.

Ein generisches Dreieck oder eine mehrdeutige Form darf nicht das einzige Polaritätssymbol sein.

Einheitliche Ausrichtung

Wenn das Routing es zulässt, sollten alle Dioden gleich ausgerichtet werden. Bei COL2ROW gilt zum Beispiel:

Alle Kathoden → Row

Bei ROW2COL:

Alle Kathoden → Column

Das erleichtert AOI, Sichtprüfung und Fehlersuche.

Footprint und reales Bauteil abgleichen

Der Footprint muss zum exakten Hersteller und Gehäuse passen, besonders bei SOD-123, SOD-323, SOD-523, SOT-23 und anderen Dualdiodengehäusen. Gleiche Gehäusenamen garantieren weder identische Pinbelegung noch identische Markierung.

Fertigungsunterlagen

Die Bestückungszeichnung muss die Polarität eindeutig zeigen. Für eine PCBA-Produktion sollte das Fertigungspaket idealerweise Gerber-Dateien, Pick-and-Place-Daten, BOM, Bestückungszeichnung, Polaritätsdaten und besondere Orientierungshinweise enthalten. Schaltplan, PCB, BOM und Zeichnung müssen dieselbe physische Orientierung beschreiben. Dies ist das Paket, das eine Linie für SMT-Bestückung verwendet, um die Diodenorientierung auf einer Tastatur-Leiterplatte festzulegen.


Test und Fehlersuche bei der Tastatur-Diodenrichtung

Diodenfehler lassen sich meist durch Sichtprüfung, Diodentest, Spannungsmessung und Firmwareprüfung eingrenzen.

Sichtprüfung

Vor dem Einschalten:

  1. Kathodenmarkierung am realen Bauteil bestimmen.
  2. Mit der Markierung des PCB-Footprints vergleichen.
  3. Prüfen, ob alle Dioden der gewünschten Matrixrichtung folgen.
  4. Eine 180-Grad-Drehung ausschließen.
  5. Gehäuse mit der BOM vergleichen.

Bei SMD-Bauteilen ist häufig eine Vergrößerung nötig.

Einzeltest der Diode

Bei Verdacht:

  1. Stromversorgung trennen.
  2. Diode isolieren, wenn die Messung in der Schaltung mehrdeutig ist.
  3. Multimeter auf Diodentest stellen.
  4. Rot an die erwartete Anode legen.
  5. Schwarz an die erwartete Kathode legen.
  6. Durchlass prüfen.
  7. Spitzen vertauschen und Sperrverhalten prüfen.

Messungen in der Schaltung können durch andere Bauteile und Matrixpfade beeinflusst werden; ein auffälliges Ergebnis ist daher isoliert zu bestätigen.

Matrix-Spannungstest

Bei:

Column = Ausgang LOW
Row    = Eingang mit Pull-up

gilt typischerweise:

  • Taste losgelassen → Row bleibt möglicherweise über den Pull-up HIGH.
  • Taste gedrückt, korrekte ROW2COL-Polarität → Row wird, abhängig von GPIO und Diodenabfall, zur ausgewählten LOW-Column gezogen.
  • Taste gedrückt, umgekehrte Polarität → Row kann HIGH bleiben, weil die Diode sperrt.

Das ist beim Debuggen einer SPICE-Simulation oder eines Prototyps besonders hilfreich.

Firmwareprüfung

Die Firmwareeinstellung muss geprüft werden:

#define DIODE_DIRECTION COL2ROW

oder:

#define DIODE_DIRECTION ROW2COL

In keyboard.json gilt entsprechend:

"diode_direction": "COL2ROW"

oder:

"diode_direction": "ROW2COL"

Die Einstellung muss dem physischen Matrixdesign entsprechen. Bei einem Custom-Scanner darf das Standardverhalten erst nach Prüfung des eigenen Codes angenommen werden.

Typische Fehlerbilder

Alle Tasten fallen aus: Firmwarerichtung und Hardware stimmen nicht überein, GPIOs oder Matrixabmessungen sind falsch, oder eine gemeinsame Row-/Column-Leitung ist unterbrochen.

Eine Taste fällt aus: mögliche Ursachen sind eine verpolte Diode, ein Lötfehler, eine offene Leiterbahn, ein defekter Schalter oder ein falsches Bauteil.

Eine Row oder Column fällt aus: prüfe Leiterbahn, Steckverbinder, Lötstelle, MCU-Pinbelegung, Kurzschluss und Matrixkonfiguration.

Row bleibt bei etwa 3,3 V, während Column LOW ist: Pull-up, LOW-Ausgang, Schalterkontakt, Polarität für den Stromweg Row → Column und die ROW2COL-artige Firmwarebeziehung prüfen.

Ghosting bei mehreren Tasten: fehlende oder falsch ausgerichtete Dioden, falsche Matrixverdrahtung, Firmwarekonfiguration oder Custom-Matrixlogik prüfen.

  • Anode
  • Kathode
  • Kathodenbalken
  • SOD-123
  • SOD-323
  • SOD-523
  • SOT-23
  • andere Dualdiodengehäuse
  • Gerber-Dateien
  • Pick-and-Place-Daten
  • BOM
  • Bestückungszeichnung
  • Polaritätsinformationen
  • besondere Orientierungshinweise
  • Firmware-Diodenrichtung stimmt nicht mit der Hardware überein.
  • Matrix-GPIO-Konfiguration ist fehlerhaft.
  • Eine gemeinsame Row- oder Column-Leitung ist unterbrochen.
  • Der Scanner verwendet falsche Matrixabmessungen.
  • Eine Diode ist umgekehrt bestückt.
  • Lötfehler
  • Unterbrochene Leiterbahn
  • Defekter Schalter
  • Falsches Bauteil
  • Eine Row- oder Column-Leitung ist gebrochen.
  • Steckverbinder oder Lötstelle sind fehlerhaft.
  • MCU-Pin ist falsch zugeordnet.
  • Kurzschluss
  • Falsche Matrixkonfiguration
  • Die Row besitzt tatsächlich einen Pull-up.
  • Die Column ist tatsächlich konfiguriert und wird auf LOW gezogen.
  • Der Schalter schließt elektrisch.
  • Die Diodenpolarität erlaubt Strom von Row zu Column.
  • Die Firmware verwendet die vorgesehene ROW2COL-Scanbeziehung.
  • Dioden fehlen.
  • Dioden sind falsch ausgerichtet.
  • Die Matrix ist falsch verdrahtet.
  • Die Matrixkonfiguration der Firmware ist falsch.
  • Eine eigene Matrixlogik verändert den Scan.

Checkliste für das Tastatur-Diodendesign

Vor Fertigung oder Bestückung prüfen:

Elektrik

  • COL2ROW oder ROW2COL festlegen.
  • Angesteuerte Matrixseite bestimmen.
  • Gelesene Seite bestimmen.
  • Stromweg bei gedrückter Taste bestätigen.
  • Durchlassbias jeder Diode im gedrückten Zustand bestätigen.
  • Unerwünschte Rückwege ausschließen.

Schaltplan

  • Kathodensymbol prüfen.
  • Anoden- und Kathodennamen prüfen.
  • Schalter und Dioden an die vorgesehenen Matrixnetze anschließen.
  • Schaltplan und Firmware abgleichen.
  • Mehrdeutige Polaritätssymbole vermeiden.

PCB-Layout

  • Polarität jedes Footprints prüfen.
  • Kathodenmarkierung ergänzen.
  • Ausrichtung möglichst einheitlich halten.
  • Hersteller-Gehäusezeichnung prüfen.
  • Sicherstellen, dass das Bauteil die Silkscreen-Markierung nicht verdeckt.

Firmware

  • DIODE_DIRECTION prüfen.
  • matrix_pins.cols prüfen.
  • matrix_pins.rows prüfen.
  • Scanrichtung und physische Diodenrichtung abgleichen.
  • Vor Annahme des Standardverhaltens Custom-Scanning prüfen.

Fertigung

  • BOM-Teilenummer prüfen.
  • Gehäuse prüfen.
  • Kathodenmarkierung in der Bestückungszeichnung prüfen.
  • Pick-and-Place-Drehung prüfen.
  • Polarität nach dem Bestücken inspizieren.
  • AOI ausführen.
  • Elektrischen Matrix-Test an bestückten Platinen durchführen.

COL2ROW und ROW2COL: Kurzreferenz

Punkt COL2ROW ROW2COL
Kathode Row Column
Anode Column Row
QMK-Richtung COL2ROW ROW2COL
QMK-Lesefunktion matrix_read_cols_on_row() matrix_read_rows_on_col()
Typischer Stromweg Column → Schalter → Diode → Row Row → Diode → Schalter → Column
Column LOW, Row gelesen keine passende Standardrichtung passend
Row LOW, Column gelesen passend keine passende Standardrichtung

Wähle die Richtung nicht allein nach den Wörtern „Column“ und „Row“. Bestimme angesteuerte Seite, Leseseite und die Vorwärtspolarität im gedrückten Zustand.

Nach QMK-Standard zeigt die Kathodenmarkierung bei COL2ROW zur Row, bei ROW2COL zur Column. QMK dokumentiert dafür getrennte Row- und Column-Lesefunktionen.


HILPCB-Tastatur-PCB-Bestückung

Für zuverlässige Keyboard-PCBA müssen Teilenummer, Gehäuse, Bestückungsdrehung, Kathodenmarkierung und Matrixfunktion geprüft werden.

HILPCB unterstützt Tastatur-PCB-Assembly und SMT-Fertigung mit:

  • BOM- und Bauteilprüfung
  • Pick-and-Place-Programmierung
  • SMT-Bestückung
  • automatischer optischer Inspektion (AOI)
  • elektrischer Prüfung
  • Prototypen- und Kleinserienbestückung
  • Serienproduktion

Die Fertigungsdaten müssen Teilenummer, Gehäuse, Polarität und Bestückungsrichtung der Diode eindeutig angeben.


Fazit

Die sicherste Bestimmung der Tastatur-Diodenrichtung beginnt bei der realen Scan-Schaltung.

Bei:

Column = Ausgang LOW
Row    = Eingang mit Pull-up

muss die Diode leiten:

Row → Column

also:

Anode   → Row
Kathode → Column

Das entspricht in der QMK-Terminologie ROW2COL.

Bei:

Row    = Ausgang LOW
Column = Eingang mit Pull-up

muss der Strom fließen:

Column → Row

also:

Anode   → Column
Kathode → Row

Das entspricht COL2ROW.

Bleibt ein Row-Eingang nahe 3,3 V, während eine Column LOW ist, kann eine rückwärts vorgespannte Diode die normale Folge sein, wenn die Hardware COL2ROW nutzt, der Scanner aber die entgegengesetzte Richtung erwartet.

Prüfe immer die tatsächliche Firmware-Implementierung, besonders bei Custom-Matrix-Scannern: Welche GPIOs angesteuert und welche gelesen werden, bestimmt das elektrische Verhalten, nicht der Name allein.