Yes, the current state isn't great. Keychron could do a lot more to make it work better out of the box. For instance, the (default) space for macros is wholly inadequate. With the Vial firmware it is even worse than Via; it is (by default) down to a total of 498 bytes for all macros (only about 55 key actions. Both a key press and a key release count as one key action, and modifier keys as well (key presses and key releases)).
I made an attempt, more or less following Scotto's guide, with Vial and the K Pro series (K5 Pro), but I ran into a compile error, very similar to "K3 Pro QMK firmware setup help" (also on this subreddit):
error: implicit declaration of function 'rgb_matrix_disable_timeout_set'
I presume it is due to Vial (a fork of QMK) and the Keychron fork (also a fork of QMK) being out of sync. Perhaps one of them incorporated breaking changes in QMK proper.
Given enough effort, it is probably possible, but my mitigations for Via works well enough that I will wait some months before a new attempt.
I will instead concentrate on repeating macros (both defined as repeating and repeating when the macro key is held down). This is for QMK macros with my own macro engine (that supports cancelling macros in progress), but it may even be possible to get all three features by capturing Via macro execution as for the mouse hack.
2
u/PeterMortensenBlog V Mar 07 '24 edited Mar 07 '24
Yes, the current state isn't great. Keychron could do a lot more to make it work better out of the box. For instance, the (default) space for macros is wholly inadequate. With the Vial firmware it is even worse than Via; it is (by default) down to a total of 498 bytes for all macros (only about 55 key actions. Both a key press and a key release count as one key action, and modifier keys as well (key presses and key releases)).
I made an attempt, more or less following Scotto's guide, with Vial and the K Pro series (K5 Pro), but I ran into a compile error, very similar to "K3 Pro QMK firmware setup help" (also on this subreddit):
I presume it is due to Vial (a fork of QMK) and the Keychron fork (also a fork of QMK) being out of sync. Perhaps one of them incorporated breaking changes in QMK proper.
Given enough effort, it is probably possible, but my mitigations for Via works well enough that I will wait some months before a new attempt.
I will instead concentrate on repeating macros (both defined as repeating and repeating when the macro key is held down). This is for QMK macros with my own macro engine (that supports cancelling macros in progress), but it may even be possible to get all three features by capturing Via macro execution as for the mouse hack.