aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryiancar <yiangosyiangou@cytanet.com.cy>2020-01-21 23:09:50 +0000
committerJames Young <18669334+noroadsleft@users.noreply.github.com>2020-01-21 15:09:50 -0800
commitf7730567509619e31742ce0a2aa5ae7cfe21d23e (patch)
tree2b17a9e882d556819e01be9beb67ea0c30929d0e
parentb70500806ab047907b161ed6fa0dc32ba8a91784 (diff)
downloadqmk_firmware-f7730567509619e31742ce0a2aa5ae7cfe21d23e.tar.gz
qmk_firmware-f7730567509619e31742ce0a2aa5ae7cfe21d23e.zip
[Keyboard] HS60 Refactor (Keymap restructure to be more standardized) (#7847)
* Keymap restructure to be more standardized * made bootmagic lite default * Dividing keymaps * Update keyboards/hs60/v2/v2.c
-rw-r--r--keyboards/hs60/v2/ansi/ansi.h38
-rw-r--r--keyboards/hs60/v2/ansi/config.h146
-rw-r--r--keyboards/hs60/v2/ansi/info.json333
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/default/config.h (renamed from keyboards/hs60/v2/keymaps/ansi/config.h)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/default/keymap.c (renamed from keyboards/hs60/v2/keymaps/ansi/keymap.c)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/default/readme.md (renamed from keyboards/hs60/v2/keymaps/ansi/readme.md)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/stanrc85/config.h (renamed from keyboards/hs60/v2/keymaps/stanrc85/config.h)5
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/stanrc85/keymap.c (renamed from keyboards/hs60/v2/keymaps/stanrc85/keymap.c)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/stanrc85/readme.md (renamed from keyboards/hs60/v2/keymaps/stanrc85/readme.md)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/stanrc85/rules.mk (renamed from keyboards/hs60/v2/keymaps/ansi_via/rules.mk)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/via/config.h (renamed from keyboards/hs60/v2/keymaps/ansi_via/config.h)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/via/keymap.c (renamed from keyboards/hs60/v2/keymaps/ansi_via/keymap.c)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/via/readme.md (renamed from keyboards/hs60/v2/keymaps/ansi_via/readme.md)0
-rw-r--r--keyboards/hs60/v2/ansi/keymaps/via/rules.mk (renamed from keyboards/hs60/v2/keymaps/default_via/rules.mk)0
-rw-r--r--keyboards/hs60/v2/ansi/rules.mk (renamed from keyboards/hs60/v2/rules.mk)4
-rw-r--r--keyboards/hs60/v2/hhkb/config.h146
-rw-r--r--keyboards/hs60/v2/hhkb/hhkb.h (renamed from keyboards/hs60/v2/v2.h)28
-rw-r--r--keyboards/hs60/v2/hhkb/info.json12
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/default/keymap.c (renamed from keyboards/hs60/v2/keymaps/hhkb/keymap.c)0
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/default/readme.md (renamed from keyboards/hs60/v2/keymaps/hhkb/readme.md)0
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/goatmaster/config.h (renamed from keyboards/hs60/v2/keymaps/goatmaster/config.h)15
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/goatmaster/keymap.c (renamed from keyboards/hs60/v2/keymaps/goatmaster/keymap.c)0
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/goatmaster/readme.md (renamed from keyboards/hs60/v2/keymaps/goatmaster/readme.md)0
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/goatmaster/rules.mk (renamed from keyboards/hs60/v2/keymaps/goatmaster/rules.mk)0
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/via/keymap.c (renamed from keyboards/hs60/v2/keymaps/hhkb_via/keymap.c)0
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/via/readme.md (renamed from keyboards/hs60/v2/keymaps/hhkb_via/readme.md)0
-rw-r--r--keyboards/hs60/v2/hhkb/keymaps/via/rules.mk (renamed from keyboards/hs60/v2/keymaps/hhkb_via/rules.mk)0
-rw-r--r--keyboards/hs60/v2/hhkb/rules.mk31
-rw-r--r--keyboards/hs60/v2/info.json1650
-rw-r--r--keyboards/hs60/v2/iso/config.h (renamed from keyboards/hs60/v2/config.h)4
-rw-r--r--keyboards/hs60/v2/iso/info.json338
-rw-r--r--keyboards/hs60/v2/iso/iso.h38
-rw-r--r--keyboards/hs60/v2/iso/keymaps/default/keymap.c (renamed from keyboards/hs60/v2/keymaps/default/keymap.c)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/default/readme.md (renamed from keyboards/hs60/v2/keymaps/default/readme.md)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/iso_andys8/keymap.c (renamed from keyboards/hs60/v2/keymaps/iso_andys8/keymap.c)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/iso_andys8/readme.md (renamed from keyboards/hs60/v2/keymaps/iso_andys8/readme.md)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/iso_andys8/rules.mk (renamed from keyboards/hs60/v2/keymaps/iso_andys8/rules.mk)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/via/keymap.c (renamed from keyboards/hs60/v2/keymaps/default_via/keymap.c)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/via/readme.md (renamed from keyboards/hs60/v2/keymaps/default_via/readme.md)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/via/rules.mk (renamed from keyboards/hs60/v2/keymaps/stanrc85/rules.mk)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/win_osx_dual/keymap.c (renamed from keyboards/hs60/v2/keymaps/win_osx_dual/keymap.c)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/win_osx_dual/readme.md (renamed from keyboards/hs60/v2/keymaps/win_osx_dual/readme.md)0
-rw-r--r--keyboards/hs60/v2/iso/keymaps/win_osx_dual/rules.mk (renamed from keyboards/hs60/v2/keymaps/win_osx_dual/rules.mk)0
-rw-r--r--keyboards/hs60/v2/iso/rules.mk33
-rw-r--r--keyboards/hs60/v2/keymaps/hhkb/config.h34
-rw-r--r--keyboards/hs60/v2/keymaps/hhkb_via/config.h34
-rw-r--r--keyboards/hs60/v2/readme.md4
-rw-r--r--keyboards/hs60/v2/v2.c3
48 files changed, 1125 insertions, 1771 deletions
diff --git a/keyboards/hs60/v2/ansi/ansi.h b/keyboards/hs60/v2/ansi/ansi.h
new file mode 100644
index 000000000..e29cc65c0
--- /dev/null
+++ b/keyboards/hs60/v2/ansi/ansi.h
@@ -0,0 +1,38 @@
1/* Copyright 2018 Yiancar
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18#define XXX KC_NO
19
20#include "quantum.h"
21#include "../../wilba_tech/wt_rgb_backlight_keycodes.h"
22#include "via.h"
23
24// This a shortcut to help you visually see your layout.
25
26#define LAYOUT_60_ansi( \
27 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
28 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, \
29 K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, \
30 K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \
31 K40, K41, K42, K46, K4A, K4B, K4C, K4D \
32) { \
33 { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
34 { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, XXX }, \
35 { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D }, \
36 { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, XXX, K3D }, \
37 { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, XXX, K4A, K4B, K4C, K4D } \
38}
diff --git a/keyboards/hs60/v2/ansi/config.h b/keyboards/hs60/v2/ansi/config.h
new file mode 100644
index 000000000..a02c362c9
--- /dev/null
+++ b/keyboards/hs60/v2/ansi/config.h
@@ -0,0 +1,146 @@
1/*
2Copyright 2018 Yiancar
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#pragma once
19
20#include "config_common.h"
21
22/* USB Device descriptor parameter */
23#define VENDOR_ID 0x8968
24#define PRODUCT_ID 0x4854
25#define DEVICE_VER 0x0002
26#define MANUFACTURER Yiancar-Designs
27#define PRODUCT HS60 V2
28#define DESCRIPTION GH60 compatible, tool free RGB keyboard
29
30#define HS60_ANSI
31
32/* key matrix size */
33#define MATRIX_ROWS 5
34#define MATRIX_COLS 14
35
36#define MATRIX_ROW_PINS { B3, B4, B5, A8, A4 }
37#define MATRIX_COL_PINS { A13, A10, A9, A14, A15, B8, B9, C13, C14, C15, A0, A1, A2, A3 }
38// To enable debugger set A13 A14 -> A5 A6
39
40/* COL2ROW, ROW2COL*/
41#define DIODE_DIRECTION COL2ROW
42
43/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
44#define DEBOUNCE 5
45
46/* define if matrix has ghost (lacks anti-ghosting diodes) */
47//#define MATRIX_HAS_GHOST
48
49/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
50 * This is userful for the Windows task manager shortcut (ctrl+shift+esc).
51 */
52// #define GRAVE_ESC_CTRL_OVERRIDE
53
54/*
55 * Force NKRO
56 *
57 * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
58 * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
59 * makefile for this to work.)
60 *
61 * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
62 * until the next keyboard reset.
63 *
64 * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
65 * fully operational during normal computer usage.
66 *
67 * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
68 * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
69 * bootmagic, NKRO mode will always be enabled until it is toggled again during a
70 * power-up.
71 *
72 */
73//#define FORCE_NKRO
74
75/*
76 * Magic Key Options
77 *
78 * Magic keys are hotkey commands that allow control over firmware functions of
79 * the keyboard. They are best used in combination with the HID Listen program,
80 * found here: https://www.pjrc.com/teensy/hid_listen.html
81 *
82 * The options below allow the magic key functionality to be changed. This is
83 * useful if your keyboard/keypad is missing keys and you want magic key support.
84 *
85 */
86
87/* Bootmagic Lite key configuration */
88#define BOOTMAGIC_LITE_ROW 0
89#define BOOTMAGIC_LITE_COLUMN 0
90
91/* Backlight options */
92
93#define RGB_BACKLIGHT_ENABLED 1
94
95#define RGB_BACKLIGHT_HS60
96
97// they aren't really used if RGB_BACKLIGHT_HS60 defined
98#define RGB_BACKLIGHT_USE_SPLIT_BACKSPACE 0
99#define RGB_BACKLIGHT_USE_SPLIT_LEFT_SHIFT 0
100#define RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT 0
101#define RGB_BACKLIGHT_USE_7U_SPACEBAR 0
102#define RGB_BACKLIGHT_USE_ISO_ENTER 0
103#define RGB_BACKLIGHT_DISABLE_HHKB_BLOCKER_LEDS 0
104
105// disable backlight when USB suspended (PC sleep/hibernate/shutdown)
106#define RGB_BACKLIGHT_DISABLE_WHEN_USB_SUSPENDED 0
107
108// disable backlight after timeout in minutes, 0 = no timeout
109#define RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT 0
110
111// the default brightness
112#define RGB_BACKLIGHT_BRIGHTNESS 255
113
114// the default effect (RGB test)
115#define RGB_BACKLIGHT_EFFECT 6
116
117// the default effect speed (0-3)
118#define RGB_BACKLIGHT_EFFECT_SPEED 0
119
120// the default color1 and color2
121#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
122#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
123
124#define DRIVER_COUNT 2
125#define DRIVER_LED_TOTAL 64
126
127// These define which keys in the matrix are alphas/mods
128// Used for backlight effects so colors are different for
129// alphas vs. mods
130// Each value is for a row, bit 0 is column 0
131// Alpha=0 Mod=1
132#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_0 0b0010000000000001
133#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_1 0b0000000000000001
134#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_2 0b0010000000000001
135#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_3 0b0010000000000001
136#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 0b0011110000000111
137
138#define RGB_BACKLIGHT_CAPS_LOCK_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
139#define RGB_BACKLIGHT_LAYER_1_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
140#define RGB_BACKLIGHT_LAYER_2_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
141#define RGB_BACKLIGHT_LAYER_3_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
142
143// Backlight config starts after VIA's EEPROM usage,
144// dynamic keymaps start after this.
145#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 31
146
diff --git a/keyboards/hs60/v2/ansi/info.json b/keyboards/hs60/v2/ansi/info.json
new file mode 100644
index 000000000..a977f9be0
--- /dev/null
+++ b/keyboards/hs60/v2/ansi/info.json
@@ -0,0 +1,333 @@
1{
2 "keyboard_name": "HS60v2",
3 "maintainer": "yiancar",
4 "url": "",
5 "width": 15,
6 "height": 5,
7 "layouts": {
8 "LAYOUT_60_ansi": {
9 "key_count": 61,
10 "layout": [
11 {
12 "label": "~",
13 "x": 0,
14 "y": 0
15 },
16 {
17 "label": "!",
18 "x": 1,
19 "y": 0
20 },
21 {
22 "label": "@",
23 "x": 2,
24 "y": 0
25 },
26 {
27 "label": "#",
28 "x": 3,
29 "y": 0
30 },
31 {
32 "label": "$",
33 "x": 4,
34 "y": 0
35 },
36 {
37 "label": "%",
38 "x": 5,
39 "y": 0
40 },
41 {
42 "label": "^",
43 "x": 6,
44 "y": 0
45 },
46 {
47 "label": "&",
48 "x": 7,
49 "y": 0
50 },
51 {
52 "label": "*",
53 "x": 8,
54 "y": 0
55 },
56 {
57 "label": "(",
58 "x": 9,
59 "y": 0
60 },
61 {
62 "label": ")",
63 "x": 10,
64 "y": 0
65 },
66 {
67 "label": "_",
68 "x": 11,
69 "y": 0
70 },
71 {
72 "label": "+",
73 "x": 12,
74 "y": 0
75 },
76 {
77 "label": "Backspace",
78 "x": 13,
79 "y": 0,
80 "w": 2
81 },
82 {
83 "label": "Tab",
84 "x": 0,
85 "y": 1,
86 "w": 1.5
87 },
88 {
89 "label": "Q",
90 "x": 1.5,
91 "y": 1
92 },
93 {
94 "label": "W",
95 "x": 2.5,
96 "y": 1
97 },
98 {
99 "label": "E",
100 "x": 3.5,
101 "y": 1
102 },
103 {
104 "label": "R",
105 "x": 4.5,
106 "y": 1
107 },
108 {
109 "label": "T",
110 "x": 5.5,
111 "y": 1
112 },
113 {
114 "label": "Y",
115 "x": 6.5,
116 "y": 1
117 },
118 {
119 "label": "U",
120 "x": 7.5,
121 "y": 1
122 },
123 {
124 "label": "I",
125 "x": 8.5,
126 "y": 1
127 },
128 {
129 "label": "O",
130 "x": 9.5,
131 "y": 1
132 },
133 {
134 "label": "P",
135 "x": 10.5,
136 "y": 1
137 },
138 {
139 "label": "{",
140 "x": 11.5,
141 "y": 1
142 },
143 {
144 "label": "}",
145 "x": 12.5,
146 "y": 1
147 },
148 {
149 "label": "|",
150 "x": 13.5,
151 "y": 1,
152 "w": 1.5
153 },
154 {
155 "label": "Caps Lock",
156 "x": 0,
157 "y": 2,
158 "w": 1.75
159 },
160 {
161 "label": "A",
162 "x": 1.75,
163 "y": 2
164 },
165 {
166 "label": "S",
167 "x": 2.75,
168 "y": 2
169 },
170 {
171 "label": "D",
172 "x": 3.75,
173 "y": 2
174 },
175 {
176 "label": "F",
177 "x": 4.75,
178 "y": 2
179 },
180 {
181 "label": "G",
182 "x": 5.75,
183 "y": 2
184 },
185 {
186 "label": "H",
187 "x": 6.75,
188 "y": 2
189 },
190 {
191 "label": "J",
192 "x": 7.75,
193 "y": 2
194 },
195 {
196 "label": "K",
197 "x": 8.75,
198 "y": 2
199 },
200 {
201 "label": "L",
202 "x": 9.75,
203 "y": 2
204 },
205 {
206 "label": ":",
207 "x": 10.75,
208 "y": 2
209 },
210 {
211 "label": "\"",
212 "x": 11.75,
213 "y": 2
214 },
215 {
216 "label": "Enter",
217 "x": 12.75,
218 "y": 2,
219 "w": 2.25
220 },
221 {
222 "label": "Shift",
223 "x": 0,
224 "y": 3,
225 "w": 2.25
226 },
227 {
228 "label": "Z",
229 "x": 2.25,
230 "y": 3
231 },
232 {
233 "label": "X",
234 "x": 3.25,
235 "y": 3
236 },
237 {
238 "label": "C",
239 "x": 4.25,
240 "y": 3
241 },
242 {
243 "label": "V",
244 "x": 5.25,
245 "y": 3
246 },
247 {
248 "label": "B",
249 "x": 6.25,
250 "y": 3
251 },
252 {
253 "label": "N",
254 "x": 7.25,
255 "y": 3
256 },
257 {
258 "label": "M",
259 "x": 8.25,
260 "y": 3
261 },
262 {
263 "label": "<",
264 "x": 9.25,
265 "y": 3
266 },
267 {
268 "label": ">",
269 "x": 10.25,
270 "y": 3
271 },
272 {
273 "label": "?",
274 "x": 11.25,
275 "y": 3
276 },
277 {
278 "label": "Shift",
279 "x": 12.25,
280 "y": 3,
281 "w": 2.75
282 },
283 {
284 "label": "Ctrl",
285 "x": 0,
286 "y": 4,
287 "w": 1.25
288 },
289 {
290 "label": "Win",
291 "x": 1.25,
292 "y": 4,
293 "w": 1.25
294 },
295 {
296 "label": "Alt",
297 "x": 2.5,
298 "y": 4,
299 "w": 1.25
300 },
301 {
302 "x": 3.75,
303 "y": 4,
304 "w": 6.25
305 },
306 {
307 "label": "Alt",
308 "x": 10,
309 "y": 4,
310 "w": 1.25
311 },
312 {
313 "label": "Win",
314 "x": 11.25,
315 "y": 4,
316 "w": 1.25
317 },
318 {
319 "label": "Menu",
320 "x": 12.5,
321 "y": 4,
322 "w": 1.25
323 },
324 {
325 "label": "Ctrl",
326 "x": 13.75,
327 "y": 4,
328 "w": 1.25
329 }
330 ]
331 }
332 }
333}
diff --git a/keyboards/hs60/v2/keymaps/ansi/config.h b/keyboards/hs60/v2/ansi/keymaps/default/config.h
index 96adaf568..96adaf568 100644
--- a/keyboards/hs60/v2/keymaps/ansi/config.h
+++ b/keyboards/hs60/v2/ansi/keymaps/default/config.h
diff --git a/keyboards/hs60/v2/keymaps/ansi/keymap.c b/keyboards/hs60/v2/ansi/keymaps/default/keymap.c
index ba649470b..ba649470b 100644
--- a/keyboards/hs60/v2/keymaps/ansi/keymap.c
+++ b/keyboards/hs60/v2/ansi/keymaps/default/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/ansi/readme.md b/keyboards/hs60/v2/ansi/keymaps/default/readme.md
index 3afd8afb3..3afd8afb3 100644
--- a/keyboards/hs60/v2/keymaps/ansi/readme.md
+++ b/keyboards/hs60/v2/ansi/keymaps/default/readme.md
diff --git a/keyboards/hs60/v2/keymaps/stanrc85/config.h b/keyboards/hs60/v2/ansi/keymaps/stanrc85/config.h
index d61e6bde4..bf39aae3a 100644
--- a/keyboards/hs60/v2/keymaps/stanrc85/config.h
+++ b/keyboards/hs60/v2/ansi/keymaps/stanrc85/config.h
@@ -1,10 +1,5 @@
1#pragma once 1#pragma once
2 2
3// Include overwrites for specific keymap
4#define HS60_ANSI
5#undef PRODUCT_ID
6#define PRODUCT_ID 0x4854
7
8// disable backlight after timeout in minutes, 0 = no timeout 3// disable backlight after timeout in minutes, 0 = no timeout
9#undef RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT 4#undef RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT
10#define RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT 20 5#define RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT 20
diff --git a/keyboards/hs60/v2/keymaps/stanrc85/keymap.c b/keyboards/hs60/v2/ansi/keymaps/stanrc85/keymap.c
index 2e6a70483..2e6a70483 100644
--- a/keyboards/hs60/v2/keymaps/stanrc85/keymap.c
+++ b/keyboards/hs60/v2/ansi/keymaps/stanrc85/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/stanrc85/readme.md b/keyboards/hs60/v2/ansi/keymaps/stanrc85/readme.md
index 430d363f3..430d363f3 100644
--- a/keyboards/hs60/v2/keymaps/stanrc85/readme.md
+++ b/keyboards/hs60/v2/ansi/keymaps/stanrc85/readme.md
diff --git a/keyboards/hs60/v2/keymaps/ansi_via/rules.mk b/keyboards/hs60/v2/ansi/keymaps/stanrc85/rules.mk
index 1e5b99807..1e5b99807 100644
--- a/keyboards/hs60/v2/keymaps/ansi_via/rules.mk
+++ b/keyboards/hs60/v2/ansi/keymaps/stanrc85/rules.mk
diff --git a/keyboards/hs60/v2/keymaps/ansi_via/config.h b/keyboards/hs60/v2/ansi/keymaps/via/config.h
index 96adaf568..96adaf568 100644
--- a/keyboards/hs60/v2/keymaps/ansi_via/config.h
+++ b/keyboards/hs60/v2/ansi/keymaps/via/config.h
diff --git a/keyboards/hs60/v2/keymaps/ansi_via/keymap.c b/keyboards/hs60/v2/ansi/keymaps/via/keymap.c
index ba649470b..ba649470b 100644
--- a/keyboards/hs60/v2/keymaps/ansi_via/keymap.c
+++ b/keyboards/hs60/v2/ansi/keymaps/via/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/ansi_via/readme.md b/keyboards/hs60/v2/ansi/keymaps/via/readme.md
index a462da661..a462da661 100644
--- a/keyboards/hs60/v2/keymaps/ansi_via/readme.md
+++ b/keyboards/hs60/v2/ansi/keymaps/via/readme.md
diff --git a/keyboards/hs60/v2/keymaps/default_via/rules.mk b/keyboards/hs60/v2/ansi/keymaps/via/rules.mk
index 1e5b99807..1e5b99807 100644
--- a/keyboards/hs60/v2/keymaps/default_via/rules.mk
+++ b/keyboards/hs60/v2/ansi/keymaps/via/rules.mk
diff --git a/keyboards/hs60/v2/rules.mk b/keyboards/hs60/v2/ansi/rules.mk
index 37deb63be..d013775c1 100644
--- a/keyboards/hs60/v2/rules.mk
+++ b/keyboards/hs60/v2/ansi/rules.mk
@@ -10,7 +10,7 @@ OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
10# comment out to disable the options. 10# comment out to disable the options.
11# 11#
12BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality 12BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
13BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration 13BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
14MOUSEKEY_ENABLE = yes # Mouse keys 14MOUSEKEY_ENABLE = yes # Mouse keys
15EXTRAKEY_ENABLE = yes # Audio control and System control 15EXTRAKEY_ENABLE = yes # Audio control and System control
16CONSOLE_ENABLE = no # Console for debug 16CONSOLE_ENABLE = no # Console for debug
@@ -23,7 +23,7 @@ NO_USB_STARTUP_CHECK = no # Disable initialization only when usb is plu
23 23
24CIE1931_CURVE = yes 24CIE1931_CURVE = yes
25 25
26LAYOUTS = 60_ansi 60_iso 26LAYOUTS = 60_ansi
27 27
28# project specific files 28# project specific files
29SRC = keyboards/wilba_tech/wt_main.c \ 29SRC = keyboards/wilba_tech/wt_main.c \
diff --git a/keyboards/hs60/v2/hhkb/config.h b/keyboards/hs60/v2/hhkb/config.h
new file mode 100644
index 000000000..45cfe5716
--- /dev/null
+++ b/keyboards/hs60/v2/hhkb/config.h
@@ -0,0 +1,146 @@
1/*
2Copyright 2018 Yiancar
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#pragma once
19
20#include "config_common.h"
21
22/* USB Device descriptor parameter */
23#define VENDOR_ID 0x8968
24#define PRODUCT_ID 0x4855
25#define DEVICE_VER 0x0002
26#define MANUFACTURER Yiancar-Designs
27#define PRODUCT HS60 V2
28#define DESCRIPTION GH60 compatible, tool free RGB keyboard
29
30#define HS60_HHKB
31
32/* key matrix size */
33#define MATRIX_ROWS 5
34#define MATRIX_COLS 14
35
36#define MATRIX_ROW_PINS { B3, B4, B5, A8, A4 }
37#define MATRIX_COL_PINS { A13, A10, A9, A14, A15, B8, B9, C13, C14, C15, A0, A1, A2, A3 }
38// To enable debugger set A13 A14 -> A5 A6
39
40/* COL2ROW, ROW2COL*/
41#define DIODE_DIRECTION COL2ROW
42
43/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
44#define DEBOUNCE 5
45
46/* define if matrix has ghost (lacks anti-ghosting diodes) */
47//#define MATRIX_HAS_GHOST
48
49/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
50 * This is userful for the Windows task manager shortcut (ctrl+shift+esc).
51 */
52// #define GRAVE_ESC_CTRL_OVERRIDE
53
54/*
55 * Force NKRO
56 *
57 * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
58 * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
59 * makefile for this to work.)
60 *
61 * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
62 * until the next keyboard reset.
63 *
64 * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
65 * fully operational during normal computer usage.
66 *
67 * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
68 * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
69 * bootmagic, NKRO mode will always be enabled until it is toggled again during a
70 * power-up.
71 *
72 */
73//#define FORCE_NKRO
74
75/*
76 * Magic Key Options
77 *
78 * Magic keys are hotkey commands that allow control over firmware functions of
79 * the keyboard. They are best used in combination with the HID Listen program,
80 * found here: https://www.pjrc.com/teensy/hid_listen.html
81 *
82 * The options below allow the magic key functionality to be changed. This is
83 * useful if your keyboard/keypad is missing keys and you want magic key support.
84 *
85 */
86
87/* Bootmagic Lite key configuration */
88#define BOOTMAGIC_LITE_ROW 0
89#define BOOTMAGIC_LITE_COLUMN 0
90
91/* Backlight options */
92
93#define RGB_BACKLIGHT_ENABLED 1
94
95#define RGB_BACKLIGHT_HS60
96
97// they aren't really used if RGB_BACKLIGHT_HS60 defined
98#define RGB_BACKLIGHT_USE_SPLIT_BACKSPACE 0
99#define RGB_BACKLIGHT_USE_SPLIT_LEFT_SHIFT 0
100#define RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT 0
101#define RGB_BACKLIGHT_USE_7U_SPACEBAR 0
102#define RGB_BACKLIGHT_USE_ISO_ENTER 0
103#define RGB_BACKLIGHT_DISABLE_HHKB_BLOCKER_LEDS 0
104
105// disable backlight when USB suspended (PC sleep/hibernate/shutdown)
106#define RGB_BACKLIGHT_DISABLE_WHEN_USB_SUSPENDED 0
107
108// disable backlight after timeout in minutes, 0 = no timeout
109#define RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT 0
110
111// the default brightness
112#define RGB_BACKLIGHT_BRIGHTNESS 255
113
114// the default effect (RGB test)
115#define RGB_BACKLIGHT_EFFECT 6
116
117// the default effect speed (0-3)
118#define RGB_BACKLIGHT_EFFECT_SPEED 0
119
120// the default color1 and color2
121#define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 }
122#define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 }
123
124#define DRIVER_COUNT 2
125#define DRIVER_LED_TOTAL 64
126
127// These define which keys in the matrix are alphas/mods
128// Used for backlight effects so colors are different for
129// alphas vs. mods
130// Each value is for a row, bit 0 is column 0
131// Alpha=0 Mod=1
132#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_0 0b0000000000000001
133#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_1 0b0000000000000001
134#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_2 0b0011000000000001
135#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_3 0b0011000000000001
136#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 0b0011100000000111
137
138#define RGB_BACKLIGHT_CAPS_LOCK_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
139#define RGB_BACKLIGHT_LAYER_1_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
140#define RGB_BACKLIGHT_LAYER_2_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
141#define RGB_BACKLIGHT_LAYER_3_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 }
142
143// Backlight config starts after VIA's EEPROM usage,
144// dynamic keymaps start after this.
145#define VIA_EEPROM_CUSTOM_CONFIG_SIZE 31
146
diff --git a/keyboards/hs60/v2/v2.h b/keyboards/hs60/v2/hhkb/hhkb.h
index e77076486..94248f01e 100644
--- a/keyboards/hs60/v2/v2.h
+++ b/keyboards/hs60/v2/hhkb/hhkb.h
@@ -23,34 +23,6 @@
23 23
24// This a shortcut to help you visually see your layout. 24// This a shortcut to help you visually see your layout.
25 25
26#define LAYOUT_60_iso( \
27 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
28 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \
29 K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, \
30 K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \
31 K40, K41, K42, K46, K4A, K4B, K4C, K4D \
32) { \
33 { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
34 { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, XXX }, \
35 { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D }, \
36 { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, XXX, K3D }, \
37 { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, XXX, K4A, K4B, K4C, K4D } \
38}
39
40#define LAYOUT_60_ansi( \
41 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
42 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, \
43 K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, \
44 K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \
45 K40, K41, K42, K46, K4A, K4B, K4C, K4D \
46) { \
47 { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
48 { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, XXX }, \
49 { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D }, \
50 { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, XXX, K3D }, \
51 { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, XXX, K4A, K4B, K4C, K4D } \
52}
53
54#define LAYOUT_60_hhkb( \ 26#define LAYOUT_60_hhkb( \
55 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K1D, \ 27 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K1D, \
56 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, \ 28 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, \
diff --git a/keyboards/hs60/v2/hhkb/info.json b/keyboards/hs60/v2/hhkb/info.json
new file mode 100644
index 000000000..cf95351d3
--- /dev/null
+++ b/keyboards/hs60/v2/hhkb/info.json
@@ -0,0 +1,12 @@
1{
2 "keyboard_name": "HS60v2",
3 "maintainer": "yiancar",
4 "url": "",
5 "width": 15,
6 "height": 5,
7 "layouts": {
8 "LAYOUT_60_hhkb": {
9 "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":0, "y":3, "w":2.25}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":0, "y":4, "w":1.5}, {"x":1.5, "y":4}, {"x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"x":11, "y":4, "w":1.5}, {"x":12.5, "y":4}, {"x":13.5, "y":4, "w":1.5}]
10 }
11 }
12}
diff --git a/keyboards/hs60/v2/keymaps/hhkb/keymap.c b/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c
index 9641eedb4..9641eedb4 100644
--- a/keyboards/hs60/v2/keymaps/hhkb/keymap.c
+++ b/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/hhkb/readme.md b/keyboards/hs60/v2/hhkb/keymaps/default/readme.md
index 5259a584d..5259a584d 100644
--- a/keyboards/hs60/v2/keymaps/hhkb/readme.md
+++ b/keyboards/hs60/v2/hhkb/keymaps/default/readme.md
diff --git a/keyboards/hs60/v2/keymaps/goatmaster/config.h b/keyboards/hs60/v2/hhkb/keymaps/goatmaster/config.h
index f63c90355..50c76489e 100644
--- a/keyboards/hs60/v2/keymaps/goatmaster/config.h
+++ b/keyboards/hs60/v2/hhkb/keymaps/goatmaster/config.h
@@ -18,20 +18,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
18 18
19/* Include overwrites for specific keymap */ 19/* Include overwrites for specific keymap */
20 20
21#define HS60_HHKB
22#undef PRODUCT_ID
23#define PRODUCT_ID 0x4855
24
25#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_0
26#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_1
27#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_2
28#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_3
29#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_4
30#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_0 0b0000000000000001
31#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_1 0b0000000000000001
32#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_2 0b0011000000000001
33#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_3 0b0011000000000001
34#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 0b0011100000000111
35
36#undef RGB_BACKLIGHT_CAPS_LOCK_INDICATOR 21#undef RGB_BACKLIGHT_CAPS_LOCK_INDICATOR
37#define RGB_BACKLIGHT_CAPS_LOCK_INDICATOR { .color = { .h = 0, .s = 255 }, .index = 3-1 } //red 22#define RGB_BACKLIGHT_CAPS_LOCK_INDICATOR { .color = { .h = 0, .s = 255 }, .index = 3-1 } //red
diff --git a/keyboards/hs60/v2/keymaps/goatmaster/keymap.c b/keyboards/hs60/v2/hhkb/keymaps/goatmaster/keymap.c
index 6273dbc64..6273dbc64 100644
--- a/keyboards/hs60/v2/keymaps/goatmaster/keymap.c
+++ b/keyboards/hs60/v2/hhkb/keymaps/goatmaster/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/goatmaster/readme.md b/keyboards/hs60/v2/hhkb/keymaps/goatmaster/readme.md
index ea9803cc0..ea9803cc0 100644
--- a/keyboards/hs60/v2/keymaps/goatmaster/readme.md
+++ b/keyboards/hs60/v2/hhkb/keymaps/goatmaster/readme.md
diff --git a/keyboards/hs60/v2/keymaps/goatmaster/rules.mk b/keyboards/hs60/v2/hhkb/keymaps/goatmaster/rules.mk
index 1e5b99807..1e5b99807 100644
--- a/keyboards/hs60/v2/keymaps/goatmaster/rules.mk
+++ b/keyboards/hs60/v2/hhkb/keymaps/goatmaster/rules.mk
diff --git a/keyboards/hs60/v2/keymaps/hhkb_via/keymap.c b/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c
index 9641eedb4..9641eedb4 100644
--- a/keyboards/hs60/v2/keymaps/hhkb_via/keymap.c
+++ b/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/hhkb_via/readme.md b/keyboards/hs60/v2/hhkb/keymaps/via/readme.md
index ea9803cc0..ea9803cc0 100644
--- a/keyboards/hs60/v2/keymaps/hhkb_via/readme.md
+++ b/keyboards/hs60/v2/hhkb/keymaps/via/readme.md
diff --git a/keyboards/hs60/v2/keymaps/hhkb_via/rules.mk b/keyboards/hs60/v2/hhkb/keymaps/via/rules.mk
index 1e5b99807..1e5b99807 100644
--- a/keyboards/hs60/v2/keymaps/hhkb_via/rules.mk
+++ b/keyboards/hs60/v2/hhkb/keymaps/via/rules.mk
diff --git a/keyboards/hs60/v2/hhkb/rules.mk b/keyboards/hs60/v2/hhkb/rules.mk
new file mode 100644
index 000000000..44399851f
--- /dev/null
+++ b/keyboards/hs60/v2/hhkb/rules.mk
@@ -0,0 +1,31 @@
1# MCU name
2MCU = STM32F303
3
4# Do not put the microcontroller into power saving mode
5# when we get USB suspend event. We want it to keep updating
6# backlight effects.
7OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
8
9# Build Options
10# comment out to disable the options.
11#
12BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
13BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
14MOUSEKEY_ENABLE = yes # Mouse keys
15EXTRAKEY_ENABLE = yes # Audio control and System control
16CONSOLE_ENABLE = no # Console for debug
17COMMAND_ENABLE = no # Commands for debug and configuration
18SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
19NKRO_ENABLE = yes # USB Nkey Rollover
20AUDIO_ENABLE = no # Audio output on port C6
21NO_USB_STARTUP_CHECK = no # Disable initialization only when usb is plugged in
22#SERIAL_LINK_ENABLE = yes
23
24CIE1931_CURVE = yes
25
26# project specific files
27SRC = keyboards/wilba_tech/wt_main.c \
28 keyboards/wilba_tech/wt_rgb_backlight.c \
29 drivers/issi/is31fl3733.c \
30 quantum/color.c \
31 drivers/arm/i2c_master.c
diff --git a/keyboards/hs60/v2/info.json b/keyboards/hs60/v2/info.json
deleted file mode 100644
index c42e9e941..000000000
--- a/keyboards/hs60/v2/info.json
+++ /dev/null
@@ -1,1650 +0,0 @@
1{
2 "keyboard_name": "HS60v2",
3 "maintainer": "yiancar",
4 "url": "",
5 "width": 15,
6 "height": 5,
7 "layouts": {
8 "LAYOUT_60_ansi": {
9 "key_count": 61,
10 "layout": [
11 {
12 "label": "~",
13 "x": 0,
14 "y": 0
15 },
16 {
17 "label": "!",
18 "x": 1,
19 "y": 0
20 },
21 {
22 "label": "@",
23 "x": 2,
24 "y": 0
25 },
26 {
27 "label": "#",
28 "x": 3,
29 "y": 0
30 },
31 {
32 "label": "$",
33 "x": 4,
34 "y": 0
35 },
36 {
37 "label": "%",
38 "x": 5,
39 "y": 0
40 },
41 {
42 "label": "^",
43 "x": 6,
44 "y": 0
45 },
46 {
47 "label": "&",
48 "x": 7,
49 "y": 0
50 },
51 {
52 "label": "*",
53 "x": 8,
54 "y": 0
55 },
56 {
57 "label": "(",
58 "x": 9,
59 "y": 0
60 },
61 {
62 "label": ")",
63 "x": 10,
64 "y": 0
65 },
66 {
67 "label": "_",
68 "x": 11,
69 "y": 0
70 },
71 {
72 "label": "+",
73 "x": 12,
74 "y": 0
75 },
76 {
77 "label": "Backspace",
78 "x": 13,
79 "y": 0,
80 "w": 2
81 },
82 {
83 "label": "Tab",
84 "x": 0,
85 "y": 1,
86 "w": 1.5
87 },
88 {
89 "label": "Q",
90 "x": 1.5,
91 "y": 1
92 },
93 {
94 "label": "W",
95 "x": 2.5,
96 "y": 1
97 },
98 {
99 "label": "E",
100 "x": 3.5,
101 "y": 1
102 },
103 {
104 "label": "R",
105 "x": 4.5,
106 "y": 1
107 },
108 {
109 "label": "T",
110 "x": 5.5,
111 "y": 1
112 },
113 {
114 "label": "Y",
115 "x": 6.5,
116 "y": 1
117 },
118 {
119 "label": "U",
120 "x": 7.5,
121 "y": 1
122 },
123 {
124 "label": "I",
125 "x": 8.5,
126 "y": 1
127 },
128 {
129 "label": "O",
130 "x": 9.5,
131 "y": 1
132 },
133 {
134 "label": "P",
135 "x": 10.5,
136 "y": 1
137 },
138 {
139 "label": "{",
140 "x": 11.5,
141 "y": 1
142 },
143 {
144 "label": "}",
145 "x": 12.5,
146 "y": 1
147 },
148 {
149 "label": "|",
150 "x": 13.5,
151 "y": 1,
152 "w": 1.5
153 },
154 {
155 "label": "Caps Lock",
156 "x": 0,
157 "y": 2,
158 "w": 1.75
159 },
160 {
161 "label": "A",
162 "x": 1.75,
163 "y": 2
164 },
165 {
166 "label": "S",
167 "x": 2.75,
168 "y": 2
169 },
170 {
171 "label": "D",
172 "x": 3.75,
173 "y": 2
174 },
175 {
176 "label": "F",
177 "x": 4.75,
178 "y": 2
179 },
180 {
181 "label": "G",
182 "x": 5.75,
183 "y": 2
184 },
185 {
186 "label": "H",
187 "x": 6.75,
188 "y": 2
189 },
190 {
191 "label": "J",
192 "x": 7.75,
193 "y": 2
194 },
195 {
196 "label": "K",
197 "x": 8.75,
198 "y": 2
199 },
200 {
201 "label": "L",
202 "x": 9.75,
203 "y": 2
204 },
205 {
206 "label": ":",
207 "x": 10.75,
208 "y": 2
209 },
210 {
211 "label": "\"",
212 "x": 11.75,
213 "y": 2
214 },
215 {
216 "label": "Enter",
217 "x": 12.75,
218 "y": 2,
219 "w": 2.25
220 },
221 {
222 "label": "Shift",
223 "x": 0,
224 "y": 3,
225 "w": 2.25
226 },
227 {
228 "label": "Z",
229 "x": 2.25,
230 "y": 3
231 },
232 {
233 "label": "X",
234 "x": 3.25,
235 "y": 3
236 },
237 {
238 "label": "C",
239 "x": 4.25,
240 "y": 3
241 },
242 {
243 "label": "V",
244 "x": 5.25,
245 "y": 3
246 },
247 {
248 "label": "B",
249 "x": 6.25,
250 "y": 3
251 },
252 {
253 "label": "N",
254 "x": 7.25,
255 "y": 3
256 },
257 {
258 "label": "M",
259 "x": 8.25,
260 "y": 3
261 },
262 {
263 "label": "<",
264 "x": 9.25,
265 "y": 3
266 },
267 {
268 "label": ">",
269 "x": 10.25,
270 "y": 3
271 },
272 {
273 "label": "?",
274 "x": 11.25,
275 "y": 3
276 },
277 {
278 "label": "Shift",
279 "x": 12.25,
280 "y": 3,
281 "w": 2.75
282 },
283 {
284 "label": "Ctrl",
285 "x": 0,
286 "y": 4,
287 "w": 1.25
288 },
289 {
290 "label": "Win",
291 "x": 1.25,
292 "y": 4,
293 "w": 1.25
294 },
295 {
296 "label": "Alt",
297 "x": 2.5,
298 "y": 4,
299 "w": 1.25
300 },
301 {
302 "x": 3.75,
303 "y": 4,
304 "w": 6.25
305 },
306 {
307 "label": "Alt",
308 "x": 10,
309 "y": 4,
310 "w": 1.25
311 },
312 {
313 "label": "Win",
314 "x": 11.25,
315 "y": 4,
316 "w": 1.25
317 },
318 {
319 "label": "Menu",
320 "x": 12.5,
321 "y": 4,
322 "w": 1.25
323 },
324 {
325 "label": "Ctrl",
326 "x": 13.75,
327 "y": 4,
328 "w": 1.25
329 }
330 ]
331 },
332 "LAYOUT_60_iso": {
333 "key_count": 62,
334 "layout": [
335 {
336 "label": "\\u00ac",
337 "x": 0,
338 "y": 0
339 },
340 {
341 "label": "!",
342 "x": 1,
343 "y": 0
344 },
345 {
346 "label": "\"",
347 "x": 2,
348 "y": 0
349 },
350 {
351 "label": "\\u00a3",
352 "x": 3,
353 "y": 0
354 },
355 {
356 "label": "$",
357 "x": 4,
358 "y": 0
359 },
360 {
361 "label": "%",
362 "x": 5,
363 "y": 0
364 },
365 {
366 "label": "^",
367 "x": 6,
368 "y": 0
369 },
370 {
371 "label": "&",
372 "x": 7,
373 "y": 0
374 },
375 {
376 "label": "*",
377 "x": 8,
378 "y": 0
379 },
380 {
381 "label": "(",
382 "x": 9,
383 "y": 0
384 },
385 {
386 "label": ")",
387 "x": 10,
388 "y": 0
389 },
390 {
391 "label": "_",
392 "x": 11,
393 "y": 0
394 },
395 {
396 "label": "+",
397 "x": 12,
398 "y": 0
399 },
400 {
401 "label": "Backspace",
402 "x": 13,
403 "y": 0,
404 "w": 2
405 },
406 {
407 "label": "Tab",
408 "x": 0,
409 "y": 1,
410 "w": 1.5
411 },
412 {
413 "label": "Q",
414 "x": 1.5,
415 "y": 1
416 },
417 {
418 "label": "W",
419 "x": 2.5,
420 "y": 1
421 },
422 {
423 "label": "E",
424 "x": 3.5,
425 "y": 1
426 },
427 {
428 "label": "R",
429 "x": 4.5,
430 "y": 1
431 },
432 {
433 "label": "T",
434 "x": 5.5,
435 "y": 1
436 },
437 {
438 "label": "Y",
439 "x": 6.5,
440 "y": 1
441 },
442 {
443 "label": "U",
444 "x": 7.5,
445 "y": 1
446 },
447 {
448 "label": "I",
449 "x": 8.5,
450 "y": 1
451 },
452 {
453 "label": "O",
454 "x": 9.5,
455 "y": 1
456 },
457 {
458 "label": "P",
459 "x": 10.5,
460 "y": 1
461 },
462 {
463 "label": "{",
464 "x": 11.5,
465 "y": 1
466 },
467 {
468 "label": "}",
469 "x": 12.5,
470 "y": 1
471 },
472 {
473 "label": "Enter",
474 "x": 13.75,
475 "y": 1,
476 "w": 1.25,
477 "h": 2
478 },
479 {
480 "label": "Caps Lock",
481 "x": 0,
482 "y": 2,
483 "w": 1.75
484 },
485 {
486 "label": "A",
487 "x": 1.75,
488 "y": 2
489 },
490 {
491 "label": "S",
492 "x": 2.75,
493 "y": 2
494 },
495 {
496 "label": "D",
497 "x": 3.75,
498 "y": 2
499 },
500 {
501 "label": "F",
502 "x": 4.75,
503 "y": 2
504 },
505 {
506 "label": "G",
507 "x": 5.75,
508 "y": 2
509 },
510 {
511 "label": "H",
512 "x": 6.75,
513 "y": 2
514 },
515 {
516 "label": "J",
517 "x": 7.75,
518 "y": 2
519 },
520 {
521 "label": "K",
522 "x": 8.75,
523 "y": 2
524 },
525 {
526 "label": "L",
527 "x": 9.75,
528 "y": 2
529 },
530 {
531 "label": ":",
532 "x": 10.75,
533 "y": 2
534 },
535 {
536 "label": "@",
537 "x": 11.75,
538 "y": 2
539 },
540 {
541 "label": "~",
542 "x": 12.75,
543 "y": 2
544 },
545 {
546 "label": "Shift",
547 "x": 0,
548 "y": 3,
549 "w": 1.25
550 },
551 {
552 "label": "|",
553 "x": 1.25,
554 "y": 3
555 },
556 {
557 "label": "Z",
558 "x": 2.25,
559 "y": 3
560 },
561 {
562 "label": "X",
563 "x": 3.25,
564 "y": 3
565 },
566 {
567 "label": "C",
568 "x": 4.25,
569 "y": 3
570 },
571 {
572 "label": "V",
573 "x": 5.25,
574 "y": 3
575 },
576 {
577 "label": "B",
578 "x": 6.25,
579 "y": 3
580 },
581 {
582 "label": "N",
583 "x": 7.25,
584 "y": 3
585 },
586 {
587 "label": "M",
588 "x": 8.25,
589 "y": 3
590 },
591 {
592 "label": "<",
593 "x": 9.25,
594 "y": 3
595 },
596 {
597 "label": ">",
598 "x": 10.25,
599 "y": 3
600 },
601 {
602 "label": "?",
603 "x": 11.25,
604 "y": 3
605 },
606 {
607 "label": "Shift",
608 "x": 12.25,
609 "y": 3,
610 "w": 2.75
611 },
612 {
613 "label": "Ctrl",
614 "x": 0,
615 "y": 4,
616 "w": 1.25
617 },
618 {
619 "label": "Win",
620 "x": 1.25,
621 "y": 4,
622 "w": 1.25
623 },
624 {
625 "label": "Alt",
626 "x": 2.5,
627 "y": 4,
628 "w": 1.25
629 },
630 {
631 "x": 3.75,
632 "y": 4,
633 "w": 6.25
634 },
635 {
636 "label": "AltGr",
637 "x": 10,
638 "y": 4,
639 "w": 1.25
640 },
641 {
642 "label": "Win",
643 "x": 11.25,
644 "y": 4,
645 "w": 1.25
646 },
647 {
648 "label": "Menu",
649 "x": 12.5,
650 "y": 4,
651 "w": 1.25
652 },
653 {
654 "label": "Ctrl",
655 "x": 13.75,
656 "y": 4,
657 "w": 1.25
658 }
659 ]
660 },
661 "KEYMAP_AEK": {
662 "key_count": 60,
663 "layout": [
664 {
665 "label": "~",
666 "x": 0,
667 "y": 0
668 },
669 {
670 "label": "!",
671 "x": 1,
672 "y": 0
673 },
674 {
675 "label": "@",
676 "x": 2,
677 "y": 0
678 },
679 {
680 "label": "#",
681 "x": 3,
682 "y": 0
683 },
684 {
685 "label": "$",
686 "x": 4,
687 "y": 0
688 },
689 {
690 "label": "%",
691 "x": 5,
692 "y": 0
693 },
694 {
695 "label": "^",
696 "x": 6,
697 "y": 0
698 },
699 {
700 "label": "&",
701 "x": 7,
702 "y": 0
703 },
704 {
705 "label": "*",
706 "x": 8,
707 "y": 0
708 },
709 {
710 "label": "(",
711 "x": 9,
712 "y": 0
713 },
714 {
715 "label": ")",
716 "x": 10,
717 "y": 0
718 },
719 {
720 "label": "_",
721 "x": 11,
722 "y": 0
723 },
724 {
725 "label": "+",
726 "x": 12,
727 "y": 0
728 },
729 {
730 "label": "Backspace",
731 "x": 13,
732 "y": 0,
733 "w": 2
734 },
735 {
736 "label": "Tab",
737 "x": 0,
738 "y": 1,
739 "w": 1.5
740 },
741 {
742 "label": "Q",
743 "x": 1.5,
744 "y": 1
745 },
746 {
747 "label": "W",
748 "x": 2.5,
749 "y": 1
750 },
751 {
752 "label": "E",
753 "x": 3.5,
754 "y": 1
755 },
756 {
757 "label": "R",
758 "x": 4.5,
759 "y": 1
760 },
761 {
762 "label": "T",
763 "x": 5.5,
764 "y": 1
765 },
766 {
767 "label": "Y",
768 "x": 6.5,
769 "y": 1
770 },
771 {
772 "label": "U",
773 "x": 7.5,
774 "y": 1
775 },
776 {
777 "label": "I",
778 "x": 8.5,
779 "y": 1
780 },
781 {
782 "label": "O",
783 "x": 9.5,
784 "y": 1
785 },
786 {
787 "label": "P",
788 "x": 10.5,
789 "y": 1
790 },
791 {
792 "label": "{",
793 "x": 11.5,
794 "y": 1
795 },
796 {
797 "label": "}",
798 "x": 12.5,
799 "y": 1
800 },
801 {
802 "label": "|",
803 "x": 13.5,
804 "y": 1,
805 "w": 1.5
806 },
807 {
808 "label": "Caps Lock",
809 "x": 0,
810 "y": 2,
811 "w": 1.75
812 },
813 {
814 "label": "A",
815 "x": 1.75,
816 "y": 2
817 },
818 {
819 "label": "S",
820 "x": 2.75,
821 "y": 2
822 },
823 {
824 "label": "D",
825 "x": 3.75,
826 "y": 2
827 },
828 {
829 "label": "F",
830 "x": 4.75,
831 "y": 2
832 },
833 {
834 "label": "G",
835 "x": 5.75,
836 "y": 2
837 },
838 {
839 "label": "H",
840 "x": 6.75,
841 "y": 2
842 },
843 {
844 "label": "J",
845 "x": 7.75,
846 "y": 2
847 },
848 {
849 "label": "K",
850 "x": 8.75,
851 "y": 2
852 },
853 {
854 "label": "L",
855 "x": 9.75,
856 "y": 2
857 },
858 {
859 "label": ":",
860 "x": 10.75,
861 "y": 2
862 },
863 {
864 "label": "\"",
865 "x": 11.75,
866 "y": 2
867 },
868 {
869 "label": "Enter",
870 "x": 12.75,
871 "y": 2,
872 "w": 2.25
873 },
874 {
875 "label": "Shift",
876 "x": 0,
877 "y": 3,
878 "w": 2.25
879 },
880 {
881 "label": "Z",
882 "x": 2.25,
883 "y": 3
884 },
885 {
886 "label": "X",
887 "x": 3.25,
888 "y": 3
889 },
890 {
891 "label": "C",
892 "x": 4.25,
893 "y": 3
894 },
895 {
896 "label": "V",
897 "x": 5.25,
898 "y": 3
899 },
900 {
901 "label": "B",
902 "x": 6.25,
903 "y": 3
904 },
905 {
906 "label": "N",
907 "x": 7.25,
908 "y": 3
909 },
910 {
911 "label": "M",
912 "x": 8.25,
913 "y": 3
914 },
915 {
916 "label": "<",
917 "x": 9.25,
918 "y": 3
919 },
920 {
921 "label": ">",
922 "x": 10.25,
923 "y": 3
924 },
925 {
926 "label": "?",
927 "x": 11.25,
928 "y": 3
929 },
930 {
931 "label": "Shift",
932 "x": 12.25,
933 "y": 3,
934 "w": 2.75
935 },
936 {
937 "label": "Ctrl",
938 "x": 0,
939 "y": 4,
940 "w": 1.5
941 },
942 {
943 "label": "Win",
944 "x": 1.5,
945 "y": 4,
946 "w": 1.25
947 },
948 {
949 "label": "Alt",
950 "x": 2.75,
951 "y": 4,
952 "w": 1.5
953 },
954 {
955 "x": 4.25,
956 "y": 4,
957 "w": 6.5
958 },
959 {
960 "label": "AltGr",
961 "x": 10.75,
962 "y": 4,
963 "w": 1.5
964 },
965 {
966 "label": "Win",
967 "x": 12.25,
968 "y": 4,
969 "w": 1.25
970 },
971 {
972 "label": "Ctrl",
973 "x": 13.5,
974 "y": 4,
975 "w": 1.5
976 }
977 ]
978 },
979 "KEYMAP": {
980 "key_count": 65,
981 "layout": [
982 {
983 "label": "~",
984 "x": 0,
985 "y": 0
986 },
987 {
988 "label": "!",
989 "x": 1,
990 "y": 0
991 },
992 {
993 "label": "@",
994 "x": 2,
995 "y": 0
996 },
997 {
998 "label": "#",
999 "x": 3,
1000 "y": 0
1001 },
1002 {
1003 "label": "$",
1004 "x": 4,
1005 "y": 0
1006 },
1007 {
1008 "label": "%",
1009 "x": 5,
1010 "y": 0
1011 },
1012 {
1013 "label": "^",
1014 "x": 6,
1015 "y": 0
1016 },
1017 {
1018 "label": "&",
1019 "x": 7,
1020 "y": 0
1021 },
1022 {
1023 "label": "*",
1024 "x": 8,
1025 "y": 0
1026 },
1027 {
1028 "label": "(",
1029 "x": 9,
1030 "y": 0
1031 },
1032 {
1033 "label": ")",
1034 "x": 10,
1035 "y": 0
1036 },
1037 {
1038 "label": "_",
1039 "x": 11,
1040 "y": 0
1041 },
1042 {
1043 "label": "+",
1044 "x": 12,
1045 "y": 0
1046 },
1047 {
1048 "x": 13,
1049 "y": 0
1050 },
1051 {
1052 "label": "Back",
1053 "x": 14,
1054 "y": 0
1055 },
1056 {
1057 "label": "Tab",
1058 "x": 0,
1059 "y": 1,
1060 "w": 1.5
1061 },
1062 {
1063 "label": "Q",
1064 "x": 1.5,
1065 "y": 1
1066 },
1067 {
1068 "label": "W",
1069 "x": 2.5,
1070 "y": 1
1071 },
1072 {
1073 "label": "E",
1074 "x": 3.5,
1075 "y": 1
1076 },
1077 {
1078 "label": "R",
1079 "x": 4.5,
1080 "y": 1
1081 },
1082 {
1083 "label": "T",
1084 "x": 5.5,
1085 "y": 1
1086 },
1087 {
1088 "label": "Y",
1089 "x": 6.5,
1090 "y": 1
1091 },
1092 {
1093 "label": "U",
1094 "x": 7.5,
1095 "y": 1
1096 },
1097 {
1098 "label": "I",
1099 "x": 8.5,
1100 "y": 1
1101 },
1102 {
1103 "label": "O",
1104 "x": 9.5,
1105 "y": 1
1106 },
1107 {
1108 "label": "P",
1109 "x": 10.5,
1110 "y": 1
1111 },
1112 {
1113 "label": "{",
1114 "x": 11.5,
1115 "y": 1
1116 },
1117 {
1118 "label": "}",
1119 "x": 12.5,
1120 "y": 1
1121 },
1122 {
1123 "label": "|",
1124 "x": 13.5,
1125 "y": 1,
1126 "w": 1.5
1127 },
1128 {
1129 "label": "Caps Lock",
1130 "x": 0,
1131 "y": 2,
1132 "w": 1.75
1133 },
1134 {
1135 "label": "A",
1136 "x": 1.75,
1137 "y": 2
1138 },
1139 {
1140 "label": "S",
1141 "x": 2.75,
1142 "y": 2
1143 },
1144 {
1145 "label": "D",
1146 "x": 3.75,
1147 "y": 2
1148 },
1149 {
1150 "label": "F",
1151 "x": 4.75,
1152 "y": 2
1153 },
1154 {
1155 "label": "G",
1156 "x": 5.75,
1157 "y": 2
1158 },
1159 {
1160 "label": "H",
1161 "x": 6.75,
1162 "y": 2
1163 },
1164 {
1165 "label": "J",
1166 "x": 7.75,
1167 "y": 2
1168 },
1169 {
1170 "label": "K",
1171 "x": 8.75,
1172 "y": 2
1173 },
1174 {
1175 "label": "L",
1176 "x": 9.75,
1177 "y": 2
1178 },
1179 {
1180 "label": ":",
1181 "x": 10.75,
1182 "y": 2
1183 },
1184 {
1185 "label": "\"",
1186 "x": 11.75,
1187 "y": 2
1188 },
1189 {
1190 "x": 12.75,
1191 "y": 2
1192 },
1193 {
1194 "label": "Enter",
1195 "x": 13.75,
1196 "y": 2,
1197 "w": 1.25
1198 },
1199 {
1200 "x": 0,
1201 "y": 3
1202 },
1203 {
1204 "label": "Shift",
1205 "x": 1,
1206 "y": 3,
1207 "w": 1.25
1208 },
1209 {
1210 "label": "Z",
1211 "x": 2.25,
1212 "y": 3
1213 },
1214 {
1215 "label": "X",
1216 "x": 3.25,
1217 "y": 3
1218 },
1219 {
1220 "label": "C",
1221 "x": 4.25,
1222 "y": 3
1223 },
1224 {
1225 "label": "V",
1226 "x": 5.25,
1227 "y": 3
1228 },
1229 {
1230 "label": "B",
1231 "x": 6.25,
1232 "y": 3
1233 },
1234 {
1235 "label": "N",
1236 "x": 7.25,
1237 "y": 3
1238 },
1239 {
1240 "label": "M",
1241 "x": 8.25,
1242 "y": 3
1243 },
1244 {
1245 "label": "<",
1246 "x": 9.25,
1247 "y": 3
1248 },
1249 {
1250 "label": ">",
1251 "x": 10.25,
1252 "y": 3
1253 },
1254 {
1255 "label": "?",
1256 "x": 11.25,
1257 "y": 3
1258 },
1259 {
1260 "label": "Shift",
1261 "x": 12.25,
1262 "y": 3,
1263 "w": 1.75
1264 },
1265 {
1266 "x": 14,
1267 "y": 3
1268 },
1269 {
1270 "label": "Ctrl",
1271 "x": 0,
1272 "y": 4,
1273 "w": 1.25
1274 },
1275 {
1276 "label": "Win",
1277 "x": 1.25,
1278 "y": 4,
1279 "w": 1.25
1280 },
1281 {
1282 "label": "Alt",
1283 "x": 2.5,
1284 "y": 4,
1285 "w": 1.25
1286 },
1287 {
1288 "x": 3.75,
1289 "y": 4,
1290 "w": 6.25
1291 },
1292 {
1293 "label": "Alt",
1294 "x": 10,
1295 "y": 4,
1296 "w": 1.25
1297 },
1298 {
1299 "label": "Win",
1300 "x": 11.25,
1301 "y": 4,
1302 "w": 1.25
1303 },
1304 {
1305 "label": "Menu",
1306 "x": 12.5,
1307 "y": 4,
1308 "w": 1.25
1309 },
1310 {
1311 "label": "Ctrl",
1312 "x": 13.75,
1313 "y": 4,
1314 "w": 1.25
1315 }
1316 ]
1317 },
1318 "LAYOUT_60_ansi_split_bs_rshift": {
1319 "key_count": 63,
1320 "layout": [
1321 {
1322 "label": "~",
1323 "x": 0,
1324 "y": 0
1325 },
1326 {
1327 "label": "!",
1328 "x": 1,
1329 "y": 0
1330 },
1331 {
1332 "label": "@",
1333 "x": 2,
1334 "y": 0
1335 },
1336 {
1337 "label": "#",
1338 "x": 3,
1339 "y": 0
1340 },
1341 {
1342 "label": "$",
1343 "x": 4,
1344 "y": 0
1345 },
1346 {
1347 "label": "%",
1348 "x": 5,
1349 "y": 0
1350 },
1351 {
1352 "label": "^",
1353 "x": 6,
1354 "y": 0
1355 },
1356 {
1357 "label": "&",
1358 "x": 7,
1359 "y": 0
1360 },
1361 {
1362 "label": "*",
1363 "x": 8,
1364 "y": 0
1365 },
1366 {
1367 "label": "(",
1368 "x": 9,
1369 "y": 0
1370 },
1371 {
1372 "label": ")",
1373 "x": 10,
1374 "y": 0
1375 },
1376 {
1377 "label": "_",
1378 "x": 11,
1379 "y": 0
1380 },
1381 {
1382 "label": "+",
1383 "x": 12,
1384 "y": 0
1385 },
1386 {
1387 "x": 13,
1388 "y": 0
1389 },
1390 {
1391 "label": "Back",
1392 "x": 14,
1393 "y": 0
1394 },
1395 {
1396 "label": "Tab",
1397 "x": 0,
1398 "y": 1,
1399 "w": 1.5
1400 },
1401 {
1402 "label": "Q",
1403 "x": 1.5,
1404 "y": 1
1405 },
1406 {
1407 "label": "W",
1408 "x": 2.5,
1409 "y": 1
1410 },
1411 {
1412 "label": "E",
1413 "x": 3.5,
1414 "y": 1
1415 },
1416 {
1417 "label": "R",
1418 "x": 4.5,
1419 "y": 1
1420 },
1421 {
1422 "label": "T",
1423 "x": 5.5,
1424 "y": 1
1425 },
1426 {
1427 "label": "Y",
1428 "x": 6.5,
1429 "y": 1
1430 },
1431 {
1432 "label": "U",
1433 "x": 7.5,
1434 "y": 1
1435 },
1436 {
1437 "label": "I",
1438 "x": 8.5,
1439 "y": 1
1440 },
1441 {
1442 "label": "O",
1443 "x": 9.5,
1444 "y": 1
1445 },
1446 {
1447 "label": "P",
1448 "x": 10.5,
1449 "y": 1
1450 },
1451 {
1452 "label": "{",
1453 "x": 11.5,
1454 "y": 1
1455 },
1456 {
1457 "label": "}",
1458 "x": 12.5,
1459 "y": 1
1460 },
1461 {
1462 "label": "|",
1463 "x": 13.5,
1464 "y": 1,
1465 "w": 1.5
1466 },
1467 {
1468 "label": "Caps Lock",
1469 "x": 0,
1470 "y": 2,
1471 "w": 1.75
1472 },
1473 {
1474 "label": "A",
1475 "x": 1.75,
1476 "y": 2
1477 },
1478 {
1479 "label": "S",
1480 "x": 2.75,
1481 "y": 2
1482 },
1483 {
1484 "label": "D",
1485 "x": 3.75,
1486 "y": 2
1487 },
1488 {
1489 "label": "F",
1490 "x": 4.75,
1491 "y": 2
1492 },
1493 {
1494 "label": "G",
1495 "x": 5.75,
1496 "y": 2
1497 },
1498 {
1499 "label": "H",
1500 "x": 6.75,
1501 "y": 2
1502 },
1503 {
1504 "label": "J",
1505 "x": 7.75,
1506 "y": 2
1507 },
1508 {
1509 "label": "K",
1510 "x": 8.75,
1511 "y": 2
1512 },
1513 {
1514 "label": "L",
1515 "x": 9.75,
1516 "y": 2
1517 },
1518 {
1519 "label": ":",
1520 "x": 10.75,
1521 "y": 2
1522 },
1523 {
1524 "label": "\"",
1525 "x": 11.75,
1526 "y": 2
1527 },
1528 {
1529 "label": "Enter",
1530 "x": 12.75,
1531 "y": 2,
1532 "w": 2.25
1533 },
1534 {
1535 "label": "Shift",
1536 "x": 0,
1537 "y": 3,
1538 "w": 2.25
1539 },
1540 {
1541 "label": "Z",
1542 "x": 2.25,
1543 "y": 3
1544 },
1545 {
1546 "label": "X",
1547 "x": 3.25,
1548 "y": 3
1549 },
1550 {
1551 "label": "C",
1552 "x": 4.25,
1553 "y": 3
1554 },
1555 {
1556 "label": "V",
1557 "x": 5.25,
1558 "y": 3
1559 },
1560 {
1561 "label": "B",
1562 "x": 6.25,
1563 "y": 3
1564 },
1565 {
1566 "label": "N",
1567 "x": 7.25,
1568 "y": 3
1569 },
1570 {
1571 "label": "M",
1572 "x": 8.25,
1573 "y": 3
1574 },
1575 {
1576 "label": "<",
1577 "x": 9.25,
1578 "y": 3
1579 },
1580 {
1581 "label": ">",
1582 "x": 10.25,
1583 "y": 3
1584 },
1585 {
1586 "label": "?",
1587 "x": 11.25,
1588 "y": 3
1589 },
1590 {
1591 "label": "Shift",
1592 "x": 12.25,
1593 "y": 3,
1594 "w": 1.75
1595 },
1596 {
1597 "x": 14,
1598 "y": 3
1599 },
1600 {
1601 "label": "Ctrl",
1602 "x": 0,
1603 "y": 4,
1604 "w": 1.25
1605 },
1606 {
1607 "label": "Win",
1608 "x": 1.25,
1609 "y": 4,
1610 "w": 1.25
1611 },
1612 {
1613 "label": "Alt",
1614 "x": 2.5,
1615 "y": 4,
1616 "w": 1.25
1617 },
1618 {
1619 "x": 3.75,
1620 "y": 4,
1621 "w": 6.25
1622 },
1623 {
1624 "label": "Alt",
1625 "x": 10,
1626 "y": 4,
1627 "w": 1.25
1628 },
1629 {
1630 "label": "Win",
1631 "x": 11.25,
1632 "y": 4,
1633 "w": 1.25
1634 },
1635 {
1636 "label": "Menu",
1637 "x": 12.5,
1638 "y": 4,
1639 "w": 1.25
1640 },
1641 {
1642 "label": "Ctrl",
1643 "x": 13.75,
1644 "y": 4,
1645 "w": 1.25
1646 }
1647 ]
1648 }
1649 }
1650}
diff --git a/keyboards/hs60/v2/config.h b/keyboards/hs60/v2/iso/config.h
index 42d10bdb5..e252b1982 100644
--- a/keyboards/hs60/v2/config.h
+++ b/keyboards/hs60/v2/iso/config.h
@@ -82,6 +82,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
82 * 82 *
83 */ 83 */
84 84
85/* Bootmagic Lite key configuration */
86#define BOOTMAGIC_LITE_ROW 0
87#define BOOTMAGIC_LITE_COLUMN 0
88
85/* Backlight options */ 89/* Backlight options */
86 90
87#define RGB_BACKLIGHT_ENABLED 1 91#define RGB_BACKLIGHT_ENABLED 1
diff --git a/keyboards/hs60/v2/iso/info.json b/keyboards/hs60/v2/iso/info.json
new file mode 100644
index 000000000..1bd1201f8
--- /dev/null
+++ b/keyboards/hs60/v2/iso/info.json
@@ -0,0 +1,338 @@
1{
2 "keyboard_name": "HS60v2",
3 "maintainer": "yiancar",
4 "url": "",
5 "width": 15,
6 "height": 5,
7 "layouts": {
8 "LAYOUT_60_iso": {
9 "key_count": 62,
10 "layout": [
11 {
12 "label": "\\u00ac",
13 "x": 0,
14 "y": 0
15 },
16 {
17 "label": "!",
18 "x": 1,
19 "y": 0
20 },
21 {
22 "label": "\"",
23 "x": 2,
24 "y": 0
25 },
26 {
27 "label": "\\u00a3",
28 "x": 3,
29 "y": 0
30 },
31 {
32 "label": "$",
33 "x": 4,
34 "y": 0
35 },
36 {
37 "label": "%",
38 "x": 5,
39 "y": 0
40 },
41 {
42 "label": "^",
43 "x": 6,
44 "y": 0
45 },
46 {
47 "label": "&",
48 "x": 7,
49 "y": 0
50 },
51 {
52 "label": "*",
53 "x": 8,
54 "y": 0
55 },
56 {
57 "label": "(",
58 "x": 9,
59 "y": 0
60 },
61 {
62 "label": ")",
63 "x": 10,
64 "y": 0
65 },
66 {
67 "label": "_",
68 "x": 11,
69 "y": 0
70 },
71 {
72 "label": "+",
73 "x": 12,
74 "y": 0
75 },
76 {
77 "label": "Backspace",
78 "x": 13,
79 "y": 0,
80 "w": 2
81 },
82 {
83 "label": "Tab",
84 "x": 0,
85 "y": 1,
86 "w": 1.5
87 },
88 {
89 "label": "Q",
90 "x": 1.5,
91 "y": 1
92 },
93 {
94 "label": "W",
95 "x": 2.5,
96 "y": 1
97 },
98 {
99 "label": "E",
100 "x": 3.5,
101 "y": 1
102 },
103 {
104 "label": "R",
105 "x": 4.5,
106 "y": 1
107 },
108 {
109 "label": "T",
110 "x": 5.5,
111 "y": 1
112 },
113 {
114 "label": "Y",
115 "x": 6.5,
116 "y": 1
117 },
118 {
119 "label": "U",
120 "x": 7.5,
121 "y": 1
122 },
123 {
124 "label": "I",
125 "x": 8.5,
126 "y": 1
127 },
128 {
129 "label": "O",
130 "x": 9.5,
131 "y": 1
132 },
133 {
134 "label": "P",
135 "x": 10.5,
136 "y": 1
137 },
138 {
139 "label": "{",
140 "x": 11.5,
141 "y": 1
142 },
143 {
144 "label": "}",
145 "x": 12.5,
146 "y": 1
147 },
148 {
149 "label": "Enter",
150 "x": 13.75,
151 "y": 1,
152 "w": 1.25,
153 "h": 2
154 },
155 {
156 "label": "Caps Lock",
157 "x": 0,
158 "y": 2,
159 "w": 1.75
160 },
161 {
162 "label": "A",
163 "x": 1.75,
164 "y": 2
165 },
166 {
167 "label": "S",
168 "x": 2.75,
169 "y": 2
170 },
171 {
172 "label": "D",
173 "x": 3.75,
174 "y": 2
175 },
176 {
177 "label": "F",
178 "x": 4.75,
179 "y": 2
180 },
181 {
182 "label": "G",
183 "x": 5.75,
184 "y": 2
185 },
186 {
187 "label": "H",
188 "x": 6.75,
189 "y": 2
190 },
191 {
192 "label": "J",
193 "x": 7.75,
194 "y": 2
195 },
196 {
197 "label": "K",
198 "x": 8.75,
199 "y": 2
200 },
201 {
202 "label": "L",
203 "x": 9.75,
204 "y": 2
205 },
206 {
207 "label": ":",
208 "x": 10.75,
209 "y": 2
210 },
211 {
212 "label": "@",
213 "x": 11.75,
214 "y": 2
215 },
216 {
217 "label": "~",
218 "x": 12.75,
219 "y": 2
220 },
221 {
222 "label": "Shift",
223 "x": 0,
224 "y": 3,
225 "w": 1.25
226 },
227 {
228 "label": "|",
229 "x": 1.25,
230 "y": 3
231 },
232 {
233 "label": "Z",
234 "x": 2.25,
235 "y": 3
236 },
237 {
238 "label": "X",
239 "x": 3.25,
240 "y": 3
241 },
242 {
243 "label": "C",
244 "x": 4.25,
245 "y": 3
246 },
247 {
248 "label": "V",
249 "x": 5.25,
250 "y": 3
251 },
252 {
253 "label": "B",
254 "x": 6.25,
255 "y": 3
256 },
257 {
258 "label": "N",
259 "x": 7.25,
260 "y": 3
261 },
262 {
263 "label": "M",
264 "x": 8.25,
265 "y": 3
266 },
267 {
268 "label": "<",
269 "x": 9.25,
270 "y": 3
271 },
272 {
273 "label": ">",
274 "x": 10.25,
275 "y": 3
276 },
277 {
278 "label": "?",
279 "x": 11.25,
280 "y": 3
281 },
282 {
283 "label": "Shift",
284 "x": 12.25,
285 "y": 3,
286 "w": 2.75
287 },
288 {
289 "label": "Ctrl",
290 "x": 0,
291 "y": 4,
292 "w": 1.25
293 },
294 {
295 "label": "Win",
296 "x": 1.25,
297 "y": 4,
298 "w": 1.25
299 },
300 {
301 "label": "Alt",
302 "x": 2.5,
303 "y": 4,
304 "w": 1.25
305 },
306 {
307 "x": 3.75,
308 "y": 4,
309 "w": 6.25
310 },
311 {
312 "label": "AltGr",
313 "x": 10,
314 "y": 4,
315 "w": 1.25
316 },
317 {
318 "label": "Win",
319 "x": 11.25,
320 "y": 4,
321 "w": 1.25
322 },
323 {
324 "label": "Menu",
325 "x": 12.5,
326 "y": 4,
327 "w": 1.25
328 },
329 {
330 "label": "Ctrl",
331 "x": 13.75,
332 "y": 4,
333 "w": 1.25
334 }
335 ]
336 }
337 }
338}
diff --git a/keyboards/hs60/v2/iso/iso.h b/keyboards/hs60/v2/iso/iso.h
new file mode 100644
index 000000000..6a51b7556
--- /dev/null
+++ b/keyboards/hs60/v2/iso/iso.h
@@ -0,0 +1,38 @@
1/* Copyright 2018 Yiancar
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18#define XXX KC_NO
19
20#include "quantum.h"
21#include "../../wilba_tech/wt_rgb_backlight_keycodes.h"
22#include "via.h"
23
24// This a shortcut to help you visually see your layout.
25
26#define LAYOUT_60_iso( \
27 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
28 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, \
29 K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, \
30 K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \
31 K40, K41, K42, K46, K4A, K4B, K4C, K4D \
32) { \
33 { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
34 { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, XXX }, \
35 { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D }, \
36 { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, XXX, K3D }, \
37 { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, XXX, K4A, K4B, K4C, K4D } \
38}
diff --git a/keyboards/hs60/v2/keymaps/default/keymap.c b/keyboards/hs60/v2/iso/keymaps/default/keymap.c
index c1e575769..c1e575769 100644
--- a/keyboards/hs60/v2/keymaps/default/keymap.c
+++ b/keyboards/hs60/v2/iso/keymaps/default/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/default/readme.md b/keyboards/hs60/v2/iso/keymaps/default/readme.md
index 9aa0a3a2b..9aa0a3a2b 100644
--- a/keyboards/hs60/v2/keymaps/default/readme.md
+++ b/keyboards/hs60/v2/iso/keymaps/default/readme.md
diff --git a/keyboards/hs60/v2/keymaps/iso_andys8/keymap.c b/keyboards/hs60/v2/iso/keymaps/iso_andys8/keymap.c
index 12272ee79..12272ee79 100644
--- a/keyboards/hs60/v2/keymaps/iso_andys8/keymap.c
+++ b/keyboards/hs60/v2/iso/keymaps/iso_andys8/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/iso_andys8/readme.md b/keyboards/hs60/v2/iso/keymaps/iso_andys8/readme.md
index 1b843feb9..1b843feb9 100644
--- a/keyboards/hs60/v2/keymaps/iso_andys8/readme.md
+++ b/keyboards/hs60/v2/iso/keymaps/iso_andys8/readme.md
diff --git a/keyboards/hs60/v2/keymaps/iso_andys8/rules.mk b/keyboards/hs60/v2/iso/keymaps/iso_andys8/rules.mk
index 1e5b99807..1e5b99807 100644
--- a/keyboards/hs60/v2/keymaps/iso_andys8/rules.mk
+++ b/keyboards/hs60/v2/iso/keymaps/iso_andys8/rules.mk
diff --git a/keyboards/hs60/v2/keymaps/default_via/keymap.c b/keyboards/hs60/v2/iso/keymaps/via/keymap.c
index c1e575769..c1e575769 100644
--- a/keyboards/hs60/v2/keymaps/default_via/keymap.c
+++ b/keyboards/hs60/v2/iso/keymaps/via/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/default_via/readme.md b/keyboards/hs60/v2/iso/keymaps/via/readme.md
index 2a440f708..2a440f708 100644
--- a/keyboards/hs60/v2/keymaps/default_via/readme.md
+++ b/keyboards/hs60/v2/iso/keymaps/via/readme.md
diff --git a/keyboards/hs60/v2/keymaps/stanrc85/rules.mk b/keyboards/hs60/v2/iso/keymaps/via/rules.mk
index 1e5b99807..1e5b99807 100644
--- a/keyboards/hs60/v2/keymaps/stanrc85/rules.mk
+++ b/keyboards/hs60/v2/iso/keymaps/via/rules.mk
diff --git a/keyboards/hs60/v2/keymaps/win_osx_dual/keymap.c b/keyboards/hs60/v2/iso/keymaps/win_osx_dual/keymap.c
index 31d7ec1ed..31d7ec1ed 100644
--- a/keyboards/hs60/v2/keymaps/win_osx_dual/keymap.c
+++ b/keyboards/hs60/v2/iso/keymaps/win_osx_dual/keymap.c
diff --git a/keyboards/hs60/v2/keymaps/win_osx_dual/readme.md b/keyboards/hs60/v2/iso/keymaps/win_osx_dual/readme.md
index c2e58bf68..c2e58bf68 100644
--- a/keyboards/hs60/v2/keymaps/win_osx_dual/readme.md
+++ b/keyboards/hs60/v2/iso/keymaps/win_osx_dual/readme.md
diff --git a/keyboards/hs60/v2/keymaps/win_osx_dual/rules.mk b/keyboards/hs60/v2/iso/keymaps/win_osx_dual/rules.mk
index 1e5b99807..1e5b99807 100644
--- a/keyboards/hs60/v2/keymaps/win_osx_dual/rules.mk
+++ b/keyboards/hs60/v2/iso/keymaps/win_osx_dual/rules.mk
diff --git a/keyboards/hs60/v2/iso/rules.mk b/keyboards/hs60/v2/iso/rules.mk
new file mode 100644
index 000000000..582ed4e81
--- /dev/null
+++ b/keyboards/hs60/v2/iso/rules.mk
@@ -0,0 +1,33 @@
1# MCU name
2MCU = STM32F303
3
4# Do not put the microcontroller into power saving mode
5# when we get USB suspend event. We want it to keep updating
6# backlight effects.
7OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
8
9# Build Options
10# comment out to disable the options.
11#
12BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
13BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
14MOUSEKEY_ENABLE = yes # Mouse keys
15EXTRAKEY_ENABLE = yes # Audio control and System control
16CONSOLE_ENABLE = no # Console for debug
17COMMAND_ENABLE = no # Commands for debug and configuration
18SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
19NKRO_ENABLE = yes # USB Nkey Rollover
20AUDIO_ENABLE = no # Audio output on port C6
21NO_USB_STARTUP_CHECK = no # Disable initialization only when usb is plugged in
22#SERIAL_LINK_ENABLE = yes
23
24CIE1931_CURVE = yes
25
26LAYOUTS = 60_iso
27
28# project specific files
29SRC = keyboards/wilba_tech/wt_main.c \
30 keyboards/wilba_tech/wt_rgb_backlight.c \
31 drivers/issi/is31fl3733.c \
32 quantum/color.c \
33 drivers/arm/i2c_master.c
diff --git a/keyboards/hs60/v2/keymaps/hhkb/config.h b/keyboards/hs60/v2/keymaps/hhkb/config.h
deleted file mode 100644
index fc1b6d8f4..000000000
--- a/keyboards/hs60/v2/keymaps/hhkb/config.h
+++ /dev/null
@@ -1,34 +0,0 @@
1/*
2Copyright 2018 Yiancar
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#pragma once
18
19/* Include overwrites for specific keymap */
20
21#define HS60_HHKB
22#undef PRODUCT_ID
23#define PRODUCT_ID 0x4855
24
25#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_0
26#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_1
27#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_2
28#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_3
29#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_4
30#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_0 0b0000000000000001
31#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_1 0b0000000000000001
32#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_2 0b0011000000000001
33#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_3 0b0011000000000001
34#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 0b0011100000000111
diff --git a/keyboards/hs60/v2/keymaps/hhkb_via/config.h b/keyboards/hs60/v2/keymaps/hhkb_via/config.h
deleted file mode 100644
index fc1b6d8f4..000000000
--- a/keyboards/hs60/v2/keymaps/hhkb_via/config.h
+++ /dev/null
@@ -1,34 +0,0 @@
1/*
2Copyright 2018 Yiancar
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#pragma once
18
19/* Include overwrites for specific keymap */
20
21#define HS60_HHKB
22#undef PRODUCT_ID
23#define PRODUCT_ID 0x4855
24
25#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_0
26#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_1
27#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_2
28#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_3
29#undef RGB_BACKLIGHT_ALPHAS_MODS_ROW_4
30#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_0 0b0000000000000001
31#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_1 0b0000000000000001
32#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_2 0b0011000000000001
33#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_3 0b0011000000000001
34#define RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 0b0011100000000111
diff --git a/keyboards/hs60/v2/readme.md b/keyboards/hs60/v2/readme.md
index e838426a2..bd747b1f3 100644
--- a/keyboards/hs60/v2/readme.md
+++ b/keyboards/hs60/v2/readme.md
@@ -17,7 +17,7 @@ Due to the RGB implementation, the HS60 is currently not compatible with communi
17 17
18Make example for this keyboard (after setting up your build environment): 18Make example for this keyboard (after setting up your build environment):
19 19
20 make hs60/v2:default 20 make hs60/v2/<layout>:default
21 21
22See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. 22See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
23 23
@@ -34,4 +34,4 @@ See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools)
34- Unplug 34- Unplug
35- Hold Escape 35- Hold Escape
36- Plug In 36- Plug In
37- Flash using QMK Toolbox or dfu-util (`make hs60/v2:<keymap>:dfu-util`) 37- Flash using QMK Toolbox or dfu-util (`make hs60/v2/<layout>:<keymap>:dfu-util`)
diff --git a/keyboards/hs60/v2/v2.c b/keyboards/hs60/v2/v2.c
index 2e12538e9..f817ef19e 100644
--- a/keyboards/hs60/v2/v2.c
+++ b/keyboards/hs60/v2/v2.c
@@ -13,6 +13,7 @@
13 * You should have received a copy of the GNU General Public License 13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>. 14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */ 15 */
16
16#ifndef RGB_BACKLIGHT_HS60 17#ifndef RGB_BACKLIGHT_HS60
17#error RGB_BACKLIGHT_M60_A not defined, recheck config.h 18#error RGB_BACKLIGHT_HS60 not defined, recheck config.h
18#endif 19#endif