Did my very first custom keyboard. Thank you @Tompi@discuss.tchncs.de for the amazing project. Question for folks familiar with QMK, when I used encoder (rotate it) it switches to the default(0) layer even if I keep holding the layer switch key. Any way around it? Here is the code if anyone is curious.
yeap, found it but the issue is that when encoder is rotated, it switches back to default layer. So, the code to use different things in different layers doesnt work. This is the code I have:
void turned(bool clockwise) { if (IS_LAYER_ON(0)) { tap_code16(clockwise ? LCTL(KC_PGDN) : LCTL(KC_PGUP)); } else if (IS_LAYER_ON(1)) { tap_code(clockwise ? KC_VOLU : KC_VOLD); } else if (IS_LAYER_ON(2)) { tap_code16(clockwise ? LALT(KC_TAB) : LALT(LSFT(KC_TAB))); } else if (IS_LAYER_ON(5)) { tap_code(clockwise ? KC_MS_WH_DOWN : KC_MS_WH_UP); } // else { // tap_code16(clockwise ? LGUI(KC_Y) : LGUI(KC_Z)); // } }
Haha…yeap thats exactly what it was for,
#define RGBLIGHT_LIMIT_VAL 2
helped me solve it.Digging some more, I found out that this happens only on the side that has encoder. Holding the layer keys that are on the micro-controller side and rotation encoder yields expected results. So I'm guessing its something to do with the matrix fix. My C isn't that sharp so I'll try to dig through and see what I can find.