Keebio Documentation
  • Website
  • docs
    • 3D-Printed Case Parts Installation
    • adding-rgb-underglow
    • BAMFK-1 Build Guide
    • bdn9-build-guide
    • bdn9-rev1.3-build-guide
    • bdn9-rev2-build-guide
    • BFO-9000
    • Breeze Rev. 1.3 Build Guide
    • case-files
    • Cepstrum Hotswap
    • Chiri CE
    • choc-stabs
    • chocopad-build-guide
    • Convolution Build Guide
    • Default Keymaps
    • dfu-on-pro-micro
    • dilly-build-guide
    • Elite-Pi Usage Guide
    • VIA Firmware Upgrade Procedure
    • Flashing Firmware
    • FoldKB
    • fourier-build-guide
    • glossary
    • Switch Installation for Pre-Built Hotswap Keyboards
    • Iris Aluminum Case Build Guide
    • Iris CE
    • iris-choc-build-guide
    • Iris Keyboard
    • iris-led-fix
    • Iris LM
    • iris-middle-layer
    • iris-rev2-build-guide
    • Iris Rev. 3-5
    • Iris Rev. 6-8 Hotswap
    • Enabling Iris Rev. 6 VIA RGB Controls & Encoder Mapping
    • Iris SE
    • laplace-build-log
    • Levinson Rev. 3
    • Lighting Options
    • Build Guide Info
    • nyquist-build-guide
    • nyquist-rev3-build-guide
    • Quefrency Rev. 4-6 Hotswap Build Guide
    • quefrency-rev1-build-guide
    • Quefrency/Sinc/KBO-5000 (Solder Version)
    • Remapping/Reprogramming your Keyboard
    • Reprogramming Encoders
    • Resetting/Clearing EEPROM
    • schematics
    • Sinc Rev. 3-4 Hotswap Build Guide
    • Recommended Soldering Tools
    • Stampy Usage Guide
    • standard-for-build-guides
    • stick-build-guide
    • Tenting Bolts Setup for Acrylic Middle Layer
    • Testing Your PCB
    • troubleshooting
    • VIA and QMK Firmware
    • VIA Usage Guide
    • viterbi-rev2-build-guide
    • Waterfowl Build Guide
    • WTF60
    • faq
      • Contact Info
      • Recommended Keycaps
      • main
      • miscellaneous
      • ordering
      • Products
      • Shipping
      • Switches and Sockets
      • Technical/Build Info
Powered by GitBook
On this page
  • What is QMK?
  • What is VIA, and how does it relate to QMK?
  • Keyboards with VIA Support
  • Adding VIA support to a keyboard
  1. docs

VIA and QMK Firmware

PrevioustroubleshootingNextVIA Usage Guide

Last updated 2 years ago

There's sometimes a bit of confusion about what is QMK and VIA, as well as how they relate to each other. Hopefully after reading through this, we'll get you sorted out on what's what and how it applies to your keyboard.

What is QMK?

Before we dive into what VIA is, let's go over what QMK Firmware is first in case you're not sure. is an open-source keyboard firmware, and most keyboards within the mechanical keyboard community use QMK. QMK also encompasses a suite of other tools, such as and .

QMK Firmware has a lots of features, like supporting multiple layers, macros, Mod-Tap, mouse keys, split keyboards, backlighting, RGB, etc., which makes it a popular choice for hobbyists.

All of the keyboards released by Keebio so far have QMK support, and Keebio is involved with the QMK organization as a collaborator.

What is VIA, and how does it relate to QMK?

Normal QMK Usage

So when dealing with QMK normally, if you want to update your keymap, you modify your keymap code within a QMK build environment and compile it or use something like . In either case a .hex/.bin file is generated that then needs to be flashed/reflashed to your keyboard. Setting up a QMK build environment can be a bit complicated for some people, and while the QMK Configurator helps make this process easier, sometimes can be tricky as well.

QMK with VIA

This is where VIA steps in. VIA is a feature in QMK that lets you change your keymap on your keyboard without needing to reflash firmware. The changes you make using VIA remain persistent on the keyboard, so even when you unplug and replug your keyboard back in, the keymap settings still remain.

For some boards, there is also a lighting controls option that may be enabled, and this allows to to control the brightness of in-switch LEDs and/or control RGB lighting colors and modes.

Parts of VIA

VIA consists of two parts: Firmware and VIA Configurator.

The firmware is for the most part QMK with the VIA_ENABLE feature enabled. Note that by default, most keyboards do not have the VIA_ENABLE feature enabled. See for a list of supported keyboards and the firmware files to use.

VIA Configurator is a desktop app that talks to your VIA-enabled keyboard and allows you to remap keys on-the-fly, as well as toggling layout options, programming macros, and controlling lighting.

VIA Limitations

The ability to change rotary encoder keycodes has been recently added to VIA, but not all keyboards have added support for it yet.

Keyboards with VIA Support

Adding VIA support to a keyboard

Do note that not all features of QMK are supported by the VIA Configurator, so if you want to use more advanced features of QMK like Tap Dance, then you'll need to setup a . By default on most VIA-supported keyboards, there is a limit of 4 layers. This can sometimes be increased, but once again, this requires setting up a QMK build environment.

Here's a list of keyboards with VIA support: . Note that just because your keyboard is listed there doesn't mean that you can immediately use VIA Configurator with it. The firmware flashed to the keyboard must have VIA support enabled, and you can find pre-compiled .hex/.bin firmware files with VIA support here: .

Adding VIA support to a keyboard is not particularly straight forward, but if you are interested in doing so and have good working knowledge of QMK, checkout on his efforts to .

QMK Firmware
QMK Configurator
QMK Toolbox
QMK Configurator
flashing a board with firmware
below
QMK build environment
Supported Keyboards
VIA Firmware Downloads
MechMerlin's videos
add VIA support to various boards