#ifdef KEYMAP_CUB
uint8_t layer = biton32(layer_state);
- if (layer == 1) {
- ergodox_left_led_1_on();
- ergodox_left_led_2_off();
- ergodox_left_led_3_off();
- } else if (layer == 2) {
- ergodox_left_led_1_off();
- ergodox_left_led_2_on();
- ergodox_left_led_3_off();
- } else if (layer == 3) {
- ergodox_left_led_1_off();
- ergodox_left_led_2_off();
- ergodox_left_led_3_on();
- } else if (layer == 4) {
- ergodox_left_led_1_on();
- ergodox_left_led_2_off();
- ergodox_left_led_3_on();
- } else if (layer == 5) {
- ergodox_left_led_1_on();
- ergodox_left_led_2_on();
- ergodox_left_led_3_off();
- } else if (layer == 6) {
- ergodox_left_led_1_off();
- ergodox_left_led_2_on();
- ergodox_left_led_3_on();
- } else if (layer == 7) {
- ergodox_left_led_1_on();
- ergodox_left_led_2_on();
- ergodox_left_led_3_on();
- } else {
- ergodox_left_led_1_off();
- ergodox_left_led_2_off();
- ergodox_left_led_3_off();
+ ergodox_board_led_off();
+ switch (layer) {
+ case 1:
+ // all
+ ergodox_left_led_1_on();
+ ergodox_left_led_2_on();
+ ergodox_left_led_3_on();
+ break;
+ case 2:
+ case 8:
+ // blue
+ ergodox_left_led_1_off();
+ ergodox_left_led_2_on();
+ ergodox_left_led_3_off();
+ break;
+ case 3:
+ // green
+ ergodox_left_led_1_off();
+ ergodox_left_led_2_off();
+ ergodox_left_led_3_on();
+ break;
+ case 6:
+ ergodox_board_led_on();
+ // break missed intentionally
+ case 4:
+ case 5:
+ case 7:
+ // red
+ ergodox_left_led_1_on();
+ ergodox_left_led_2_off();
+ ergodox_left_led_3_off();
+ break;
+ default:
+ // none
+ ergodox_left_led_1_off();
+ ergodox_left_led_2_off();
+ ergodox_left_led_3_off();
+ break;
}
- // not actually needed because we already calling init_mcp23018() in next line
mcp23018_status = ergodox_left_leds_update();
-
#endif
for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
select_row(i);
- _delay_us(30); // without this wait read unstable value.
matrix_row_t cols = read_cols(i);
if (matrix_debouncing[i] != cols) {
matrix_debouncing[i] = cols;
return data;
}
} else {
+ _delay_us(30); // without this wait read unstable value.
// read from teensy
return
(PINF&(1<<0) ? 0 : (1<<0)) |