pixeltris/GK6X

TempSwitchLayer behaviour different with Fn key

Closed this issue · 4 comments

i was remap like this

[Layer1]
CapsLock:TempSwitchLayer2

[Layer2,FnLayer1]
Up:PageUp
Down:PageDown
Left:Home
Right:End

when i press Capslock+Shift+Right it mark to end of line, and when i release Capslock the Shift key has been released too
its different with Fn+Shift+Right was mark to end of line too, but when release FnKey, the Shift still registered
i dont know its because firmware or something

its happened to when using Ctrl+TempSwitchLayer2+Esc should be registered Ctrl+BackTick
but when the order changed TempSwitchLayer2+Ctrl+Esc its registered as it should

I think this is a firmware limitation unfortunately. I have a GK84 and a GK68.

GK84 (older firmware) is pretty versatile, as long as I'm holding down a modifier key it'll keep it registered, regardless of what temp switch layer I'm pressing / releasing.

GK68 (newer firmware) on the other hand releases held modifiers when entering a temp switch layer, as well as when leaving a temp switch layer.

You might have to get creative with your mappings or stick to the FN key.

Related issue #66

do you have any idea to custom the firmware GK68?
https://github.com/wgwoods/gk64-python this is only for GK64 right?

I don't think anyone has made custom firmware for GK6X keyboards and it would be a big undertaking to do so. See some discussion here #148

Unfortunately for anything other than basic mappings you're better off buying a keyboard with your desired layout which supports QMK.

well, i think i figure out some trick like this, its resolving my problem, the shift still registered till i release the key

[Macro(HoldShift,0,ReleaseKeyToStop,2)]
Down:TempSwitchLayer2+LShift

[Layer1]
CapsLock:TempSwitchLayer2
LShift:Macro(HoldShift)

[Layer2,FnLayer1,FnLayer2]
LShift:Macro(HoldShift)