This is a command-line tool for mapping keys, macros, and lighting for GK6X keyboards (GK64, GK84, GK61, etc). This can be used as an alternative to the official software (Windows / Mac).
It runs on Windows, Mac, and Linux.
See the releases page for prebuilt binaries.
Once the program is opened you should see something like:
Connected to device 'GK84S RBG' model:655491200 fw:v1.16
At this point you can start using mapping your keyboard with the map
command as seen below.
If you don't see any output, it has failed to detect the keyboard. There isn't any console output until it finds a valid keyboard.
map
Maps the keyboard based on the config in UserData/YOUR_MODEL_ID.txt
. See Sample.txt for examples of setting keys, macros, and lighting.
You can reprogram the base layer, layers 1-3, and layers 1-3 whilst the fn is held down. You can't move the fn key, but TempSwitchLayer1/2/3 can act similar to a secondary fn key. The base layer fn key set can't be mapped.
unmap
Resets the keyboard to the default config. The dedicated reset keyboard key combo will be more effective; refer to your manual.
gui
Starts the GUI web server on http://localhost:6464 (requires the GUI build from the releases page).
If you're running from source you'll need to copy the driver
folder from a release build. For updating the GUI files see updating.txt.
gui_le
Copies the lighting files created using the gui
to the Data/lighting/
folder so that the map
command can use them.
These commands generally aren't needed.
dumpkeys
Lists the textual name / code name (i.e. 5
is D5
) of the keys listed in the order that they appear on each row of your keyboard. This shows the keys represented prior to any mapping, and is just a reference.
findkeys
Tool to identify key names. Used for finding broken keys and fixing data files.
update_data
This is used to update the data files from the official software. This exact process needs to be re-documented (Updating.txt).
/p
command line arg can be used to set a prefixed file name of the config to use. For example GK6X.exe /p test
will use test - 655491200.txt
as the target config file (where the keyboard model id is 655491200
)./gui
, /map
, /unmap
, /dumpkeys
. For example: GK6X.exe /map
gui
command aren't included in this repo. Obtain them from a release build.map
/ umap
can fail silently.The web GUI looks like this: