aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2021-01-01 16:32:49 +0000
committerQMK Bot <hello@qmk.fm>2021-01-01 16:32:49 +0000
commitd288f2f5daa1f4481703c6eb49af7950ccdce10c (patch)
tree34448ba9840a46cc3d7b8e24916713e38c0053bf
parent5fe3de315303264da1942fc39b3eaf0d7a7fc4e9 (diff)
parentc01a8b030e7f47e8972904f953a3ad27257ab495 (diff)
downloadqmk_firmware-d288f2f5daa1f4481703c6eb49af7950ccdce10c.tar.gz
qmk_firmware-d288f2f5daa1f4481703c6eb49af7950ccdce10c.zip
Merge remote-tracking branch 'origin/master' into develop
-rw-r--r--keyboards/keycapsss/o4l_5x12/config.h115
-rw-r--r--keyboards/keycapsss/o4l_5x12/info.json369
-rw-r--r--keyboards/keycapsss/o4l_5x12/keymaps/2x2u/config.h3
-rw-r--r--keyboards/keycapsss/o4l_5x12/keymaps/2x2u/keymap.c126
-rw-r--r--keyboards/keycapsss/o4l_5x12/keymaps/default/config.h3
-rw-r--r--keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c233
-rw-r--r--keyboards/keycapsss/o4l_5x12/o4l_5x12.h81
-rw-r--r--keyboards/keycapsss/o4l_5x12/readme.md16
-rw-r--r--keyboards/keycapsss/o4l_5x12/rules.mk25
9 files changed, 513 insertions, 458 deletions
diff --git a/keyboards/keycapsss/o4l_5x12/config.h b/keyboards/keycapsss/o4l_5x12/config.h
index 67bde35cf..e24275160 100644
--- a/keyboards/keycapsss/o4l_5x12/config.h
+++ b/keyboards/keycapsss/o4l_5x12/config.h
@@ -3,41 +3,122 @@
3#include "config_common.h" 3#include "config_common.h"
4 4
5/* USB Device descriptor parameter */ 5/* USB Device descriptor parameter */
6#define VENDOR_ID 0x7983 6#define VENDOR_ID 0x7983
7#define PRODUCT_ID 0x0512 7#define PRODUCT_ID 0x0512
8#define DEVICE_VER 0x0001 8#define DEVICE_VER 0x0001
9#define MANUFACTURER Keycapsss 9#define MANUFACTURER Keycapsss
10#define PRODUCT O4L:5x12 10#define PRODUCT O4L:5x12
11#define DESCRIPTION A 60 key ortholinear keyboard
12 11
13/* key matrix size */ 12/* key matrix size */
14#define MATRIX_ROWS 5 13#define MATRIX_ROWS 5
15#define MATRIX_COLS 12 14#define MATRIX_COLS 12
16 15
17/* key matrix pins */ 16/*
17 * Keyboard Matrix Assignments
18 *
19 * Change this to how you wired your keyboard
20 * COLS: AVR pins used for columns, left to right
21 * ROWS: AVR pins used for rows, top to bottom
22 * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
23 * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
24 *
25 */
18#define MATRIX_ROW_PINS { F7, B1, B3, B2, B6 } 26#define MATRIX_ROW_PINS { F7, B1, B3, B2, B6 }
19#define MATRIX_COL_PINS { B5, B4, E6, D7, C6, D4, D0, D1, D2, F6, F5, F4 } 27#define MATRIX_COL_PINS { B5, B4, E6, D7, C6, D4, D0, D1, D2, F6, F5, F4 }
20#define UNUSED_PINS 28#define UNUSED_PINS
21 29
22/* COL2ROW or ROW2COL */ 30/* COL2ROW, ROW2COL */
23#define DIODE_DIRECTION COL2ROW 31#define DIODE_DIRECTION COL2ROW
24 32
25/* WS2812 RGB LED */ 33//#define BACKLIGHT_PIN B7
26#define RGB_DI_PIN D3 34//#define BACKLIGHT_LEVELS 3
35//#define BACKLIGHT_BREATHING
27 36
37#define RGB_DI_PIN D3
28#ifdef RGB_DI_PIN 38#ifdef RGB_DI_PIN
29#define RGBLIGHT_ANIMATIONS 39# define RGBLED_NUM 12
30#define RGBLED_NUM 12 // Number of LEDs 40# define RGBLIGHT_HUE_STEP 4
31#define RGBLIGHT_HUE_STEP 4 41# define RGBLIGHT_SAT_STEP 4
32#define RGBLIGHT_SAT_STEP 4 42# define RGBLIGHT_VAL_STEP 4
33#define RGBLIGHT_VAL_STEP 4 43//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
44//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
45/*== all animations enable ==*/
46# define RGBLIGHT_ANIMATIONS
47/*== or choose animations ==*/
48//# define RGBLIGHT_EFFECT_BREATHING
49//# define RGBLIGHT_EFFECT_RAINBOW_MOOD
50//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
51//# define RGBLIGHT_EFFECT_SNAKE
52//# define RGBLIGHT_EFFECT_KNIGHT
53//# define RGBLIGHT_EFFECT_CHRISTMAS
54//# define RGBLIGHT_EFFECT_STATIC_GRADIENT
55//# define RGBLIGHT_EFFECT_RGB_TEST
56//# define RGBLIGHT_EFFECT_ALTERNATING
57/*== customize breathing effect ==*/
58/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
59//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
60/*==== use exp() and sin() ====*/
61//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
62//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
34#endif 63#endif
35 64
36/* Set 0 if debouncing isn't needed */ 65/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
37#define DEBOUNCE 5 66#define DEBOUNCE 5
38 67
68/* define if matrix has ghost (lacks anti-ghosting diodes) */
69//#define MATRIX_HAS_GHOST
70
39/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ 71/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
40#define LOCKING_SUPPORT_ENABLE 72#define LOCKING_SUPPORT_ENABLE
41
42/* Locking resynchronize hack */ 73/* Locking resynchronize hack */
43#define LOCKING_RESYNC_ENABLE 74#define LOCKING_RESYNC_ENABLE
75
76/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
77 * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
78 */
79//#define GRAVE_ESC_CTRL_OVERRIDE
80
81/*
82 * Force NKRO
83 *
84 * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
85 * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
86 * makefile for this to work.)
87 *
88 * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
89 * until the next keyboard reset.
90 *
91 * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
92 * fully operational during normal computer usage.
93 *
94 * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
95 * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
96 * bootmagic, NKRO mode will always be enabled until it is toggled again during a
97 * power-up.
98 *
99 */
100//#define FORCE_NKRO
101
102/*
103 * Feature disable options
104 * These options are also useful to firmware size reduction.
105 */
106
107/* disable debug print */
108//#define NO_DEBUG
109
110/* disable print */
111//#define NO_PRINT
112
113/* disable action features */
114//#define NO_ACTION_LAYER
115//#define NO_ACTION_TAPPING
116//#define NO_ACTION_ONESHOT
117
118/* disable these deprecated features by default */
119#define NO_ACTION_MACRO
120#define NO_ACTION_FUNCTION
121
122/* Bootmagic Lite key configuration */
123//#define BOOTMAGIC_LITE_ROW 0
124//#define BOOTMAGIC_LITE_COLUMN 0
diff --git a/keyboards/keycapsss/o4l_5x12/info.json b/keyboards/keycapsss/o4l_5x12/info.json
index 7dba0dab5..b2eb8ad51 100644
--- a/keyboards/keycapsss/o4l_5x12/info.json
+++ b/keyboards/keycapsss/o4l_5x12/info.json
@@ -7,195 +7,204 @@
7 "height": 5, 7 "height": 5,
8 "layouts": { 8 "layouts": {
9 "LAYOUT_ortho_5x12": { 9 "LAYOUT_ortho_5x12": {
10 "key_count": 60,
11 "layout": [ 10 "layout": [
12 {"w": 1, "x": 0, "y": 0}, 11 {"x": 0, "y": 0},
13 {"w": 1, "x": 1, "y": 0}, 12 {"x": 1, "y": 0},
14 {"w": 1, "x": 2, "y": 0}, 13 {"x": 2, "y": 0},
15 {"w": 1, "x": 3, "y": 0}, 14 {"x": 3, "y": 0},
16 {"w": 1, "x": 4, "y": 0}, 15 {"x": 4, "y": 0},
17 {"w": 1, "x": 5, "y": 0}, 16 {"x": 5, "y": 0},
18 {"w": 1, "x": 6, "y": 0}, 17 {"x": 6, "y": 0},
19 {"w": 1, "x": 7, "y": 0}, 18 {"x": 7, "y": 0},
20 {"w": 1, "x": 8, "y": 0}, 19 {"x": 8, "y": 0},
21 {"w": 1, "x": 9, "y": 0}, 20 {"x": 9, "y": 0},
22 {"w": 1, "x": 10, "y": 0}, 21 {"x": 10, "y": 0},
23 {"w": 1, "x": 11, "y": 0}, 22 {"x": 11, "y": 0},
24 {"w": 1, "x": 0, "y": 1}, 23
25 {"w": 1, "x": 1, "y": 1}, 24 {"x": 0, "y": 1},
26 {"w": 1, "x": 2, "y": 1}, 25 {"x": 1, "y": 1},
27 {"w": 1, "x": 3, "y": 1}, 26 {"x": 2, "y": 1},
28 {"w": 1, "x": 4, "y": 1}, 27 {"x": 3, "y": 1},
29 {"w": 1, "x": 5, "y": 1}, 28 {"x": 4, "y": 1},
30 {"w": 1, "x": 6, "y": 1}, 29 {"x": 5, "y": 1},
31 {"w": 1, "x": 7, "y": 1}, 30 {"x": 6, "y": 1},
32 {"w": 1, "x": 8, "y": 1}, 31 {"x": 7, "y": 1},
33 {"w": 1, "x": 9, "y": 1}, 32 {"x": 8, "y": 1},
34 {"w": 1, "x": 10, "y": 1}, 33 {"x": 9, "y": 1},
35 {"w": 1, "x": 11, "y": 1}, 34 {"x": 10, "y": 1},
36 {"w": 1, "x": 0, "y": 2}, 35 {"x": 11, "y": 1},
37 {"w": 1, "x": 1, "y": 2}, 36
38 {"w": 1, "x": 2, "y": 2}, 37 {"x": 0, "y": 2},
39 {"w": 1, "x": 3, "y": 2}, 38 {"x": 1, "y": 2},
40 {"w": 1, "x": 4, "y": 2}, 39 {"x": 2, "y": 2},
41 {"w": 1, "x": 5, "y": 2}, 40 {"x": 3, "y": 2},
42 {"w": 1, "x": 6, "y": 2}, 41 {"x": 4, "y": 2},
43 {"w": 1, "x": 7, "y": 2}, 42 {"x": 5, "y": 2},
44 {"w": 1, "x": 8, "y": 2}, 43 {"x": 6, "y": 2},
45 {"w": 1, "x": 9, "y": 2}, 44 {"x": 7, "y": 2},
46 {"w": 1, "x": 10, "y": 2}, 45 {"x": 8, "y": 2},
47 {"w": 1, "x": 11, "y": 2}, 46 {"x": 9, "y": 2},
48 {"w": 1, "x": 0, "y": 3}, 47 {"x": 10, "y": 2},
49 {"w": 1, "x": 1, "y": 3}, 48 {"x": 11, "y": 2},
50 {"w": 1, "x": 2, "y": 3}, 49
51 {"w": 1, "x": 3, "y": 3}, 50 {"x": 0, "y": 3},
52 {"w": 1, "x": 4, "y": 3}, 51 {"x": 1, "y": 3},
53 {"w": 1, "x": 5, "y": 3}, 52 {"x": 2, "y": 3},
54 {"w": 1, "x": 6, "y": 3}, 53 {"x": 3, "y": 3},
55 {"w": 1, "x": 7, "y": 3}, 54 {"x": 4, "y": 3},
56 {"w": 1, "x": 8, "y": 3}, 55 {"x": 5, "y": 3},
57 {"w": 1, "x": 9, "y": 3}, 56 {"x": 6, "y": 3},
58 {"w": 1, "x": 10, "y": 3}, 57 {"x": 7, "y": 3},
59 {"w": 1, "x": 11, "y": 3}, 58 {"x": 8, "y": 3},
60 {"w": 1, "x": 0, "y": 4}, 59 {"x": 9, "y": 3},
61 {"w": 1, "x": 1, "y": 4}, 60 {"x": 10, "y": 3},
62 {"w": 1, "x": 2, "y": 4}, 61 {"x": 11, "y": 3},
63 {"w": 1, "x": 3, "y": 4}, 62
64 {"w": 1, "x": 4, "y": 4}, 63 {"x": 0, "y": 4},
65 {"w": 1, "x": 5, "y": 4}, 64 {"x": 1, "y": 4},
66 {"w": 1, "x": 6, "y": 4}, 65 {"x": 2, "y": 4},
67 {"w": 1, "x": 7, "y": 4}, 66 {"x": 3, "y": 4},
68 {"w": 1, "x": 8, "y": 4}, 67 {"x": 4, "y": 4},
69 {"w": 1, "x": 9, "y": 4}, 68 {"x": 5, "y": 4},
70 {"w": 1, "x": 10, "y": 4}, 69 {"x": 6, "y": 4},
71 {"w": 1, "x": 11, "y": 4} 70 {"x": 7, "y": 4},
71 {"x": 8, "y": 4},
72 {"x": 9, "y": 4},
73 {"x": 10, "y": 4},
74 {"x": 11, "y": 4}
72 ] 75 ]
73 }, 76 },
74 "LAYOUT_ortho_5x12_1x2uC": { 77 "LAYOUT_ortho_5x12_1x2uC": {
75 "key_count": 59,
76 "layout": [ 78 "layout": [
77 {"w": 1, "x": 0, "y": 0}, 79 {"x": 0, "y": 0},
78 {"w": 1, "x": 1, "y": 0}, 80 {"x": 1, "y": 0},
79 {"w": 1, "x": 2, "y": 0}, 81 {"x": 2, "y": 0},
80 {"w": 1, "x": 3, "y": 0}, 82 {"x": 3, "y": 0},
81 {"w": 1, "x": 4, "y": 0}, 83 {"x": 4, "y": 0},
82 {"w": 1, "x": 5, "y": 0}, 84 {"x": 5, "y": 0},
83 {"w": 1, "x": 6, "y": 0}, 85 {"x": 6, "y": 0},
84 {"w": 1, "x": 7, "y": 0}, 86 {"x": 7, "y": 0},
85 {"w": 1, "x": 8, "y": 0}, 87 {"x": 8, "y": 0},
86 {"w": 1, "x": 9, "y": 0}, 88 {"x": 9, "y": 0},
87 {"w": 1, "x": 10, "y": 0}, 89 {"x": 10, "y": 0},
88 {"w": 1, "x": 11, "y": 0}, 90 {"x": 11, "y": 0},
89 {"w": 1, "x": 0, "y": 1}, 91
90 {"w": 1, "x": 1, "y": 1}, 92 {"x": 0, "y": 1},
91 {"w": 1, "x": 2, "y": 1}, 93 {"x": 1, "y": 1},
92 {"w": 1, "x": 3, "y": 1}, 94 {"x": 2, "y": 1},
93 {"w": 1, "x": 4, "y": 1}, 95 {"x": 3, "y": 1},
94 {"w": 1, "x": 5, "y": 1}, 96 {"x": 4, "y": 1},
95 {"w": 1, "x": 6, "y": 1}, 97 {"x": 5, "y": 1},
96 {"w": 1, "x": 7, "y": 1}, 98 {"x": 6, "y": 1},
97 {"w": 1, "x": 8, "y": 1}, 99 {"x": 7, "y": 1},
98 {"w": 1, "x": 9, "y": 1}, 100 {"x": 8, "y": 1},
99 {"w": 1, "x": 10, "y": 1}, 101 {"x": 9, "y": 1},
100 {"w": 1, "x": 11, "y": 1}, 102 {"x": 10, "y": 1},
101 {"w": 1, "x": 0, "y": 2}, 103 {"x": 11, "y": 1},
102 {"w": 1, "x": 1, "y": 2}, 104
103 {"w": 1, "x": 2, "y": 2}, 105 {"x": 0, "y": 2},
104 {"w": 1, "x": 3, "y": 2}, 106 {"x": 1, "y": 2},
105 {"w": 1, "x": 4, "y": 2}, 107 {"x": 2, "y": 2},
106 {"w": 1, "x": 5, "y": 2}, 108 {"x": 3, "y": 2},
107 {"w": 1, "x": 6, "y": 2}, 109 {"x": 4, "y": 2},
108 {"w": 1, "x": 7, "y": 2}, 110 {"x": 5, "y": 2},
109 {"w": 1, "x": 8, "y": 2}, 111 {"x": 6, "y": 2},
110 {"w": 1, "x": 9, "y": 2}, 112 {"x": 7, "y": 2},
111 {"w": 1, "x": 10, "y": 2}, 113 {"x": 8, "y": 2},
112 {"w": 1, "x": 11, "y": 2}, 114 {"x": 9, "y": 2},
113 {"w": 1, "x": 0, "y": 3}, 115 {"x": 10, "y": 2},
114 {"w": 1, "x": 1, "y": 3}, 116 {"x": 11, "y": 2},
115 {"w": 1, "x": 2, "y": 3}, 117
116 {"w": 1, "x": 3, "y": 3}, 118 {"x": 0, "y": 3},
117 {"w": 1, "x": 4, "y": 3}, 119 {"x": 1, "y": 3},
118 {"w": 1, "x": 5, "y": 3}, 120 {"x": 2, "y": 3},
119 {"w": 1, "x": 6, "y": 3}, 121 {"x": 3, "y": 3},
120 {"w": 1, "x": 7, "y": 3}, 122 {"x": 4, "y": 3},
121 {"w": 1, "x": 8, "y": 3}, 123 {"x": 5, "y": 3},
122 {"w": 1, "x": 9, "y": 3}, 124 {"x": 6, "y": 3},
123 {"w": 1, "x": 10, "y": 3}, 125 {"x": 7, "y": 3},
124 {"w": 1, "x": 11, "y": 3}, 126 {"x": 8, "y": 3},
125 {"w": 1, "x": 0, "y": 4}, 127 {"x": 9, "y": 3},
126 {"w": 1, "x": 1, "y": 4}, 128 {"x": 10, "y": 3},
127 {"w": 1, "x": 2, "y": 4}, 129 {"x": 11, "y": 3},
128 {"w": 1, "x": 3, "y": 4}, 130
129 {"w": 1, "x": 4, "y": 4}, 131 {"x": 0, "y": 4},
130 {"w": 2, "x": 5, "y": 4}, 132 {"x": 1, "y": 4},
131 {"w": 1, "x": 7, "y": 4}, 133 {"x": 2, "y": 4},
132 {"w": 1, "x": 8, "y": 4}, 134 {"x": 3, "y": 4},
133 {"w": 1, "x": 9, "y": 4}, 135 {"x": 4, "y": 4},
134 {"w": 1, "x": 10, "y": 4}, 136 {"x": 5, "y": 4, "w": 2},
135 {"w": 1, "x": 11, "y": 4} 137 {"x": 7, "y": 4},
138 {"x": 8, "y": 4},
139 {"x": 9, "y": 4},
140 {"x": 10, "y": 4},
141 {"x": 11, "y": 4}
136 ] 142 ]
137 }, 143 },
138 "LAYOUT_ortho_5x12_2x2u": { 144 "LAYOUT_ortho_5x12_2x2u": {
139 "key_count": 58,
140 "layout": [ 145 "layout": [
141 {"w": 1, "x": 0, "y": 0}, 146 {"x": 0, "y": 0},
142 {"w": 1, "x": 1, "y": 0}, 147 {"x": 1, "y": 0},
143 {"w": 1, "x": 2, "y": 0}, 148 {"x": 2, "y": 0},
144 {"w": 1, "x": 3, "y": 0}, 149 {"x": 3, "y": 0},
145 {"w": 1, "x": 4, "y": 0}, 150 {"x": 4, "y": 0},
146 {"w": 1, "x": 5, "y": 0}, 151 {"x": 5, "y": 0},
147 {"w": 1, "x": 6, "y": 0}, 152 {"x": 6, "y": 0},
148 {"w": 1, "x": 7, "y": 0}, 153 {"x": 7, "y": 0},
149 {"w": 1, "x": 8, "y": 0}, 154 {"x": 8, "y": 0},
150 {"w": 1, "x": 9, "y": 0}, 155 {"x": 9, "y": 0},
151 {"w": 1, "x": 10, "y": 0}, 156 {"x": 10, "y": 0},
152 {"w": 1, "x": 11, "y": 0}, 157 {"x": 11, "y": 0},
153 {"w": 1, "x": 0, "y": 1}, 158
154 {"w": 1, "x": 1, "y": 1}, 159 {"x": 0, "y": 1},
155 {"w": 1, "x": 2, "y": 1}, 160 {"x": 1, "y": 1},
156 {"w": 1, "x": 3, "y": 1}, 161 {"x": 2, "y": 1},
157 {"w": 1, "x": 4, "y": 1}, 162 {"x": 3, "y": 1},
158 {"w": 1, "x": 5, "y": 1}, 163 {"x": 4, "y": 1},
159 {"w": 1, "x": 6, "y": 1}, 164 {"x": 5, "y": 1},
160 {"w": 1, "x": 7, "y": 1}, 165 {"x": 6, "y": 1},
161 {"w": 1, "x": 8, "y": 1}, 166 {"x": 7, "y": 1},
162 {"w": 1, "x": 9, "y": 1}, 167 {"x": 8, "y": 1},
163 {"w": 1, "x": 10, "y": 1}, 168 {"x": 9, "y": 1},
164 {"w": 1, "x": 11, "y": 1}, 169 {"x": 10, "y": 1},
165 {"w": 1, "x": 0, "y": 2}, 170 {"x": 11, "y": 1},
166 {"w": 1, "x": 1, "y": 2}, 171
167 {"w": 1, "x": 2, "y": 2}, 172 {"x": 0, "y": 2},
168 {"w": 1, "x": 3, "y": 2}, 173 {"x": 1, "y": 2},
169 {"w": 1, "x": 4, "y": 2}, 174 {"x": 2, "y": 2},
170 {"w": 1, "x": 5, "y": 2}, 175 {"x": 3, "y": 2},
171 {"w": 1, "x": 6, "y": 2}, 176 {"x": 4, "y": 2},
172 {"w": 1, "x": 7, "y": 2}, 177 {"x": 5, "y": 2},
173 {"w": 1, "x": 8, "y": 2}, 178 {"x": 6, "y": 2},
174 {"w": 1, "x": 9, "y": 2}, 179 {"x": 7, "y": 2},
175 {"w": 1, "x": 10, "y": 2}, 180 {"x": 8, "y": 2},
176 {"w": 1, "x": 11, "y": 2}, 181 {"x": 9, "y": 2},
177 {"w": 1, "x": 0, "y": 3}, 182 {"x": 10, "y": 2},
178 {"w": 1, "x": 1, "y": 3}, 183 {"x": 11, "y": 2},
179 {"w": 1, "x": 2, "y": 3}, 184
180 {"w": 1, "x": 3, "y": 3}, 185 {"x": 0, "y": 3},
181 {"w": 1, "x": 4, "y": 3}, 186 {"x": 1, "y": 3},
182 {"w": 1, "x": 5, "y": 3}, 187 {"x": 2, "y": 3},
183 {"w": 1, "x": 6, "y": 3}, 188 {"x": 3, "y": 3},
184 {"w": 1, "x": 7, "y": 3}, 189 {"x": 4, "y": 3},
185 {"w": 1, "x": 8, "y": 3}, 190 {"x": 5, "y": 3},
186 {"w": 1, "x": 9, "y": 3}, 191 {"x": 6, "y": 3},
187 {"w": 1, "x": 10, "y": 3}, 192 {"x": 7, "y": 3},
188 {"w": 1, "x": 11, "y": 3}, 193 {"x": 8, "y": 3},
189 {"w": 1, "x": 0, "y": 4}, 194 {"x": 9, "y": 3},
190 {"w": 1, "x": 1, "y": 4}, 195 {"x": 10, "y": 3},
191 {"w": 1, "x": 2, "y": 4}, 196 {"x": 11, "y": 3},
192 {"w": 1, "x": 3, "y": 4}, 197
193 {"w": 2, "x": 4, "y": 4}, 198 {"x": 0, "y": 4},
194 {"w": 2, "x": 6, "y": 4}, 199 {"x": 1, "y": 4},
195 {"w": 1, "x": 8, "y": 4}, 200 {"x": 2, "y": 4},
196 {"w": 1, "x": 9, "y": 4}, 201 {"x": 3, "y": 4},
197 {"w": 1, "x": 10, "y": 4}, 202 {"x": 4, "y": 4, "w": 2},
198 {"w": 1, "x": 11, "y": 4} 203 {"x": 6, "y": 4, "w": 2},
204 {"x": 8, "y": 4},
205 {"x": 9, "y": 4},
206 {"x": 10, "y": 4},
207 {"x": 11, "y": 4}
199 ] 208 ]
200 } 209 }
201 } 210 }
diff --git a/keyboards/keycapsss/o4l_5x12/keymaps/2x2u/config.h b/keyboards/keycapsss/o4l_5x12/keymaps/2x2u/config.h
deleted file mode 100644
index 271f48d00..000000000
--- a/keyboards/keycapsss/o4l_5x12/keymaps/2x2u/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
1#pragma once
2
3// place overrides here
diff --git a/keyboards/keycapsss/o4l_5x12/keymaps/2x2u/keymap.c b/keyboards/keycapsss/o4l_5x12/keymaps/2x2u/keymap.c
index 00aec245e..75d89702c 100644
--- a/keyboards/keycapsss/o4l_5x12/keymaps/2x2u/keymap.c
+++ b/keyboards/keycapsss/o4l_5x12/keymaps/2x2u/keymap.c
@@ -1,83 +1,73 @@
1#include QMK_KEYBOARD_H 1#include QMK_KEYBOARD_H
2 2
3// Each layer gets a name for readability, which is then used in the keymap matrix below. 3enum layer_names {
4// The underscores don't mean anything - you can have a layer called STUFF or any other name. 4 _QWERTY,
5// Layer names don't all need to be of the same length, obviously, and you can also skip them 5 _LOWER
6// entirely and just use numbers.
7enum o4l5x12_layers {
8 _QWERTY,
9 _LOWER
10}; 6};
11 7
12// Layers get their own keys. These are defined to make them not mess up 8enum custom_keycodes {
13// the grid. 9 QWERTY = SAFE_RANGE,
14enum o4l5x12_keycodes { 10 LOWER
15 QWERTY = SAFE_RANGE,
16 LOWER
17}; 11};
18 12
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 13const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
14 /* Qwerty
15 * ,-----------------------------------------------------------------------------------.
16 * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = |
17 * |------+------+------+------+------+------+------+------+------+------+------+------|
18 * | ESC | Q | W | E | R | T | Y | U | I | O | P | BSPC |
19 * |------+------+------+------+------+-------------+------+------+------+------+------|
20 * | Tab | A | S | D | F | G | H | J | K | L | ; | " |
21 * |------+------+------+------+------+------|------+------+------+------+------+------|
22 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
23 * |------+------+------+------+------+------+------+------+------+------+------+------|
24 * | Ctrl | Alt | GUI |Lower | Enter | Space | Left | Down | Up |Right |
25 * `-----------------------------------------------------------------------------------'
26 */
27 [_QWERTY] = LAYOUT_ortho_5x12_2x2u(
28 KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL,
29 KC_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
30 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
31 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
32 KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_ENT, KC_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
33 ),
20 34
21/* Qwerty 35 /* Lower
22 * ,-----------------------------------------------------------------------------------. 36 * ,-----------------------------------------------------------------------------------.
23 * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | 37 * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
24 * |------+------+------+------+------+------+------+------+------+------+------+------| 38 * |------+------+------+------+------+-------------+------+------+------+------+------|
25 * | ESC | Q | W | E | R | T | Y | U | I | O | P | BSPC | 39 * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | Del |
26 * |------+------+------+------+------+-------------+------+------+------+------+------| 40 * |------+------+------+------+------+-------------+------+------+------+------+------|
27 * | Tab | A | S | D | F | G | H | J | K | L | ; | " | 41 * |RGBPLA| { | [ | ( | | | ) | ] | } | | | | |
28 * |------+------+------+------+------+------|------+------+------+------+------+------| 42 * |------+------+------+------+------+------|------+------+------+------+------+------|
29 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | 43 * |RGBMOD| | | | | | | | | | | |
30 * |------+------+------+------+------+------+------+------+------+------+------+------| 44 * |------+------+------+------+------+------+------+------+------+------+------+------|
31 * | Ctrl | Alt | GUI |Lower | Enter | Space | Left | Down | Up |Right | 45 * |UGlow | Reset| | | | | Next | Vol- | Vol+ | Play |
32 * `-----------------------------------------------------------------------------------' 46 * `-----------------------------------------------------------------------------------'
33 */ 47 */
34[_QWERTY] = LAYOUT_ortho_5x12_2x2u( 48 [_LOWER] = LAYOUT_ortho_5x12_2x2u(
35 KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, 49 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
36 KC_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, 50 KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, KC_DEL,
37 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 51 RGB_M_P, KC_LCBR, KC_LBRC, KC_LPRN, KC_SLSH, KC_BSLS, KC_RPRN, KC_RBRC, KC_RCBR, _______, _______, KC_PIPE,
38 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, 52 RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
39 KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_ENT, KC_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT 53 RGB_TOG, RESET, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
40), 54 )
41
42/* Lower
43 * ,-----------------------------------------------------------------------------------.
44 * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
45 * |------+------+------+------+------+-------------+------+------+------+------+------|
46 * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | Del |
47 * |------+------+------+------+------+-------------+------+------+------+------+------|
48 * |RGBPLA| { | [ | ( | | | ) | ] | } | | | | |
49 * |------+------+------+------+------+------|------+------+------+------+------+------|
50 * |RGBMOD| | | | | | | | | | | |
51 * |------+------+------+------+------+------+------+------+------+------+------+------|
52 * |UGlow | Reset| | | | | Next | Vol- | Vol+ | Play |
53 * `-----------------------------------------------------------------------------------'
54 */
55[_LOWER] = LAYOUT_ortho_5x12_2x2u(
56 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
57 KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, KC_DEL,
58 RGB_M_P, KC_LCBR, KC_LBRC, KC_LPRN, KC_SLSH, KC_BSLS, KC_RPRN, KC_RBRC, KC_RCBR, _______, _______, KC_PIPE,
59 RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
60 RGB_TOG, RESET, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
61),
62
63}; 55};
64 56
65bool process_record_user(uint16_t keycode, keyrecord_t *record) { 57bool process_record_user(uint16_t keycode, keyrecord_t *record) {
66 switch (keycode) { 58 switch (keycode) {
67 case QWERTY: 59 case QWERTY:
68 if (record->event.pressed) { 60 if (record->event.pressed) {
69 set_single_persistent_default_layer(_QWERTY); 61 set_single_persistent_default_layer(_QWERTY);
70 } 62 }
71 return false; 63 return false;
72 break;
73 case LOWER: 64 case LOWER:
74 if (record->event.pressed) { 65 if (record->event.pressed) {
75 layer_on(_LOWER); 66 layer_on(_LOWER);
76 } else { 67 } else {
77 layer_off(_LOWER); 68 layer_off(_LOWER);
78 } 69 }
79 return false; 70 return false;
80 break; 71 }
81 }
82 return true; 72 return true;
83}; 73};
diff --git a/keyboards/keycapsss/o4l_5x12/keymaps/default/config.h b/keyboards/keycapsss/o4l_5x12/keymaps/default/config.h
deleted file mode 100644
index 271f48d00..000000000
--- a/keyboards/keycapsss/o4l_5x12/keymaps/default/config.h
+++ /dev/null
@@ -1,3 +0,0 @@
1#pragma once
2
3// place overrides here
diff --git a/keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c b/keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c
index 3e9dc335d..107d6c940 100644
--- a/keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c
+++ b/keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c
@@ -1,140 +1,129 @@
1#include QMK_KEYBOARD_H 1#include QMK_KEYBOARD_H
2 2
3// Each layer gets a name for readability, which is then used in the keymap matrix below. 3enum layer_names {
4// The underscores don't mean anything - you can have a layer called STUFF or any other name. 4 _QWERTY,
5// Layer names don't all need to be of the same length, obviously, and you can also skip them 5 _LOWER,
6// entirely and just use numbers. 6 _RAISE,
7enum preonic_layers { 7 _ADJUST
8 _QWERTY,
9 _LOWER,
10 _RAISE,
11 _ADJUST
12}; 8};
13 9
14// Layers get their own keys. These are defined to make them not mess up 10enum custom_keycodes {
15// the grid. 11 QWERTY = SAFE_RANGE,
16enum preonic_keycodes { 12 LOWER,
17 QWERTY = SAFE_RANGE, 13 RAISE
18 LOWER,
19 RAISE
20}; 14};
21 15
22const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 16const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
17 /* Qwerty (Preonic Layer Style)
18 * ,-----------------------------------------------------------------------------------.
19 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
20 * |------+------+------+------+------+------+------+------+------+------+------+------|
21 * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del |
22 * |------+------+------+------+------+-------------+------+------+------+------+------|
23 * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
24 * |------+------+------+------+------+------|------+------+------+------+------+------|
25 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
26 * |------+------+------+------+------+------+------+------+------+------+------+------|
27 * | | Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right |
28 * `-----------------------------------------------------------------------------------'
29 */
30 [_QWERTY] = LAYOUT_ortho_5x12(
31 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
32 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
33 KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
34 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
35 RGB_TOG, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
36 ),
23 37
24/* Qwerty (Preonic Layer Style) 38 /* Lower (Preonic Layer Style)
25 * ,-----------------------------------------------------------------------------------. 39 * ,-----------------------------------------------------------------------------------.
26 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | 40 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
27 * |------+------+------+------+------+------+------+------+------+------+------+------| 41 * |------+------+------+------+------+-------------+------+------+------+------+------|
28 * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | 42 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
29 * |------+------+------+------+------+-------------+------+------+------+------+------| 43 * |------+------+------+------+------+-------------+------+------+------+------+------|
30 * | Esc | A | S | D | F | G | H | J | K | L | ; | " | 44 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
31 * |------+------+------+------+------+------|------+------+------+------+------+------| 45 * |------+------+------+------+------+------|------+------+------+------+------+------|
32 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | 46 * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | |
33 * |------+------+------+------+------+------+------+------+------+------+------+------| 47 * |------+------+------+------+------+------+------+------+------+------+------+------|
34 * | | Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | 48 * | | | | | | | | | Next | Vol- | Vol+ | Play |
35 * `-----------------------------------------------------------------------------------' 49 * `-----------------------------------------------------------------------------------'
36 */ 50 */
37[_QWERTY] = LAYOUT_ortho_5x12( 51 [_LOWER] = LAYOUT_ortho_5x12(
38 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, 52 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
39 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, 53 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
40 KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 54 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
41 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, 55 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
42 RGB_TOG, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT 56 _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
43), 57 ),
44 58
45/* Lower (Preonic Layer Style) 59 /* Raise (Preonic Layer Style)
46 * ,-----------------------------------------------------------------------------------. 60 * ,-----------------------------------------------------------------------------------.
47 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | 61 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
48 * |------+------+------+------+------+-------------+------+------+------+------+------| 62 * |------+------+------+------+------+------+------+------+------+------+------+------|
49 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del | 63 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
50 * |------+------+------+------+------+-------------+------+------+------+------+------| 64 * |------+------+------+------+------+-------------+------+------+------+------+------|
51 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | 65 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
52 * |------+------+------+------+------+------|------+------+------+------+------+------| 66 * |------+------+------+------+------+------|------+------+------+------+------+------|
53 * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | | 67 * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | |
54 * |------+------+------+------+------+------+------+------+------+------+------+------| 68 * |------+------+------+------+------+------+------+------+------+------+------+------|
55 * | | | | | | | | | Next | Vol- | Vol+ | Play | 69 * | | | | | | | | | Next | Vol- | Vol+ | Play |
56 * `-----------------------------------------------------------------------------------' 70 * `-----------------------------------------------------------------------------------'
57 */ 71 */
58[_LOWER] = LAYOUT_ortho_5x12( 72 [_RAISE] = LAYOUT_ortho_5x12(
59 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, 73 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
60 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, 74 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
61 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, 75 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
62 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______, 76 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
63 _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY 77 _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
64), 78 ),
65
66/* Raise (Preonic Layer Style)
67 * ,-----------------------------------------------------------------------------------.
68 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
69 * |------+------+------+------+------+------+------+------+------+------+------+------|
70 * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
71 * |------+------+------+------+------+-------------+------+------+------+------+------|
72 * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
73 * |------+------+------+------+------+------|------+------+------+------+------+------|
74 * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | |
75 * |------+------+------+------+------+------+------+------+------+------+------+------|
76 * | | | | | | | | | Next | Vol- | Vol+ | Play |
77 * `-----------------------------------------------------------------------------------'
78 */
79[_RAISE] = LAYOUT_ortho_5x12(
80 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
81 KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
82 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
83 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
84 _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
85),
86
87/* Adjust (Lower + Raise) (Preonic Layer Style)
88 * ,-----------------------------------------------------------------------------------.
89 * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
90 * |------+------+------+------+------+------+------+------+------+------+------+------|
91 * | | Reset| | | | | | | | | | Del |
92 * |------+------+------+------+------+-------------+------+------+------+------+------|
93 * | | | |Aud on|AudOff|AGnorm|AGswap|Qwerty| | | | |
94 * |------+------+------+------+------+------|------+------+------+------+------+------|
95 * | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | |
96 * |------+------+------+------+------+------+------+------+------+------+------+------|
97 * | | | | | | | | | | | | |
98 * `-----------------------------------------------------------------------------------'
99 */
100[_ADJUST] = LAYOUT_ortho_5x12(
101 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
102 _______, RESET, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL,
103 _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______,
104 _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______,
105 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
106)
107 79
80 /* Adjust (Lower + Raise) (Preonic Layer Style)
81 * ,-----------------------------------------------------------------------------------.
82 * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
83 * |------+------+------+------+------+------+------+------+------+------+------+------|
84 * | | Reset| | | | | | | | | | Del |
85 * |------+------+------+------+------+-------------+------+------+------+------+------|
86 * | | | |Aud on|AudOff|AGnorm|AGswap|Qwerty| | | | |
87 * |------+------+------+------+------+------|------+------+------+------+------+------|
88 * | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | |
89 * |------+------+------+------+------+------+------+------+------+------+------+------|
90 * | | | | | | | | | | | | |
91 * `-----------------------------------------------------------------------------------'
92 */
93 [_ADJUST] = LAYOUT_ortho_5x12(
94 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
95 _______, RESET, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL,
96 _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______,
97 _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______,
98 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
99 )
108}; 100};
109 101
110bool process_record_user(uint16_t keycode, keyrecord_t *record) { 102bool process_record_user(uint16_t keycode, keyrecord_t *record) {
111 switch (keycode) { 103 switch (keycode) {
112 case QWERTY: 104 case QWERTY:
113 if (record->event.pressed) { 105 if (record->event.pressed) {
114 set_single_persistent_default_layer(_QWERTY); 106 set_single_persistent_default_layer(_QWERTY);
115 } 107 }
116 return false; 108 return false;
117 break;
118 case LOWER: 109 case LOWER:
119 if (record->event.pressed) { 110 if (record->event.pressed) {
120 layer_on(_LOWER); 111 layer_on(_LOWER);
121 update_tri_layer(_LOWER, _RAISE, _ADJUST); 112 update_tri_layer(_LOWER, _RAISE, _ADJUST);
122 } else { 113 } else {
123 layer_off(_LOWER); 114 layer_off(_LOWER);
124 update_tri_layer(_LOWER, _RAISE, _ADJUST); 115 update_tri_layer(_LOWER, _RAISE, _ADJUST);
125 } 116 }
126 return false; 117 return false;
127 break;
128 case RAISE: 118 case RAISE:
129 if (record->event.pressed) { 119 if (record->event.pressed) {
130 layer_on(_RAISE); 120 layer_on(_RAISE);
131 update_tri_layer(_LOWER, _RAISE, _ADJUST); 121 update_tri_layer(_LOWER, _RAISE, _ADJUST);
132 } else { 122 } else {
133 layer_off(_RAISE); 123 layer_off(_RAISE);
134 update_tri_layer(_LOWER, _RAISE, _ADJUST); 124 update_tri_layer(_LOWER, _RAISE, _ADJUST);
135 } 125 }
136 return false; 126 return false;
137 break; 127 }
138 }
139 return true; 128 return true;
140}; 129};
diff --git a/keyboards/keycapsss/o4l_5x12/o4l_5x12.h b/keyboards/keycapsss/o4l_5x12/o4l_5x12.h
index 2061d477b..a5f775ef1 100644
--- a/keyboards/keycapsss/o4l_5x12/o4l_5x12.h
+++ b/keyboards/keycapsss/o4l_5x12/o4l_5x12.h
@@ -4,47 +4,44 @@
4 4
5#define XXX KC_NO 5#define XXX KC_NO
6 6
7 #define LAYOUT_ortho_5x12( \ 7#define LAYOUT_ortho_5x12( \
8 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ 8 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
9 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ 9 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
10 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ 10 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
11 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \ 11 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \
12 k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b \ 12 k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B \
13 ) \ 13) { \
14 { \ 14 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
15 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ 15 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
16 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, }, \ 16 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
17 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ 17 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B }, \
18 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, }, \ 18 { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B } \
19 { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b } \ 19}
20 }
21 20
22 #define LAYOUT_ortho_5x12_1x2uC( \ 21#define LAYOUT_ortho_5x12_1x2uC( \
23 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ 22 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
24 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ 23 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
25 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ 24 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
26 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \ 25 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \
27 k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b \ 26 k40, k41, k42, k43, k44, k45, k47, k48, k49, k4A, k4B \
28 ) \ 27) { \
29 { \ 28 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
30 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ 29 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
31 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, }, \ 30 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
32 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ 31 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B }, \
33 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, }, \ 32 { k40, k41, k42, k43, k44, k45, XXX, k47, k48, k49, k4A, k4B } \
34 { k40, k41, k42, k43, k44, k45, XXX, k47, k48, k49, k4a, k4b } \ 33}
35 }
36 34
37 #define LAYOUT_ortho_5x12_2x2u( \ 35#define LAYOUT_ortho_5x12_2x2u( \
38 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ 36 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \
39 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ 37 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \
40 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ 38 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \
41 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \ 39 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \
42 k40, k41, k42, k43, k44, k46, k48, k49, k4a, k4b \ 40 k40, k41, k42, k43, k44, k46, k48, k49, k4A, k4B \
43 ) \ 41) { \
44 { \ 42 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \
45 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ 43 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \
46 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, }, \ 44 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \
47 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ 45 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B }, \
48 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, }, \ 46 { k40, k41, k42, k43, k44, XXX, k46, XXX, k48, k49, k4A, k4B } \
49 { k40, k41, k42, k43, k44, XXX, k46, XXX, k48, k49, k4a, k4b } \ 47}
50 }
diff --git a/keyboards/keycapsss/o4l_5x12/readme.md b/keyboards/keycapsss/o4l_5x12/readme.md
index 16bdcc49f..a69896171 100644
--- a/keyboards/keycapsss/o4l_5x12/readme.md
+++ b/keyboards/keycapsss/o4l_5x12/readme.md
@@ -2,7 +2,7 @@
2 2
3A ortholinear 5x12 keyboard made and sold by Keycapsss. [More info at Keycapsss.com](https://keycapsss.com). 3A ortholinear 5x12 keyboard made and sold by Keycapsss. [More info at Keycapsss.com](https://keycapsss.com).
4 4
5<img src="https://i.imgur.com/5p8rDme.jpg" height="500px"> 5![o4l_5x12](https://i.imgur.com/5p8rDmel.jpg)
6 6
7## Features: 7## Features:
8 8
@@ -14,18 +14,16 @@ A ortholinear 5x12 keyboard made and sold by Keycapsss. [More info at Keycapsss.
14 14
15--- 15---
16 16
17- Keyboard Maintainer: BenRoe [GitHub](https://github.com/BenRoe) / [Twitter](https://twitter.com/ben_roe) 17* Keyboard Maintainer: BenRoe [GitHub](https://github.com/BenRoe) / [Twitter](https://twitter.com/ben_roe)
18- Hardware Supported: Pro Micro 18* Hardware Supported: Pro Micro
19- Hardware Availability: [Keycapsss.com](https://keycapsss.com) 19* Hardware Availability: [Keycapsss.com](https://keycapsss.com)
20 20
21 21Make example for this keyboard (after setting up your build environment):
22
23Make firmware .hex for this keyboard (after setting up your build environment):
24 22
25 make keycapsss/o4l_5x12:default 23 make keycapsss/o4l_5x12:default
26 24
27Example of flashing this keyboard (or use [QMK Toolbox](https://github.com/qmk/qmk_toolbox)): 25Flashing example for this keyboard:
28 26
29 make keycapsss/o4l_5x12:default:avrdude 27 make keycapsss/o4l_5x12:default:flash
30 28
31See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). 29See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/keycapsss/o4l_5x12/rules.mk b/keyboards/keycapsss/o4l_5x12/rules.mk
index 8077dc1e1..05de11caf 100644
--- a/keyboards/keycapsss/o4l_5x12/rules.mk
+++ b/keyboards/keycapsss/o4l_5x12/rules.mk
@@ -2,26 +2,23 @@
2MCU = atmega32u4 2MCU = atmega32u4
3 3
4# Bootloader selection 4# Bootloader selection
5# Teensy halfkay
6# Pro Micro caterina
7# Atmel DFU atmel-dfu
8# LUFA DFU lufa-dfu
9# QMK DFU qmk-dfu
10# ATmega32A bootloadHID
11# ATmega328P USBasp
12BOOTLOADER = caterina 5BOOTLOADER = caterina
13 6
7# Build Options
8# change yes to no to disable
9#
14BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration 10BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
15MOUSEKEY_ENABLE = no # Mouse keys 11MOUSEKEY_ENABLE = no # Mouse keys
16EXTRAKEY_ENABLE = yes # Audio control and System control 12EXTRAKEY_ENABLE = yes # Audio control and System control
17CONSOLE_ENABLE = no # Console for debug 13CONSOLE_ENABLE = no # Console for debug
18COMMAND_ENABLE = yes # Commands for debug and configuration 14COMMAND_ENABLE = yes # Commands for debug and configuration
19NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work 15# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
20BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality 16SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
21MIDI_ENABLE = no # MIDI controls 17# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
22AUDIO_ENABLE = no # Audio output on port C6 18NKRO_ENABLE = no # USB Nkey Rollover
23UNICODE_ENABLE = no # Unicode 19BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
24BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID 20RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
25RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. 21BLUETOOTH_ENABLE = no # Enable Bluetooth
22AUDIO_ENABLE = no # Audio output
26 23
27LAYOUTS = ortho_5x12 24LAYOUTS = ortho_5x12