What is SpaceFN and why you should give it a try
The SpaceFN concept - setting up your space key as a layer switch when held - is probably one of the most useful tweaks in the keyboard hobby. Let me explain how it works. My SpaceFN article on kbd.news made some rounds recently - quite surprisingly given the age of this concept. This piece you're reading is a condensed version of the full post. If you're left with unanswered questions, you'll most likely find the info you're looking for in the original write-up. On my imaginary top list of the most useful keyboard features, tweaks and hacks, SpaceFN would deserve a podium finish for sure. But what makes it so special? In short: SpaceFN is easy to implement, easy to learn, costs nothing, can be used with any keyboard, and can improve your productivity instantly. I will list its benefits below, but can state right at this point that the SpaceFN concept, setting up your space key as a layer switch when held, is clearly one of the most useful tweaks in the keyboard hobby....
Apr 30, 2024
https://lastcontinue.github.io/ctrl-info/#helpful-gists
There's comments in the scrips to make them more helpful.
Edit: Since it seemed you downloaded the loader via Safari, you'll want to replace references to `mdloader_mac` with `mdloader_mac.dms`
(I should make that an option)
Edit2: I made that an option on https://gist.github.com/LastContinue/65dc6e6dcd8181dc6c82ed351b7525ad . You can now run it as `./ldr.sh -s <name_of>.bin` and it should look for `mdloader_mac.dms` 👍
I'll fix the other script at lunch.
Edit 3: Realized I had more time than I thought this morning. Updated both scripts to accept a `-s` or `--safari` option.
(bonus you can see I made `print` and `insert` screenshot buttons. Otherwise they aren't used on a Mac. Oh also I use capslock as ctrl, but that's easy enough to swap)
I wish I could share the my configurator layout with others... But, here are some screenshots of my layout. I basically have 3 extra layers. The 2nd layer (1) brings the entire number row into the home row when I push the function key. The 3rd (2) layer is for Vim motion as I'm primarily a programmer (I access this layer by hitting the caps lock key). I also changed Caps Lock to Esc in the main layer (0). The 4th (3) layer is just for controlling the LEDs. I hope this helps.
Oh great call out. Lemme hack around and see what I can some up with (even if you've already figured it out, a screenshot will help somebody else I'm sure)
what does the second step mean?
This is the base layer. The only thing kinda tricky is the `Mod(1)` but I included how I did that. Now, you'll notice that Mod(1) (which acts like our FN key) isn't in the same spot as in the picture, but I think this will be more useful (and gotta have that eject key 😉) This is the function (FN) layer
F14 and F15 on a "regular" keyboard adjust brightness, so those are free. F3 to show desktop/windows is just "ctrl + up_arrow" so I did that. Showing Launchpad is a bit more difficult. There's no shortcut for it, so I put it as F16. This will allow you to go into the MacOS control panel and set it as a shortcut on a unique key
The rest are self explanatory, but "oops" I left the default "mute" . Just replace that with "trns" Hope this helps! You can do this! 😤
1) Press cmd + space and type in "terminal". Hit enter and it will bring up a terminal! 2) Lets make a new directory so we can kick up some dust without disturbing other things. type "mkdir CTRL" and hit enter 3) Lets go into that dirctory! type "cd CTRL" and hit enter. 4) Always be paranoid about your dir! Type "pwd" to see where you're at. It should say `users/something/something/CTRL` 5) Now we need to get the files you downloaded earlier into this directory (because I can't remember what utilities are included on a default Mac 😅). In the terminal type "open . " (there's a space between the period/fullstop) 6) That will open up a Finder window and you can drag N drop! 7) Now you're in the right DIR and you have the right files. Type "ls" ("lima sierra", not "india sierra") and you should see everything you need. The loader and the bin file. 8) Now you'll type in chmod u+x mdloader_mac.dms 9) Reopen a finder window and lets drag in a downloaded .bin file from Massdrop (any will do, even the default) 10) Because it's my instructions, we'll feed my ego and download my script 😉 Download https://gist.github.com/LastContinue/65dc6e6dcd8181dc6c82ed351b7525ad/archive/1ae0c6fdcbb862aedb1e2cf0378835775046dc3e.zip and keep opening folders until you only see `ctrl-ldr.sh` and now drag that file into your CTRL folder 11) Get a toothpick ready. You're going to need to be able to hit the button on the bottom of the keyboard. Do a few dry runs so you can get the feel of it. You can just unplug and plug the keyboard back into power it back up (you could use a pin, or even a mechanical pencil, but just be really careful with metal. Toothpick is safe) 12) Now, lets run "./ctrl-ldr.sh -s <name of the massdrop file>bin" Protip: you can start typing "massdrop" and then hit "tab". That will autocomplete the rest of the name of the file (or rename it to something shorter using finder 😉) 13) The script will tell you to hit the button. HIT THE BUTTON! 14) Wait. Your keyboard will turn off, and then turn back on 15) Enjoy! You did it! 😎 16*** If you encounter any issues, just unplug the keyboard and plug it back in. It's pretty resilient it seems.
(I hope this wasn't patronizing, I don't know how much you do or don't know about using a Mac with cli tools)
https://drive.google.com/file/d/1w8D0mgdEVsbKASjt3dH93dQrH2O8E3DW/view?usp=sharing
Glad I could help.
You helped me think about this from another direction and I'm not sure if you saw, but I made an app to help automate the setup for this (for Mac Users)
https://github.com/LastContinue/ctrl-info/releases/tag/0.1 (Just download the Zipfile, and keep opening until you get to the App. Probably best you have it on the Desktop, because that's where it'll try to save your files into)
I'd appreciate any feedback on it!
https://github.com/LastContinue/ctrl-info/releases (getting one of drag-and-drop loaders from here will be the easiest way to flash. There should be instructions on that page) https://github.com/LastContinue/ctrl-info/wiki If you want to reset this back to default you can just download a base map from https://www.massdrop.com/mechanical-keyboards/configurator/preset/ctrl--default without any other configuration and that'll give you more or less a stock map.
Error: Could not open port! (Correct port?) Any ideas for how to overcome this?
- Are you trying to compile a map from QMK and load it?
- Are you trying just load a map from the GUI configurator?
- Something else entirely?
What type of OS are you currently using? Most of my knowledge on this is related to MacOS/Linux, however, I can borrow a Windows machine from a buddy if needed (just be understanding that in 2020 "things take time") What CTRL keyboard are you trying to program? (at some point they did a board revision so this might be helpful). If it's an ALT I can probably help, but SHIFT seem to be different enough I might not be able to help. Let me know the answers to these questions (Or maybe you already figured it out?) and we can go from there 😀