1
0
Fork 0
qmk_firmware/docs/README.md

32 lines
2.3 KiB
Markdown
Raw Normal View History

# Quantum Mechanical Keyboard Firmware
2017-06-29 16:13:44 +00:00
## Getting started
2017-06-29 16:13:44 +00:00
* [What is QMK Firmware?](#what-is-qmk-firmware)
* [How to get it](#how-to-get-it)
* [How to compile](#how-to-compile)
* [How to customize](#how-to-customize)
2017-06-29 16:13:44 +00:00
### What is QMK Firmware? {#what-is-qmk-firmware}
2017-06-29 16:13:44 +00:00
QMK (*Quantum Mechanical Keyboard*) is an open source community that maintains QMK Firmware, QMK Flasher, qmk.fm, and these docs. QMK Firmware is a keyboard firmware based on the [tmk\_keyboard](http://github.com/tmk/tmk_keyboard) with some useful features for Atmel AVR controllers, and more specifically, the [OLKB product line](http://olkb.com), the [ErgoDox EZ](http://www.ergodox-ez.com) keyboard, and the [Clueboard product line](http://clueboard.co/). It has also been ported to ARM chips using ChibiOS. You can use it to power your own hand-wired or custom keyboard PCB.
2017-06-29 16:13:44 +00:00
### How to get it {#how-to-get-it}
2017-06-29 16:13:44 +00:00
If you plan on contributing a keymap, keyboard, or features to QMK, the easiest thing to do is [fork the repo through Github](https://github.com/qmk/qmk_firmware#fork-destination-box), and clone your repo locally to make your changes, push them, then open a [Pull Request](https://github.com/qmk/qmk_firmware/pulls) from your fork.
2017-06-29 16:13:44 +00:00
Otherwise, you can either download it directly ([zip](https://github.com/qmk/qmk_firmware/zipball/master), [tar](https://github.com/qmk/qmk_firmware/tarball/master)), or clone it via git (`git@github.com:qmk/qmk_firmware.git`), or https (`https://github.com/qmk/qmk_firmware.git`).
2017-06-29 16:13:44 +00:00
### How to compile {#how-to-compile}
2017-06-29 16:13:44 +00:00
Before you are able to compile, you'll need to [install an environment](build_environment_setup.md) for AVR or/and ARM development. Once that is complete, you'll use the `make` command to build a keyboard and keymap with the following notation:
2017-06-29 16:13:44 +00:00
make planck-rev4-default
2017-06-29 16:13:44 +00:00
This would build the `rev4` revision of the `planck` with the `default` keymap. Not all keyboards have revisions (also called subprojects), in which case, it can be omitted:
2017-06-29 16:13:44 +00:00
make preonic-default
2017-06-29 16:13:44 +00:00
### How to customize {#how-to-customize}
2017-06-29 16:13:44 +00:00
QMK has lots of [features](features/README.md) to explore, and a good deal of [reference documentation](reference/README.md) to dig through. Most features are taken advantage of by modifying your [keymap](keymap.md), and changing the [keycodes](keycodes.md).