Was ist QMK/VIA?

Und wie benutze ich es?

Wer sich für mechanische Tastaturen interessiert, kommt früher oder später an “QMK/VIA” vorbei.

Aber was ist QMK/VIA und wie benutze ich es? 

Das soll dieser Beitrag klären.

QMK/VIA?

QMK, ausgeschrieben Quantum Mechanical Keyboard, ist ein OpenSource Treiber für Eingabegeräte, welcher von der Community gepflegt wird.
QMK ist grundlegend dafür verantwortlich, was eine Tastatur kann, also was Tasten und deren Kombinationen auslösen können. 

Beispiel:
Eine 60% Tastatur hat keine F-Reihe und keine Multimediatasten (Play, Next, ect.). 

Unterstützt besagte Tastatur QMK/VIA, so kann man nun eine FN-Taste festlegen und z.B. die Zahlenreihe mit den Funktionen der F-Reihe versorgen.
Jetzt braucht man noch Multimediatasten und die erste Reihe einer Tastatur bietet sich dafür natürlich auch an.
Nun kann man einen zweiten FN-Layer anlegen, indem man einer zweiten Taste die Funktionalität zuweist, einen weiteren Layer aufzurufen.
Die Multimediatasten legt man sich dann auf der Zahlenreihe, wie man sie möchte. 

Aber nicht nur Tastenbelegungen kann VIA, es ist auch möglich Makros zu erstellen und auch die Beleuchtung zu regeln.

Zusammenfassend kann man über VIA sagen, dass es bei einer Tastatur alles realisieren kann, was mit einer Tastatur technisch möglich ist.

Wenn deine Tastatur QMK/VIA kompatibel ist, gibt es zwei Möglichkeiten auf VIA zuzugreifen:

  1. per Download auf Github:
    https://github.com/the-via/releases/releases
  2. oder auf der Seite:
    https://usevia.app/

Bei Punkt zwei ist es allerdings wichtig einen “WebHID API” kompatiblen Browser zu benutzen.
Das sind, Stand dieses Beitrags (Oktober 2023):

  • Chrome
  • Edge
  • Opera*

In diesem Beitrag verwende ich die Browserversion, da man hier keine Installation braucht und das für die meisten Nutzer auch am Einfachsten ist. 
Allerdings sehen das zu installierende Programm und die Browserversion absolut identisch aus.
Die hier verwendete Tastatur ist eine Keychron Q1.

*Ich rate dringend davon ab Opera zu nutzen, da die “Opera Software” seit 2015 einem eher dubiosen chinesischen Unternehmen gehört. Datenschutztechnisch sehr bedenklich.

Wie verbinde ich meine Tastatur?

Zunächst ruft man https://usevia.app/ auf.

QMKVIA mit Keychron Q1 - 2. Startseite Autorisieren

Dann klickt man auf “Authorize device”.

Es poppt ein kleines Fenster auf, welches die verbundenen und kompatiblen Geräte anzeigt.

QMKVIA mit Keychron Q1 - 3. Autorisieren

Tastatur auswählen und auf “verbinden” klicken.

Wie benutze ich VIA?

Jetzt sollte die Tastatur mit dem passenden Layout angezeigt werden.
Nicht wundern, es wird immer das englische Layout angezeigt.
Umlaute sucht man hier vergeblich. Allerdings weiß das Windows und lädt sozusagen das richtige Layout, wenn man die Tastatur anschließt.

Tasten weißt man zu, indem man auf dem Bild der Tastatur eine Taste anklickt und unten den passenden Befehl auswählt.

Vorsicht:
Standard wird immer automatisch die nächste Taste ausgewählt. Wenn man nun einen anderen Befehl anklickt, wird er so der nächsten Taste zugewiesen.
Hier also bitte aufpassen, dass man sich nicht aus Versehen das Layout zerschießt.
Um das auszuschalten, klickt man unter Einstellungen auf “Fast Key Mapping”.

QMKVIA mit Keychron Q1 - Basic

!!! WICHTIG !!!

Oben links steht “Layer 0 1 2 3”, das ist der Informatik geschuldet, die beim Zählen mit der Null anfängt. Praktisch stehen hier aber vier Layer zur Verfügung.

Die ersten beiden Layer (0 und 1) sind für Apple, bzw. IOS Geräte.

Benutzt du deine Tastatur an einem Applegerät, musst du deine Änderungen hier vornehmen.
Nutzt du Windows, sind Layer 2 und 3 die zu ändernden Layer.

Sonderfall, du nutzt beide Betriebssysteme, musst du leider alle Layer anpassen.

Layer 0 und 2 sind die Standardlayer, welche die normalen Tasten repräsentieren.
die Layer 1 und 3 zeigen den zweiten Layer, welcher über die “MO(1)” Taste zu erreichen sind.
“MO(1)” ruft Layer 1 auf, das ist der IOS Layer. Änderst du etwas an den WindowsLayern, ist der richtige Befehl dann “MO(3)”, dieser ruft Layer 3 auf.

Es ist auch möglich weitere Layer anzulegen, dazu komme ich aber noch.

Unten werden die Befehle angezeigt, welche man den Tasten der Tastatur zuweisen kann.
Standard werden die Basic Tasten angezeigt, also Buchstaben, Zahlen, Modifier, wie sie auf jeder Tastatur zu finden sind.

Mac Layer:
0 und 1

Windows Layer:
2 und 3

Welche Befehle/Tasten gibt es?

Der Funktionsumfang von VIA ist sehr groß, weshalb wir jetzt jede Überkategorie nach und nach abarbeiten. 
Hier ist ein kleines Unterinhaltsverzeichnis, wo du direkt zu dem Punkt springen kannst, welchen du gerade lesen möchtest.

Manche Menüs könnten, je nach Tastatur und Firmware Version nicht angezeigt werden!

Der Funktionsumfang von VIA ist sehr groß, weshalb wir jetzt jede Überkategorie nach und nach abarbeiten. 
Hier ist ein kleines Unterinhaltsverzeichnis, wo du direkt zu dem Punkt springen kannst, welchen du gerade lesen möchtest.

Manche Menüs könnten, je nach Tastatur und Firmware Version nicht angezeigt werden!

1. Basic

Im Reiter “Basic” finden sich die Standardtasten einer jeden (Fullsize-)Tastatur.

Die ersten beiden Befehle, die leere Taste und das Dreieck sind natürlich nicht Standard.

Die leere Taste würde ich anraten, nicht zu benutzen, da sie genau das macht, wie sie heißt: Nichts.

Alle Tasten, die auf dem aktuellen Layer keine Funktion haben sollen, müssen mit dem Dreieck belegt sein. Dieser Befehl sorgt dafür, dass die Taste sozusagen an den nächsthöheren Layer durchgereicht wird.

Beispiel:
Layer 1 ist die Standardbelegung.
Layer 2 sind die F Tasten und Multimediatasten.
Auf Layer 3 soll nun auf den ersten 4 Zahlentasten auch die Multimediasteuerung realisiert werden.

Die ersten 4 Zahlentasten sehen dann wie folgt aus:
Layer 1: 

Layer 2:

Layer 3:

Würde der zweite Layer den “nothing” Befehl anstelle des Dreiecks haben, ginge der dritte Layer nicht.

1.1 Media

Mit dem Reiter “Media” kann man die Multimediatasten belegen. Laustärke, nächster, vorheriger Titel, muten, Play (Stop).

Ich denke dieser Reiter ist auch selbsterklärend. 

1.2 Macro

Unter “Macro” kann man sich (erstellte!) Makros auf bestimmte Tasten legen.

Wie man Makros erstellt, erkläre ich später.

1.3 Layers

Der Reiter “Layers” bietet verschiedene Arten, um Layer aufzurufen.

  • Fn1
    Halten öffnet Layer 1, hält man es mit Fn2 aktiviert man Layer 3.
  • Space Fn1
    Antippen ist wie Space, halten aktiviert Layer 1. 
  • MO
    MO steht für MOmentarily (momentan) und bedeutet, dass diese Taste den entsprechenden Layer aktiviert, solang man die Taste gedrückt hält.
  • TG
    ToGgle (umschalten) schaltet Layer (dauerhaft) um. Aktiviert einen Layer, wenn er inaktiv ist und andersherum.
  • TT
    Tapping Toggle (klopf umschalten) funktioniert wie MO gepaart mit TG. 
    Tippt man (Standard) 5 mal diese Taste, schaltet sie bestimmte Layer um.
  • OSL
    One Shot Layer aktiviert den Layer bis eine Taste gedrückt wurde.
  • TO
    Wenn aktiviert, deaktivieren sich alle anderen, außer der Standardlayer. Kann so auch Layer höhere Layer mit niedrigeren tauschen.
  • DF
    Der DeFault-Layer legt den untersten Layer fest, also die Standardbelegung einer Tastatur.
    Mehrere Optionen können so verschiedene Layouts realisieren.
    Entweder “QWERTZ” oder das Dvorak Layout.

1.4 Special

Bei Specials findet man, wie der Name schon suggeriert, die speziellen Tasten.

Hier jede vorzustellen würde den Rahmen sprengen. 

Hier verweise ich auf die super ausführlichen docs von QMK:
https://docs.qmk.fm/

Allerdings sollte noch der letzte, sogenannte “AnyKey” erwähnt werden. 
Nein, das ist nicht die “beliebige Taste”, die man drücken soll, wenn der PC eine Tasteneingabe erwartet.
Mit diesem Befehl kann man die Taste mit jedem beliebigen QMK Code füttern.

Auch erwähnenswert ist sind die Funktionen um den Mauszeiger zu bedienen.

1.5 Lightning

Auch hier verrät der Name, was die Befehle anstellen, die steuern die Hintergrundbeleuchtung der Tastatur.

Die wichtigsten Befehle sind:

  • RGB Toggle
    Schaltet RGB Beleuchtung an oder aus.
  • RGB Mode + / RGB Mode –
    Schaltet die RGB Modi entweder “nach vorne” oder “nach hinten” durch die Liste der RGB Modi. (Hier kommen wir auch noch vorbei.)
  • Hue + / Hue –
    Erhöht oder verringert den Farbton.
  • Sat + / Sat –
    Erhöht oder verringert die Sättigung.
  • Bright + / Bright –
    Erhöht oder verringert die Helligkeit.
  • Effect Speed + / Effect Speed –
    Verschnellert oder verlangsamt den aktuellen RGB Modus.
    Zum Beispiel läuft beim Modus “Snake” die Lichtschlange schneller oder langsamer über die Tastatur.

1.6 Custom

Hier werden spezifische Befehle für Windows und IOS angeboten.

“Cortana” oder auch “Siri” lassen das natürlich schon vermuten.

1.7 Other

Ich muss gestehen, dass ich keine Ahnung habe, welche Befehle hier warten. Diese sind so speziell, dass ich dem Leser dieses Guides ans Herz lege, sich hier mit den Docs von QMK einzulesen.

Ich konnte allerdings herausfinden, dass diese Befehle wohl mit alten und/oder speziellen Tastaturen zutun haben müssen.

Was kann man mit QMK/VIA noch machen?

Makros

Unter dem Reiter “Macros” kann man bis zu 15 Makros erstellen.

Man klickt links die gewünschte Nummer an, rechts erscheinen dann die Tools zum Erstellen.

Man kann über den Kreis (rechts daneben “Fullscreen” drücken, sonst geht es nicht) ein Makro aufnehmen.

So wird dann gespeichert, was gedrückt und was losgelassen wurde.

Der Zauberstab “Smart Optimization” erschließt sich mir nicht ganz. Diese Funktion “schneidet” während der Aufnahme “Drücken” und “Loslassen” bei Buchstaben raus.

Das ist wichtig, da der Speicher des Controllers begrenzt ist.
Dieser wird über die Leiste in der Mitte symbolisiert.

Hält man die Maus darüber, wird angezeigt, wie viel Speicher im Controller noch vorhanden ist.

Die Stoppuhr steht für die Delayfunktion.

Hier kann man Delays in seine Makros einfügen, falls man eine Zeitverzögerung bei Eingaben braucht. 

Die Funktion, die ich bevorzuge, findet sich, wenn man auf “</>” klickt.

Hier kann man das gewünschte Makro mit Befehlen selbst erstellen.

Die Keycodes hierfür findet man unter folgendem Link:
https://docs.qmk.fm/#/keycodes

In den Beispielen unter dem Eingabefeld sieht man auch, welche Arten von Tastenanschlägen es gibt:

  • Einzelanschlag
  • “Akkorde”, also mehrere Befehle/Tasten mit einem Anschlag
  • Taste “runter”
  • Taste “hoch”
  • Delays (bei mir ausgegraut, da die Tastatur das aktuell nicht kann)
Tippt man ein “?” in das Eingabefeld, werden alle Befehle in einem DropdownMenü angezeigt.

Lightning

“Lightning” kümmert sich um die RGB Beleuchtung einer Tastatur.

Hier kann man per Schieberegler die Helligkeit und die Schnelligkeit von Effekten einstellen.

Die Option für die Farbe kommt nur zum Tragen, wenn der Effekt einfarbig ist, bzw. als Grundfarbe mancher Effekte. Diese kann man aus einer Farbpalette per Maus oder per Hex-Farbcode bestimmen.

Effekte ändert man natürlich unter dem Reiter “Underglow Effect”.

Es können unterschiedliche Effekte für unterschiedliche Tastaturen zur Verfügung stehen. Es kann auch sein, dass man die Firmware updaten muss, um alle Effekte nutzen zu können.

Auch ist es möglich, eigene Effekte zu erstellen. Dies muss aber programmiert, verpackt und mit der Firmware geflasht werden.
Wer daran Interesse hat, den verweise ich gerne auf die Dokumentation von QMK.

Die zur Verfügung stehenden Effekte bei einer Keychron Q1 sind:
(In Klammer versuche ich den Effekt zu beschreien, wenn möglich.)
  • None
    (keiner)
  • Solid Color
    (feste Farbe)
  • Breathing
    (atmen)
  • Band Spiral Val
    (Dreht eine farbige Spirale über die Tasten)
  • Cycle All
    (Alle Tasten haben die selbe Farbe und diese Ändert sich in einer bestimmten Frequenz durch “alle” Farben)
  • Cycle Left Right
    (Spalten haben unterschiedliche Farben, von links läuft eine Farbe nach rechts)
  • Cycle Up Down
    (Wie Left Right, nur von oben nach unten)
  • Rainbow Moving Chevron
    (Hier läuft ein angedeuteter Pfeil von links nach rechts durch Regenbogenfarben)
  • Cycle Out In
    (Wie Left Right, nur laufen die Farben von links und rechts in der Mitte zusammen)
  • Cycle Out In Dual
    (Links und rechts, mittig sind imaginäre Kreise. Die Farben laufen von außen auf die Kreise zu und verschwinden in ihnen)
  • Cycle Pinwheel
    (In der Mitte ist der Mittelpunkt einer Line, diese dreht sich um diesen Mittelpunkt)
  • Cycle Spiral
    (Wie Pinwheel, nur ist die Linie nun spiralförmig)
  • Dual Beacon
    (Wie Cycle Spiral, nur scheint die Linie etwas anders über die Tastatur zu wandern.)
  • Rainbow Beacon
    (Wie Dual Beacon, nur zieht die Linie Regenbogenfarben mir sich)
  • Jellybean Rainbow
    (Ändert die Farbe pro Taste, die Farben sind eher neon gehalten)
  • Pixel Rain
    (Wie Jellybean Rainbow, nur gehen manche Tasten auch vollständig aus)
  • Typing Heatmap
    (Je öfter eine Taste gedrückt wird, desto mehr leuchtet sie von blau über gelb zu rot hin. Hat man eine Taste oft genug gedrückt, leuchtet sie also rot beim Antippen)
  • Digital Rain
    (Regnet wie Jellybean, nur entsteht der Regen neu und verschwindet auch überwiegend wieder)
  • Reactive Simple
    (Leuchtet unter der Taste, welche gedrückt wurde, einfarbig)
  • Reactive Multiwide
    (Wie Simple, nur leuchten auch Tasten um die gedrückte herum)
  • Reactive Multinexus
    (Noch mehr Reatktion als bei Multiwide? Dann das hier)
  • Splash
    (Kreisrund um die gedrückte Taste fahren Farben nach Außen)
  • Solid Splash
    (Splasht in nur einer Farbe)

Save and Load (Layout)

Dem aufmerksamen Leser ist aufgefallen, dass dieser Punkt des linken Menüs übersprungen wurde.

Das liegt aber am reellen Nutzen dieser Option:
Man kann ein Layout als .json Datei entweder exportieren (save) oder importieren (load).

Je nach Anwendungsfall kann das sehr nützlich sein, wenn man beispielsweise oft die Arbeitsumgebung wechselt und nicht mit mehreren Layern arbeiten möchte.

Keytester

Oben in der Mitte ist ein Stethoskop abgebildet, dies ist ein Tastentester. Wird eine Taste gedrückt, wird sie auf der Grafik farbig. Eine Tonausgabe ist optional.

Wird nicht direkt das angeschlossene Board angezeigt, hilft der Schieberegler “Test Matrix”. Dies sollte das Layout des angeschlossenen Boards laden.

“Key Sounds” schaltet Töne beim Drücken der Tasten an oder aus.

“Volume” regelt die Lautstärke.

“Transpose” die Tonlage.

“Waveform”, wie auch “Mode” die ausgegebenen Töne. Allerdings kenne ich mich in der Musik zu wenig aus, um das hier richtig zu beschreiben. 

Design

Der “Design” Tab ist für den Endverbraucher uninteressant. Hier können Tastaturdesigner schauen, ob ihr Layout richtig ist.

Eine Ausnahme gibt es, hat der Tastaturhersteller seine Treiber nicht bei QMK eingereicht, so muss man händisch VIA das Layout beibringen.

Auf dem Bild ist das Layout der Jris65 zu sehen. Hier findet VIA auch nicht sofort das Layout.

Einstellungen

Im Einstellung Tab kann man das Aussehen der Oberfläche ändern und das Aussehen der Abbildung der Tastatur anpassen.

Grundlegend kann man hier nichts wichtiges einschalten, außer den Punkt “Fast Key Mapping”. Dieser sorgt dafür, dass wenn man eine Taste ausgewählt und einen Befehl zugewiesen hat, der Cursor auf die nächste Taste springt.
Da ich hier schon öfters aus Versehen den Befehl geändert habe, schalte ich das immer aus.

Links

Oben rechts finden sich noch die Links zur offiziellen VIA Seite, Discord und Guthub.

DSGVO Cookie Consent mit Real Cookie Banner