aboutsummaryrefslogtreecommitdiff
path: root/keyboards/kb_elmo
diff options
context:
space:
mode:
authorJames Young <18669334+noroadsleft@users.noreply.github.com>2021-08-19 17:46:22 +0000
committerGitHub <noreply@github.com>2021-08-19 18:46:22 +0100
commit9aedf515c094b0c2d77417d9559062a5717d0d8e (patch)
tree2f30168830f6449b60d2c62527793c7d447dcbe0 /keyboards/kb_elmo
parent98af5bc64e6148915cebcfdd607119b9feefe90d (diff)
downloadqmk_firmware-9aedf515c094b0c2d77417d9559062a5717d0d8e.tar.gz
qmk_firmware-9aedf515c094b0c2d77417d9559062a5717d0d8e.zip
kb-elmo Noah AVR Community Layout support and Configurator fix (#14078)
* noah_avr.h: use QMK 3-character notation for matrix positions * Community Layout support, Stage 1 - rename LAYOUT_ansi to LAYOUT_65_ansi_blocker - rename LAYOUT_ansi_splitbs to LAYOUT_65_ansi_blocker_split_bs - enable Community Layout support * info.json: add line breaks between rows * info.json: correct LAYOUT_iso data - unsplit the Backspace - change ANSI Enter to ISO Enter - split the left Shift * Community Layout support, Stage 2 - rename LAYOUT_iso to LAYOUT_65_iso_blocker - update Community Layout support * Community Layout support, Stage 3 - add LAYOUT_65_iso_blocker_split_bs - update Community Layout support * noah_avr.h: add matrix diagram
Diffstat (limited to 'keyboards/kb_elmo')
-rw-r--r--keyboards/kb_elmo/noah_avr/info.json110
-rw-r--r--keyboards/kb_elmo/noah_avr/keymaps/default/keymap.c4
-rw-r--r--keyboards/kb_elmo/noah_avr/noah_avr.h125
-rw-r--r--keyboards/kb_elmo/noah_avr/rules.mk2
4 files changed, 182 insertions, 59 deletions
diff --git a/keyboards/kb_elmo/noah_avr/info.json b/keyboards/kb_elmo/noah_avr/info.json
index 8560d4b86..571291d37 100644
--- a/keyboards/kb_elmo/noah_avr/info.json
+++ b/keyboards/kb_elmo/noah_avr/info.json
@@ -4,6 +4,11 @@
4 "maintainer": "kb-elmo", 4 "maintainer": "kb-elmo",
5 "width": 16, 5 "width": 16,
6 "height": 5, 6 "height": 5,
7 "layout_aliases": {
8 "LAYOUT_ansi": "LAYOUT_65_ansi_blocker",
9 "LAYOUT_ansi_splitbs": "LAYOUT_65_ansi_blocker_split_bs",
10 "LAYOUT_iso": "LAYOUT_65_iso_blocker"
11 },
7 "layouts": { 12 "layouts": {
8 "LAYOUT_all": { 13 "LAYOUT_all": {
9 "layout": [ 14 "layout": [
@@ -23,6 +28,7 @@
23 {"x":13, "y":0}, 28 {"x":13, "y":0},
24 {"x":14, "y":0}, 29 {"x":14, "y":0},
25 {"x":15, "y":0}, 30 {"x":15, "y":0},
31
26 {"x":0, "y":1, "w":1.5}, 32 {"x":0, "y":1, "w":1.5},
27 {"x":1.5, "y":1}, 33 {"x":1.5, "y":1},
28 {"x":2.5, "y":1}, 34 {"x":2.5, "y":1},
@@ -38,6 +44,7 @@
38 {"x":12.5, "y":1}, 44 {"x":12.5, "y":1},
39 {"x":13.5, "y":1, "w":1.5}, 45 {"x":13.5, "y":1, "w":1.5},
40 {"x":15, "y":1}, 46 {"x":15, "y":1},
47
41 {"x":0, "y":2, "w":1.75}, 48 {"x":0, "y":2, "w":1.75},
42 {"x":1.75, "y":2}, 49 {"x":1.75, "y":2},
43 {"x":2.75, "y":2}, 50 {"x":2.75, "y":2},
@@ -52,6 +59,7 @@
52 {"x":11.75, "y":2}, 59 {"x":11.75, "y":2},
53 {"x":12.75, "y":2, "w":2.25}, 60 {"x":12.75, "y":2, "w":2.25},
54 {"x":15, "y":2}, 61 {"x":15, "y":2},
62
55 {"x":0, "y":3, "w":1.25}, 63 {"x":0, "y":3, "w":1.25},
56 {"x":1.25, "y":3}, 64 {"x":1.25, "y":3},
57 {"x":2.25, "y":3}, 65 {"x":2.25, "y":3},
@@ -67,6 +75,7 @@
67 {"x":12.25, "y":3, "w":1.75}, 75 {"x":12.25, "y":3, "w":1.75},
68 {"x":14, "y":3}, 76 {"x":14, "y":3},
69 {"x":15, "y":3}, 77 {"x":15, "y":3},
78
70 {"x":0, "y":4, "w":1.25}, 79 {"x":0, "y":4, "w":1.25},
71 {"x":1.25, "y":4, "w":1.25}, 80 {"x":1.25, "y":4, "w":1.25},
72 {"x":2.5, "y":4, "w":1.25}, 81 {"x":2.5, "y":4, "w":1.25},
@@ -78,7 +87,7 @@
78 {"x":15, "y":4} 87 {"x":15, "y":4}
79 ] 88 ]
80 }, 89 },
81 "LAYOUT_ansi": { 90 "LAYOUT_65_ansi_blocker": {
82 "layout": [ 91 "layout": [
83 {"x":0, "y":0}, 92 {"x":0, "y":0},
84 {"x":1, "y":0}, 93 {"x":1, "y":0},
@@ -95,6 +104,7 @@
95 {"x":12, "y":0}, 104 {"x":12, "y":0},
96 {"x":13, "y":0, "w":2}, 105 {"x":13, "y":0, "w":2},
97 {"x":15, "y":0}, 106 {"x":15, "y":0},
107
98 {"x":0, "y":1, "w":1.5}, 108 {"x":0, "y":1, "w":1.5},
99 {"x":1.5, "y":1}, 109 {"x":1.5, "y":1},
100 {"x":2.5, "y":1}, 110 {"x":2.5, "y":1},
@@ -110,6 +120,7 @@
110 {"x":12.5, "y":1}, 120 {"x":12.5, "y":1},
111 {"x":13.5, "y":1, "w":1.5}, 121 {"x":13.5, "y":1, "w":1.5},
112 {"x":15, "y":1}, 122 {"x":15, "y":1},
123
113 {"x":0, "y":2, "w":1.75}, 124 {"x":0, "y":2, "w":1.75},
114 {"x":1.75, "y":2}, 125 {"x":1.75, "y":2},
115 {"x":2.75, "y":2}, 126 {"x":2.75, "y":2},
@@ -124,6 +135,7 @@
124 {"x":11.75, "y":2}, 135 {"x":11.75, "y":2},
125 {"x":12.75, "y":2, "w":2.25}, 136 {"x":12.75, "y":2, "w":2.25},
126 {"x":15, "y":2}, 137 {"x":15, "y":2},
138
127 {"x":0, "y":3, "w":2.25}, 139 {"x":0, "y":3, "w":2.25},
128 {"x":2.25, "y":3}, 140 {"x":2.25, "y":3},
129 {"x":3.25, "y":3}, 141 {"x":3.25, "y":3},
@@ -138,6 +150,7 @@
138 {"x":12.25, "y":3, "w":1.75}, 150 {"x":12.25, "y":3, "w":1.75},
139 {"x":14, "y":3}, 151 {"x":14, "y":3},
140 {"x":15, "y":3}, 152 {"x":15, "y":3},
153
141 {"x":0, "y":4, "w":1.25}, 154 {"x":0, "y":4, "w":1.25},
142 {"x":1.25, "y":4, "w":1.25}, 155 {"x":1.25, "y":4, "w":1.25},
143 {"x":2.5, "y":4, "w":1.25}, 156 {"x":2.5, "y":4, "w":1.25},
@@ -149,7 +162,7 @@
149 {"x":15, "y":4} 162 {"x":15, "y":4}
150 ] 163 ]
151 }, 164 },
152 "LAYOUT_ansi_splitbs": { 165 "LAYOUT_65_ansi_blocker_split_bs": {
153 "layout": [ 166 "layout": [
154 {"x":0, "y":0}, 167 {"x":0, "y":0},
155 {"x":1, "y":0}, 168 {"x":1, "y":0},
@@ -167,6 +180,7 @@
167 {"x":13, "y":0}, 180 {"x":13, "y":0},
168 {"x":14, "y":0}, 181 {"x":14, "y":0},
169 {"x":15, "y":0}, 182 {"x":15, "y":0},
183
170 {"x":0, "y":1, "w":1.5}, 184 {"x":0, "y":1, "w":1.5},
171 {"x":1.5, "y":1}, 185 {"x":1.5, "y":1},
172 {"x":2.5, "y":1}, 186 {"x":2.5, "y":1},
@@ -182,6 +196,7 @@
182 {"x":12.5, "y":1}, 196 {"x":12.5, "y":1},
183 {"x":13.5, "y":1, "w":1.5}, 197 {"x":13.5, "y":1, "w":1.5},
184 {"x":15, "y":1}, 198 {"x":15, "y":1},
199
185 {"x":0, "y":2, "w":1.75}, 200 {"x":0, "y":2, "w":1.75},
186 {"x":1.75, "y":2}, 201 {"x":1.75, "y":2},
187 {"x":2.75, "y":2}, 202 {"x":2.75, "y":2},
@@ -196,6 +211,7 @@
196 {"x":11.75, "y":2}, 211 {"x":11.75, "y":2},
197 {"x":12.75, "y":2, "w":2.25}, 212 {"x":12.75, "y":2, "w":2.25},
198 {"x":15, "y":2}, 213 {"x":15, "y":2},
214
199 {"x":0, "y":3, "w":2.25}, 215 {"x":0, "y":3, "w":2.25},
200 {"x":2.25, "y":3}, 216 {"x":2.25, "y":3},
201 {"x":3.25, "y":3}, 217 {"x":3.25, "y":3},
@@ -210,6 +226,7 @@
210 {"x":12.25, "y":3, "w":1.75}, 226 {"x":12.25, "y":3, "w":1.75},
211 {"x":14, "y":3}, 227 {"x":14, "y":3},
212 {"x":15, "y":3}, 228 {"x":15, "y":3},
229
213 {"x":0, "y":4, "w":1.25}, 230 {"x":0, "y":4, "w":1.25},
214 {"x":1.25, "y":4, "w":1.25}, 231 {"x":1.25, "y":4, "w":1.25},
215 {"x":2.5, "y":4, "w":1.25}, 232 {"x":2.5, "y":4, "w":1.25},
@@ -221,7 +238,83 @@
221 {"x":15, "y":4} 238 {"x":15, "y":4}
222 ] 239 ]
223 }, 240 },
224 "LAYOUT_iso": { 241 "LAYOUT_65_iso_blocker": {
242 "layout": [
243 {"x":0, "y":0},
244 {"x":1, "y":0},
245 {"x":2, "y":0},
246 {"x":3, "y":0},
247 {"x":4, "y":0},
248 {"x":5, "y":0},
249 {"x":6, "y":0},
250 {"x":7, "y":0},
251 {"x":8, "y":0},
252 {"x":9, "y":0},
253 {"x":10, "y":0},
254 {"x":11, "y":0},
255 {"x":12, "y":0},
256 {"x":13, "y":0, "w":2},
257 {"x":15, "y":0},
258
259 {"x":0, "y":1, "w":1.5},
260 {"x":1.5, "y":1},
261 {"x":2.5, "y":1},
262 {"x":3.5, "y":1},
263 {"x":4.5, "y":1},
264 {"x":5.5, "y":1},
265 {"x":6.5, "y":1},
266 {"x":7.5, "y":1},
267 {"x":8.5, "y":1},
268 {"x":9.5, "y":1},
269 {"x":10.5, "y":1},
270 {"x":11.5, "y":1},
271 {"x":12.5, "y":1},
272 {"x":15, "y":1},
273
274 {"x":0, "y":2, "w":1.75},
275 {"x":1.75, "y":2},
276 {"x":2.75, "y":2},
277 {"x":3.75, "y":2},
278 {"x":4.75, "y":2},
279 {"x":5.75, "y":2},
280 {"x":6.75, "y":2},
281 {"x":7.75, "y":2},
282 {"x":8.75, "y":2},
283 {"x":9.75, "y":2},
284 {"x":10.75, "y":2},
285 {"x":11.75, "y":2},
286 {"x":12.75, "y":2},
287 {"x":13.75, "y":1, "w":1.25, "h":2},
288 {"x":15, "y":2},
289
290 {"x":0, "y":3, "w":1.25},
291 {"x":1.25, "y":3},
292 {"x":2.25, "y":3},
293 {"x":3.25, "y":3},
294 {"x":4.25, "y":3},
295 {"x":5.25, "y":3},
296 {"x":6.25, "y":3},
297 {"x":7.25, "y":3},
298 {"x":8.25, "y":3},
299 {"x":9.25, "y":3},
300 {"x":10.25, "y":3},
301 {"x":11.25, "y":3},
302 {"x":12.25, "y":3, "w":1.75},
303 {"x":14, "y":3},
304 {"x":15, "y":3},
305
306 {"x":0, "y":4, "w":1.25},
307 {"x":1.25, "y":4, "w":1.25},
308 {"x":2.5, "y":4, "w":1.25},
309 {"x":3.75, "y":4, "w":6.25},
310 {"x":10, "y":4, "w":1.25},
311 {"x":11.25, "y":4, "w":1.25},
312 {"x":13, "y":4},
313 {"x":14, "y":4},
314 {"x":15, "y":4}
315 ]
316 },
317 "LAYOUT_65_iso_blocker_split_bs": {
225 "layout": [ 318 "layout": [
226 {"x":0, "y":0}, 319 {"x":0, "y":0},
227 {"x":1, "y":0}, 320 {"x":1, "y":0},
@@ -239,6 +332,7 @@
239 {"x":13, "y":0}, 332 {"x":13, "y":0},
240 {"x":14, "y":0}, 333 {"x":14, "y":0},
241 {"x":15, "y":0}, 334 {"x":15, "y":0},
335
242 {"x":0, "y":1, "w":1.5}, 336 {"x":0, "y":1, "w":1.5},
243 {"x":1.5, "y":1}, 337 {"x":1.5, "y":1},
244 {"x":2.5, "y":1}, 338 {"x":2.5, "y":1},
@@ -252,8 +346,8 @@
252 {"x":10.5, "y":1}, 346 {"x":10.5, "y":1},
253 {"x":11.5, "y":1}, 347 {"x":11.5, "y":1},
254 {"x":12.5, "y":1}, 348 {"x":12.5, "y":1},
255 {"x":13.5, "y":1, "w":1.5},
256 {"x":15, "y":1}, 349 {"x":15, "y":1},
350
257 {"x":0, "y":2, "w":1.75}, 351 {"x":0, "y":2, "w":1.75},
258 {"x":1.75, "y":2}, 352 {"x":1.75, "y":2},
259 {"x":2.75, "y":2}, 353 {"x":2.75, "y":2},
@@ -266,9 +360,12 @@
266 {"x":9.75, "y":2}, 360 {"x":9.75, "y":2},
267 {"x":10.75, "y":2}, 361 {"x":10.75, "y":2},
268 {"x":11.75, "y":2}, 362 {"x":11.75, "y":2},
269 {"x":12.75, "y":2, "w":2.25}, 363 {"x":12.75, "y":2},
364 {"x":13.75, "y":1, "w":1.25, "h":2},
270 {"x":15, "y":2}, 365 {"x":15, "y":2},
271 {"x":0, "y":3, "w":2.25}, 366
367 {"x":0, "y":3, "w":1.25},
368 {"x":1.25, "y":3},
272 {"x":2.25, "y":3}, 369 {"x":2.25, "y":3},
273 {"x":3.25, "y":3}, 370 {"x":3.25, "y":3},
274 {"x":4.25, "y":3}, 371 {"x":4.25, "y":3},
@@ -282,6 +379,7 @@
282 {"x":12.25, "y":3, "w":1.75}, 379 {"x":12.25, "y":3, "w":1.75},
283 {"x":14, "y":3}, 380 {"x":14, "y":3},
284 {"x":15, "y":3}, 381 {"x":15, "y":3},
382
285 {"x":0, "y":4, "w":1.25}, 383 {"x":0, "y":4, "w":1.25},
286 {"x":1.25, "y":4, "w":1.25}, 384 {"x":1.25, "y":4, "w":1.25},
287 {"x":2.5, "y":4, "w":1.25}, 385 {"x":2.5, "y":4, "w":1.25},
diff --git a/keyboards/kb_elmo/noah_avr/keymaps/default/keymap.c b/keyboards/kb_elmo/noah_avr/keymaps/default/keymap.c
index 6dae99e2b..1c4dde03b 100644
--- a/keyboards/kb_elmo/noah_avr/keymaps/default/keymap.c
+++ b/keyboards/kb_elmo/noah_avr/keymaps/default/keymap.c
@@ -16,14 +16,14 @@
16#include QMK_KEYBOARD_H 16#include QMK_KEYBOARD_H
17 17
18const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 18const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
19 [0] = LAYOUT_ansi( 19 [0] = LAYOUT_65_ansi_blocker(
20 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL, 20 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
21 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME, 21 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_HOME,
22 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP, 22 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
23 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, 23 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
24 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT 24 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
25 ), 25 ),
26 [1] = LAYOUT_ansi( 26 [1] = LAYOUT_65_ansi_blocker(
27 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 27 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
28 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 28 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
29 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 29 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
diff --git a/keyboards/kb_elmo/noah_avr/noah_avr.h b/keyboards/kb_elmo/noah_avr/noah_avr.h
index a816a30d0..66a85afa6 100644
--- a/keyboards/kb_elmo/noah_avr/noah_avr.h
+++ b/keyboards/kb_elmo/noah_avr/noah_avr.h
@@ -18,68 +18,91 @@
18 18
19#include "quantum.h" 19#include "quantum.h"
20 20
21#define ____ KC_NO 21#define ___ KC_NO
22 22
23/* This is a shortcut to help you visually see your layout. 23/*
24 * 24 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐
25 * The first section contains all of the arguments representing the physical 25 * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ │0D │ 2u Backspace
26 * layout of the board and position of the keys. 26 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤
27 * 27 * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1F │ │ │
28 * The second converts the arguments into a two-dimensional array which 28 * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐2D │ ISO Enter
29 * represents the switch matrix. 29 * LShift │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │2F │ │1D │ │
30 * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘
31 * │30 │ │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3F │
32 * └────────┘ ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
33 * │40 │41 │42 │46 │4B │4C │ │4D │4E │4F │
34 * └────┴────┴────┴────────────────────────┴────┴────┴─┴───┴───┴───┘
35 * ┌─────┬───┬─────┬───────────────────────────┬─────┐
36 * │40 │41 │42 │46 │4C │ Tsangan
37 * └─────┴───┴─────┴───────────────────────────┴─────┘
30 */ 38 */
39
31#define LAYOUT_all( \ 40#define LAYOUT_all( \
32 k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, \ 41 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \
33 k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k115, \ 42 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \
34 k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k213, k215, \ 43 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k2F, \
35 k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k315, \ 44 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \
36 k400, k401, k402, k406, k411, k412, k413, k414, k415 \ 45 k40, k41, k42, k46, k4B, k4C, k4D, k4E, k4F \
46) { \
47 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \
48 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, ___, k1F }, \
49 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, ___, k2F }, \
50 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, ___, k3F }, \
51 { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, ___, k4B, k4C, k4D, k4E, k4F } \
52}
53
54#define LAYOUT_65_ansi_blocker( \
55 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0F, \
56 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \
57 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k2F, \
58 k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \
59 k40, k41, k42, k46, k4B, k4C, k4D, k4E, k4F \
37) { \ 60) { \
38 { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015 }, \ 61 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, ___, k0F }, \
39 { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, ____, k115 }, \ 62 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, ___, k1F }, \
40 { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, ____, k213, ____, k215 }, \ 63 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, ___, k2F }, \
41 { k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, ____, k315 }, \ 64 { k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, ___, k3F }, \
42 { k400, k401, k402, ____, ____, ____, k406, ____, ____, ____, ____, k411, k412, k413, k414, k415 } \ 65 { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, ___, k4B, k4C, k4D, k4E, k4F } \
43} 66}
44 67
45#define LAYOUT_ansi( \ 68#define LAYOUT_65_ansi_blocker_split_bs( \
46 k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k015, \ 69 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \
47 k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k115, \ 70 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \
48 k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k213, k215, \ 71 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k2F, \
49 k300, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k315, \ 72 k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \
50 k400, k401, k402, k406, k411, k412, k413, k414, k415 \ 73 k40, k41, k42, k46, k4B, k4C, k4D, k4E, k4F \
51) { \ 74) { \
52 { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, ____, k015 }, \ 75 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \
53 { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, ____, k115 }, \ 76 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, ___, k1F }, \
54 { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, ____, k213, ____, k215 }, \ 77 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, ___, k2F }, \
55 { k300, ____, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, ____, k315 }, \ 78 { k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, ___, k3F }, \
56 { k400, k401, k402, ____, ____, ____, k406, ____, ____, ____, ____, k411, k412, k413, k414, k415 } \ 79 { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, ___, k4B, k4C, k4D, k4E, k4F } \
57} 80}
58 81
59#define LAYOUT_ansi_splitbs( \ 82#define LAYOUT_65_iso_blocker( \
60 k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, \ 83 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0F, \
61 k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k115, \ 84 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1F, \
62 k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k213, k215, \ 85 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k1D, k2D, k2F, \
63 k300, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k315, \ 86 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \
64 k400, k401, k402, k406, k411, k412, k413, k414, k415 \ 87 k40, k41, k42, k46, k4B, k4C, k4D, k4E, k4F \
65) { \ 88) { \
66 { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015 }, \ 89 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, ___, k0F }, \
67 { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, ____, k115 }, \ 90 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, ___, k1F }, \
68 { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, ____, k213, ____, k215 }, \ 91 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, ___, k2F }, \
69 { k300, ____, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, ____, k315 }, \ 92 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, ___, k3F }, \
70 { k400, k401, k402, ____, ____, ____, k406, ____, ____, ____, ____, k411, k412, k413, k414, k415 } \ 93 { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, ___, k4B, k4C, k4D, k4E, k4F } \
71} 94}
72 95
73#define LAYOUT_iso( \ 96#define LAYOUT_65_iso_blocker_split_bs( \
74 k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k015, \ 97 k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \
75 k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k115, \ 98 k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1F, \
76 k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k113, k213, k215, \ 99 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k1D, k2D, k2F, \
77 k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k315, \ 100 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \
78 k400, k401, k402, k406, k411, k412, k413, k414, k415 \ 101 k40, k41, k42, k46, k4B, k4C, k4D, k4E, k4F \
79) { \ 102) { \
80 { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, ____, k015 }, \ 103 { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \
81 { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, ____, k115 }, \ 104 { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, ___, k1F }, \
82 { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, ____, k213, ____, k215 }, \ 105 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, ___, k2F }, \
83 { k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, ____, k315 }, \ 106 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, ___, k3F }, \
84 { k400, k401, k402, ____, ____, ____, k406, ____, ____, ____, ____, k411, k412, k413, k414, k415 } \ 107 { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, ___, k4B, k4C, k4D, k4E, k4F } \
85} 108}
diff --git a/keyboards/kb_elmo/noah_avr/rules.mk b/keyboards/kb_elmo/noah_avr/rules.mk
index 38ce53e30..c82741ffc 100644
--- a/keyboards/kb_elmo/noah_avr/rules.mk
+++ b/keyboards/kb_elmo/noah_avr/rules.mk
@@ -20,3 +20,5 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
20RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow 20RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
21BLUETOOTH_ENABLE = no # Enable Bluetooth 21BLUETOOTH_ENABLE = no # Enable Bluetooth
22AUDIO_ENABLE = no # Audio output 22AUDIO_ENABLE = no # Audio output
23
24LAYOUTS = 65_ansi_blocker 65_ansi_blocker_split_bs 65_iso_blocker 65_iso_blocker_split_bs