1
- // Copyright 2023 QMK
2
- // SPDX-License-Identifier: GPL-2.0-or-later
3
-
4
- #include QMK_KEYBOARD_H
5
-
6
-
7
- const uint16_t PROGMEM keymaps [][MATRIX_ROWS ][MATRIX_COLS ] = {
8
- [0 ] = LAYOUT_split_3x6_3 (
9
- KC_TAB , KC_Q , KC_W , KC_E , KC_R , QK_BOOT ,
10
- KC_ENT , KC_A , KC_S , KC_D , KC_F , KC_G ,
11
- KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B ,
12
- KC_LALT , KC_SPC , KC_TAB
13
- ),
14
- [1 ] = LAYOUT_split_3x6_3 (
15
- _______ , _______ , _______ , _______ , _______ , _______ ,
16
- _______ , _______ , _______ , _______ , _______ , _______ ,
17
- _______ , _______ , _______ , _______ , _______ , _______ ,
18
- _______ , _______ , _______
19
- ),
20
- [2 ] = LAYOUT_split_3x6_3 (
21
- _______ , _______ , _______ , _______ , _______ , _______ ,
22
- _______ , _______ , _______ , _______ , _______ , _______ ,
23
- _______ , _______ , _______ , _______ , _______ , _______ ,
24
- _______ , _______ , _______
25
- ),
26
- [3 ] = LAYOUT_split_3x6_3 (
27
- _______ , _______ , _______ , _______ , _______ , _______ ,
28
- _______ , _______ , _______ , _______ , _______ , _______ ,
29
- _______ , _______ , _______ , _______ , _______ , _______ ,
30
- _______ , _______ , _______
31
- ),
32
- [4 ] = LAYOUT_split_3x6_3 (
33
- _______ , _______ , _______ , _______ , _______ , _______ ,
34
- _______ , _______ , _______ , _______ , _______ , _______ ,
35
- _______ , _______ , _______ , _______ , _______ , _______ ,
36
- _______ , _______ , _______
37
- ),
38
- [5 ] = LAYOUT_split_3x6_3 (
39
- _______ , _______ , _______ , _______ , _______ , _______ ,
40
- _______ , _______ , _______ , _______ , _______ , _______ ,
41
- _______ , _______ , _______ , _______ , _______ , _______ ,
42
- _______ , _______ , _______
43
- ),
44
- [6 ] = LAYOUT_split_3x6_3 (
45
- _______ , _______ , _______ , _______ , _______ , _______ ,
46
- _______ , _______ , _______ , _______ , _______ , _______ ,
47
- _______ , _______ , _______ , _______ , _______ , _______ ,
48
- _______ , _______ , _______
49
- ),
50
- [7 ] = LAYOUT_split_3x6_3 (
51
- _______ , _______ , _______ , _______ , _______ , _______ ,
52
- _______ , _______ , _______ , _______ , _______ , _______ ,
53
- _______ , _______ , _______ , _______ , _______ , _______ ,
54
- _______ , _______ , _______
55
- )
56
- };
57
-
58
- #define value 40
59
- // Change LED color based on layer
60
- const rgblight_segment_t PROGMEM layer0_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
61
- {0 , 1 , 85 , 255 , value } // color if layer 0
62
- );
63
-
64
- const rgblight_segment_t PROGMEM layer1_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
65
- {0 , 1 , 125 , 255 , value } // color if layer 1
66
- );
67
-
68
- const rgblight_segment_t PROGMEM layer2_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
69
- {0 , 1 , 170 , 255 , value } // color if layer 2
70
- );
71
-
72
- const rgblight_segment_t PROGMEM layer3_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
73
- {0 , 1 , 200 , 255 , value } // color if layer 3
74
- );
75
-
76
- const rgblight_segment_t PROGMEM layer4_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
77
- {0 , 1 , 45 , 255 , value } // color if layer 4
78
- );
79
-
80
- const rgblight_segment_t PROGMEM layer5_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
81
- {0 , 1 , 85 , 0 , value } // color if layer 5
82
- );
83
-
84
- const rgblight_segment_t PROGMEM layer6_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
85
- {0 , 1 , 0 , 255 , value } // color if layer 6
86
- );
87
-
88
- const rgblight_segment_t PROGMEM layer7_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
89
- {0 , 1 , HSV_OFF } // color if layer 6
90
- );
91
-
92
-
93
- // Now define the array of layers. Later layers take precedence
94
- const rgblight_segment_t * const PROGMEM rgb_layers [] = RGBLIGHT_LAYERS_LIST (
95
- layer0_rgb , // Bottom layer
96
- layer1_rgb , // Overrides above layers
97
- layer2_rgb , // Overrides above layers
98
- layer3_rgb , // Overrides above layers
99
- layer4_rgb , // Overrides above layers
100
- layer5_rgb , // Overrides above layers
101
- layer6_rgb , // Overrides above layers
102
- layer7_rgb // Overrides above layers
103
- );
104
-
105
- void keyboard_post_init_user (void ) {
106
- // Enable the LED layers
107
- rgblight_layers = rgb_layers ;
108
- }
109
-
110
-
111
- //bellow code block checks and changes state of LED
112
- layer_state_t default_layer_state_set_user (layer_state_t state ) {
113
- rgblight_set_layer_state (0 , layer_state_cmp (state , 0 ));
114
- return state ;
115
- }
116
-
117
- layer_state_t layer_state_set_user (layer_state_t state ) {
118
- rgblight_set_layer_state (1 , layer_state_cmp (state , 1 ));
119
- rgblight_set_layer_state (2 , layer_state_cmp (state , 2 ));
120
- rgblight_set_layer_state (3 , layer_state_cmp (state , 3 ));
121
- rgblight_set_layer_state (4 , layer_state_cmp (state , 4 ));
122
- rgblight_set_layer_state (5 , layer_state_cmp (state , 5 ));
123
- rgblight_set_layer_state (6 , layer_state_cmp (state , 6 ));
124
- rgblight_set_layer_state (7 , layer_state_cmp (state , 7 ));
125
- return state ;
1
+ // Copyright 2023 QMK
2
+ // SPDX-License-Identifier: GPL-2.0-or-later
3
+
4
+ #include QMK_KEYBOARD_H
5
+
6
+
7
+ const uint16_t PROGMEM keymaps [][MATRIX_ROWS ][MATRIX_COLS ] = {
8
+ [0 ] = LAYOUT_split_3x6_3 (
9
+ KC_TAB , KC_Q , KC_W , KC_E , KC_R , QK_BOOT ,
10
+ KC_ENT , KC_A , KC_S , KC_D , KC_F , KC_G ,
11
+ KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B ,
12
+ KC_LALT , KC_SPC , KC_TAB
13
+ ),
14
+ [1 ] = LAYOUT_split_3x6_3 (
15
+ _______ , _______ , _______ , _______ , _______ , _______ ,
16
+ _______ , _______ , _______ , _______ , _______ , _______ ,
17
+ _______ , _______ , _______ , _______ , _______ , _______ ,
18
+ _______ , _______ , _______
19
+ ),
20
+ [2 ] = LAYOUT_split_3x6_3 (
21
+ _______ , _______ , _______ , _______ , _______ , _______ ,
22
+ _______ , _______ , _______ , _______ , _______ , _______ ,
23
+ _______ , _______ , _______ , _______ , _______ , _______ ,
24
+ _______ , _______ , _______
25
+ ),
26
+ [3 ] = LAYOUT_split_3x6_3 (
27
+ _______ , _______ , _______ , _______ , _______ , _______ ,
28
+ _______ , _______ , _______ , _______ , _______ , _______ ,
29
+ _______ , _______ , _______ , _______ , _______ , _______ ,
30
+ _______ , _______ , _______
31
+ ),
32
+ [4 ] = LAYOUT_split_3x6_3 (
33
+ _______ , _______ , _______ , _______ , _______ , _______ ,
34
+ _______ , _______ , _______ , _______ , _______ , _______ ,
35
+ _______ , _______ , _______ , _______ , _______ , _______ ,
36
+ _______ , _______ , _______
37
+ ),
38
+ [5 ] = LAYOUT_split_3x6_3 (
39
+ _______ , _______ , _______ , _______ , _______ , _______ ,
40
+ _______ , _______ , _______ , _______ , _______ , _______ ,
41
+ _______ , _______ , _______ , _______ , _______ , _______ ,
42
+ _______ , _______ , _______
43
+ ),
44
+ [6 ] = LAYOUT_split_3x6_3 (
45
+ _______ , _______ , _______ , _______ , _______ , _______ ,
46
+ _______ , _______ , _______ , _______ , _______ , _______ ,
47
+ _______ , _______ , _______ , _______ , _______ , _______ ,
48
+ _______ , _______ , _______
49
+ ),
50
+ [7 ] = LAYOUT_split_3x6_3 (
51
+ _______ , _______ , _______ , _______ , _______ , _______ ,
52
+ _______ , _______ , _______ , _______ , _______ , _______ ,
53
+ _______ , _______ , _______ , _______ , _______ , _______ ,
54
+ _______ , _______ , _______
55
+ )
56
+ };
57
+
58
+ #define value 40
59
+ // Change LED color based on layer
60
+ const rgblight_segment_t PROGMEM layer0_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
61
+ {0 , 1 , 85 , 255 , value } // color if layer 0
62
+ );
63
+
64
+ const rgblight_segment_t PROGMEM layer1_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
65
+ {0 , 1 , 125 , 255 , value } // color if layer 1
66
+ );
67
+
68
+ const rgblight_segment_t PROGMEM layer2_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
69
+ {0 , 1 , 170 , 255 , value } // color if layer 2
70
+ );
71
+
72
+ const rgblight_segment_t PROGMEM layer3_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
73
+ {0 , 1 , 200 , 255 , value } // color if layer 3
74
+ );
75
+
76
+ const rgblight_segment_t PROGMEM layer4_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
77
+ {0 , 1 , 45 , 255 , value } // color if layer 4
78
+ );
79
+
80
+ const rgblight_segment_t PROGMEM layer5_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
81
+ {0 , 1 , 85 , 0 , value } // color if layer 5
82
+ );
83
+
84
+ const rgblight_segment_t PROGMEM layer6_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
85
+ {0 , 1 , 0 , 255 , value } // color if layer 6
86
+ );
87
+
88
+ const rgblight_segment_t PROGMEM layer7_rgb [] = RGBLIGHT_LAYER_SEGMENTS (
89
+ {0 , 1 , HSV_OFF } // color if layer 6
90
+ );
91
+
92
+
93
+ // Now define the array of layers. Later layers take precedence
94
+ const rgblight_segment_t * const PROGMEM rgb_layers [] = RGBLIGHT_LAYERS_LIST (
95
+ layer0_rgb , // Bottom layer
96
+ layer1_rgb , // Overrides above layers
97
+ layer2_rgb , // Overrides above layers
98
+ layer3_rgb , // Overrides above layers
99
+ layer4_rgb , // Overrides above layers
100
+ layer5_rgb , // Overrides above layers
101
+ layer6_rgb , // Overrides above layers
102
+ layer7_rgb // Overrides above layers
103
+ );
104
+
105
+ void keyboard_post_init_user (void ) {
106
+ // Enable the LED layers
107
+ rgblight_layers = rgb_layers ;
108
+ }
109
+
110
+
111
+ //bellow code block checks and changes state of LED
112
+ layer_state_t default_layer_state_set_user (layer_state_t state ) {
113
+ rgblight_set_layer_state (0 , layer_state_cmp (state , 0 ));
114
+ return state ;
115
+ }
116
+
117
+ layer_state_t layer_state_set_user (layer_state_t state ) {
118
+ rgblight_set_layer_state (1 , layer_state_cmp (state , 1 ));
119
+ rgblight_set_layer_state (2 , layer_state_cmp (state , 2 ));
120
+ rgblight_set_layer_state (3 , layer_state_cmp (state , 3 ));
121
+ rgblight_set_layer_state (4 , layer_state_cmp (state , 4 ));
122
+ rgblight_set_layer_state (5 , layer_state_cmp (state , 5 ));
123
+ rgblight_set_layer_state (6 , layer_state_cmp (state , 6 ));
124
+ rgblight_set_layer_state (7 , layer_state_cmp (state , 7 ));
125
+ return state ;
126
126
}
0 commit comments