The Firmware Inside Your Keyboard: From TMK to QMK to VIA

A Teensy microcontroller board, the kind of chip that runs TMK and QMK keyboard firmware

Keyboard firmware is the small program running on the tiny microcontroller chip inside your keyboard. It translates each key press into signals your computer understands — and it holds your keymap (which key does what), your layers (extra layouts you switch between), and any macros you set. The firmware powering most custom keyboards wasn't written by a company at all: it grew out of a hobbyist project called TMK, became the open-source standard QMK, and got a point-and-click front end in VIA and VIAL.

A Teensy microcontroller board, the kind of chip that runs TMK and QMK keyboard firmware

What does keyboard firmware actually do?

When you press a key, the microcontroller scans for the contact, looks up what that position means in your keymap, and sends the result over USB. A layer is a whole second layout stacked on top of the first: hold a key and your number row becomes media controls or arrow keys. Firmware is what makes all of that possible.

Where did TMK come from?

In the early 2010s, a Japanese hobbyist known as hasu shared TMK, an open-source firmware for custom keyboard controllers, documenting it on Geekhack. TMK became famous for its USB converters — adapters that translate old keyboard protocols into modern USB so vintage boards work on today's computers, or sit between a modern keyboard and your PC to add remapping and layers to a board you could never otherwise reprogram.

Why did QMK become the standard?

QMK began as a fork of TMK and grew into the community's shared standard. When newcomers ask "why QMK?", the answer is: it's open source, so no company can take it away; it supports hundreds of keyboards and hand-wired builds, so your knowledge transfers from board to board; and a large community maintains it, so it keeps improving. Unlike closed vendor software — abandoned when the manufacturer moves on — a QMK board stays configurable for as long as people care about it.

What about VIA and VIAL?

Classic QMK requires editing code and flashing the firmware to change your layout — powerful but intimidating. VIA and its community fork VIAL are configurator apps that talk to the firmware live: click a key on screen, pick a new function, and it changes instantly, no compiling required. You get QMK's depth with a beginner-friendly interface on top.

Getting started with firmware on your own build

You don't need to understand firmware to enjoy a great keyboard — but knowing what's inside helps you choose the right board. If you want remapping, layers, and macros that work on any computer, look for QMK or VIA/VIAL support. Our guide at typetide.shop, How to Build Your First Custom Mechanical Keyboard, covers picking compatible parts — and flashing your first build with QMK is one of the most satisfying moments in the hobby.

Keep reading