QMK

Last updated
QMK
Repository https://github.com/qmk/qmk_firmware
Written in C
Platform Atmel AVR, ARM
Type Input device firmware
License Mostly GPLv2, but has code under MIT, Modified BSD License, Apache License, and GPLv3 [1]
Website qmk.fm

QMK (Quantum Mechanical Keyboard [2] ) is open-source firmware for microcontrollers that control computer keyboards. [3] [4] [5] The QMK Configurator is freely available software which facilitates designing keyboard layouts and then turning them into firmware files. The QMK Toolkit is freely available software which facilitates the flashing or application of firmware onto programmable keyboards.

Contents

Description

VIA is a software program that can be used to configure keyboards that run QMK. It can swap keys and implement macros into the keyboard. [6]

Related Research Articles

<span class="mw-page-title-main">BIOS</span> Firmware for hardware initialization and OS runtime services

In computing, BIOS is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the booting process. The BIOS firmware comes pre-installed on an IBM PC or IBM PC compatible's system board and exists in some UEFI-based systems to maintain compatibility with operating systems that do not support UEFI native operation. The name originates from the Basic Input/Output System used in the CP/M operating system in 1975. The BIOS originally proprietary to the IBM PC has been reverse engineered by some companies looking to create compatible systems. The interface of that original system serves as a de facto standard.

<span class="mw-page-title-main">Microcontroller</span> Small computer on a single integrated circuit

A microcontroller or microcontroller unit (MCU) is a small computer on a single integrated circuit. A microcontroller contains one or more CPUs along with memory and programmable input/output peripherals. Program memory in the form of ferroelectric RAM, NOR flash or OTP ROM is also often included on chip, as well as a small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general purpose applications consisting of various discrete chips.

<span class="mw-page-title-main">HP 49/50 series</span> Series of graphing calculators by Hewlett-Packard

The HP 49/50 series are Hewlett-Packard (HP) manufactured graphing calculators. They are the successors of the popular HP 48 series.

<span class="mw-page-title-main">USB flash drive</span> Data storage device

A USB flash drive is a data storage device that includes flash memory with an integrated USB interface. A typical USB drive is removable, rewritable, and smaller than an optical disc, and usually weighs less than 30 g (1 oz). Since first offered for sale in late 2000, the storage capacities of USB drives range from 8 to 256 gigabytes (GB), 512 GB and 1 terabyte (TB). As of 2023, 2 TB flash drives were the largest currently in production. Some allow up to 100,000 write/erase cycles, depending on the exact type of memory chip used, and are thought to physically last between 10 and 100 years under normal circumstances.

<span class="mw-page-title-main">IBM ThinkPad 701</span> Subnotebook computer with foldout keyboard

The IBM ThinkPad 701 is a subnotebook in the ThinkPad line by IBM. The 701 is colloquially known as the Butterfly due to its sliding keyboard, which was designed by John Karidis. It was developed from 1993 and sold from March 1995 until later that year and priced between $1,499 and $3,299. The 701 was the most sold laptop in 1995 and has received 27 design awards. It was based on either the DX2 or the DX4 version of the Intel i486, combined with CT-65545 graphics chip from Chips and Technologies. The 701Cs version used a DSTN display, while the 701C used a TFT LCD. It was pre-installed with Windows 3.11 and for the DX4 models also with OS/2 Warp 3.0. The 701 was discontinued because the keyboard design was no longer a necessity after screen sizes increased. After its discontinuation there has been some speculation about a new notebook with a butterfly style keyboard.

<span class="mw-page-title-main">Apple–Intel architecture</span> Unofficial name used for Macintosh models that use Intel x86 processors

The Apple–Intel architecture, or Mactel, is an unofficial name used for Macintosh personal computers developed and manufactured by Apple Inc. that use Intel x86 processors, rather than the PowerPC and Motorola 68000 ("68k") series processors used in their predecessors or the ARM-based Apple silicon SoCs used in their successors. As Apple changed the architecture of its products, they changed the firmware from the Open Firmware used on PowerPC-based Macs to the Intel-designed Extensible Firmware Interface (EFI). With the change in processor architecture to x86, Macs gained the ability to boot into x86-native operating systems, while Intel VT-x brought near-native virtualization with macOS as the host OS.

<span class="mw-page-title-main">Arduino</span> Open-source hardware and software platform

Arduino is an Italian open-source hardware and software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardware products are licensed under a CC BY-SA license, while the software is licensed under the GNU Lesser General Public License (LGPL) or the GNU General Public License (GPL), permitting the manufacture of Arduino boards and software distribution by anyone. Arduino boards are available commercially from the official website or through authorized distributors.

<span class="mw-page-title-main">Lego Mindstorms NXT</span> Programmable robotics kit

Lego Mindstorms NXT is a programmable robotics kit released by Lego on August 2, 2006. It replaced the first-generation Lego Mindstorms kit, which was called the Robotics Invention System. The base kit ships in two versions: the Retail Version and the Education Base Set. It comes with the NXT-G programming software, or optionally LabVIEW for Lego Mindstorms. A variety of unofficial languages exist, such as NXC, NBC, leJOS NXJ, and RobotC. The second generation of the set, the Lego Mindstorms NXT 2.0, was released on August 1, 2009, featuring a color sensor and other upgraded capabilities. The third generation, the EV3, was released in September 2013.

Mbed is a development platform and real-time operating system (RTOS) designed for internet-connected devices that utilize 32-bit ARM Cortex-M microcontrollers. These internet-enabled devices are often categorized under the Internet of Things (IoT) umbrella. The Mbed project is a collaborative effort led by Arm Holdings, in partnership with various technology companies and contributors.

Samsung Knox is a proprietary security and management framework pre-installed on most Samsung mobile devices. Its primary purpose is to provide organizations with a toolset for managing work devices, such as employee mobile phones or interactive kiosks. Samsung Galaxy hardware, as well as software such as Secure Folder and Samsung Wallet, make use of the Knox framework.

<span class="mw-page-title-main">GNOME Software</span> GNOME application manager

GNOME Software is a utility for installing applications and updates on Linux. It is part of the GNOME Core Applications, and was introduced in GNOME 3.10.

<span class="mw-page-title-main">Arduino Uno</span> Microcontroller board

The Arduino Uno is an open-source microcontroller board based on the Microchip ATmega328P microcontroller (MCU) and developed by Arduino.cc and initially released in 2010. The microcontroller board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to various expansion boards (shields) and other circuits. The board has 14 digital I/O pins, 6 analog I/O pins, and is programmable with the Arduino IDE, via a type B USB cable. It can be powered by a USB cable or a barrel connector that accepts voltages between 7 and 20 volts, such as a rectangular 9-volt battery. It has the same microcontroller as the Arduino Nano board, and the same headers as the Leonardo board. The hardware reference design is distributed under a Creative Commons Attribution Share-Alike 2.5 license and is available on the Arduino website. Layout and production files for some versions of the hardware are also available.

<span class="mw-page-title-main">ESP8266</span> System-on-a-chip microcontroller model with Wi-Fi

The ESP8266 is a low-cost Wi-Fi microchip, with built-in TCP/IP networking software, and microcontroller capability, produced by Espressif Systems in Shanghai, China.

<span class="mw-page-title-main">FarmBot</span> Open-source precision agriculture CNC farming project

FarmBot is an open source precision agriculture CNC farming project consisting of a Cartesian coordinate robot farming machine, software and documentation including a farming data repository. The project aims to "Create an open and accessible technology aiding everyone to grow food and to grow food for everyone."

Mongoose OS is an Internet of Things (IoT) Firmware Development Framework available under Apache License Version 2.0. It supports low power, connected microcontrollers such as: ESP32, ESP8266, TI CC3200, TI CC3220, STM32. Its purpose is to be a complete environment for prototyping, development and managing connected devices.

Espruino is an open-source JavaScript interpreter for single board microcontrollers. It is designed for devices with small amounts of RAM.

<span class="mw-page-title-main">Gigatron TTL</span>

The Gigatron TTL is a retro-style 8-bit computer, where the CPU is implemented by a set of TTL chips instead of a single microprocessor, imitating the hardware present in early arcades. Its target is the computing enthusiasts, for studying or hobby purposes.

<span class="mw-page-title-main">RP2040</span> ARM-architecture microcontroller by the Raspberry Pi Foundation

RP2040 is a 32-bit dual ARM Cortex-M0+ microcontroller integrated circuit by Raspberry Pi Ltd. In January 2021, it was released as part of the Raspberry Pi Pico board.

<span class="mw-page-title-main">Flipper Zero</span> Multi-tool electronic device

Flipper Zero is a portable Tamagotchi-like multi-functional device developed for interaction with access control systems. The device is able to read, copy, and emulate RFID and NFC tags, radio remotes, iButton, and digital access keys, along with a GPIO interface. It was first announced in August 2020 through the Kickstarter crowdfunding campaign, which raised $4.8 million. The first devices were delivered to backers 18 months after completion of the crowdfunding campaign. The device's user interface embodies a pixel-art dolphin virtual pet. The interaction with the virtual pet is the device's core game mechanic. The usage of the device's functions defines the appearance and emotions of the pet.

Open-source firmware is firmware that is published under an open-source license. It can be contrasted with proprietary firmware, which is published under a proprietary license or EULA.

References

  1. "License". QMK Firmware. Retrieved 2023-10-18.
  2. "QMK Firmware Docs". docs.qmk.fm. Retrieved 2023-04-01.
  3. Panos, Kristina (2020-05-05). "The ABCs Of Adding QMK To A WASD Keyboard". Hackaday . Retrieved 2023-03-06.
  4. Panos, Kristina (2021-08-05). "Kinesis + Teensy = QMK Advantage Over Your Keyboard". Hackaday . Retrieved 2023-03-06.
  5. Nardi, Tom (2020-06-19). "Vintage Keyboard Gets The QMK Treatment". Hackaday . Retrieved 2023-03-06.
  6. Porter, Jon (2022-10-05). "The best mechanical 7LUCP to buy right now". The Verge . Retrieved 2023-03-06.