Aug 24, 201870836 views

How to Configure your CTRL Keyboard!

search
Hey everybody!
Thank you for purchasing your Massdrop CTRL Mechanical Keyboard. We hope you’re enjoying it so far. If you’ve landed here, you probably want to take full advantage of the keyboard’s features so you’ve come to the right place.
We’ll start with the basics, then we’ll move on to complete custom configuration.

THE BASICS Default Hot Keys Hold FN + listed keys to activate
LED Keys
Fn + A: LED Pattern Select Previous Fn + D: LED Pattern Select Next Fn + W: LED Brightness Increase Fn + S: LED Brightness Decrease Fn + Q: LED Scrolling Pattern Speed Decrease Fn + E: LED Scrolling Pattern Speed Increase Fn + Tab: LED Toggle Breathe Effect Fn + Caps Lock: LED Toggle Scrolling Pattern Direction Fn + X: LED Toggle On/Off Fn + Z: LED Toggle Mode (Keys+Edge, Keys Only, Edge Only, Only modifiers)
Media Keys
Fn + Page Up: Volume Up Fn + Page Down: Volume Down Fn + Print: Mute Fn + Insert: Play/Pause Fn + Home: Stop Fn + Delete: Previous Fn + End: Next
Keyboard Option Keys
Fn + N: Toggle keyboard 6KRO/NKRO (Default state 6KRO)

CUSTOM CONFIGURATION How do I configure my keyboard?
Note: You will currently need a second keyboard to complete the 3rd step of this process.
1. Create your configuration. 2. Compile the firmware with your configuration.
Use our web-based configurator tool to handle both steps at once: https://www.massdrop.com/mechanical-keyboards/configurator . See below for more information about our configurator.
If you are comfortable with programming and want to use QMK functionality that our configurator does not support, you can manually create and compile your configuration by checking out the official QMK repository: https://github.com/qmk/qmk_firmware . CTRL Keyboard is in the folder "massdrop/ctrl". QMK setup instructions are here: https://docs.qmk.fm/#/newbs
3. Load the firmware onto your keyboard.
To load the firmware onto your CTRL keyboard, download the appropriate loader application for your computer's OS here: https://github.com/Massdrop/mdloader/releases/tag/1.0.3. Then follow the instructions here: https://github.com/Massdrop/mdloader .
We are working with Jack and the other QMK contributors to get the loader application integrated into the next version of QMK Toolbox to simplify this loading process.

MASSDROP KEYBOARD CONFIGURATOR https://www.massdrop.com/mechanical-keyboards/configurator
When you first go to the configurator, you will be prompted to choose your keyboard (only CTRL Keyboard available for now). After choosing, you will see a top-down view of the keyboard and a layer selector on the right side.
By clicking on a key, you can customize its behavior by selecting another key or function in the panel that appears below the keyboard. The currently available behaviors are:
- Keys - Individual keys such as letters, numbers, media keys, and function keys. - Layer - Activate and deactivate layers. The CTRL Keyboard ships with a keymap where the Fn key activates layer 1. - Modifier - Send multiple modifiers with a single key press or allow a key to be a modifier when held and another key when tapped. - Special - Behaviors specific to the keyboard. For the CTRL Keyboard, these control the LEDs.
After you have configured the behaviors to your liking, click the "Compile & Download" button in the top right to download the compiled firmware for your configuration. This typically takes around 30 seconds. You will need to load this compiled firmware onto your keyboard. See step (3) above for instructions.
If you are logged in to Massdrop, you will see a "Save as a New Copy" button next to the "Compile & Download" button. Clicking this button will save your configuration, allowing you to revisit it and modify it. The next time you go to the configurator, you will see your saved configurations above the list of keyboards.
About Layers
Layers allow you to configure your keyboard with more behaviors than its number of physical keys. For example with the CTRL Keyboard, by default, when you hold Fn + A to change the LED pattern, the keyboard is actually activating Layer 1 and sending the code for switching to the previous LED pattern. The physical key that is mapped to the letter A on Layer 0 is mapped to changing LED patterns on Layer 1.
search
For each key, its behavior is determined by the highest active layer. For the highest active layer, if the key's behavior is "transparent" (denoted by a grayed-out "(trns)" on the keyboard display), then it falls back to the next-highest layer where its behavior is not transparent.
The QMK documentation has some tips for working with layers: https://docs.qmk.fm/#/feature_advanced_keycodes?id=working-with-layers
Configurator Development Roadmap
Our configurator tool is still a work-in-progress. Here is what you can expect to be added to the tool in the future: 1. Merge our QMK changes back into the main QMK repository 2. Macros support 3. Support for changing some QMK settings 4. Support for more keyboards

Having any issues or generally need some help?
Let us know in the discussion and we’ll give you a hand.
thumb_up
Gorecki, iNcontroL, and 66 others
thumb_up68
803
remove_red_eye70.8K
bookmark_borderSave


Stickied
Hi all, we have new updates to mdloader, our keyboard configurator, and our fork of QMK. If you have previously downloaded the mdloader tool. Please download the latest version at: https://github.com/Massdrop/mdloader/releases/tag/1.0.3 This new version of mdloader adds a new "--first" option that auto-detects the first available keyboard to flash over the next 60 seconds. Using --first, you can submit the flashing command with your CTRL keyboard and then press the reset button---no second keyboard needed. It also adds .hex file support. In a few weeks, we will be switching the keyboard configurator to output .hex files instead of .bin files, so it's important that you download this new version of mdloader. Our keyboard configurator has been updated with the following: - New keycode MD_BOOT: hold for two seconds and then release to reset the keyboard. No more needing to keep a pin handy to flash your CTRL keyboard! - Support for the ALT Keyboard We have updated our fork of QMK with the latest from the main QMK repository. This includes MD_BOOT support and other changes. We are working on getting changes on our fork back into the main QMK repository.
(Edited)
jxliu
How does one add the MD_BOOT keycode? I could not find it.
Sage_is_Away
If you are using our web configurator, it's the first item under the "Special" tab:
search
Also the hold time has been increased to 2 seconds to trigger the soft reset. (Edited my comment above). If you are directly coding in QMK, the key code is MD_BOOT.
Stickied
If you're trying to load firmware onto your CTRL Keyboard and wondering where the reset button is: reset button is in the hole on the left side bottom of the keyboard. Use a pin or something thin to press it.
search
Load 17 more comments
Are you talking about hitting the reset button? If so, "yes" all of the lights should go off and you shouldn't be able to input anything on the keyboard until you unplug the keyboard and plug it back in again.
LastContinue
Thanks but I was using the tip of a ballpoint which didn't get in far enough. With a toothpick it worked. That's the trouble with running out of paperclips. ;)
Stickied
Download the appropriate loader application for your computer's OS here: https://github.com/Massdrop/mdloader/releases/tag/1.0.3Windows users: Download mdloader_windows.exe and applet-flash-samd51j18a.bin and put them in the same folder. Linux users: Download mdloader_linux and applet-flash-samd51j18a.bin and put them in the same folder. chmod u+x mdloader_linux to make it executable. Mac users: Download mdloader_mac and applet-flash-samd51j18a.bin and put them in the same folder. If downloading with Safari, mdloader_mac with have a .dms extension appended to it. This is fine. chmod u+x mdloader_mac to make it executable. (chmod u+x mdloader_mac.dms if downloaded from Safari) 1) Go to the default configuration and click COMPILE & DOWNLOAD for the default keymap. Otherwise, make your desired changes before clicking COMPILE & DOWNLOAD.
search
2) Locate the BIN file generated and downloaded via the configurator
search
3) Move the file to the same folder as mdloader_windows.exe
search
4) Open the command prompt
search
5) a) Determine the file path to the directory that contains the BIN file you just downloaded. You may simply click the file path near the top of windows explorer. Clicking it will show the file path and highlight it. Copy that file path.
search

search
b) In the command prompt, navigate to the directory that contains the BIN file by typing “cd [file path]” and pressing Enter. As you have copied the file path in the above step, simply type “cd” and paste (Ctrl + V) the file path. Note that there is a space between “cd” and [file path].
search
The highlighted line in the image below shows the directory you are currently in. It should match the file path that you copied.
search

To flash your keyboard: 1) Plug in the keyboard 2) In the command prompt, type “mdloader_windows.exe --first --download FILE_NAME --restart” where FILE_NAME is the filename of your compiled firmware (the BIN file you downloaded from the configurator). For example, I would type “mdloader_windows.exe --first --download massdrop_alt_config_ALT___2_Layers_with_Custom_Colors_2650.bin --restartThe "--first" option auto-detects the first available keyboard to flash over the next 60 seconds. Using --first, you can submit the flashing command with your CTRL keyboard and then press the reset button---no second keyboard needed. Press Enter.
search
3) Press the reset button. The reset button is in a hole on the underside of the keyboard. After pressing the reset button, all the LEDs will turn off. Your keyboard should flash and restart.
search

search
P.S. Yes, the images show an ALT, but the process is identical.
(Edited)
Load 1 more comment
Are you using Linux? If so, your user will need to be in the dialout group or you will need to sudo the mdloader command. If you are using Mac or Windows, are you resetting your keyboard after executing the mdloader command (pin to press the reset button or hold half second+release Fn+b for newer CTRLs)? When the keyboard is reset, it will be unresponsive to keypresses and all LEDs will be off except for an orange status LED on the underside.
jxliu
ahh...okay, i'm using windows and was waiting for the port to be found before resetting. i reset after executing the command and the flash was successful. hopefully this will fix the issue. thanks..
Sorry if this is a dumb question. but for some reason my CTRL keyboard can't use Alt+Tab to switch between various tabs. I have no experience with mech keyboards, I tried to reset the board with the hole in the bottom, but still no luck. any ideas ?? thanks for any help!
Keyboard Configurator - requesting some features In the keyboard configurator, I'd like to be able to:
  • Manage my saved layouts (i.e., save a new copy of an already saved one)
  • Duplicate a layer
  • Rearrange layers (i.e. make layer 1 become layer 2 and insert a new layer 1)
Really, just the ability to duplicate (and delete) saved layouts and duplicate layers would get me what I'm looking for.
(Edited)
some of my leds are just white even when i set them to be green?
DemMcNuggets
I have that same issue when I choose the colors of the LEDs via the online configurator.
How do I change it back to the default rgb rainbow? I am stuck with all white led's and I don't like them.
Question: What keymap is the starting point for the configurator? Is it the massdrop fork with the default_md keymap?
I want to store the factory configuration binary that is currently on my CTRL keyboard. Will the following command read the entire binary or only part of it? `mdloader --first --upload read_firmware.bin --addr 0x4000 --size 0x10000` (from the massdrop/mdloader README) I am not completely certain the compile and download function on the web configurator will give me the same result. Thanks
(Edited)
Is macros support (item #2 on the Development Roadmap) still planned for the configurator in the future? Please let us know if macros has been abandoned or if it is still being worked on. Thank you.
5. Windows - Run mdloader_windows.exe --first --download FILE_NAME --restart. Replace "FILE_NAME" with the filename of your compiled firmware. what does this mean? which program should i use for this? (its copied from the github page)
Hi all, I have recently just received my first Massdrop (or now Drop) keyboard - which is an Alt specifically and I have been very happy with the purchase so far. I am currently having an issue of not being able to wake up my PC nor laptop via my the Alt and have to resort to using my mouse each time. I have also tried using different USB points of the PC/laptop but it still doesn't work (while it works when using my mouse on that USB point instead). I guess my questions are (1) whether this happens with all the Alt/Ctrl keyboards, and (2) is this to do with me not updating my firmware since receiving the keyboard? Any help/advice is much appreciated.
Zeken
I've got the same Problem. Haven't found a solution.
Incoming noob question. How can I get this keyboard to work on both Windows AND Mac? I use it mainly for my Windows desktop but want to use it for my mac (work laptop). When I plug in the keyboard to my mac, it doesn't detect it.
Hi. I'd like to change the default LED Pattern on powered. How can I do that?
KimD
https://github.com/LastContinue/ctrl-info/wiki/FAQ-Lights edit: I just realized that the link in that link was dead 🙄 I'll try to fix it. Also, I should have elaborated: You either have to use the GUI configurator to set a default color you want, or use QMK to reorder that color array round.
(Edited)
Could you please add possibility to assign KC_GESC to a key in the web configurator?
Hi Guys, I just got my nice keyboard, however I've been trying to configure it but I'm still getting . -- Massdrop Loader 1.03 Massdrop Loader Copyright (C) 2018 Massdrop Inc. This program is Free Software and has ABSOLUTELY NO WARRANTY Scanning for device for 60 seconds ............................................................ Error: Could not find a valid device port! -- I'm Mac Os X Mojave 10.14.5 I would appreciate your help. Thank you.
Load 3 more comments
hvillero
Having similar issue with mac Mojave
shenrageous
nvm I reset it and worked!
Hi, How can I view the source code from the .bin created from the configurator? I am trying to add a specific pattern to he firmware, but continue to get errors (making cetain keys one color, while others a different one; three different layers). Any input would be appreciated. Thanks!
I have a strange issue with usb connectivity after configuring my CTRL keyboard as instructed. Following the instructions I was able to change a few colors and apply them to my keyboard which worked for a few hours. It lost connectivity when Windows notified me of a error with a connected USB device. This resulted in the keyboard stop working and being unable to reset via the back switch. It also disabled any other keyboards I plugged into my computer (I did not have them plugged in simultaneously). I have tried multiple USB ports. Defeated I reformatted my drive and reinstalled windows. The CTRL keyboard worked for a short period of time before the same issue happened (not detected in windows, physical reset does nothing). Now though, I am able to connect my old keyboard which still functions. Am I looking at a usb/driver issue or a CTRL keyboard issue? Guidance is desperately needed as I very much like the keyboard.
FirstTestPilot
Hi there, Were you able to figure out a solution to this ? I have a similar problem.
My Ctrl is bricked. Ran firmware, gave an error and now nothing works. Reset button doesn't do anything
The online configurator allows for the binding of F13-F24 keys, however they do not work. There is a fix listed online on Github: https://github.com/qmk/qmk_firmware/pull/4601 Seems like the online configurator needs this fix.
how can I unload the firmware I configured and return everything to default? thanks!
Ljz121026
You're going to need to get a "default" map. You can do this via the online configurator (and just not select anything) or using one of the default maps from QMK.
Hello everybody. Apologies for the silly question, I am a very basic user ... :-) I purchased a CTRL Keyboard to replace my original MAC keyboard ... everything seems to be working fine, besides the COMMAND key, that is not recognized by my Mac ... hence I lost the Copy/Paste functionality using the COMMAND Key. I imagine I need to programme the keyboard to convert the "LEFT GUI" key to be recognized as the COMMAND one ... but really have no clue. Can anybody please help ? Thank you in advance Marco
MarcoRispoli
Not silly at all. It's a pretty common question here - "How can I set my keyboard up just like a Mac Keyboard". I used to have screenshots so you could use the GUI configurator to set it it up 95% the same as an Apple Mac keyboard, but I can't find them. If you have some time on your hands, they ARE in this thread though (albeit probably buried pretty deep)
(Edited)
LastContinue
Thank you for the hint! luckily a very kind member of this forum helped me out, so I am all set now. Next step would be to replace the key caps that have the windows logo with more appropriate Apple ones. So far I found only one site that offers nice options, but quite expensive ... given shipping costs that would add on top :-( Would you happen to know any on-line shop I could turn to? kind regards marco
I've got a mac and tried to use macloader to upload the firmware with the .bin file and got this: Opening port '/dev/cu.usbmodem1411201'... Success! Found MCU: SAMD51J18A Bootloader version: v2.18Sep 4 2018 16:48:28 Applet file: applet-flash-samd51j18a.bin Applet Version: 1 ERROR: Parser: Could not open file for read! Error: Could not parse file! Closing port... Success! 192-168-1-118:CTRL benpang1$ ./mdloader_mac --first --download /ctrl/massdrop_ctrl_config_ctrl__default_3217 --restart Massdrop Loader 1.03 Why the ERROR parse?
Beagle77
You need to actually give the full file name (ending in .bin, and it helps to have that file in the same dir as mdloader_mac)
LastContinue
Thanks a lot ... got it working!
is there a breathing affect where everytime it breathes it changes colors? noobie at this type of stuff
blue100xx
Sorry for the super late reply on this. I haven't had to the time to mess with keyboards lately. QMK recently did a RGB overhaul of quite a few things (and broke some of the stuff I was working on! Well their stuff is better anyhow). If you build from QMK there are A LOT more effects you can mess with, and all of them have ways to change colors on the fly (you'll still need to do some coding to get your settings to be saved whenever you restart your keyboard).
(Edited)
okay but seriously, are we ever getting macro support? has this been abandoned?
funkydiscoduck
i guess so
funkydiscoduck
I'd be interested to see if anything gets added when they start shipping that 1800 keyboard (Shift?) they've been working on.
Will this allow me to set the color of the LEDs to whatever I want, instead of just one of the 9 preset colors that I don't want? Why isn't ORANGE available??? There should be a way to set 16 levels of EACH RGB channel so we can make any color we want...just like every other RGB LED keyboard out there. :-p
captain
Sure, any color or effect, but you should train your programming skills to do this :)
So I suddenly started having issues with the keyboard inputting double-key presses, like the word I type would randomly have duplicate letters in them. Anyone else have the same issue?
Load 14 more comments
He said supplies were low, but i am getting a new one. Ill update once its done.
replacement showed and its 150 (serial) less than what i originally recieved. I bought more switches just to be sure too and hope the issue doesnt return. Drop made good to me and it makes me happy to be loyal (Great customer service reps too)
How to change the default lighting? I don't know how to use the QMK,I just want white LED.
(Edited)
VocAl
You can do that via the configurator. You don't need QMK. https://www.massdrop.com/mechanical-keyboards/configurator Just select all of the keys and backlight LED's and set them to white for all layers.
search
That being said, the GUI is pretty limited https://github.com/LastContinue/ctrl-info/wiki/FAQ-GUI
(Edited)
I started getting compiler errors after I updated some of the items in the compiler tool-chain (MacOs) . Pulling down the newest version of QMK fixed the issue, but they key-by-key code stuff isn't in there yet. I figured "I'll just use Docker" and that worked too, but "ugh" slow. So I made my own version. https://github.com/LastContinue/qmk_firmware/tree/lc_key-by-key To keep compatibility with QMK master, I moved all of the key-by-key code into files that only the keymap "lastcontinue" can access (this also gives you map-by-map capslock settings) If you want to make your own keymap from this, it's trivial by just copy-pasting. Of course I have some of my own personal settings in there, but those are easy enough to edit around (I have my brightness turned way down by default), but pay attention to the comment at the bottom about commenting code out if you don't want key-by-key and for some reason are using that map. Numbers at the bottom come from "light math", see https://github.com/LastContinue/ctrl-info/wiki/Light-Math and https://github.com/LastContinue/ctrl-info/blob/master/led_map.png
https://github.com/LastContinue/ctrl-info/blob/master/scripts/leds.py or https://github.com/LastContinue/ctrl-info/blob/master/scripts/leds_python3.py for tools to help you build those out Also, I already linked to it, but you might have noticed, I finally updated my wiki to include a more reasonable and up-to-date version of how to do key-by-key color setting via QMK https://github.com/LastContinue/ctrl-info/wiki/Light-Math
(Edited)
Has anyone else been having trouble with being able to compile&download from the online configurator? Mine seems to be hanging permanently despite no configuration inputs that I can see that have issue (see attached screenshots)
search
search

Load 2 more comments
nhk_hens
I'm having the same issue with CTRL keyboard
nhk_hens
It should work again!! :)