Skip to content

Open-source keyboard firmware for Atmel AVR and Arm USB families

License

GPL-2.0, GPL-2.0 licenses found

Licenses found

GPL-2.0
LICENSE
GPL-2.0
license_GPLv2.md
Notifications You must be signed in to change notification settings

Adam13531/qmk_firmware

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repo

I just wanted to save off my keymaps without merging them with the official repository (since I don't think there's much benefit for others).

Usage from Windows

This QMK page is good for getting started. I wrote a bunch of notes in my OneNote → Infrequent → Misc → GMMK 75.

  • Ensure QMK MSYS is up-to-date (reference). Almost every single confusing problem I had at first could have been solved by updating QMK MSYS. It seems to remember its installation directory, but I did end up with E:\QMK_MSYS\QMK_MSYS somehow despite that. 🤷‍♂️
  • MinGW64 stuff apparently shouldn't be needed with QMK MSYS, but I still copied mingw64.exe into the QMK MSYS folder and used that as my shell for all of the commands below. You can also just run the "QMK MSYS" shortcut, which appears to just be a shortcut to ConEmu64.exe + bash.exe: E:\QMK_MSYS\conemu\ConEmu64.exe -NoSingle -NoUpdate -icon "E:\QMK_MSYS\icon.ico" -title "QMK MSYS" -run "E:\QMK_MSYS\usr\bin\bash.exe" -l -i -cur_console:m:""
  • Set defaults for QMK so that you don't need to specify -km (keymap) or kb (keyboard) arguments. I only have the one QMK keyboard after all!
    • qmk config user.keyboard=gmmk/pro/ansi or qmk config user.keyboard=moonlander or qmk config user.keyboard=crkbd
    • qmk config user.keymap=adam
  • Clone this repo
  • qmk setup -H /e/qmk_firmware/
    • /e/qmk_firmware represents E:\qmk_firmware, which is where I cloned the QMK repo. This'll save a bunch of space in your home directory.
  • qmk flash -j 8
    • This compiles and flashes; no need to run qmk compile on its own.
    • -j 8 is the thread count.
    • You should see it print something like "INFO Compiling keymap with make -j 8 gmmk/pro/ansi:adam:flash" as the first line.
    • Specify the keyboard and keymap all at once: qmk flash -j 8 -kb moonlander -km adam
  • Press the RESET key on the keyboard (fn+\ on the GMMK Pro) to enter bootloading. On the GMMK Pro without QMK, the RESET sequence is to disconnect the keyboard and hold space+B before reconnecting.

Changes to the GMMK Pro keymap

Link to my keymap folder.

  • Semicolon - this is a "custom" layer-tap key to get into the _NAV layer (the "custom" part comes from treating all keys after a semicolon as being modified regardless of whether the semicolon was still held).
  • Encoder
    • Pressing it in pauses/plays media
    • Modifier keys (code taken from here)
      • Shift: pgup/pgdown
      • Ctrl: navigate by word
      • Alt: change media track
      • No mod: volume
  • The four-key cluster on the right side is X → Delete → Home → End. "X" is currently to change layers, but I'm not too tied to that.
  • Layers:
    • Quick descriptions
      • _MAIN: base layer, pink.
      • _NUMP: numpad layer, green. From _MAIN2, press 7, 8, or 9 to enter. Press either semicolon or apostrophe to leave.
      • _NAV: extra functionality (mostly for navigation, e.g. IJKL arrow keys).
      • _FUNC: RGB+RESET layer, blue. Hold FN to use.

Moonlander notes

Link to my keymap folder.

  • Default layer: rather than rely on Karabiner-Elements on macOS to remap modifier keys, I now rely on default layers to do this. get_highest_layer always returns _WIN_BASE for some reason, so there's an extra check in there to see if the default layer is set to _MAC_BASE.
  • Moonlander LED codes (credit to rtings for the base picture): image

Corne notes

Link to my keymap folder.

  • See this repo for the choc v3 Corne that I made.
  • To reset the Corne, you can do any of the following (in order of easy → hard):
    • Press the RESET key if you already have it mapped in QMK (my keymap does have this mapped)
    • Hold the Q or P key (depending on which half of the keyboard you're flashing) while plugging in the keyboard
    • Bridge the RST and GND pins

Helpful links

Troubleshooting

  • General troubles: try qmk doctor to detect issues and qmk clean
  • Linker issues: this could be due to having something in rules.mk; I once hit this when I had COMBO_ENABLE = yes in there, and removing it fixed everything.
  • If KC_CAPS is being sent as ctrl, then it's this issue. The solution is to flash the EEPROM.

About

Open-source keyboard firmware for Atmel AVR and Arm USB families

Resources

License

GPL-2.0, GPL-2.0 licenses found

Licenses found

GPL-2.0
LICENSE
GPL-2.0
license_GPLv2.md

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 93.6%
  • Makefile 3.2%
  • C++ 2.4%
  • Python 0.7%
  • Shell 0.1%
  • Roff 0.0%