aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/keebio/quefrency/quefrency.h3
-rw-r--r--keyboards/keebio/quefrency/readme.md8
-rw-r--r--keyboards/keebio/quefrency/rev2/config.h2
-rw-r--r--keyboards/keebio/quefrency/rev3/config.h68
-rw-r--r--keyboards/keebio/quefrency/rev3/rev3.c48
-rw-r--r--keyboards/keebio/quefrency/rev3/rev3.h202
-rw-r--r--keyboards/keebio/quefrency/rev3/rules.mk4
7 files changed, 330 insertions, 5 deletions
diff --git a/keyboards/keebio/quefrency/quefrency.h b/keyboards/keebio/quefrency/quefrency.h
index 89db94236..02139e043 100644
--- a/keyboards/keebio/quefrency/quefrency.h
+++ b/keyboards/keebio/quefrency/quefrency.h
@@ -8,6 +8,9 @@
8#ifdef KEYBOARD_keebio_quefrency_rev2 8#ifdef KEYBOARD_keebio_quefrency_rev2
9 #include "rev2.h" 9 #include "rev2.h"
10#endif 10#endif
11#ifdef KEYBOARD_keebio_quefrency_rev3
12 #include "rev3.h"
13#endif
11 14
12// Used to create a keymap using only KC_ prefixed keys 15// Used to create a keymap using only KC_ prefixed keys
13#define LAYOUT_kc( \ 16#define LAYOUT_kc( \
diff --git a/keyboards/keebio/quefrency/readme.md b/keyboards/keebio/quefrency/readme.md
index 3f0e7d98e..8012abb4b 100644
--- a/keyboards/keebio/quefrency/readme.md
+++ b/keyboards/keebio/quefrency/readme.md
@@ -1,19 +1,19 @@
1Quefrency 1Quefrency
2========= 2=========
3 3
4A split 60% staggered keyboard made and sold by Keebio. [More info at Keebio](https://keeb.io). 4A split 60/65% staggered keyboard made and sold by Keebio. [More info at Keebio](https://keeb.io).
5 5
6Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges) 6Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges)
7Hardware Supported: Pro Micro 7Hardware Supported: Pro Micro (Rev. 1), ATmega32u4 (Rev. 2 & 3)
8Hardware Availability: [Keebio](https://keeb.io/) 8Hardware Availability: [Keebio](https://keeb.io/)
9 9
10Make example for this keyboard (after setting up your build environment): 10Make example for this keyboard (after setting up your build environment):
11 11
12 make keebio/quefrency/rev1:default 12 make keebio/quefrency/rev3:default
13 13
14Example of flashing this keyboard: 14Example of flashing this keyboard:
15 15
16 make keebio/quefrency/rev1:default:avrdude 16 make keebio/quefrency/rev3:default:avrdude
17 17
18Handedness detection is already hardwired onto the PCB, so no need to deal with `EE_HANDS` or flashing .eep files. 18Handedness detection is already hardwired onto the PCB, so no need to deal with `EE_HANDS` or flashing .eep files.
19 19
diff --git a/keyboards/keebio/quefrency/rev2/config.h b/keyboards/keebio/quefrency/rev2/config.h
index 4f6a0c42c..31d37a783 100644
--- a/keyboards/keebio/quefrency/rev2/config.h
+++ b/keyboards/keebio/quefrency/rev2/config.h
@@ -64,5 +64,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
64#define RGBLIGHT_LED_MAP { 1, 2, 3, 12, 13, 14, 15, 0, 7, 6, 5, 4, 11, 10, 9, 8 } 64#define RGBLIGHT_LED_MAP { 1, 2, 3, 12, 13, 14, 15, 0, 7, 6, 5, 4, 11, 10, 9, 8 }
65 65
66// Set 65% column (option 3) and Macro (option 4) on by default 66// Set 65% column (option 3) and Macro (option 4) on by default
67#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x0018 67#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x00DE
68#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 68#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2
diff --git a/keyboards/keebio/quefrency/rev3/config.h b/keyboards/keebio/quefrency/rev3/config.h
new file mode 100644
index 000000000..5ab6d743f
--- /dev/null
+++ b/keyboards/keebio/quefrency/rev3/config.h
@@ -0,0 +1,68 @@
1/*
2Copyright 2012 Jun Wako <wakojun@gmail.com>
3Copyright 2015 Jack Humbert
4
5This program is free software: you can redistribute it and/or modify
6it under the terms of the GNU General Public License as published by
7the Free Software Foundation, either version 2 of the License, or
8(at your option) any later version.
9
10This program is distributed in the hope that it will be useful,
11but WITHOUT ANY WARRANTY; without even the implied warranty of
12MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13GNU General Public License for more details.
14
15You should have received a copy of the GNU General Public License
16along with this program. If not, see <http://www.gnu.org/licenses/>.
17*/
18
19#pragma once
20
21/* USB Device descriptor parameter */
22#define VENDOR_ID 0xCB10
23#define PRODUCT_ID 0x3257
24#define DEVICE_VER 0x0300
25#define MANUFACTURER Keebio
26#define PRODUCT Quefrency Rev. 3
27
28/* key matrix size */
29// Rows are doubled-up
30#define MATRIX_ROWS 10
31#define MATRIX_COLS 9
32
33#define DIODE_DIRECTION COL2ROW
34// wiring of each half
35#define MATRIX_ROW_PINS { B1, B2, C7, B4, D7 }
36#define MATRIX_COL_PINS { F4, F1, F0, B7, B3, D2, D3, D5, D4 }
37#define MATRIX_ROW_PINS_RIGHT { B3, B2, B6, B4, D7 }
38#define MATRIX_COL_PINS_RIGHT { F1, F0, F4, F5, F6, D5, C7, D3, B7 }
39#define SPLIT_HAND_PIN F7
40#define ENCODERS_PAD_A { F5 }
41#define ENCODERS_PAD_B { F6 }
42#define ENCODERS_PAD_A_RIGHT { D6 }
43#define ENCODERS_PAD_B_RIGHT { D4 }
44
45/* Set 0 if debouncing isn't needed */
46#define DEBOUNCE 5
47
48#define BACKLIGHT_PIN B5
49#define CAPS_LOCK_LED_PIN B6
50
51/* serial.c configuration for split keyboard */
52#define SOFT_SERIAL_PIN D0
53
54/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
55#define LOCKING_SUPPORT_ENABLE
56/* Locking resynchronize hack */
57#define LOCKING_RESYNC_ENABLE
58
59/* ws2812 RGB LED */
60#define RGB_DI_PIN E6
61#define RGBLIGHT_ANIMATIONS
62#define RGBLED_NUM 16 // Number of LEDs
63#define RGBLED_SPLIT { 8, 8 }
64#define RGBLIGHT_LED_MAP { 1, 2, 3, 12, 13, 14, 15, 0, 7, 6, 5, 4, 11, 10, 9, 8 }
65
66// Set 65% column (option 3) and Macro (option 4) on by default
67#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x00DE
68#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2
diff --git a/keyboards/keebio/quefrency/rev3/rev3.c b/keyboards/keebio/quefrency/rev3/rev3.c
new file mode 100644
index 000000000..63e67bf59
--- /dev/null
+++ b/keyboards/keebio/quefrency/rev3/rev3.c
@@ -0,0 +1,48 @@
1/* Copyright 2021 Danny Nguyen <danny@keeb.io>
2
3This program is free software: you can redistribute it and/or modify
4it under the terms of the GNU General Public License as published by
5the Free Software Foundation, either version 2 of the License, or
6(at your option) any later version.
7
8This program is distributed in the hope that it will be useful,
9but WITHOUT ANY WARRANTY; without even the implied warranty of
10MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11GNU General Public License for more details.
12
13You should have received a copy of the GNU General Public License
14along with this program. If not, see <http://www.gnu.org/licenses/>.
15*/
16
17#include "quefrency.h"
18#include "split_util.h"
19
20void matrix_init_kb(void) {
21 setPinOutput(CAPS_LOCK_LED_PIN);
22 matrix_init_user();
23}
24
25bool led_update_kb(led_t led_state) {
26 // Only update if left half
27 if (isLeftHand && led_update_user(led_state)) {
28 writePin(CAPS_LOCK_LED_PIN, !led_state.caps_lock);
29 }
30 return true;
31}
32
33void eeconfig_init_kb(void) {
34#ifdef BACKLIGHT_ENABLE
35 backlight_enable();
36 backlight_level(3);
37#endif
38#ifdef RGBLIGHT_ENABLE
39 rgblight_enable(); // Enable RGB by default
40 rgblight_sethsv(0, 255, 255); // Set default HSV - red hue, full saturation, full brightness
41#ifdef RGBLIGHT_ANIMATIONS
42 rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL + 2); // set to RGB_RAINBOW_SWIRL by default
43#endif
44#endif
45
46 eeconfig_update_kb(0);
47 eeconfig_init_user();
48}
diff --git a/keyboards/keebio/quefrency/rev3/rev3.h b/keyboards/keebio/quefrency/rev3/rev3.h
new file mode 100644
index 000000000..3e7749265
--- /dev/null
+++ b/keyboards/keebio/quefrency/rev3/rev3.h
@@ -0,0 +1,202 @@
1/* Copyright 2021 Danny Nguyen <danny@keeb.io>
2
3This program is free software: you can redistribute it and/or modify
4it under the terms of the GNU General Public License as published by
5the Free Software Foundation, either version 2 of the License, or
6(at your option) any later version.
7
8This program is distributed in the hope that it will be useful,
9but WITHOUT ANY WARRANTY; without even the implied warranty of
10MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11GNU General Public License for more details.
12
13You should have received a copy of the GNU General Public License
14along with this program. If not, see <http://www.gnu.org/licenses/>.
15*/
16
17#pragma once
18
19#include "quefrency.h"
20#include "quantum.h"
21
22#define LAYOUT_60( \
23 LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, \
24 LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, \
25 LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC8, \
26 LD3, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, \
27 LE3, LE4, LE5, LE6, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8 \
28 ) \
29 { \
30 { KC_NO, KC_NO, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
31 { KC_NO, KC_NO, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
32 { KC_NO, KC_NO, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
33 { KC_NO, KC_NO, LD3, KC_NO, LD5, LD6, LD7, LD8, LD9 }, \
34 { KC_NO, KC_NO, LE3, LE4, LE5, LE6, KC_NO, LE8, KC_NO }, \
35 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, KC_NO }, \
36 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, KC_NO }, \
37 { RC1, RC2, RC3, RC4, RC5, RC6, KC_NO, RC8, KC_NO }, \
38 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, KC_NO }, \
39 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, KC_NO } \
40 }
41
42#define LAYOUT LAYOUT_60 // For backwards compatibility with Rev. 1
43
44#define LAYOUT_65( \
45 LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9, \
46 LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, RB9, \
47 LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC8, RC9, \
48 LD3, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, RD9, \
49 LE3, LE4, LE5, LE6, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8, RE9 \
50 ) \
51 { \
52 { KC_NO, KC_NO, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
53 { KC_NO, KC_NO, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
54 { KC_NO, KC_NO, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
55 { KC_NO, KC_NO, LD3, KC_NO, LD5, LD6, LD7, LD8, LD9 }, \
56 { KC_NO, KC_NO, LE3, LE4, LE5, LE6, KC_NO, LE8, KC_NO }, \
57 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9 }, \
58 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, RB9 }, \
59 { RC1, RC2, RC3, RC4, RC5, RC6, KC_NO, RC8, RC9 }, \
60 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, RD9 }, \
61 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, RE9 } \
62 }
63
64#define LAYOUT_60_with_macro( \
65 LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, \
66 LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, \
67 LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC8, \
68 LD1, LD2, LD3, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, \
69 LE1, LE2, LE3, LE4, LE5, LE6, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8 \
70 ) \
71 { \
72 { LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
73 { LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
74 { LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
75 { LD1, LD2, LD3, KC_NO, LD5, LD6, LD7, LD8, LD9 }, \
76 { LE1, LE2, LE3, LE4, LE5, LE6, KC_NO, LE8, KC_NO }, \
77 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, KC_NO }, \
78 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, KC_NO }, \
79 { RC1, RC2, RC3, RC4, RC5, RC6, KC_NO, RC8, KC_NO }, \
80 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, KC_NO }, \
81 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, KC_NO } \
82 }
83
84#define LAYOUT_65_with_macro( \
85 LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9, \
86 LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, RB9, \
87 LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC8, RC9, \
88 LD1, LD2, LD3, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, RD9, \
89 LE1, LE2, LE3, LE4, LE5, LE6, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8, RE9 \
90 ) \
91 { \
92 { LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
93 { LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
94 { LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
95 { LD1, LD2, LD3, KC_NO, LD5, LD6, LD7, LD8, LD9 }, \
96 { LE1, LE2, LE3, LE4, LE5, LE6, KC_NO, LE8, KC_NO }, \
97 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9 }, \
98 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, RB9 }, \
99 { RC1, RC2, RC3, RC4, RC5, RC6, KC_NO, RC8, RC9 }, \
100 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, RD9 }, \
101 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, RE9 } \
102 }
103
104#define LAYOUT_60_iso( \
105 LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, \
106 LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, \
107 LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, \
108 LD3, LD4, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, \
109 LE3, LE4, LE5, LE6, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8 \
110 ) \
111 { \
112 { KC_NO, KC_NO, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
113 { KC_NO, KC_NO, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
114 { KC_NO, KC_NO, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
115 { KC_NO, KC_NO, LD3, LD4, LD5, LD6, LD7, LD8, LD9 }, \
116 { KC_NO, KC_NO, LE3, LE4, LE5, LE6, KC_NO, LE8, KC_NO }, \
117 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, KC_NO }, \
118 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, KC_NO, KC_NO }, \
119 { RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, KC_NO }, \
120 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, KC_NO }, \
121 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, KC_NO } \
122 }
123
124#define LAYOUT_65_iso( \
125 LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9, \
126 LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB9, \
127 LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, RC9, \
128 LD3, LD4, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, RD9, \
129 LE3, LE4, LE5, LE6, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8, RE9 \
130 ) \
131 { \
132 { KC_NO, KC_NO, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
133 { KC_NO, KC_NO, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
134 { KC_NO, KC_NO, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
135 { KC_NO, KC_NO, LD3, LD4, LD5, LD6, LD7, LD8, LD9 }, \
136 { KC_NO, KC_NO, LE3, LE4, LE5, LE6, KC_NO, LE8, KC_NO }, \
137 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9 }, \
138 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, KC_NO, RB9 }, \
139 { RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, RC9 }, \
140 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, RD9 }, \
141 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, RE9 } \
142 }
143
144#define LAYOUT_60_iso_with_macro( \
145 LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, \
146 LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, \
147 LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, \
148 LD1, LD2, LD3, LD4, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, \
149 LE1, LE2, LE3, LE4, LE5, LE6, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8 \
150 ) \
151 { \
152 { LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
153 { LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
154 { LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
155 { LD1, LD2, LD3, LD4, LD5, LD6, LD7, LD8, LD9 }, \
156 { LE1, LE2, LE3, LE4, LE5, LE6, KC_NO, LE8, KC_NO }, \
157 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, KC_NO }, \
158 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, KC_NO, KC_NO }, \
159 { RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, KC_NO }, \
160 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, KC_NO }, \
161 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, KC_NO } \
162 }
163
164#define LAYOUT_65_iso_with_macro( \
165 LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9, \
166 LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB9, \
167 LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, RC9, \
168 LD1, LD2, LD3, LD4, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, RD9, \
169 LE1, LE2, LE3, LE4, LE5, LE6, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8, RE9 \
170 ) \
171 { \
172 { LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
173 { LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
174 { LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
175 { LD1, LD2, LD3, LD4, LD5, LD6, LD7, LD8, LD9 }, \
176 { LE1, LE2, LE3, LE4, LE5, LE6, KC_NO, LE8, KC_NO }, \
177 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9 }, \
178 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, KC_NO, RB9 }, \
179 { RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, RC9 }, \
180 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, RD9 }, \
181 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, RE9 } \
182 }
183
184#define LAYOUT_all( \
185 LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9, RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9, \
186 LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, RB9, \
187 LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, RC9, \
188 LD1, LD2, LD3, LD4, LD5, LD6, LD7, LD8, LD9, RD1, RD2, RD3, RD4, RD5, RD7, RD8, RD9, \
189 LE1, LE2, LE3, LE4, LE5, LE6, LE7, LE8, RE1, RE2, RE3, RE4, RE5, RE7, RE8, RE9 \
190 ) \
191 { \
192 { LA1, LA2, LA3, LA4, LA5, LA6, LA7, LA8, LA9 }, \
193 { LB1, LB2, LB3, LB4, LB5, LB6, LB7, LB8, KC_NO }, \
194 { LC1, LC2, LC3, LC4, LC5, LC6, LC7, LC8, KC_NO }, \
195 { LD1, LD2, LD3, LD4, LD5, LD6, LD7, LD8, LD9 }, \
196 { LE1, LE2, LE3, LE4, LE5, LE6, LE7, LE8, KC_NO }, \
197 { RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9 }, \
198 { RB1, RB2, RB3, RB4, RB5, RB6, RB7, RB8, RB9 }, \
199 { RC1, RC2, RC3, RC4, RC5, RC6, RC7, RC8, RC9 }, \
200 { RD1, RD2, RD3, RD4, RD5, KC_NO, RD7, RD8, RD9 }, \
201 { RE1, RE2, RE3, RE4, RE5, KC_NO, RE7, RE8, RE9 } \
202 }
diff --git a/keyboards/keebio/quefrency/rev3/rules.mk b/keyboards/keebio/quefrency/rev3/rules.mk
new file mode 100644
index 000000000..0a368deb4
--- /dev/null
+++ b/keyboards/keebio/quefrency/rev3/rules.mk
@@ -0,0 +1,4 @@
1BOOTLOADER = atmel-dfu
2BACKLIGHT_ENABLE = yes
3RGBLIGHT_ENABLE = yes
4ENCODER_ENABLE = yes