GOLEM keyboard project
Guide

Keyboard firmware update (on Windows)

You can use the GUI if you have a common layout and don't want fancy unsupported functionality. However, I went with the harder way which works for my custom layout and has all the functionality of QMK.

Flashing the Pro Micro is quite easy once you have your development environment set up. Make sure you follow the steps in this QMK guide and you have all the necessary softwares and drivers on your machine.

If you've already gone through this process earlier, you only have to do the actual writing of the firmware (or maybe some updating):

Updating the local building environment (optional)

  1. git pull
  2. make git-submodule

Issue these two commands to update your local building environment. You can do this regularly or if something behaved differently than expected based on the documentation.

Compiling the .hex file:

  1. Edit the files in qmk if needed: msys64/home/user/qmk_firmware/keyboards/your_keyboard
  2. edit the keymap.c file in msys64/home/user/qmk_firmware/keyboards/your_keyboard/keymaps/default/
  3. Open msys2 and type: cd qmk_firmware
  4. Run the command:
    1. qmk compile -kb:your_keyboard -km default in QMK MSYS or
    2. make your_keyboard:default:avrdude in MSYS

    This compiles the hex file and attempts to flash the controller with avrdude.

    If you don't want to write the controller, just compile the file, you can run the command: make your_keyboard:default

    (This can take some time. For me it goes unresponsive for 2 minutes before starting the compilation. Also, flashing sometimes fails even when the hex file is created successfully.)

    Flashing the Pro Micro:

    If you want to flash the controller with an existing hex file, here are the steps:

    1. Open device manager (and keep it open) to follow how the Pro Micro is recognized. Its name and port number will change depending on if it's in bootloader mode, and you need this port number for avrdude to write the microcontroller.
    2. Reset your board: soft reset (press the dedicated key combo) or hard reset (by shorting RST and GND).
    3. Look for the new port number in device manager under ports. COM7 for me this time.
    4. Open avrdude (or avrdudess).
    5. Input/construct the following command with the the proper COM number from Device Manager (but don’t run the command yet):
    6. avrdude.exe -c avr109 -p m32u4 -P COM4 -b 57600 -D -U flash:w:"C:\mykb.hex":i
    7. Reset your board again.
    8. You have 8 seconds to run the above command.

    Well done! (Hopefully without any errors.) Try your keyboard with the brand new firmware.