Not sure what gui client you have. But first naming:
One configuration contains two layers: normal and keypad. You can use KeypadShift/KeypadToggle to switch between them. (I.e. a configuration is actually the remap definition (what USB HID code each key press should emit).
The keyboard has one active (current) configuration and 0-9 inactive configurations.
Active configuration is the one which is used when you type normal text, use numerical keypad (in keypad layer) etc.
Inactive configurations are actually an 10 item array. Each array item is the space where you can store copy of your active configuration (Prg-<SaveCfgKey>-<NumberKey>). And it is also the space from which you can copy the configuration to the active configuration (Prg-<LoadCfgKey>-<NumberKey>).
GUI Client always works only with the active/current configuration only. GUI does not know that the keyboard has also configurations 0-9. GUI knows normal layer and keypad layer, but does not know configurations.
So lets say you have defined two configurations 1 and 2. The current configuration is the copy of 1. You want to modify configuration 2. You can do it like this:
- Prg-<LoadCfgKey>-2 (copy configuration 2 to the active configuration)
- modify it with GUI client
- now the current configuration is different from both configuration 1 and 2
- Prg-<SaveCfgKey>-2 (actualize configuration 2 so that it is not lost if you load some configuration)
It should work. Some configuration must be saved to e.g. slot 2 before you can load the (previously saved) configuration from the slot 2. If no configuration was saved to it then it prints "No Layer". Some keys must be remapped from default before you can save the active configuration to some slot. Otherwise it prints "No Change".
If you want to use GUI client on windows then the keyboard firmware and the GUI client must be compiled from "windows hack" branch and WinUSB driver must be installed. GUI client and keyboard firmware can be used directly on linux (no need for "windows hack" branch or special drivers).