shopping_cart

How to Configure Stack Overflow The Key Macropad?

more_vert
search
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)
24
10
remove_red_eye
11.3K

search
close
efff
0
Oct 18, 2021
If anyone is interested in a quick way to make it run string-based strings in kbfirmware, here's a way. In https://kbfirmware.com/, go to "quantum" and paste the code below, replacing "stringX" for the string you want: void matrix_init_user(void) { } void matrix_scan_user(void) { } bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case KC_1: if (record->event.pressed) { SEND_STRING("string1\n"); }  else {   } break; case KC_2: if (record->event.pressed) { SEND_STRING("string2\n"); }  else {  } break; case KC_3: if (record->event.pressed) { SEND_STRING("string3\n"); }  else { } break; } return false; } ------- then just compile, get your hex and follow the instructions in this page to flash it.
TK3017
3
Oct 11, 2021
How do we add macros?
RajMyster
21
Oct 15, 2021
Would also like to learn how to do this! I would love to have each key function as Select All, Copy, Paste as opposed to being a LCTRL with C and V.
TK3017
3
Oct 15, 2021
UPDATE: I've figured out a workaround to the macro request. Here's a set of steps if you want to do Win + L (to lock your computer)
  1. Go to Keyboard Firmware Builder
  2. Click on FN tab
  3. Select LGUI() [SIDE NOTE: Refer to this page to know what each function does]
  4. Select L
  5. Perform the flash steps as indicated on this page
If done correctly the button you selected should be mapped to the buttons that were selected. I've done the same steps to make the copy and paste shortcuts one button as opposed to two.
search

matan4
2
Oct 8, 2021
So does this still require a combination of two keys for a copy and two keys for a paste?
frap129
6
Oct 6, 2021
For those disapointed this only has kbfirmware support, I have a rough port in QMK working: https://github.com/frap129/qmk_firmware/commit/663c42b8d04d6e60b8bc80d14c77a31562ae63e4
thebigkey
4
Oct 8, 2021
This is quite nice! Are you planning on merging your changes to the upstream qmk repo?
Zinuous
1
Oct 21, 2021
Seriously, this works pretty well. I forked it to make my own customization that was impossible with kbfirmware. Please submit a PR or I can do it if you want.
smccrory
1
Oct 3, 2021
Can we get the JSON file for the actual device?
Fatalruin
158
Oct 2, 2021
kbfirmware.com's own warning: "kbfirmware.com is end-of-life. It is strongly encouraged to migrate any projects to more updated solutions." I know the site has been shut down once for user inactivity, and who knows when whomever is paying to host it will decide to do the same. Would the developers of this macropad be willing to do a proper port to QMK, and merge request the official repo (and possibly make sure that it works with the QMK Configurator as well)? This would give the product more longevity and value.
(Edited)