Sep 11, 201810006 views

How to Flash Your Planck Light Keyboard via ISP!

Hey everybody,
Thank you again for picking up your Massdrop x OLKB Planck Light Mechanical Keyboard. We have designed, prototyped, and manufactured working ISP (in-system programming) flashers for everyone in the original Planck Light drop due to a missing bootloader. There were a few revisions from our initial design to the final device you are receiving now and we are glad we took the time to ensure you got a fully working item.
Below, you’ll see the step by step directions for using your ISP flasher. After using it for your Planck Light, you can keep this device to use with other compatible PCBs in the future.
For those that are joining the current iteration of the Planck Light, you don’t have to worry about the ISP flasher and instructions as your device will be fully functioning out of the box.

Planck Light Bootloader Instructions Before you start, you will need to remove the Planck Light PCB from the case in order to access the bottom side of the PCB. While it is possible to flash the Planck Light from the top side, we recommend that you flash it from the bottom side because the bottom side has the pin labels. It is possible to cause damage if the ISP flasher board is inserted incorrectly.
1. Launch QMK Toolbox:

2. Plug in ISP flasher board to your computer. You should see QMK Toolbox acknowledge that "AVRISP device connected" (see screenshot). If you do not see this message, you are running an older version of QMK Toolbox and you will need to upgrade it to v0.0.9+.


3. Line up the pins of the ISP flasher board with the headers on the Planck Light PCB (see red boxes). Make sure the pins are lined up in the same order, i.e. RST to RST, GND to GND, etc.
4. With the pins lined up, Insert the pins of the flasher board into the Planck Light PCB. Insert it far enough such that it remains connected without you having to hold it. You should see the Planck Light light up.
5. In QMK Toolbox, select the bootloader file (top left) and select 'at90usb1286' for the microcontroller (top right). The bootloader file can also be found
6. Click Flash (top right). You should see messages similar to the screenshot below. It should take about 10 seconds. The LEDs on the Planck Light should turn off once the flashing is complete.
7. Unplug the ISP flasher board from your computer and then plug in your Planck Light to your computer. You should see messages acknowledging both: "AVRISP device disconnected", "DFU device connected".
8. Select the default hex file for the Planck Light or your preferred hex file. If you do not have one already downloaded, QMK Toolbox can download it for you if you select "planck/ light" and click "Load".
9. Click "Flash". You should see the message "Attempting to flash" as it starts and "DFU device disconnected" as it finishes. This should only take a few seconds. If you used the default Planck Light hex file, you should hear the startup sound and see the LEDs light up.
10. You're done!

Having any issues or generally need some help?
Let us know in the discussion and we’ll give you a hand.
carbonex30, adamSrgnt, and 18 others

i received my planck light from the second drop, its supposed to be flashed properly but mine stopped working when i tried to put it into flashing mode, now i get "usb device unrecognized" when i plug it in. i think i need the ISP flasher board, but how do i get one of those? i contacted massdrop support but the agent didn't know anything about this keyboard specifically. please help!
Hi, did you made sure you select the right cpu type in QMK Toolbox before going in dfu ? Also there should be a dfu escape key somewhere on the left if I recall it correctly that allows you to get out of dfu. Did it once can’t remember which key I did hit that one time. Edit: Also are you on windows? Did you see that post ? =>
I can't get past step 2. QMK Toolbox isn't recognizing the flasher. I'm using v0.0.9.
I finally got some time to work on this and sat down to follow the instructions to finally get my Planck working. I reached step seven, and after unplugging the ISP flasher and plugging the keyboard back into the computer, I am no longer able to do anything. "DFU Device Connected" does not appear, the keyboard does not respond to any input, the lights do not come on and if I try to click flash, I get "There are no devices available." Please let me know where I went wrong. I am really at the end of my patience for this keyboard.
Same problem here
After successful flashing of boot loader, I had the same issue that QMK Toolbox does not recognize the keyboard. I was able to successfully flash firmware using QMK development environment in Linux. QMK Toolbox is unable to detect Planck Light after pressing reset button even now when it is functional. EDIT: Well, I found out why QMK Toolbox was unable to detect the board. This is because drivers for AT90USB128 chips was not installed to the Windows. I downloaded the Amtel Flip tool, and it has drivers in usb folder, which may be pointed to from Device Manager to use for Unknown device as the AT90USB128 is.
So, i have attempted a flash of this keyboard. At first, every time I got up to the disconnect the ISP and connect the USB then hit load (step 7/8) I would keep getting an SSL error. I did the manual driver install as suggested. At this point I am no longer able to get it out of flash mode. The lights no longer come on. the program doesn't seem to recognize anything any more. Any help would be greatly appreciated. I will resort to fire if I need to. Thanks.
Also, how do you get it to do the awesome light show like in the advertised video...?
I have found the same problem. The keyboard seems dead now!
I guess no one has a solution for this...?
I didn't find how to do the whole thing using linux only and without qmktoolbox, so I'm sharing in case anybody needs : - dependencies (for ubuntu): gcc-avr avrdude avr-libc dfu-programmer - wget - plug the ISP flasher board in the keyboard then flash the bootloader : `sudo avrdude -p at90usb1286 -c avrisp -P /dev/ttyACM0 -U flash:w:bootloader_at90usb128x_1_0_1.hex:i` - unplug the ISP flasher board and plug the keyboard normaly - get a firmware (I used `make planck/light:default`) - flash the firmware `make planck/light:default:dfu`
Load 5 more comments
thank you very much, works perfect on arch
Did you forget to put sudo at the front when you did it? I ran into this error on another build. There is probably a group that needs to be given permission or something to do it without root, but I am not sure how to do that.
#Protip To remove the bottom screws, use the corner of a plastic card (eg. credit card) push it into the other side to lock the plastic and start screwing, you don‘thave to pull any keycaps!
Is there some particular trick to removing the screws from the case bottom? Almost all of mine just seem to spin without actually coming out...
Load 2 more comments
Thanks y'all. I did end up pulling the caps and then just pressing down on the board pretty hard, and they all eventually engaged and I could work through the update procedure.
I hope you enjoy your planck light, and have a great weekend, sir.
When I get to Step 9, I get the error message below instead. Can anyone help me out? I'm not sure where I went wrong.
Flash complete *** DFU device connected: AT90USB128 DFU -- 03EB:2FFB:1 *** Downloading the file: *** Downloading the file: *** Attempting to flash, please don't remove device >>> dfu-programmer.exe at90usb1286 erase --force dfu-programmer: no device present. >>> dfu-programmer.exe at90usb1286 flash "X:\Users\Theo\Downloads\bootloader_at90usb128x_1_0_1.hex" dfu-programmer: no device present. >>> dfu-programmer.exe at90usb1286 reset dfu-programmer: no device present. >>> avrdude.exe -p at90usb1286 -c avrisp -U flash:w:"X:\Users\Theo\Downloads\bootloader_at90usb128x_1_0_1.hex":i -P COM3 avrdude.exe: warning at C:\Users\Theo\AppData\Local\QMK\QMK Toolbox\0.0.9\avrdude.conf:14976: part atmega32u4 overwrites previous definition C:\Users\Theo\AppData\Local\QMK\QMK Toolbox\0.0.9\avrdude.conf:11487. avrdude.exe: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.01s avrdude.exe: Device signature = 0x000000 (retrying) Reading | ################################################## | 100% 0.01s avrdude.exe: Device signature = 0x000000 (retrying) Reading | ################################################## | 100% 0.01s avrdude.exe: Device signature = 0x000000 avrdude.exe: Yikes! Invalid device signature. Double check connections and try again, or use -F to override this check. avrdude.exe done. Thank you.
Did you ever resolve this? I have a similar problem.
solution for this? EDIT: I'm an idiot, I just forgot to connect the bootloader to the keyboard.
Hey everybody. Received the following when trying to load the hex file on using the ISP in QMK Toolbox: Attempting to flash, please don't remove device >>> avrdude -p at90usb1286 -c avrisp -U flash:w:/Users/kyle/Downloads/bootloader_at90usb128x_1_0_1.hex:i -P /dev/cu.usbmodem12341 -C avrdude.conf dyld: Library not loaded: /usr/local/lib/libftdi.1.dylib Referenced from: /Applications/QMK Reason: image not found
Any ideas on how to fix this? I'm kind of a newb when it comes to doing this stuff. Right now I was looking at getting Xcode and trying to load avrdude?
ok, just an update in case anybody ran into the same thing. I thankfully had homebrew loaded and followed the directions on the following page and then tried again and it worked. (see dependencies section)
What jack said.
Thes should work now, as it has a DFU bootloader to jump to now.
I made it to flash planck light successfully on windows 10 pc today. I had a very similar experience that "demollator" did, you can find his post below my post.
Here's some tips for Windows 10 users.
Just follow the instructions in the Massdrop's post. (I mean step 1 - step 7) If you did the right thing, you can flash the bootloader without a problem.
If you click "load" you will see this message, (I mean step 8) "the request was aborted: Could not create SSL/TLS secure channel."
Maybe because of some kind of https protocol problem, I'm not sure, it seems QMK tool box code has to be revised. So use your own hex file or download it from other source until you can get an updated version of it.
I used the latest version 0.0.9, I think this is not a big problem because most users want to flash their own keymap.
When you try to flash your hex file, (I mean step 9) you might see the message, "no device present". That means driver of at90usb is not installed properly so windows can't recognize it.
If you have this problem, check if you installed QMK drivers for windows. Visit and check if you read Dependencies part for windows. If you didn't install it, download driver from
If you still have the problem after installing it, you have to install "at90usb" driver manually. Here's the link. Download Flip for Windows and install it.
After installing Flip, update "at90usb" driver like this. Open control panel. Go to Hardware and Sound, click and open Devices and Printers. You can see "at90usb" in Unspecified section. Right click on "at90usb". Select "Update driver". Select "Browse computer for driver software". Click "Browse..." and select "C:\program files (x86)\atmel\Flip 3.4.7\usb" (or wherever you installed the Flip)
After installing the driver "no device present" problem will be gone, and if you can flash your hex file, it's done.
But if you still cannot flash the hex file completely, I recommend using a Linux system to flash it. (I mean do step 1-7 on Windows, step 8-9 on Linux.) You can use some virtual machine and install Linux like Ubuntu or whatever you want.
With my pc, step 9 was not completed maybe the hex file was corrupted or some driver problem. So I flashed my hex file on Linux machine that's my usual way to deal with QMK. That's the end of my today's experiment, so sleepy now. (I'm gonna try a fresh start with another pc if I got some time.)
----------------------------------------------------------------------- (edit) I tried it on another pc and this pc which I failed in step 9 yesterday after some sleep. I can confirm you can do the whole process on Windows 10.
The only thing I can't do is loading hex file with QMK toolbox in step 8. Just get hex file from other source then you can flash it with QMK toolbox on Windows 10. Here's the link of a compiled default hex file. Test with this if you don't have any. -----------------------------------------------------------------------
And watch out for removing your keycaps. Legs of keycaps are weak, I broke one, and it was stuck in my stem, so I had to desolder the switch and replace it.
If you can open the case without any problem, then you don't need to remove the keycaps. I couldn't unscrew the bolts since plastic stand offs kepts spinning that makes me mad. If you need to remove them just pull both sides of the keycaps at the same time.
Despite all that, I like my planck light. If I can use quality low profile switches and keycaps to my taste, this might be my next main driver. (current main driver is planck rev3)
Couldn't get QMK Toolbox to recognize the proper USB device for flashing the bootloader on macOS 10.12.6. The flasher showed up on my Mac as /dev/cu.usbmodem12341 but Toolbox was trying to talk to my steno machine on a completely different port.
Thanks to @surprisetalk I was able to install avrdude using MacPorts and run the following command successfully:
avrdude -p at90usb1286 -c avrisp -U flash:w:bootloader_at90usb128x_1_0_1.hex:i -P /dev/cu.usbmodem12341
Was then able to flash the Planck hex file using Toolbox with no problem.
do you have a step by step of what to do after loading MacPorts? how to ensure avrdude is there and where to type that command?
In terminal (found in Applications/Utilities), run: sudo port install avrdude Enter your password and it should make the avrdude command available for use.
I had a lot of problems trying to get this to run on MacOS with the Pro Micro board that the Massdrop team sent out. Finally, the following command worked out for me (make sure you're in `qmk_firmware/util`): `avrdude -p at90usb1286 -c arduino -U flash:w:bootloader_at90usb128x_1_0_1.hex:i -P /dev/cu.usbmodem12341` . Note that `avrisp` did not work for me, but `arduino` did. Good luck!
I'm getting a "dfu-programmer: no device present" error on step 9.
Windows 10 using QMK toolbox

*** DFU device connected: AT90USB128 DFU -- 03EB:2FFB:1 *** Attempting to flash, please don't remove device >>> dfu-programmer.exe at90usb1286 erase --force     dfu-programmer: no device present. >>> dfu-programmer.exe at90usb1286 flash "C:\*****\planck_light_default.hex"     dfu-programmer: no device present. >>> dfu-programmer.exe at90usb1286 reset     dfu-programmer: no device present.
Load 2 more comments
Error has been fixed by installing at90usb driver manually. Please see post from VinS for instructions.
I had the same issue for a long time and kind of stumbled my way through some of the comments and have now finally got it working. Some of the things I did may not have been important but I will include after -- what I think -- was the key to fixing the issue. OS- Windows 10 With the planck connected. In Control Panel -> Devices and Printers -- I could see the AT90USB128 - DFU device had a driver issue. First, press and hold the 'reset' button on the back of the planck
  1. Update Driver
  2. Browse my computer...
  3. Let me pick from a list...
  4. Here, I actually just selected the option presented
Finally, stop holding the 'reset' button Still had issues, So, I downloaded Zadig --
  1. Run Zadig
  2. Options -> List all devices
  3. Select 'AT90USB128 - DFU' -> libusb-win32
  4. Replace Driver
This seemed to fix the issue, and after that I was able to flash my planck using QMK Toolbox. Other things I did (before) that may have helped....
  1. I ran the qmk_driver_installer
  2. I git-cloned dfu-programmer --
  3. I followed the Build procedure for Windows
  4. Downloaded MinGW --
  5. follow the rest of the steps laid out in the readme...
  6. NOTE: To run MinGW terminal use: //MinGW\msys\1.0\msys.bat
  7. I downloaded libusb-win32 --
  8. I copied //libusb-win32-bin-\bin\x86\libusb0_x86.dll to C:\Windows\SysWOW64\libusb0.dll

While doing step 8 I get this error Unhandled exception has occurred......the request was aborted: could not create ssl/tls secure channel.
So I plugged the ISP back in and downloaded planck_light_default.hex from demollator message above, flashed it with the ISP. Seems to flash and completed but am I suppose to do it that way? Step 8 don't work on both of my computers.
The leds are on and scrolling
According to the instructions above (Step 7) the plank_light_default.hex should be flashed without the ISP. However - did not work for me either. I flashed the firmware directly from the qmk_firmware tree. See especially the 'build environment setup' link on the bottom.
This is a known issue, sorry! You can also use this link: "qmk:"
Some hints:
- Do not waste time on the Linux version of the qmk tool - there is no Linux version... ;)
- You probably want to download the bootloader file on the link above. In Windows10/IE you have to use the right mouse button with "save target" (or something similar in your language). Rename the file from ".txt" to ".hex" or the qmk tool will not see it.
- On my Windows 10 the qmk toolbox crashes while loading the planck stock firmware ("could not create ssl/tls secure channel"). Here is the direct download link:
After finishing the bootloader the Planck will show up as "Atmel Corp. at90usb AVR DFU bootloader", but will not not get the default firmware flashed:

However - now finally fire up your Linux again and type into the root of your qmk_firmware (see repo:
"sudo make planck/light:default:dfu" (You might skip the 'sudo' command if you have set the access rights for your serial devices correctly...)
... and you're done!... ;)
For linux, this should allow you to program it without using SUDO:
After I’ve flashed the default firmware, how do I get the board back into DFU mode so i can flash a new layout?
You can press lower + raise + q, or hit the Reset button on the bottom of the PCB :)