[Keyboard] Split GMMK Pro PCBs into separate revisions (#13570)
Co-authored-by: Drashna Jaelre <[email protected]>
This commit is contained in:
1 parent
5753226588
commit
b994921703
32 files changed
+904
-402
No files matched your search
@@ -0,0 +1,241 @@
|
||||
/* Copyright 2021 Gigahawk
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "ansi.h"
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
// clang-format off
|
||||
led_config_t g_led_config = {{
|
||||
{ 4, NO_LED, NO_LED, 95, 65, 79, 5, 28 },
|
||||
{ 8, 2, 9, 0, 10, 75, 1, 7 },
|
||||
{ 14, 3, 15, NO_LED, 16, 86, 6, 13 },
|
||||
{ 20, 18, 21, 23, 22, 94, 12, 19 },
|
||||
{ 25, 30, 26, 31, 27, 32, 29, 24 },
|
||||
{ 41, 36, 42, 37, 43, 38, 35, 40 },
|
||||
{ 46, 89, 47, 34, 48, 72, 78, 45 },
|
||||
{ 52, 39, 53, 97, 54, 82, 44, 51 },
|
||||
{ 58, 63, 59, 64, NO_LED, 60, 62, 57 },
|
||||
{ 11, 90, 55, 17, 33, 49, NO_LED, 69 },
|
||||
{ NO_LED, 85, 93, 61, 96, 66, 50, 56 }
|
||||
}, {
|
||||
{0, 0}, // 0, ESC, k13
|
||||
{0, 15}, // 1, ~, k16
|
||||
{4, 26}, // 2, Tab, k11
|
||||
{5, 38}, // 3, Caps, k21
|
||||
{9, 49}, // 4, Sh_L, k00
|
||||
{2, 61}, // 5, Ct_L, k06
|
||||
{18, 0}, // 6, F1, k26
|
||||
{14, 15}, // 7, 1, k17
|
||||
{22, 26}, // 8, Q, k10
|
||||
{25, 38}, // 9, A, k12
|
||||
{33, 49}, // 10, Z, k14
|
||||
{20, 61}, // 11, Win_L, k90
|
||||
{33, 0}, // 12, F2, k36
|
||||
{29, 15}, // 13, 2, k27
|
||||
{36, 26}, // 14, W, k20
|
||||
{40, 38}, // 15, S, k22
|
||||
{47, 49}, // 16, X, k24
|
||||
{38, 61}, // 17, Alt_L, k93
|
||||
{47, 0}, // 18, F3, k31
|
||||
{43, 15}, // 19, 3, k37
|
||||
{51, 26}, // 20, E, k30
|
||||
{54, 38}, // 21, D, k32
|
||||
{61, 49}, // 22, C, k34
|
||||
{61, 0}, // 23, F4, k33
|
||||
{58, 15}, // 24, 4, k47
|
||||
{65, 26}, // 25, R, k40
|
||||
{69, 38}, // 26, F, k42
|
||||
{76, 49}, // 27, V, k44
|
||||
{79, 0}, // 28, F5, k07
|
||||
{72, 15}, // 29, 5, k46
|
||||
{79, 26}, // 30, T, k41
|
||||
{83, 38}, // 31, G, k43
|
||||
{90, 49}, // 32, B, k45
|
||||
{92, 61}, // 33, SPACE, k94
|
||||
{94, 0}, // 34, F6, k63
|
||||
{87, 15}, // 35, 6, k56
|
||||
{94, 26}, // 36, Y, k51
|
||||
{98, 38}, // 37, H, k53
|
||||
{105, 49}, // 38, N, k55
|
||||
{108, 0}, // 39, F7, k71
|
||||
{101, 15}, // 40, 7, k57
|
||||
{108, 26}, // 41, U, k50
|
||||
{112, 38}, // 42, J, k52
|
||||
{119, 49}, // 43, M, k54
|
||||
{123, 0}, // 44, F8, k76
|
||||
{116, 15}, // 45, 8, k67
|
||||
{123, 26}, // 46, I, k60
|
||||
{126, 38}, // 47, K, k62
|
||||
{134, 49}, // 48, ,, k64
|
||||
{145, 61}, // 49, Alt_R, k95
|
||||
{141, 0}, // 50, F9, ka6
|
||||
{130, 15}, // 51, 9, k77
|
||||
{137, 26}, // 52, O, k70
|
||||
{141, 38}, // 53, L, k72
|
||||
{148, 49}, // 54, ., k74
|
||||
{159, 61}, // 55, FN, k92
|
||||
{155, 0}, // 56, F10, ka7
|
||||
{145, 15}, // 57, 0, k87
|
||||
{152, 26}, // 58, P, k80
|
||||
{155, 38}, // 59, ;, k82
|
||||
{163, 49}, // 60, ?, k85
|
||||
{170, 0}, // 61, F11, ka3
|
||||
{159, 15}, // 62, -, k86
|
||||
{166, 26}, // 63, [, k81
|
||||
{170, 38}, // 64, ", k83
|
||||
{173, 61}, // 65, Ct_R, k04
|
||||
{184, 0}, // 66, F12, ka5
|
||||
{0, 8}, // 67, LED, l01
|
||||
{224, 8}, // 68, LED, l11
|
||||
{202, 0}, // 69, Prt, k97
|
||||
{0, 15}, // 70, LED, l02
|
||||
{224, 15}, // 71, LED, l12
|
||||
{224, 15}, // 72, Del, k65
|
||||
{0, 21}, // 73, LED, l03
|
||||
{224, 21}, // 74, LED, l13
|
||||
{224, 26}, // 75, PgUp, k15
|
||||
{0, 28}, // 76, LED, l04
|
||||
{224, 28}, // 77, LED, l14
|
||||
{173, 15}, // 78, =, k66
|
||||
{220, 64}, // 79, Right, k05
|
||||
{0, 35}, // 80, LED, l05
|
||||
{224, 35}, // 81, LED, l15
|
||||
{224, 49}, // 82, End, k75
|
||||
{0, 42}, // 83, LED, l06
|
||||
{224, 42}, // 84, LED, l16
|
||||
{195, 15}, // 85, BSpc, ka1
|
||||
{224, 38}, // 86, PgDn, k25
|
||||
{0, 48}, // 87, LED, l07
|
||||
{224, 48}, // 88, LED, l17
|
||||
{181, 26}, // 89, ], k61
|
||||
{182, 49}, // 90, Sh_R, k91
|
||||
{0, 55}, // 91, LED, l08
|
||||
{224, 55}, // 92, LED, l18
|
||||
{199, 26}, // 93, \, ka2
|
||||
{206, 52}, // 94, Up, k35
|
||||
{191, 64}, // 95, Left, k03
|
||||
{193, 38}, // 96, Enter, ka4
|
||||
{206, 64} // 97, Down, k73
|
||||
}, {
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 4, 2, 2, 4, 2, 2,
|
||||
4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4
|
||||
}};
|
||||
|
||||
const aw_led g_aw_leds[DRIVER_LED_TOTAL] = {
|
||||
{0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13
|
||||
{0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16
|
||||
{0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11
|
||||
{0, CS10_SW1, CS11_SW1, CS12_SW1}, // 3, Caps, k21
|
||||
{0, CS13_SW1, CS14_SW1, CS15_SW1}, // 4, Sh_L, k00
|
||||
{0, CS16_SW1, CS17_SW1, CS18_SW1}, // 5, Ct_L, k06
|
||||
{0, CS1_SW2, CS2_SW2, CS3_SW2}, // 6, F1, k26
|
||||
{0, CS4_SW2, CS5_SW2, CS6_SW2}, // 7, 1, k17
|
||||
{0, CS7_SW2, CS8_SW2, CS9_SW2}, // 8, Q, k10
|
||||
{0, CS10_SW2, CS11_SW2, CS12_SW2}, // 9, A, k12
|
||||
{0, CS13_SW2, CS14_SW2, CS15_SW2}, // 10, Z, k14
|
||||
{0, CS16_SW2, CS17_SW2, CS18_SW2}, // 11, Win_L, k90
|
||||
{0, CS1_SW3, CS2_SW3, CS3_SW3}, // 12, F2, k36
|
||||
{0, CS4_SW3, CS5_SW3, CS6_SW3}, // 13, 2, k27
|
||||
{0, CS7_SW3, CS8_SW3, CS9_SW3}, // 14, W, k20
|
||||
{0, CS10_SW3, CS11_SW3, CS12_SW3}, // 15, S, k22
|
||||
{0, CS13_SW3, CS14_SW3, CS15_SW3}, // 16, X, k24
|
||||
{0, CS16_SW3, CS17_SW3, CS18_SW3}, // 17, Alt_L, k93
|
||||
{0, CS1_SW4, CS2_SW4, CS3_SW4}, // 18, F3, k31
|
||||
{0, CS4_SW4, CS5_SW4, CS6_SW4}, // 19, 3, k37
|
||||
{0, CS7_SW4, CS8_SW4, CS9_SW4}, // 20, E, k30
|
||||
{0, CS10_SW4, CS11_SW4, CS12_SW4}, // 21, D, k32
|
||||
{0, CS13_SW4, CS14_SW4, CS15_SW4}, // 22, C, k34
|
||||
{0, CS1_SW5, CS2_SW5, CS3_SW5}, // 23, F4, k33
|
||||
{0, CS4_SW5, CS5_SW5, CS6_SW5}, // 24, 4, k47
|
||||
{0, CS7_SW5, CS8_SW5, CS9_SW5}, // 25, R, k40
|
||||
{0, CS10_SW5, CS11_SW5, CS12_SW5}, // 26, F, k42
|
||||
{0, CS13_SW5, CS14_SW5, CS15_SW5}, // 27, V, k44
|
||||
{0, CS1_SW6, CS2_SW6, CS3_SW6}, // 28, F5, k07
|
||||
{0, CS4_SW6, CS5_SW6, CS6_SW6}, // 29, 5, k46
|
||||
{0, CS7_SW6, CS8_SW6, CS9_SW6}, // 30, T, k41
|
||||
{0, CS10_SW6, CS11_SW6, CS12_SW6}, // 31, G, k43
|
||||
{0, CS13_SW6, CS14_SW6, CS15_SW6}, // 32, B, k45
|
||||
{0, CS16_SW6, CS17_SW6, CS18_SW6}, // 33, SPACE, k94
|
||||
{0, CS1_SW7, CS2_SW7, CS3_SW7}, // 34, F6, k63
|
||||
{0, CS4_SW7, CS5_SW7, CS6_SW7}, // 35, 6, k56
|
||||
{0, CS7_SW7, CS8_SW7, CS9_SW7}, // 36, Y, k51
|
||||
{0, CS10_SW7, CS11_SW7, CS12_SW7}, // 37, H, k53
|
||||
{0, CS13_SW7, CS14_SW7, CS15_SW7}, // 38, N, k55
|
||||
{0, CS1_SW8, CS2_SW8, CS3_SW8}, // 39, F7, k71
|
||||
{0, CS4_SW8, CS5_SW8, CS6_SW8}, // 40, 7, k57
|
||||
{0, CS7_SW8, CS8_SW8, CS9_SW8}, // 41, U, k50
|
||||
{0, CS10_SW8, CS11_SW8, CS12_SW8}, // 42, J, k52
|
||||
{0, CS13_SW8, CS14_SW8, CS15_SW8}, // 43, M, k54
|
||||
{0, CS1_SW9, CS2_SW9, CS3_SW9}, // 44, F8, k76
|
||||
{0, CS4_SW9, CS5_SW9, CS6_SW9}, // 45, 8, k67
|
||||
{0, CS7_SW9, CS8_SW9, CS9_SW9}, // 46, I, k60
|
||||
{0, CS10_SW9, CS11_SW9, CS12_SW9}, // 47, K, k62
|
||||
{0, CS13_SW9, CS14_SW9, CS15_SW9}, // 48, ,, k64
|
||||
{0, CS16_SW9, CS17_SW9, CS18_SW9}, // 49, Alt_R, k95
|
||||
{0, CS1_SW10, CS2_SW10, CS3_SW10}, // 50, F9, ka6
|
||||
{0, CS4_SW10, CS5_SW10, CS6_SW10}, // 51, 9, k77
|
||||
{0, CS7_SW10, CS8_SW10, CS9_SW10}, // 52, O, k70
|
||||
{0, CS10_SW10, CS11_SW10, CS12_SW10}, // 53, L, k72
|
||||
{0, CS13_SW10, CS14_SW10, CS15_SW10}, // 54, ., k74
|
||||
{0, CS16_SW10, CS17_SW10, CS18_SW10}, // 55, FN, k92
|
||||
{0, CS1_SW11, CS2_SW11, CS3_SW11}, // 56, F10, ka7
|
||||
{0, CS4_SW11, CS5_SW11, CS6_SW11}, // 57, 0, k87
|
||||
{0, CS7_SW11, CS8_SW11, CS9_SW11}, // 58, P, k80
|
||||
{0, CS10_SW11, CS11_SW11, CS12_SW11}, // 59, ;, k82
|
||||
{0, CS13_SW11, CS14_SW11, CS15_SW11}, // 60, ?, k85
|
||||
{0, CS1_SW12, CS2_SW12, CS3_SW12}, // 61, F11, ka3
|
||||
{0, CS4_SW12, CS5_SW12, CS6_SW12}, // 62, -, k86
|
||||
{0, CS7_SW12, CS8_SW12, CS9_SW12}, // 63, [, k81
|
||||
{0, CS10_SW12, CS11_SW12, CS12_SW12}, // 64, ", k83
|
||||
{0, CS16_SW12, CS17_SW12, CS18_SW12}, // 65, Ct_R, k04
|
||||
|
||||
{1, CS1_SW1, CS2_SW1, CS3_SW1}, // 66, F12, ka5
|
||||
{1, CS13_SW1, CS14_SW1, CS15_SW1}, // 67, LED, l01
|
||||
{1, CS16_SW1, CS17_SW1, CS18_SW1}, // 68, LED, l11
|
||||
{1, CS4_SW2, CS5_SW2, CS6_SW2}, // 69, Prt, k97
|
||||
{1, CS13_SW2, CS14_SW2, CS15_SW2}, // 70, LED, l02
|
||||
{1, CS16_SW2, CS17_SW2, CS18_SW2}, // 71, LED, l12
|
||||
{1, CS4_SW3, CS5_SW3, CS6_SW3}, // 72, Del, k65
|
||||
{1, CS13_SW3, CS14_SW3, CS15_SW3}, // 73, LED, l03
|
||||
{1, CS16_SW3, CS17_SW3, CS18_SW3}, // 74, LED, l13
|
||||
{1, CS4_SW4, CS5_SW4, CS6_SW4}, // 75, PgUp, k15
|
||||
{1, CS13_SW4, CS14_SW4, CS15_SW4}, // 76, LED, l04
|
||||
{1, CS16_SW4, CS17_SW4, CS18_SW4}, // 77, LED, l14
|
||||
{1, CS1_SW5, CS2_SW5, CS3_SW5}, // 78, =, k66
|
||||
{1, CS10_SW5, CS11_SW5, CS12_SW5}, // 79, Right, k05
|
||||
{1, CS13_SW5, CS14_SW5, CS15_SW5}, // 80, LED, l05
|
||||
{1, CS16_SW5, CS17_SW5, CS18_SW5}, // 81, LED, l15
|
||||
{1, CS4_SW6, CS5_SW6, CS6_SW6}, // 82, End, k75
|
||||
{1, CS13_SW6, CS14_SW6, CS15_SW6}, // 83, LED, l06
|
||||
{1, CS16_SW6, CS17_SW6, CS18_SW6}, // 84, LED, l16
|
||||
{1, CS1_SW7, CS2_SW7, CS3_SW7}, // 85, BSpc, ka1
|
||||
{1, CS4_SW7, CS5_SW7, CS6_SW7}, // 86, PgDn, k25
|
||||
{1, CS13_SW7, CS14_SW7, CS15_SW7}, // 87, LED, l07
|
||||
{1, CS16_SW7, CS17_SW7, CS18_SW7}, // 88, LED, l17
|
||||
{1, CS1_SW8, CS2_SW8, CS3_SW8}, // 89, ], k61
|
||||
{1, CS4_SW8, CS5_SW8, CS6_SW8}, // 90, Sh_R, k91
|
||||
{1, CS13_SW8, CS14_SW8, CS15_SW8}, // 91, LED, l08
|
||||
{1, CS16_SW8, CS17_SW8, CS18_SW8}, // 92, LED, l18
|
||||
{1, CS1_SW9, CS2_SW9, CS3_SW9}, // 93, \, ka2
|
||||
{1, CS4_SW9, CS5_SW9, CS6_SW9}, // 94, Up, k35
|
||||
{1, CS4_SW10, CS5_SW10, CS6_SW10}, // 95, Left, k03
|
||||
{1, CS1_SW11, CS2_SW11, CS3_SW11}, // 96, Enter, ka4
|
||||
{1, CS4_SW11, CS5_SW11, CS6_SW11}, // 97, Down, k73
|
||||
};
|
||||
// clang-format on
|
||||
#endif
|
||||
@@ -0,0 +1,52 @@
|
||||
/* Copyright 2021 Gigahawk
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "pro.h"
|
||||
|
||||
#define ___ KC_NO
|
||||
|
||||
// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute)
|
||||
// ` 1 2 3 4 5 6 7 8 9 0 - = BSpc Del
|
||||
// Tab Q W E R T Y U I O P [ ] \ PgUp
|
||||
// Caps A S D F G H J K L ; ' Enter PgDn
|
||||
// Sh_L Z X C V B N M , . / Sh_R Up End
|
||||
// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
|
||||
|
||||
// clang-format off
|
||||
#define LAYOUT( \
|
||||
k13, k26, k36, k31, k33, k07, k63, k71, k76, ka6, ka7, ka3, ka5, k97, k01, \
|
||||
k16, k17, k27, k37, k47, k46, k56, k57, k67, k77, k87, k86, k66, ka1, k65, \
|
||||
k11, k10, k20, k30, k40, k41, k51, k50, k60, k70, k80, k81, k61, ka2, k15, \
|
||||
k21, k12, k22, k32, k42, k43, k53, k52, k62, k72, k82, k83, ka4, k25, \
|
||||
k00, k14, k24, k34, k44, k45, k55, k54, k64, k74, k85, k91, k35, k75, \
|
||||
k06, k90, k93, k94, k95, k92, k04, k03, k73, k05 \
|
||||
) \
|
||||
{ \
|
||||
{ k00, k01, ___, k03, k04, k05, k06, k07}, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17}, \
|
||||
{ k20, k21, k22, ___, k24, k25, k26, k27}, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37}, \
|
||||
{ k40, k41, k42, k43, k44, k45, k46, k47}, \
|
||||
{ k50, k51, k52, k53, k54, k55, k56, k57}, \
|
||||
{ k60, k61, k62, k63, k64, k65, k66, k67}, \
|
||||
{ k70, k71, k72, k73, k74, k75, k76, k77}, \
|
||||
{ k80, k81, k82, k83, ___, k85, k86, k87}, \
|
||||
{ k90, k91, k92, k93, k94, k95, ___, k97}, \
|
||||
{ ___, ka1, ka2, ka3, ka4, ka5, ka6, ka7} \
|
||||
}
|
||||
// clang-format on
|
||||
@@ -0,0 +1,23 @@
|
||||
/* Copyright 2021 Gigahawk
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
#define DRIVER_1_LED_TOTAL 66
|
||||
#define DRIVER_2_LED_TOTAL 32
|
||||
#define DRIVER_LED_TOTAL (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
|
||||
@@ -0,0 +1,111 @@
|
||||
{
|
||||
"keyboard_name": "GMMK Pro (ANSI)",
|
||||
"url": "https://www.pcgamingrace.com/products/glorious-gmmk-pro-75-barebone-black-reservation",
|
||||
"maintainer": "GloriousThrall",
|
||||
"width": 16.5,
|
||||
"height": 6.5,
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"x":0, "y":0},
|
||||
|
||||
{"x":1.25, "y":0},
|
||||
{"x":2.25, "y":0},
|
||||
{"x":3.25, "y":0},
|
||||
{"x":4.25, "y":0},
|
||||
|
||||
{"x":5.5, "y":0},
|
||||
{"x":6.5, "y":0},
|
||||
{"x":7.5, "y":0},
|
||||
{"x":8.5, "y":0},
|
||||
|
||||
{"x":9.75, "y":0},
|
||||
{"x":10.75, "y":0},
|
||||
{"x":11.75, "y":0},
|
||||
{"x":12.75, "y":0},
|
||||
|
||||
{"x":14, "y":0},
|
||||
{"x":15.5, "y":0},
|
||||
|
||||
{"x":0, "y":1.25},
|
||||
{"x":1, "y":1.25},
|
||||
{"x":2, "y":1.25},
|
||||
{"x":3, "y":1.25},
|
||||
{"x":4, "y":1.25},
|
||||
{"x":5, "y":1.25},
|
||||
{"x":6, "y":1.25},
|
||||
{"x":7, "y":1.25},
|
||||
{"x":8, "y":1.25},
|
||||
{"x":9, "y":1.25},
|
||||
{"x":10, "y":1.25},
|
||||
{"x":11, "y":1.25},
|
||||
{"x":12, "y":1.25},
|
||||
{"x":13, "y":1.25, "w":2},
|
||||
|
||||
{"x":15.5, "y":1.25},
|
||||
|
||||
{"x":0, "y":2.25, "w":1.5},
|
||||
{"x":1.5, "y":2.25},
|
||||
{"x":2.5, "y":2.25},
|
||||
{"x":3.5, "y":2.25},
|
||||
{"x":4.5, "y":2.25},
|
||||
{"x":5.5, "y":2.25},
|
||||
{"x":6.5, "y":2.25},
|
||||
{"x":7.5, "y":2.25},
|
||||
{"x":8.5, "y":2.25},
|
||||
{"x":9.5, "y":2.25},
|
||||
{"x":10.5, "y":2.25},
|
||||
{"x":11.5, "y":2.25},
|
||||
{"x":12.5, "y":2.25},
|
||||
{"x":13.5, "y":2.25, "w":1.5},
|
||||
|
||||
{"x":15.5, "y":2.25},
|
||||
|
||||
{"x":0, "y":3.25, "w":1.75},
|
||||
{"x":1.75, "y":3.25},
|
||||
{"x":2.75, "y":3.25},
|
||||
{"x":3.75, "y":3.25},
|
||||
{"x":4.75, "y":3.25},
|
||||
{"x":5.75, "y":3.25},
|
||||
{"x":6.75, "y":3.25},
|
||||
{"x":7.75, "y":3.25},
|
||||
{"x":8.75, "y":3.25},
|
||||
{"x":9.75, "y":3.25},
|
||||
{"x":10.75, "y":3.25},
|
||||
{"x":11.75, "y":3.25},
|
||||
{"x":12.75, "y":3.25, "w":2.25},
|
||||
|
||||
{"x":15.5, "y":3.25},
|
||||
|
||||
{"x":0, "y":4.25, "w":2.25},
|
||||
{"x":2.25, "y":4.25},
|
||||
{"x":3.25, "y":4.25},
|
||||
{"x":4.25, "y":4.25},
|
||||
{"x":5.25, "y":4.25},
|
||||
{"x":6.25, "y":4.25},
|
||||
{"x":7.25, "y":4.25},
|
||||
{"x":8.25, "y":4.25},
|
||||
{"x":9.25, "y":4.25},
|
||||
{"x":10.25, "y":4.25},
|
||||
{"x":11.25, "y":4.25},
|
||||
{"x":12.25, "y":4.25, "w":1.75},
|
||||
|
||||
{"x":14.25, "y":4.5},
|
||||
|
||||
{"x":15.5, "y":4.25},
|
||||
|
||||
{"x":0, "y":5.25, "w":1.25},
|
||||
{"x":1.25, "y":5.25, "w":1.25},
|
||||
{"x":2.5, "y":5.25, "w":1.25},
|
||||
{"x":3.75, "y":5.25, "w":6.25},
|
||||
{"x":10, "y":5.25},
|
||||
{"x":11, "y":5.25},
|
||||
{"x":12, "y":5.25},
|
||||
|
||||
{"x":13.25, "y":5.5},
|
||||
{"x":14.25, "y":5.5},
|
||||
{"x":15.25, "y":5.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -1,6 +1,6 @@
|
||||
# GMMK PRO
|
||||
# GMMK PRO (ANSI)
|
||||
|
||||
A tenkeyless 75% keyboard made and sold by Glorious LLC. Equipped with the STM32 ARM Cortex-M4 microcontroller, with support for rotary encoders and three additional layouts. [More info at Glorious](https://www.pcgamingrace.com/products/glorious-gmmk-pro-75-barebone-black-reservation)
|
||||
A tenkeyless 75% keyboard made and sold by Glorious LLC. Equipped with the STM32 ARM Cortex-M4 microcontroller, with support for rotary encoders and three additional layouts. [More info at Glorious](https://www.pcgamingrace.com/products/glorious-gmmk-pro-75-barebone-black-reservation)
|
||||
|
||||
* Keyboard Maintainer: [GloriousThrall](https://github.com/GloriousThrall)
|
||||
* Hardware Supported: GMMK Pro
|
||||
@@ -8,11 +8,11 @@ A tenkeyless 75% keyboard made and sold by Glorious LLC. Equipped with the STM3
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make gmmk/pro:default
|
||||
make gmmk/pro/ansi:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make gmmk/pro:default:flash
|
||||
make gmmk/pro/ansi:default:flash
|
||||
|
||||
To reset the board into bootloader mode, do one of the following:
|
||||
|
||||
File renamed without changes.
+13
-12
@@ -19,18 +19,20 @@
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define DEVICE_VER 0x0001
|
||||
#define VENDOR_ID 0x320F
|
||||
#define PRODUCT_ID 0x5044
|
||||
#define MANUFACTURER Glorious
|
||||
#define PRODUCT GMMK Pro
|
||||
#define DEVICE_VER 0x0001
|
||||
#define VENDOR_ID 0x320F
|
||||
#define PRODUCT_ID 0x5044
|
||||
#define MANUFACTURER Glorious
|
||||
#define PRODUCT GMMK Pro
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 11
|
||||
#define MATRIX_COLS 8
|
||||
|
||||
#define MATRIX_ROW_PINS { B0, B1, B2, B3, B4, B5, B6, B7, B8, B9, B10 }
|
||||
#define MATRIX_COL_PINS { A0, A1, A2, A3, A4, A8, A9, A10 }
|
||||
#define MATRIX_ROW_PINS \
|
||||
{ B0, B1, B2, B3, B4, B5, B6, B7, B8, B9, B10 }
|
||||
#define MATRIX_COL_PINS \
|
||||
{ A0, A1, A2, A3, A4, A8, A9, A10 }
|
||||
|
||||
/* COL2ROW or ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
@@ -39,8 +41,10 @@
|
||||
#define BOOTMAGIC_LITE_COLUMN 3
|
||||
|
||||
#define TAP_CODE_DELAY 10
|
||||
#define ENCODERS_PAD_A { C15 }
|
||||
#define ENCODERS_PAD_B { C14 }
|
||||
#define ENCODERS_PAD_A \
|
||||
{ C15 }
|
||||
#define ENCODERS_PAD_B \
|
||||
{ C14 }
|
||||
|
||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
||||
#define LOCKING_SUPPORT_ENABLE
|
||||
@@ -59,9 +63,6 @@
|
||||
#define DRIVER_2_EN C13
|
||||
|
||||
#define DRIVER_COUNT 2
|
||||
#define DRIVER_1_LED_TOTAL 66
|
||||
#define DRIVER_2_LED_TOTAL 32
|
||||
#define DRIVER_LED_TOTAL (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
|
||||
|
||||
/* 1000Hz USB polling - it's the default on stock firmware */
|
||||
#define USB_POLLING_INTERVAL_MS 1
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
/* Copyright 2021 Jasper Chan
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
#define DRIVER_1_LED_TOTAL 66
|
||||
#define DRIVER_2_LED_TOTAL 33
|
||||
#define DRIVER_LED_TOTAL (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
|
||||
@@ -1,113 +1,11 @@
|
||||
{
|
||||
"keyboard_name": "GMMK Pro",
|
||||
"keyboard_name": "GMMK Pro (ISO)",
|
||||
"url": "https://www.pcgamingrace.com/products/glorious-gmmk-pro-75-barebone-black-reservation",
|
||||
"maintainer": "GloriousThrall",
|
||||
"width": 16.5,
|
||||
"height": 6.5,
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"x":0, "y":0},
|
||||
|
||||
{"x":1.25, "y":0},
|
||||
{"x":2.25, "y":0},
|
||||
{"x":3.25, "y":0},
|
||||
{"x":4.25, "y":0},
|
||||
|
||||
{"x":5.5, "y":0},
|
||||
{"x":6.5, "y":0},
|
||||
{"x":7.5, "y":0},
|
||||
{"x":8.5, "y":0},
|
||||
|
||||
{"x":9.75, "y":0},
|
||||
{"x":10.75, "y":0},
|
||||
{"x":11.75, "y":0},
|
||||
{"x":12.75, "y":0},
|
||||
|
||||
{"x":14, "y":0},
|
||||
{"x":15.5, "y":0},
|
||||
|
||||
{"x":0, "y":1.25},
|
||||
{"x":1, "y":1.25},
|
||||
{"x":2, "y":1.25},
|
||||
{"x":3, "y":1.25},
|
||||
{"x":4, "y":1.25},
|
||||
{"x":5, "y":1.25},
|
||||
{"x":6, "y":1.25},
|
||||
{"x":7, "y":1.25},
|
||||
{"x":8, "y":1.25},
|
||||
{"x":9, "y":1.25},
|
||||
{"x":10, "y":1.25},
|
||||
{"x":11, "y":1.25},
|
||||
{"x":12, "y":1.25},
|
||||
{"x":13, "y":1.25, "w":2},
|
||||
|
||||
{"x":15.5, "y":1.25},
|
||||
|
||||
{"x":0, "y":2.25, "w":1.5},
|
||||
{"x":1.5, "y":2.25},
|
||||
{"x":2.5, "y":2.25},
|
||||
{"x":3.5, "y":2.25},
|
||||
{"x":4.5, "y":2.25},
|
||||
{"x":5.5, "y":2.25},
|
||||
{"x":6.5, "y":2.25},
|
||||
{"x":7.5, "y":2.25},
|
||||
{"x":8.5, "y":2.25},
|
||||
{"x":9.5, "y":2.25},
|
||||
{"x":10.5, "y":2.25},
|
||||
{"x":11.5, "y":2.25},
|
||||
{"x":12.5, "y":2.25},
|
||||
{"x":13.5, "y":2.25, "w":1.5},
|
||||
|
||||
{"x":15.5, "y":2.25},
|
||||
|
||||
{"x":0, "y":3.25, "w":1.75},
|
||||
{"x":1.75, "y":3.25},
|
||||
{"x":2.75, "y":3.25},
|
||||
{"x":3.75, "y":3.25},
|
||||
{"x":4.75, "y":3.25},
|
||||
{"x":5.75, "y":3.25},
|
||||
{"x":6.75, "y":3.25},
|
||||
{"x":7.75, "y":3.25},
|
||||
{"x":8.75, "y":3.25},
|
||||
{"x":9.75, "y":3.25},
|
||||
{"x":10.75, "y":3.25},
|
||||
{"x":11.75, "y":3.25},
|
||||
{"x":12.75, "y":3.25, "w":2.25},
|
||||
|
||||
{"x":15.5, "y":3.25},
|
||||
|
||||
{"x":0, "y":4.25, "w":2.25},
|
||||
{"x":2.25, "y":4.25},
|
||||
{"x":3.25, "y":4.25},
|
||||
{"x":4.25, "y":4.25},
|
||||
{"x":5.25, "y":4.25},
|
||||
{"x":6.25, "y":4.25},
|
||||
{"x":7.25, "y":4.25},
|
||||
{"x":8.25, "y":4.25},
|
||||
{"x":9.25, "y":4.25},
|
||||
{"x":10.25, "y":4.25},
|
||||
{"x":11.25, "y":4.25},
|
||||
{"x":12.25, "y":4.25, "w":1.75},
|
||||
|
||||
{"x":14.25, "y":4.5},
|
||||
|
||||
{"x":15.5, "y":4.25},
|
||||
|
||||
{"x":0, "y":5.25, "w":1.25},
|
||||
{"x":1.25, "y":5.25, "w":1.25},
|
||||
{"x":2.5, "y":5.25, "w":1.25},
|
||||
{"x":3.75, "y":5.25, "w":6.25},
|
||||
{"x":10, "y":5.25},
|
||||
{"x":11, "y":5.25},
|
||||
{"x":12, "y":5.25},
|
||||
|
||||
{"x":13.25, "y":5.5},
|
||||
{"x":14.25, "y":5.5},
|
||||
{"x":15.25, "y":5.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso": {
|
||||
"layout": [
|
||||
{"label":"Esc", "x":0, "y":0},
|
||||
|
||||
@@ -0,0 +1,243 @@
|
||||
/* Copyright 2021 Gigahawk
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "iso.h"
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
// clang-format off
|
||||
led_config_t g_led_config = {{
|
||||
{ 4, NO_LED, NO_LED, 96, 65, 80, 5, 28 },
|
||||
{ 8, 2, 9, 0, 10, 76, 1, 7 },
|
||||
{ 14, 3, 15, 67, 16, 87, 6, 13 },
|
||||
{ 20, 18, 21, 23, 22, 94, 12, 19 },
|
||||
{ 25, 30, 26, 31, 27, 32, 29, 24 },
|
||||
{ 41, 36, 42, 37, 43, 38, 35, 40 },
|
||||
{ 46, 90, 47, 34, 48, 73, 79, 45 },
|
||||
{ 52, 39, 53, 98, 54, 83, 44, 51 },
|
||||
{ 58, 63, 59, 64, 95, 60, 62, 57 },
|
||||
{ 11, 91, 55, 17, 33, 49, NO_LED, 70 },
|
||||
{ NO_LED, 86, NO_LED, 61, 97, 66, 50, 56 }
|
||||
}, {
|
||||
{0, 0}, // 0, ESC, k13
|
||||
{0, 15}, // 1, `, k16
|
||||
{4, 26}, // 2, Tab, k11
|
||||
{5, 38}, // 3, Caps, k21
|
||||
{2, 49}, // 4, Sh_L, k00
|
||||
{2, 61}, // 5, Ct_L, k06
|
||||
{18, 0}, // 6, F1, k26
|
||||
{14, 15}, // 7, 1, k17
|
||||
{22, 26}, // 8, Q, k10
|
||||
{25, 38}, // 9, A, k12
|
||||
{33, 49}, // 10, Z, k14
|
||||
{20, 61}, // 11, Win_L, k90
|
||||
{33, 0}, // 12, F2, k36
|
||||
{29, 15}, // 13, 2, k27
|
||||
{36, 26}, // 14, W, k20
|
||||
{40, 38}, // 15, S, k22
|
||||
{47, 49}, // 16, X, k24
|
||||
{38, 61}, // 17, Alt_L, k93
|
||||
{47, 0}, // 18, F3, k31
|
||||
{43, 15}, // 19, 3, k37
|
||||
{51, 26}, // 20, E, k30
|
||||
{54, 38}, // 21, D, k32
|
||||
{61, 49}, // 22, C, k34
|
||||
{61, 0}, // 23, F4, k33
|
||||
{58, 15}, // 24, 4, k47
|
||||
{65, 26}, // 25, R, k40
|
||||
{69, 38}, // 26, F, k42
|
||||
{76, 49}, // 27, V, k44
|
||||
{79, 0}, // 28, F5, k07
|
||||
{72, 15}, // 29, 5, k46
|
||||
{79, 26}, // 30, T, k41
|
||||
{83, 38}, // 31, G, k43
|
||||
{90, 49}, // 32, B, k45
|
||||
{92, 61}, // 33, SPACE, k94
|
||||
{94, 0}, // 34, F6, k63
|
||||
{87, 15}, // 35, 6, k56
|
||||
{94, 26}, // 36, Y, k51
|
||||
{98, 38}, // 37, H, k53
|
||||
{105, 49}, // 38, N, k55
|
||||
{108, 0}, // 39, F7, k71
|
||||
{101, 15}, // 40, 7, k57
|
||||
{108, 26}, // 41, U, k50
|
||||
{112, 38}, // 42, J, k52
|
||||
{119, 49}, // 43, M, k54
|
||||
{123, 0}, // 44, F8, k76
|
||||
{116, 15}, // 45, 8, k67
|
||||
{123, 26}, // 46, I, k60
|
||||
{126, 38}, // 47, K, k62
|
||||
{134, 49}, // 48, ,, k64
|
||||
{145, 61}, // 49, Alt_R, k95
|
||||
{141, 0}, // 50, F9, ka6
|
||||
{130, 15}, // 51, 9, k77
|
||||
{137, 26}, // 52, O, k70
|
||||
{141, 38}, // 53, L, k72
|
||||
{148, 49}, // 54, ., k74
|
||||
{159, 61}, // 55, FN, k92
|
||||
{155, 0}, // 56, F10, ka7
|
||||
{145, 15}, // 57, 0, k87
|
||||
{152, 26}, // 58, P, k80
|
||||
{155, 38}, // 59, ;, k82
|
||||
{163, 49}, // 60, /, k85
|
||||
{170, 0}, // 61, F11, ka3
|
||||
{159, 15}, // 62, -, k86
|
||||
{166, 26}, // 63, [, k81
|
||||
{170, 38}, // 64, ", k83
|
||||
{173, 61}, // 65, Ct_R, k04
|
||||
{184, 0}, // 66, F12, ka5
|
||||
{18, 49}, // 67, \, k23
|
||||
{0, 8}, // 68, LED, l01
|
||||
{224, 8}, // 69, LED, l11
|
||||
{202, 0}, // 70, Prt, k97
|
||||
{0, 15}, // 71, LED, l02
|
||||
{224, 15}, // 72, LED, l12
|
||||
{224, 15}, // 73, Del, k65
|
||||
{0, 21}, // 74, LED, l03
|
||||
{224, 21}, // 75, LED, l13
|
||||
{224, 26}, // 76, PgUp, k15
|
||||
{0, 28}, // 77, LED, l04
|
||||
{224, 28}, // 78, LED, l14
|
||||
{173, 15}, // 79, =, k66
|
||||
{220, 64}, // 80, Right, k05
|
||||
{0, 35}, // 81, LED, l05
|
||||
{224, 35}, // 82, LED, l15
|
||||
{224, 49}, // 83, End, k75
|
||||
{0, 42}, // 84, LED, l06
|
||||
{224, 42}, // 85, LED, l16
|
||||
{195, 15}, // 86, BSpc, ka1
|
||||
{224, 38}, // 87, PgDn, k25
|
||||
{0, 48}, // 88, LED, l07
|
||||
{224, 48}, // 89, LED, l17
|
||||
{181, 26}, // 90, ], k61
|
||||
{182, 49}, // 91, Sh_R, k91
|
||||
{0, 55}, // 92, LED, l08
|
||||
{224, 55}, // 93, LED, l18
|
||||
{206, 52}, // 94, Up, k35
|
||||
{184, 38}, // 95, #, k84
|
||||
{191, 64}, // 96, Left, k03
|
||||
{201, 26}, // 97, Enter, ka4
|
||||
{206, 64}, // 98, Down, k73
|
||||
}, {
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 4, 2, 2, 4, 2,
|
||||
2, 4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4
|
||||
}};
|
||||
|
||||
const aw_led g_aw_leds[DRIVER_LED_TOTAL] = {
|
||||
{0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13
|
||||
{0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16
|
||||
{0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11
|
||||
{0, CS10_SW1, CS11_SW1, CS12_SW1}, // 3, Caps, k21
|
||||
{0, CS13_SW1, CS14_SW1, CS15_SW1}, // 4, Sh_L, k00
|
||||
{0, CS16_SW1, CS17_SW1, CS18_SW1}, // 5, Ct_L, k06
|
||||
{0, CS1_SW2, CS2_SW2, CS3_SW2}, // 6, F1, k26
|
||||
{0, CS4_SW2, CS5_SW2, CS6_SW2}, // 7, 1, k17
|
||||
{0, CS7_SW2, CS8_SW2, CS9_SW2}, // 8, Q, k10
|
||||
{0, CS10_SW2, CS11_SW2, CS12_SW2}, // 9, A, k12
|
||||
{0, CS13_SW2, CS14_SW2, CS15_SW2}, // 10, Z, k14
|
||||
{0, CS16_SW2, CS17_SW2, CS18_SW2}, // 11, Win_L, k90
|
||||
{0, CS1_SW3, CS2_SW3, CS3_SW3}, // 12, F2, k36
|
||||
{0, CS4_SW3, CS5_SW3, CS6_SW3}, // 13, 2, k27
|
||||
{0, CS7_SW3, CS8_SW3, CS9_SW3}, // 14, W, k20
|
||||
{0, CS10_SW3, CS11_SW3, CS12_SW3}, // 15, S, k22
|
||||
{0, CS13_SW3, CS14_SW3, CS15_SW3}, // 16, X, k24
|
||||
{0, CS16_SW3, CS17_SW3, CS18_SW3}, // 17, Alt_L, k93
|
||||
{0, CS1_SW4, CS2_SW4, CS3_SW4}, // 18, F3, k31
|
||||
{0, CS4_SW4, CS5_SW4, CS6_SW4}, // 19, 3, k37
|
||||
{0, CS7_SW4, CS8_SW4, CS9_SW4}, // 20, E, k30
|
||||
{0, CS10_SW4, CS11_SW4, CS12_SW4}, // 21, D, k32
|
||||
{0, CS13_SW4, CS14_SW4, CS15_SW4}, // 22, C, k34
|
||||
{0, CS1_SW5, CS2_SW5, CS3_SW5}, // 23, F4, k33
|
||||
{0, CS4_SW5, CS5_SW5, CS6_SW5}, // 24, 4, k47
|
||||
{0, CS7_SW5, CS8_SW5, CS9_SW5}, // 25, R, k40
|
||||
{0, CS10_SW5, CS11_SW5, CS12_SW5}, // 26, F, k42
|
||||
{0, CS13_SW5, CS14_SW5, CS15_SW5}, // 27, V, k44
|
||||
{0, CS1_SW6, CS2_SW6, CS3_SW6}, // 28, F5, k07
|
||||
{0, CS4_SW6, CS5_SW6, CS6_SW6}, // 29, 5, k46
|
||||
{0, CS7_SW6, CS8_SW6, CS9_SW6}, // 30, T, k41
|
||||
{0, CS10_SW6, CS11_SW6, CS12_SW6}, // 31, G, k43
|
||||
{0, CS13_SW6, CS14_SW6, CS15_SW6}, // 32, B, k45
|
||||
{0, CS16_SW6, CS17_SW6, CS18_SW6}, // 33, SPACE, k94
|
||||
{0, CS1_SW7, CS2_SW7, CS3_SW7}, // 34, F6, k63
|
||||
{0, CS4_SW7, CS5_SW7, CS6_SW7}, // 35, 6, k56
|
||||
{0, CS7_SW7, CS8_SW7, CS9_SW7}, // 36, Y, k51
|
||||
{0, CS10_SW7, CS11_SW7, CS12_SW7}, // 37, H, k53
|
||||
{0, CS13_SW7, CS14_SW7, CS15_SW7}, // 38, N, k55
|
||||
{0, CS1_SW8, CS2_SW8, CS3_SW8}, // 39, F7, k71
|
||||
{0, CS4_SW8, CS5_SW8, CS6_SW8}, // 40, 7, k57
|
||||
{0, CS7_SW8, CS8_SW8, CS9_SW8}, // 41, U, k50
|
||||
{0, CS10_SW8, CS11_SW8, CS12_SW8}, // 42, J, k52
|
||||
{0, CS13_SW8, CS14_SW8, CS15_SW8}, // 43, M, k54
|
||||
{0, CS1_SW9, CS2_SW9, CS3_SW9}, // 44, F8, k76
|
||||
{0, CS4_SW9, CS5_SW9, CS6_SW9}, // 45, 8, k67
|
||||
{0, CS7_SW9, CS8_SW9, CS9_SW9}, // 46, I, k60
|
||||
{0, CS10_SW9, CS11_SW9, CS12_SW9}, // 47, K, k62
|
||||
{0, CS13_SW9, CS14_SW9, CS15_SW9}, // 48, ,, k64
|
||||
{0, CS16_SW9, CS17_SW9, CS18_SW9}, // 49, Alt_R, k95
|
||||
{0, CS1_SW10, CS2_SW10, CS3_SW10}, // 50, F9, ka6
|
||||
{0, CS4_SW10, CS5_SW10, CS6_SW10}, // 51, 9, k77
|
||||
{0, CS7_SW10, CS8_SW10, CS9_SW10}, // 52, O, k70
|
||||
{0, CS10_SW10, CS11_SW10, CS12_SW10}, // 53, L, k72
|
||||
{0, CS13_SW10, CS14_SW10, CS15_SW10}, // 54, ., k74
|
||||
{0, CS16_SW10, CS17_SW10, CS18_SW10}, // 55, FN, k92
|
||||
{0, CS1_SW11, CS2_SW11, CS3_SW11}, // 56, F10, ka7
|
||||
{0, CS4_SW11, CS5_SW11, CS6_SW11}, // 57, 0, k87
|
||||
{0, CS7_SW11, CS8_SW11, CS9_SW11}, // 58, P, k80
|
||||
{0, CS10_SW11, CS11_SW11, CS12_SW11}, // 59, ;, k82
|
||||
{0, CS13_SW11, CS14_SW11, CS15_SW11}, // 60, ?, k85
|
||||
{0, CS1_SW12, CS2_SW12, CS3_SW12}, // 61, F11, ka3
|
||||
{0, CS4_SW12, CS5_SW12, CS6_SW12}, // 62, -, k86
|
||||
{0, CS7_SW12, CS8_SW12, CS9_SW12}, // 63, [, k81
|
||||
{0, CS10_SW12, CS11_SW12, CS12_SW12}, // 64, ", k83
|
||||
{0, CS16_SW12, CS17_SW12, CS18_SW12}, // 65, Ct_R, k04
|
||||
|
||||
{1, CS1_SW1, CS2_SW1, CS3_SW1}, // 66, F12, ka5
|
||||
{1, CS4_SW1, CS5_SW1, CS6_SW1}, // 67, \, k23
|
||||
{1, CS13_SW1, CS14_SW1, CS15_SW1}, // 68, LED, l01
|
||||
{1, CS16_SW1, CS17_SW1, CS18_SW1}, // 69, LED, l11
|
||||
{1, CS4_SW2, CS5_SW2, CS6_SW2}, // 70, Prt, k97
|
||||
{1, CS13_SW2, CS14_SW2, CS15_SW2}, // 71, LED, l02
|
||||
{1, CS16_SW2, CS17_SW2, CS18_SW2}, // 72, LED, l12
|
||||
{1, CS4_SW3, CS5_SW3, CS6_SW3}, // 73, Del, k65
|
||||
{1, CS13_SW3, CS14_SW3, CS15_SW3}, // 74, LED, l03
|
||||
{1, CS16_SW3, CS17_SW3, CS18_SW3}, // 75, LED, l13
|
||||
{1, CS4_SW4, CS5_SW4, CS6_SW4}, // 76, PgUp, k15
|
||||
{1, CS13_SW4, CS14_SW4, CS15_SW4}, // 77, LED, l04
|
||||
{1, CS16_SW4, CS17_SW4, CS18_SW4}, // 78, LED, l14
|
||||
{1, CS1_SW5, CS2_SW5, CS3_SW5}, // 79, =, k66
|
||||
{1, CS10_SW5, CS11_SW5, CS12_SW5}, // 80, Right, k05
|
||||
{1, CS13_SW5, CS14_SW5, CS15_SW5}, // 81, LED, l05
|
||||
{1, CS16_SW5, CS17_SW5, CS18_SW5}, // 82, LED, l15
|
||||
{1, CS4_SW6, CS5_SW6, CS6_SW6}, // 83, End, k75
|
||||
{1, CS13_SW6, CS14_SW6, CS15_SW6}, // 84, LED, l06
|
||||
{1, CS16_SW6, CS17_SW6, CS18_SW6}, // 85, LED, l16
|
||||
{1, CS1_SW7, CS2_SW7, CS3_SW7}, // 86, BSpc, ka1
|
||||
{1, CS4_SW7, CS5_SW7, CS6_SW7}, // 87, PgDn, k25
|
||||
{1, CS13_SW7, CS14_SW7, CS15_SW7}, // 88, LED, l07
|
||||
{1, CS16_SW7, CS17_SW7, CS18_SW7}, // 89, LED, l17
|
||||
{1, CS1_SW8, CS2_SW8, CS3_SW8}, // 90, ], k61
|
||||
{1, CS4_SW8, CS5_SW8, CS6_SW8}, // 91, Sh_R, k91
|
||||
{1, CS13_SW8, CS14_SW8, CS15_SW8}, // 92, LED, l08
|
||||
{1, CS16_SW8, CS17_SW8, CS18_SW8}, // 93, LED, l18
|
||||
{1, CS4_SW9, CS5_SW9, CS6_SW9}, // 94, Up, k35
|
||||
{1, CS1_SW10, CS2_SW10, CS3_SW10}, // 95, #, k84
|
||||
{1, CS4_SW10, CS5_SW10, CS6_SW10}, // 96, Left, k03
|
||||
{1, CS1_SW11, CS2_SW11, CS3_SW11}, // 97, Enter, ka4
|
||||
{1, CS4_SW11, CS5_SW11, CS6_SW11}, // 98, Down, k73
|
||||
};
|
||||
// clang-format on
|
||||
#endif
|
||||
@@ -0,0 +1,52 @@
|
||||
/* Copyright 2021 Gigahawk
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "pro.h"
|
||||
|
||||
#define ___ KC_NO
|
||||
|
||||
// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute)
|
||||
// ` 1 2 3 4 5 6 7 8 9 0 - = BSpc Del
|
||||
// Tab Q W E R T Y U I O P [ ] PgUp
|
||||
// Caps A S D F G H J K L ; ' # Enter PgDn
|
||||
// Sh_L \ Z X C V B N M , . / Sh_R Up End
|
||||
// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
|
||||
|
||||
// clang-format off
|
||||
#define LAYOUT( \
|
||||
k13, k26, k36, k31, k33, k07, k63, k71, k76, ka6, ka7, ka3, ka5, k97, k01, \
|
||||
k16, k17, k27, k37, k47, k46, k56, k57, k67, k77, k87, k86, k66, ka1, k65, \
|
||||
k11, k10, k20, k30, k40, k41, k51, k50, k60, k70, k80, k81, k61, k15, \
|
||||
k21, k12, k22, k32, k42, k43, k53, k52, k62, k72, k82, k83, k84, ka4, k25, \
|
||||
k00, k23, k14, k24, k34, k44, k45, k55, k54, k64, k74, k85, k91, k35, k75, \
|
||||
k06, k90, k93, k94, k95, k92, k04, k03, k73, k05 \
|
||||
) \
|
||||
{ \
|
||||
{ k00, k01, ___, k03, k04, k05, k06, k07}, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17}, \
|
||||
{ k20, k21, k22, k23, k24, k25, k26, k27}, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37}, \
|
||||
{ k40, k41, k42, k43, k44, k45, k46, k47}, \
|
||||
{ k50, k51, k52, k53, k54, k55, k56, k57}, \
|
||||
{ k60, k61, k62, k63, k64, k65, k66, k67}, \
|
||||
{ k70, k71, k72, k73, k74, k75, k76, k77}, \
|
||||
{ k80, k81, k82, k83, k84, k85, k86, k87}, \
|
||||
{ k90, k91, k92, k93, k94, k95, ___, k97}, \
|
||||
{ ___, ka1, ___, ka3, ka4, ka5, ka6, ka7} \
|
||||
}
|
||||
// clang-format on
|
||||
+2
-2
@@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
//
|
||||
// To put the keyboard in bootloader mode, use FN+backspace. If you accidentally put it into bootloader, you can just unplug the USB cable and
|
||||
// it'll be back to normal when you plug it back in.
|
||||
[0] = LAYOUT_iso(
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_MUTE,
|
||||
KC_GRV, 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,
|
||||
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_PGUP,
|
||||
@@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
|
||||
[1] = LAYOUT_iso(
|
||||
[1] = LAYOUT(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
@@ -0,0 +1,85 @@
|
||||
/* Copyright 2021 Glorious, LLC <[email protected]>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
// clang-format off
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute)
|
||||
// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del
|
||||
// Tab Q W E R T Y U I O P [ ] PgUp
|
||||
// Caps A S D F G H J K L ; " # Enter PgDn
|
||||
// Sh_L / Z X C V B N M , . ? Sh_R Up End
|
||||
// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
|
||||
|
||||
|
||||
// The FN key by default maps to a momentary toggle to layer 1 to provide access to the RESET key (to put the board into bootloader mode). Without
|
||||
// this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB
|
||||
// cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI
|
||||
// if that's your preference.
|
||||
//
|
||||
// To put the keyboard in bootloader mode, use FN+backspace. If you accidentally put it into bootloader, you can just unplug the USB cable and
|
||||
// it'll be back to normal when you plug it back in.
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_MUTE,
|
||||
KC_GRV, 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,
|
||||
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_PGUP,
|
||||
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_NUHS, KC_ENT, KC_PGDN,
|
||||
KC_LSFT, KC_NUBS, 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_END,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
|
||||
[1] = LAYOUT(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
|
||||
|
||||
[2] = LAYOUT(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
|
||||
[3] = LAYOUT(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
|
||||
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
bool encoder_update_user(uint8_t index, bool clockwise) {
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
||||
@@ -0,0 +1,23 @@
|
||||
# GMMK PRO (ISO)
|
||||
|
||||
A tenkeyless 75% keyboard made and sold by Glorious LLC. Equipped with the STM32 ARM Cortex-M4 microcontroller, with support for rotary encoders and three additional layouts. [More info at Glorious](https://www.pcgamingrace.com/products/glorious-gmmk-pro-75-barebone-black-reservation)
|
||||
|
||||
* Keyboard Maintainer: [GloriousThrall](https://github.com/GloriousThrall)
|
||||
* Hardware Supported: GMMK Pro
|
||||
* Hardware Availability: [GloriousPCGaming.com](https://www.pcgamingrace.com/products/glorious-gmmk-pro-75-barebone-black-reservation)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make gmmk/pro/iso:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make gmmk/pro/iso:default:flash
|
||||
|
||||
To reset the board into bootloader mode, do one of the following:
|
||||
|
||||
* Hold the Reset switch mounted on the bottom side of the PCB while connecting the USB cable
|
||||
* Hold the Escape key while connecting the USB cable (also erases persistent settings)
|
||||
* Fn+Backspace will reset the board to bootloader mode if you have flashed the default QMK keymap
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
@@ -0,0 +1,25 @@
|
||||
# MCU name
|
||||
MCU = STM32F303
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = stm32-dfu
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = no # Console for debug
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
NKRO_ENABLE = yes # USB Nkey Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||
BLUETOOTH_ENABLE = no # Enable Bluetooth
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
ENCODER_ENABLE = yes
|
||||
RGB_MATRIX_ENABLE = yes
|
||||
RGB_MATRIX_DRIVER = AW20216
|
||||
@@ -14,225 +14,3 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "pro.h"
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
led_config_t g_led_config = { {
|
||||
{ 4, NO_LED, NO_LED, 95, 65, 79, 5, 28 },
|
||||
{ 8, 2, 9, 0, 10, 75, 1, 7 },
|
||||
{ 14, 3, 15, NO_LED, 16, 86, 6, 13 },
|
||||
{ 20, 18, 21, 23, 22, 94, 12, 19 },
|
||||
{ 25, 30, 26, 31, 27, 32, 29, 24 },
|
||||
{ 41, 36, 42, 37, 43, 38, 35, 40 },
|
||||
{ 46, 89, 47, 34, 48, 72, 78, 45 },
|
||||
{ 52, 39, 53, 97, 54, 82, 44, 51 },
|
||||
{ 58, 63, 59, 64, NO_LED, 60, 62, 57 },
|
||||
{ 11, 90, 55, 17, 33, 49, NO_LED, 69 },
|
||||
{ NO_LED, 85, 93, 61, 96, 66, 50, 56 }
|
||||
}, {
|
||||
{ 0, 0 }, // 0, ESC, k13
|
||||
{ 0, 15 }, // 1, ~, k16
|
||||
{ 4, 26 }, // 2, Tab, k11
|
||||
{ 5, 38 }, // 3, Caps, k21
|
||||
{ 9, 49 }, // 4, Sh_L, k00
|
||||
{ 2, 61 }, // 5, Ct_L, k06
|
||||
{ 18, 0 }, // 6, F1, k26
|
||||
{ 14, 15 }, // 7, 1, k17
|
||||
{ 22, 26 }, // 8, Q, k10
|
||||
{ 25, 38 }, // 9, A, k12
|
||||
{ 33, 49 }, // 10, Z, k14
|
||||
{ 20, 61 }, // 11, Win_L, k90
|
||||
{ 33, 0 }, // 12, F2, k36
|
||||
{ 29, 15 }, // 13, 2, k27
|
||||
{ 36, 26 }, // 14, W, k20
|
||||
{ 40, 38 }, // 15, S, k22
|
||||
{ 47, 49 }, // 16, X, k24
|
||||
{ 38, 61 }, // 17, Alt_L, k93
|
||||
{ 47, 0 }, // 18, F3, k31
|
||||
{ 43, 15 }, // 19, 3, k37
|
||||
{ 51, 26 }, // 20, E, k30
|
||||
{ 54, 38 }, // 21, D, k32
|
||||
{ 61, 49 }, // 22, C, k34
|
||||
{ 61, 0 }, // 23, F4, k33
|
||||
{ 58, 15 }, // 24, 4, k47
|
||||
{ 65, 26 }, // 25, R, k40
|
||||
{ 69, 38 }, // 26, F, k42
|
||||
{ 76, 49 }, // 27, V, k44
|
||||
{ 79, 0 }, // 28, F5, k07
|
||||
{ 72, 15 }, // 29, 5, k46
|
||||
{ 79, 26 }, // 30, T, k41
|
||||
{ 83, 38 }, // 31, G, k43
|
||||
{ 90, 49 }, // 32, B, k45
|
||||
{ 92, 61 }, // 33, SPACE, k94
|
||||
{ 94, 0 }, // 34, F6, k63
|
||||
{ 87, 15 }, // 35, 6, k56
|
||||
{ 94, 26 }, // 36, Y, k51
|
||||
{ 98, 38 }, // 37, H, k53
|
||||
{ 105, 49 }, // 38, N, k55
|
||||
{ 108, 0 }, // 39, F7, k71
|
||||
{ 101, 15 }, // 40, 7, k57
|
||||
{ 108, 26 }, // 41, U, k50
|
||||
{ 112, 38 }, // 42, J, k52
|
||||
{ 119, 49 }, // 43, M, k54
|
||||
{ 123, 0 }, // 44, F8, k76
|
||||
{ 116, 15 }, // 45, 8, k67
|
||||
{ 123, 26 }, // 46, I, k60
|
||||
{ 126, 38 }, // 47, K, k62
|
||||
{ 134, 49 }, // 48, ,, k64
|
||||
{ 145, 61 }, // 49, Alt_R, k95
|
||||
{ 141, 0 }, // 50, F9, ka6
|
||||
{ 130, 15 }, // 51, 9, k77
|
||||
{ 137, 26 }, // 52, O, k70
|
||||
{ 141, 38 }, // 53, L, k72
|
||||
{ 148, 49 }, // 54, ., k74
|
||||
{ 159, 61 }, // 55, FN, k92
|
||||
{ 155, 0 }, // 56, F10, ka7
|
||||
{ 145, 15 }, // 57, 0, k87
|
||||
{ 152, 26 }, // 58, P, k80
|
||||
{ 155, 38 }, // 59, ;, k82
|
||||
{ 163, 49 }, // 60, ?, k85
|
||||
{ 170, 0 }, // 61, F11, ka3
|
||||
{ 159, 15 }, // 62, -, k86
|
||||
{ 166, 26 }, // 63, [, k81
|
||||
{ 170, 38 }, // 64, ", k83
|
||||
{ 173, 61 }, // 65, Ct_R, k04
|
||||
{ 184, 0 }, // 66, F12, ka5
|
||||
{ 0, 8 }, // 67, LED, l01
|
||||
{ 224, 8 }, // 68, LED, l11
|
||||
{ 202, 0 }, // 69, Prt, k97
|
||||
{ 0, 15 }, // 70, LED, l02
|
||||
{ 224, 15 }, // 71, LED, l12
|
||||
{ 224, 15 }, // 72, Del, k65
|
||||
{ 0, 21 }, // 73, LED, l03
|
||||
{ 224, 21 }, // 74, LED, l13
|
||||
{ 224, 26 }, // 75, PgUp, k15
|
||||
{ 0, 28 }, // 76, LED, l04
|
||||
{ 224, 28 }, // 77, LED, l14
|
||||
{ 173, 15 }, // 78, =, k66
|
||||
{ 220, 64 }, // 79, Right, k05
|
||||
{ 0, 35 }, // 80, LED, l05
|
||||
{ 224, 35 }, // 81, LED, l15
|
||||
{ 224, 49 }, // 82, End, k75
|
||||
{ 0, 42 }, // 83, LED, l06
|
||||
{ 224, 42 }, // 84, LED, l16
|
||||
{ 195, 15 }, // 85, BSpc, ka1
|
||||
{ 224, 38 }, // 86, PgDn, k25
|
||||
{ 0, 48 }, // 87, LED, l07
|
||||
{ 224, 48 }, // 88, LED, l17
|
||||
{ 181, 26 }, // 89, ], k61
|
||||
{ 182, 49 }, // 90, Sh_R, k91
|
||||
{ 0, 55 }, // 91, LED, l08
|
||||
{ 224, 55 }, // 92, LED, l18
|
||||
{ 199, 26 }, // 93, \, ka2
|
||||
{ 206, 52 }, // 94, Up, k35
|
||||
{ 191, 64 }, // 95, Left, k03
|
||||
{ 193, 38 }, // 96, Enter, ka4
|
||||
{ 206, 64 } // 97, Down, k73
|
||||
}, {
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
|
||||
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 4, 2, 2, 4, 2, 2,
|
||||
4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4
|
||||
} };
|
||||
|
||||
const aw_led g_aw_leds[DRIVER_LED_TOTAL] = {
|
||||
{ 0, CS1_SW1, CS2_SW1, CS3_SW1 }, // 0, ESC, k13
|
||||
{ 0, CS4_SW1, CS5_SW1, CS6_SW1 }, // 1, ~, k16
|
||||
{ 0, CS7_SW1, CS8_SW1, CS9_SW1 }, // 2, Tab, k11
|
||||
{ 0, CS10_SW1, CS11_SW1, CS12_SW1 }, // 3, Caps, k21
|
||||
{ 0, CS13_SW1, CS14_SW1, CS15_SW1 }, // 4, Sh_L, k00
|
||||
{ 0, CS16_SW1, CS17_SW1, CS18_SW1 }, // 5, Ct_L, k06
|
||||
{ 0, CS1_SW2, CS2_SW2, CS3_SW2 }, // 6, F1, k26
|
||||
{ 0, CS4_SW2, CS5_SW2, CS6_SW2 }, // 7, 1, k17
|
||||
{ 0, CS7_SW2, CS8_SW2, CS9_SW2 }, // 8, Q, k10
|
||||
{ 0, CS10_SW2, CS11_SW2, CS12_SW2 }, // 9, A, k12
|
||||
{ 0, CS13_SW2, CS14_SW2, CS15_SW2 }, // 10, Z, k14
|
||||
{ 0, CS16_SW2, CS17_SW2, CS18_SW2 }, // 11, Win_L, k90
|
||||
{ 0, CS1_SW3, CS2_SW3, CS3_SW3 }, // 12, F2, k36
|
||||
{ 0, CS4_SW3, CS5_SW3, CS6_SW3 }, // 13, 2, k27
|
||||
{ 0, CS7_SW3, CS8_SW3, CS9_SW3 }, // 14, W, k20
|
||||
{ 0, CS10_SW3, CS11_SW3, CS12_SW3 }, // 15, S, k22
|
||||
{ 0, CS13_SW3, CS14_SW3, CS15_SW3 }, // 16, X, k24
|
||||
{ 0, CS16_SW3, CS17_SW3, CS18_SW3 }, // 17, Alt_L, k93
|
||||
{ 0, CS1_SW4, CS2_SW4, CS3_SW4 }, // 18, F3, k31
|
||||
{ 0, CS4_SW4, CS5_SW4, CS6_SW4 }, // 19, 3, k37
|
||||
{ 0, CS7_SW4, CS8_SW4, CS9_SW4 }, // 20, E, k30
|
||||
{ 0, CS10_SW4, CS11_SW4, CS12_SW4 }, // 21, D, k32
|
||||
{ 0, CS13_SW4, CS14_SW4, CS15_SW4 }, // 22, C, k34
|
||||
{ 0, CS1_SW5, CS2_SW5, CS3_SW5 }, // 23, F4, k33
|
||||
{ 0, CS4_SW5, CS5_SW5, CS6_SW5 }, // 24, 4, k47
|
||||
{ 0, CS7_SW5, CS8_SW5, CS9_SW5 }, // 25, R, k40
|
||||
{ 0, CS10_SW5, CS11_SW5, CS12_SW5 }, // 26, F, k42
|
||||
{ 0, CS13_SW5, CS14_SW5, CS15_SW5 }, // 27, V, k44
|
||||
{ 0, CS1_SW6, CS2_SW6, CS3_SW6 }, // 28, F5, k07
|
||||
{ 0, CS4_SW6, CS5_SW6, CS6_SW6 }, // 29, 5, k46
|
||||
{ 0, CS7_SW6, CS8_SW6, CS9_SW6 }, // 30, T, k41
|
||||
{ 0, CS10_SW6, CS11_SW6, CS12_SW6 }, // 31, G, k43
|
||||
{ 0, CS13_SW6, CS14_SW6, CS15_SW6 }, // 32, B, k45
|
||||
{ 0, CS16_SW6, CS17_SW6, CS18_SW6 }, // 33, SPACE, k94
|
||||
{ 0, CS1_SW7, CS2_SW7, CS3_SW7 }, // 34, F6, k63
|
||||
{ 0, CS4_SW7, CS5_SW7, CS6_SW7 }, // 35, 6, k56
|
||||
{ 0, CS7_SW7, CS8_SW7, CS9_SW7 }, // 36, Y, k51
|
||||
{ 0, CS10_SW7, CS11_SW7, CS12_SW7 }, // 37, H, k53
|
||||
{ 0, CS13_SW7, CS14_SW7, CS15_SW7 }, // 38, N, k55
|
||||
{ 0, CS1_SW8, CS2_SW8, CS3_SW8 }, // 39, F7, k71
|
||||
{ 0, CS4_SW8, CS5_SW8, CS6_SW8 }, // 40, 7, k57
|
||||
{ 0, CS7_SW8, CS8_SW8, CS9_SW8 }, // 41, U, k50
|
||||
{ 0, CS10_SW8, CS11_SW8, CS12_SW8 }, // 42, J, k52
|
||||
{ 0, CS13_SW8, CS14_SW8, CS15_SW8 }, // 43, M, k54
|
||||
{ 0, CS1_SW9, CS2_SW9, CS3_SW9 }, // 44, F8, k76
|
||||
{ 0, CS4_SW9, CS5_SW9, CS6_SW9 }, // 45, 8, k67
|
||||
{ 0, CS7_SW9, CS8_SW9, CS9_SW9 }, // 46, I, k60
|
||||
{ 0, CS10_SW9, CS11_SW9, CS12_SW9 }, // 47, K, k62
|
||||
{ 0, CS13_SW9, CS14_SW9, CS15_SW9 }, // 48, ,, k64
|
||||
{ 0, CS16_SW9, CS17_SW9, CS18_SW9 }, // 49, Alt_R, k95
|
||||
{ 0, CS1_SW10, CS2_SW10, CS3_SW10 }, // 50, F9, ka6
|
||||
{ 0, CS4_SW10, CS5_SW10, CS6_SW10 }, // 51, 9, k77
|
||||
{ 0, CS7_SW10, CS8_SW10, CS9_SW10 }, // 52, O, k70
|
||||
{ 0, CS10_SW10, CS11_SW10, CS12_SW10 }, // 53, L, k72
|
||||
{ 0, CS13_SW10, CS14_SW10, CS15_SW10 }, // 54, ., k74
|
||||
{ 0, CS16_SW10, CS17_SW10, CS18_SW10 }, // 55, FN, k92
|
||||
{ 0, CS1_SW11, CS2_SW11, CS3_SW11 }, // 56, F10, ka7
|
||||
{ 0, CS4_SW11, CS5_SW11, CS6_SW11 }, // 57, 0, k87
|
||||
{ 0, CS7_SW11, CS8_SW11, CS9_SW11 }, // 58, P, k80
|
||||
{ 0, CS10_SW11, CS11_SW11, CS12_SW11 }, // 59, ;, k82
|
||||
{ 0, CS13_SW11, CS14_SW11, CS15_SW11 }, // 60, ?, k85
|
||||
{ 0, CS1_SW12, CS2_SW12, CS3_SW12 }, // 61, F11, ka3
|
||||
{ 0, CS4_SW12, CS5_SW12, CS6_SW12 }, // 62, -, k86
|
||||
{ 0, CS7_SW12, CS8_SW12, CS9_SW12 }, // 63, [, k81
|
||||
{ 0, CS10_SW12, CS11_SW12, CS12_SW12 }, // 64, ", k83
|
||||
{ 0, CS16_SW12, CS17_SW12, CS18_SW12 }, // 65, Ct_R, k04
|
||||
|
||||
{ 1, CS1_SW1, CS2_SW1, CS3_SW1 }, // 66, F12, ka5
|
||||
{ 1, CS13_SW1, CS14_SW1, CS15_SW1 }, // 67, LED, l01
|
||||
{ 1, CS16_SW1, CS17_SW1, CS18_SW1 }, // 68, LED, l11
|
||||
{ 1, CS4_SW2, CS5_SW2, CS6_SW2 }, // 69, Prt, k97
|
||||
{ 1, CS13_SW2, CS14_SW2, CS15_SW2 }, // 70, LED, l02
|
||||
{ 1, CS16_SW2, CS17_SW2, CS18_SW2 }, // 71, LED, l12
|
||||
{ 1, CS4_SW3, CS5_SW3, CS6_SW3 }, // 72, Del, k65
|
||||
{ 1, CS13_SW3, CS14_SW3, CS15_SW3 }, // 73, LED, l03
|
||||
{ 1, CS16_SW3, CS17_SW3, CS18_SW3 }, // 74, LED, l13
|
||||
{ 1, CS4_SW4, CS5_SW4, CS6_SW4 }, // 75, PgUp, k15
|
||||
{ 1, CS13_SW4, CS14_SW4, CS15_SW4 }, // 76, LED, l04
|
||||
{ 1, CS16_SW4, CS17_SW4, CS18_SW4 }, // 77, LED, l14
|
||||
{ 1, CS1_SW5, CS2_SW5, CS3_SW5 }, // 78, =, k66
|
||||
{ 1, CS10_SW5, CS11_SW5, CS12_SW5 }, // 79, Right, k05
|
||||
{ 1, CS13_SW5, CS14_SW5, CS15_SW5 }, // 80, LED, l05
|
||||
{ 1, CS16_SW5, CS17_SW5, CS18_SW5 }, // 81, LED, l15
|
||||
{ 1, CS4_SW6, CS5_SW6, CS6_SW6 }, // 82, End, k75
|
||||
{ 1, CS13_SW6, CS14_SW6, CS15_SW6 }, // 83, LED, l06
|
||||
{ 1, CS16_SW6, CS17_SW6, CS18_SW6 }, // 84, LED, l16
|
||||
{ 1, CS1_SW7, CS2_SW7, CS3_SW7 }, // 85, BSpc, ka1
|
||||
{ 1, CS4_SW7, CS5_SW7, CS6_SW7 }, // 86, PgDn, k25
|
||||
{ 1, CS13_SW7, CS14_SW7, CS15_SW7 }, // 87, LED, l07
|
||||
{ 1, CS16_SW7, CS17_SW7, CS18_SW7 }, // 88, LED, l17
|
||||
{ 1, CS1_SW8, CS2_SW8, CS3_SW8 }, // 89, ], k61
|
||||
{ 1, CS4_SW8, CS5_SW8, CS6_SW8 }, // 90, Sh_R, k91
|
||||
{ 1, CS13_SW8, CS14_SW8, CS15_SW8 }, // 91, LED, l08
|
||||
{ 1, CS16_SW8, CS17_SW8, CS18_SW8 }, // 92, LED, l18
|
||||
{ 1, CS1_SW9, CS2_SW9, CS3_SW9 }, // 93, \, ka2
|
||||
{ 1, CS4_SW9, CS5_SW9, CS6_SW9 }, // 94, Up, k35
|
||||
{ 1, CS4_SW10, CS5_SW10, CS6_SW10 }, // 95, Left, k03
|
||||
{ 1, CS1_SW11, CS2_SW11, CS3_SW11 }, // 96, Enter, ka4
|
||||
{ 1, CS4_SW11, CS5_SW11, CS6_SW11 }, // 97, Down, k73
|
||||
};
|
||||
#endif
|
||||
@@ -18,62 +18,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
#define ___ KC_NO
|
||||
|
||||
// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute)
|
||||
// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BSpc Del
|
||||
// Tab Q W E R T Y U I O P [ ] \ PgUp
|
||||
// Caps A S D F G H J K L ; " Enter PgDn
|
||||
// Sh_L Z X C V B N M , . ? Sh_R Up End
|
||||
// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
|
||||
|
||||
#define LAYOUT( \
|
||||
k13, k26, k36, k31, k33, k07, k63, k71, k76, ka6, ka7, ka3, ka5, k97, k01, \
|
||||
k16, k17, k27, k37, k47, k46, k56, k57, k67, k77, k87, k86, k66, ka1, k65, \
|
||||
k11, k10, k20, k30, k40, k41, k51, k50, k60, k70, k80, k81, k61, ka2, k15, \
|
||||
k21, k12, k22, k32, k42, k43, k53, k52, k62, k72, k82, k83, ka4, k25, \
|
||||
k00, k14, k24, k34, k44, k45, k55, k54, k64, k74, k85, k91, k35, k75, \
|
||||
k06, k90, k93, k94, k95, k92, k04, k03, k73, k05 \
|
||||
) \
|
||||
{ \
|
||||
{ k00, k01, ___, k03, k04, k05, k06, k07}, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17}, \
|
||||
{ k20, k21, k22, ___, k24, k25, k26, k27}, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37}, \
|
||||
{ k40, k41, k42, k43, k44, k45, k46, k47}, \
|
||||
{ k50, k51, k52, k53, k54, k55, k56, k57}, \
|
||||
{ k60, k61, k62, k63, k64, k65, k66, k67}, \
|
||||
{ k70, k71, k72, k73, k74, k75, k76, k77}, \
|
||||
{ k80, k81, k82, k83, ___, k85, k86, k87}, \
|
||||
{ k90, k91, k92, k93, k94, k95, ___, k97}, \
|
||||
{ ___, ka1, ka2, ka3, ka4, ka5, ka6, ka7} \
|
||||
}
|
||||
|
||||
// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute)
|
||||
// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BSpc Del
|
||||
// Tab Q W E R T Y U I O P [ ] PgUp
|
||||
// Caps A S D F G H J K L ; " # Enter PgDn
|
||||
// Sh_L / Z X C V B N M , . ? Sh_R Up End
|
||||
// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right
|
||||
|
||||
#define LAYOUT_iso( \
|
||||
k13, k26, k36, k31, k33, k07, k63, k71, k76, ka6, ka7, ka3, ka5, k97, k01, \
|
||||
k16, k17, k27, k37, k47, k46, k56, k57, k67, k77, k87, k86, k66, ka1, k65, \
|
||||
k11, k10, k20, k30, k40, k41, k51, k50, k60, k70, k80, k81, k61, k15, \
|
||||
k21, k12, k22, k32, k42, k43, k53, k52, k62, k72, k82, k83, k84, ka4, k25, \
|
||||
k00, k23, k14, k24, k34, k44, k45, k55, k54, k64, k74, k85, k91, k35, k75, \
|
||||
k06, k90, k93, k94, k95, k92, k04, k03, k73, k05 \
|
||||
) \
|
||||
{ \
|
||||
{ k00, k01, ___, k03, k04, k05, k06, k07}, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17}, \
|
||||
{ k20, k21, k22, k23, k24, k25, k26, k27}, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37}, \
|
||||
{ k40, k41, k42, k43, k44, k45, k46, k47}, \
|
||||
{ k50, k51, k52, k53, k54, k55, k56, k57}, \
|
||||
{ k60, k61, k62, k63, k64, k65, k66, k67}, \
|
||||
{ k70, k71, k72, k73, k74, k75, k76, k77}, \
|
||||
{ k80, k81, k82, k83, k84, k85, k86, k87}, \
|
||||
{ k90, k91, k92, k93, k94, k95, ___, k97}, \
|
||||
{ ___, ka1, ___, ka3, ka4, ka5, ka6, ka7} \
|
||||
}
|
||||
#if defined(KEYBOARD_gmmk_pro_ansi)
|
||||
# include "ansi.h"
|
||||
#elif defined(KEYBOARD_gmmk_pro_iso)
|
||||
# include "iso.h"
|
||||
#endif // GMMK Pro revisions
|
||||
Reference in new issue
Block a user