Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

QMK Toolbox

Build Status Current Version Discord License GitHub contributors GitHub forks

This is a collection of flashing tools packaged into one app. It supports auto-detection and auto-flashing of firmware to keyboards.

Windows macOS
Windows macOS


QMK Toolbox supports the following bootloaders:

And the following ISP flashers:

  • AVRISP (Arduino ISP)
  • USBasp (AVR ISP)
  • USBTiny (AVR Pocket)

If there's an interest in any others, they can be added if their commands are known.

HID Console

The Toolbox also listens to HID messages on usage page 0xFF31 and usage 0x0074, compatible with PJRC's hid_listen.

If you have CONSOLE_ENABLE = yes in your keyboard's, you can print messages with xprintf(), useful for debugging:

Hello world from Console

See the QMK Docs for more information.


System Requirements

  • macOS 10.15 (Catalina) or higher
  • Windows 10 May 2019 Update or higher (earlier with .NET Framework 4.8)


When using the QMK Toolbox on Windows, it will prompt at first run to install the necessary drivers.

If you run into any issues with "Device not found" when flashing, then you may need to use Zadig to fix the issue.


Get the latest release here.

For Homebrew users, it is also available as a Cask:

$ brew tap homebrew/cask-drivers
$ brew install --cask qmk-toolbox