Click to view our Accessibility Statement or contact us with accessibility-related questions

How to Configure Stack Overflow The Key and The Key V2 Macropad?

more_vert
search
Update: If you are here for The Key V2, please see this post below for information regarding flashing an updated stock configuration with hotkeys for changing LED modes and a more user-friendly Copy and Paste default action. Hey everybody! Thank you for purchasing your Stack Overflow The Key Macropad. We hope you’re enjoying it so far. If you’ve landed here, you probably want to take full advantage of the keyboard’s custom configuration so you’ve come to the right place. What Does The Key Come With? Out of the box, The Key comes built in with three keys that act as the “ctrl”, “c”, and “v” keys. It also includes a USB-C to USB-A cable to connect to your computer. Users that only have USB-C ports would need to provide their own USB-A to USB-C adapter.  How do I configure The Key?

Creating a New Custom Configuration The Key can be reconfigured and remapped so that each key press results in a different character, or set of characters. Users commonly find it helpful to remap these to media keys (Play, Stop, Next Track), utility keys (volume up/down) or application shortcuts (launch Chrome). To get under the hood and start reprogramming your The Key:
2. Download this JSON file onto your computer by selecting “Save Page As…”: https://docs.drop.com/thekey.json
3. Upload TheKey.json by pressing the “Upload” button under the text ‘Upload Keyboard Firmware Builder configuration’. This is what you’ll see:

search
search
4. Now the fun begins. There are many areas to play with and a lot more can be read on QMK Firmware here. To keep this instruction set simple, we want to scroll to the Tab that says “Keymap”. By default this JSON file has a keymap where the three keys are the numbers 1, 2, and 3.

search
5. Select the leftmost key. Click on the “KC_1” button and it’ll unfurl the functions you can bind your first key to. Choose a function. Repeat the process for the remaining two keys. A full list of keycodes and what function they perform is given here.

search
search
search
6. It is now time to compile this new configuration into a file that you can use to flash The Key with your new functionality. Go to the “Compile” tab and press the button “Download .hex”. You will see a file downloaded named 3key.hex.

search



Quick Note on Adding Layers Adding a layer requires one of the keys to activate a layer. For example, the function “MO()” momentarily activates a layer. We are posting some images below for an example on how one could create a new layer. 
search
search
search
Again, as mentioned above, a full list of keycodes and what function they perform is given here. You can further look into “Layer Switching” and “RGB Lighting” on this page. Uploading the New Custom Configuration onto The Key This part of the process is where you will take the 3key.hex file you’ve created and “flash” it onto The Key’s PCB. What this means is that we are uploading a file to The Key and telling it to perform the functions we defined in the step above.
1. You will first need to download an open-source tool onto your computer. This tool is called QMK Toolbox and here is the github for it. Go to this page for the latest release and download the relevant file. For MAC users, we recommend downloading the .zip file, and for PC users, we recommend downloading the qmk_toolbox.exe file.
2. Install and launch the software. This is what you will see. Please make sure that the MCU shows “atmega32u4”

search
3. Click “Open” and select the 3key.hex file you created above. In the image below you can see the filename is not exactly 3key.hex and that is because we tried to create many different configurations. Note that the “Flash” button is not activated at this point.

search

4. Unscrew the back of The Key and take off the back plate. You’ll see the exposed PCB. Connect The Key to your MAC or PC. Once connected, press the button on the back of the exposed PCB of the macropad. Go back to the QMK Toolbox and you will see text in yellow saying that a device has been connected, along with the “Flash” button now being activated.

search
search
5. Click the “Flash” button. QMK Toolbox will show that it is trying to flash The Key and once the flashing is done will show a yellow prompt saying that the device has been disconnected.

search
6. You can now test whether the macropad is performing as you had configured it. You now have your version of The Key. Enjoy and please share what you created with the community.



Let us know if you have any questions in the discussion. We also look forward to the community sharing the custom layouts and functionality they are building with The Key.


(Edited by moderator HoffmanMyster)
34
126
remove_red_eye
47.1K

search
close
Rybug801
0
Apr 7, 2023
ive retried this about 10 times and redownloaded the HEX file the same amount and it keeps coming out with "Atmel DFU device connected (NO DRIVER): ATm32U4DFU (03EB:2FF4:0000) Attempting to flash, please don't remove device > dfu-programmer.exe atmega32u4 erase --force > dfu-programmer: no device present. > dfu-programmer.exe atmega32u4 flash --force "C:\Users\fakef\Downloads\3key (1).hex" > dfu-programmer: no device present. > dfu-programmer.exe atmega32u4 reset > dfu-programmer: no device present. Flash complete"
Rybug801
0
Apr 7, 2023
Rybug801fixed it. What you want to do is install the QMKToolboxinstaller.EXE. not the normal QMKToolbox.EXE, the installer asks you if you want to install drivers SAY YES!!! otherwise it cant flash it.
tunanocrust
3
Jan 20, 2023
Anyone has an idea how to implement rgb color per layer? I wanted to know which layer is active by the RGB so I know which key binds will be pressed for an app (blue rgb == discord keybinds)
Shayan_R
3
Dec 27, 2022
Thought I'd share this for others since I couldn't find a ready example so had to create my own. This has 3 layers, first intended for Mac, second for Windows and third for RGB. Easily toggle through the layers based on needs, this works great for me as I use both Mac and Windows and I also get access to the main RGB features I need too. Layer 0
[SO Key] = Toggle Layer (1) 
[C Key] = Cmd and C 
[V Key] = Cmd and V

Layer 1
[SO Key] = Toggle Layer (2) 
[C Key] = Ctrl and C 
[V Key] = Ctrl and V

Layer 2
[SO Key] = Toggle Layer (0) 
[C Key] = RGB Hue Cycle
[V Key] = RGB Mode Cycle You can find the json for this example below. {  "version": 1,  "notes": "",   "documentation": "\"This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n",  "keyboard": "massdrop/thekey_v2",  "keymap": "mac_windows_rgb",  "layout": "LAYOUT",  "layers": [   [    "TO(1)",    "LGUI(KC_C)",    "LGUI(KC_V)"   ],   [    "TO(2)",    "LCTL(KC_C)",    "LCTL(KC_V)"   ],   [    "TO(0)",    "RGB_HUI",    "RGB_MOD"   ]  ],   "author": "www.shayanrastegar.com" }
yangban
15
Apr 28, 2023
Shayan_RSorry but I dont get it. the toggle key is "toggle key" and it only represent layer 0 and 1, right?
(Edited)
sanslos
22
Jun 10, 2023
yangbanI believe this works because it replaces the current layer (unlink MO, which is momentary). Basically it cycles through the defined layers. You use the first key to move from layer to layer, getting the functions defined for the other two keys on that layer. I'm thinking about doing something like this, eventually, but changing colors from layer to layer so I know what the current mapping is. From https://docs.qmk.fm/#/feature_layers?id=switching-and-toggling-layers: TO(layer) - activates layer and de-activates all other layers (except your default layer). This function is special, because instead of just adding/removing one layer to your active layer stack, it will completely replace your current active layers, uniquely allowing you to replace higher layers with a lower one. This is activated on keydown (as soon as the key is pressed).
v3frankie
4
Oct 18, 2022
Imo, the community managers should clarify and sticky a couple things to this post as well as the main details of the product. You don't need to open the product to flash the firmware/config as explained in the "Uploading the New Custom Configuration onto The Key" section. As obvious as it may be, there is a convenient hole in the backplate to enable the flashing process. The comment by jason.wihardja on this discussion https://drop.com/buy/stack-overflow-the-key-v2-macropad/talk/2895375 Change the How To Configure file to use https://config.qmk.fm/#/massdrop/thekey_v2/LAYOUT instead of Keyboard Firmware Builder.
(Edited)
SteveWaring
0
Sep 10, 2022
Does anyone know if it is possible to control the LEDs from an Android device? It would be awesome to have an intent that accepted an Extra, to specify the LED mode. Users could then use Tasker to respond to any situation and set the LEDs are required. If it is possible, and someone can let me know how, I might find the time to code the Intent.
dobicinaitis
1
Sep 2, 2022
Leaving this here for fellow Linux users who came looking for info on how to configure The Key on Linux - https://github.com/dobicinaitis/stack-overflow-macropad/blob/main/doc/how-to-flash-firmware-on-linux.md
dustincredible
4
Jul 19, 2022
It still needs some work, but I created a SwiftBar/xbar plugin that monitors my Zoom mute status and changes The Key v2 RGBs to indicate muted (red), unmuted (green), or not in a meeting/not connected to audio (rainbow swirl). It's Mac only, but you can read about it here: https://dustin.lol/post/2022/zoom-key-v2/
https://github.com/dustincredible/swiftbar-key In the spirit of The Key, I borrowed heavily from the python @Andy-_-100 wrote in his post https://drop.com/talk/93641/talk/2893053
(Edited)
Andy-_-100
6
Jul 20, 2022
dustincredibleVery cool!!
Hey all, I just shared a post with some details and .hex files to give a more friendly default configuration. Left_0: fn/Layer Key (while pressed, enables Middle_1 and Right_1 when Middle and Right keys are pressed) Middle_0: Cmd+C (Mac), Ctrl+C (Win) Right_0: Cmd+V (Mac), Ctrl+C (Win) Left_1: <key does not exist on Layer 1> Middle_1: RGB_TOG (toggles RGB on/off) Right_1: RGB_MOD (cycles through RGB modes)  These are the two hex files, available for both Mac and Windows: https://docs.drop.com/TheKeyV2MacroLightingMAC.hex
https://docs.drop.com/TheKeyV2MacroLightingPC.hex The flashing process will be the same as detailed in the existing documentation for The Key V1 ("Uploading the New Custom Configuration onto The Key" section above). 
(Edited)
stuartsoft
1
Oct 13, 2022
HoffmanMysterCan you please make the JSON file for TheKeyV2 available as well?
germanshep
0
Oct 30, 2022
tamirben
5
Jun 28, 2022
Someone made a .hex file ready to flash? stackoverflow key => open default browser and navigate to stackoverflow.com C => ctrl/cmd C (copy) V => ctrl/cmd V (paste) and maybe also some nice LED changes, like a default white, when click on C will flash red, when click V will flash green, when click stackoverflow will flash some other color.
Andy-_-100
6
Jun 27, 2022
If anyone's interested, I made a tutorial to use it as a Windows notification indicator https://www.shawenyao.com/Stack-Overflow-The-LED/
ViCrunch
0
Nov 6, 2022
Andy-_-100I'm interested nice set up but it's for windows.. I'm Mac or Linux user... Do you think it could actually work on different OS ?
Andy-_-100
6
Dec 5, 2022
ViCrunchHi @ViCrunch - I'm not a Mac user but I think it can be done with relative ease. The Vial part is cross-platform, so it really boils down to finding the right API (presumably in Python) to read system notifications.
Showing 18 of 81
keyboard_arrow_up
Newest
81 OF 81 POSTS
keyboard_arrow_down
Oldest
PRODUCTS YOU MAY LIKE
Trending Posts in Mechanical Keyboards