GoXLd / gmmk-pro-OpenRGB

Custom Firmware for GMMK PRO rev.1 - ansi
3 stars 0 forks source link

"qmmk_pro" - custom QMK firmware for Glorious GMMK Pro rev.1

qmmk_pro VIA preview

Repository Description

1) You can use the firmware with OpenRGB support to customize colors for each key individually. However, in this case, the lighting settings are stored in the computer's memory. You will need to save the profile file and transfer it to a new device every time. Despite this, the lighting configuration process is straightforward. Another significant advantage is the concise configuration provided by the user.

2) Alternatively, you can manually set all the colors for each key in keymap.c.

QMK Firmware Compilation Guide

Table of Contents

  1. QMK Firmware Compilation
  2. QMK Pro for OpenRGB
  3. OpenRGB Guide
  4. Ready Firmware
  5. Layers
  6. Miscellaneous

QMK Firmware Compilation

To compile the firmware using the standard qmk_firmware, place the folder qmmk_pro_VIA in:

C:\Users\username\qmk_firmware\keyboards\gmmk\pro\rev1\ansi\keymaps\

QMK Pro for OpenRGB

OpenRGB To compile qmmk_pro_OpenRGB, follow the instructions by ringowu1234 on Reddit.

GMMK Pro Address for OpenRGB

OpenRGB Guide

For understanding, refer to the following guides:

If the links are unavailable:

Beginner General Guide to Getting Feker IK75 QMK/VIA Version (and other keebs) Working with OpenRGB [Beginner General Guide](https://github.com/GoXLd/gmmk-pro-OpenRGB/blob/main/files/begginer_guide.pdf)
GMMK Pro OpenRGB QMK Complete. How to Add Per Key Adjustment function? [How to Add Per Key Adjustment](https://github.com/GoXLd/gmmk-pro-OpenRGB/blob/main/files/GMMK_PRO_OpenRGB.pdf)
Compilation of Firmware for OpenRGB not Possible from Standard qmk_firmware Below are the steps I took to enable OpenRGB on my GMMK Pro. As mentioned in many places, I followed this guide for the most part, with some modification after encountering issues. I have no prior coding nor QMK experience. Any suggestions/corrections welcomed. First, install QMK MSYS from [here](https://qmk.fm/msys/). Once installation is finished, DO NOT RUN `qmk setup`. I will explain this later. Install Git from [here](https://git-scm.com/). Then, follow the guide: Open the QMK-MSYS application and type into the terminal: ```bash git clone https://github.com/qmk/qmk_firmware.git --recurse-submodules cd qmk_firmware qmk setup ``` This will install a file titled `QMK-OpenRGB` in your user space (unless you change the directory) that will contain all files related to OpenRGB compatible keyboards and will install all submodules. After this, rename the downloaded file from "QMK-OpenRGB" to "QMK_FIRMWARE" (explanation below). Continue with the guide. You should have no trouble compiling your own OpenRGB enabled keymap (`xxxx.bin`). Flash it to the keyboard with qmk_toolbox. Once flashed, in OpenRGB, open the settings tab, find OpenRGB QMK Protocol, click "add", and fill in: - **NAME:** GMMK Pro - **USB VID:** 320f - **USB PID:** 5044 Hit Save, then restart OpenRGB, click the rescan devices button, and your GMMK Pro should appear. Changing the file name is the missing step from the original guide, which ultimately fixed the issue for me. I spent hours of trial and error to find the cause: When you compile the keymap to `xxxx.bin`, qmk_toolbox will search for files in the "QMK_FIRMWARE" folder, not "QMK-OpenRGB". Normally, you download the "QMK_FIRMWARE" folder by entering "QMK SETUP" in QMK MSYS. Without this folder, qmk_toolbox will have no target to compile, resulting in error codes. However, the "QMK_FIRMWARE" folder you get from "QMK SETUP" is the non-OpenRGB version. Therefore, you have to change the folder name so the "QMK_FIRMWARE" folder contains OpenRGB files.

Ready Firmware

Pre-compiled firmware gmmk pro ANSI ver.1:

Layers

Source code for keyboard layout editor images can be found here.

Layer 0

Layer 0

Layer 1

Layer 1

Layer 2

Layer 2

Miscellaneous

Special thanks to:

Changelog: 16.08.2024 incraise 2ms polling interval ms 2 / some typing errors on 1ms / .bin updated + tested 23.08.2024 QMMK_PRO_VIA Changed DEBOUNCE_TYPE to sym_defer_g: Updated debounce algorithm for improved resistance to key bounce, reducing the likelihood of accidental double key presses. Increased USB_POLLING_INTERVAL_MS to 4 ms: Adjusted USB polling interval to decrease the chance of key bounce being registered, optimizing overall stability of key inputs. /.bin updates + tested