> For the complete documentation index, see [llms.txt](https://jonny-wamsley.gitbook.io/the-ultimate-guide-to-keyboard-layers/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jonny-wamsley.gitbook.io/the-ultimate-guide-to-keyboard-layers/ch-2-setup/2.2-firmware.md).

# 2.2 Firmware

> The firmware of a keyboard is what runs on the board's microcontroller, reading the keyboard matrix and sending the scancodes for pressed keys to the computer. When a keyboard is backlit the LEDs are typically controlled by the firmware as well.  - /r [mk firmware wiki](https://www.reddit.com/r/MechanicalKeyboards/wiki/firmware#wiki_firmware_wiki)

Some ergo keyboards don't easily expose firmware, others do. QMK is by far the most popular firmware for keyboards. Most ergo keyboards use QMK or have their own forked version.

* QMK

{% embed url="<https://docs.qmk.fm/#/>" %}

Depending on what keyboard you get, you will have instructions on how to set up the keyboard specific firmware, software and layers.
