Skip to content

Commit a6d7833

Browse files
OTLabsZhol Internet
authored andcommitted
Add vial support for Akko ACR87 (vial-kb#559)
Vial port for Akko ACR 87 keyboard, https://en.akkogear.com/product/acr-87-keyboard-bundle-mechanical-keyboard/
1 parent f120020 commit a6d7833

File tree

4 files changed

+299
-0
lines changed

4 files changed

+299
-0
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
// Copyright 2023 Oleg Titov <oleg.titov@gmail.com>
2+
// SPDX-License-Identifier: GPL-2.0-or-later
3+
4+
#pragma once
5+
6+
// Unique keyboard id
7+
#define VIAL_KEYBOARD_UID {0x29, 0x54, 0x15, 0xFC, 0x17, 0xCD, 0xBF, 0x37}
8+
9+
// Unlock with Escape+Enter
10+
#define VIAL_UNLOCK_COMBO_ROWS { 0, 3 }
11+
#define VIAL_UNLOCK_COMBO_COLS { 0, 13 }
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
/* Copyright (C) 2023 jonylee@hfd
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+
17+
#include QMK_KEYBOARD_H
18+
19+
enum __layers {
20+
WIN_B,
21+
WIN_W,
22+
WIN_FN,
23+
MAC_B,
24+
MAC_W,
25+
MAC_FN
26+
};
27+
28+
// clang-format off
29+
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
30+
31+
[WIN_B] = LAYOUT( /* Base */
32+
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_SCRL, KC_PAUS,
33+
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_INS, KC_HOME, KC_PGUP,
34+
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
35+
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
36+
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
37+
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
38+
39+
[WIN_W] = LAYOUT( /* Base */
40+
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
41+
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
42+
_______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
43+
_______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
44+
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_W,
45+
_______, _______, _______, _______, _______, _______, MO(WIN_FN), _______, KC_A, KC_S, KC_D),
46+
47+
48+
[WIN_FN] = LAYOUT( /* FN */
49+
_______, KC_MYCM, KC_MAIL, KC_WSCH, KC_WHOM, KC_MSEL, KC_MPLY, KC_MPRV, KC_MNXT, _______,_______, _______, _______, _______, _______, _______,
50+
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______, _______, _______, _______,
51+
_______, _______,TG(WIN_W),_______, _______, _______, _______, _______, _______, DF(MAC_B),_______,_______, _______, RGB_MOD, _______, _______, _______,
52+
_______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, RGB_HUI,
53+
_______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_VAI,
54+
_______, GU_TOGG, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_VAD, RGB_SAI),
55+
56+
[MAC_B] = LAYOUT( /* Base */
57+
KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, KC_F5, KC_F6, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_PSCR, KC_SCRL, KC_PAUS,
58+
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_INS, KC_HOME, KC_PGUP,
59+
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
60+
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
61+
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
62+
KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
63+
64+
[MAC_W] = LAYOUT( /* Base */
65+
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
66+
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
67+
_______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
68+
_______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
69+
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_W,
70+
_______, _______, _______, _______, _______, _______, MO(MAC_FN), _______, KC_A, KC_S, KC_D),
71+
[MAC_FN] = LAYOUT( /* FN */
72+
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______,
73+
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______, _______, _______, _______,
74+
_______, _______,TG(MAC_W),_______, _______, _______, _______, _______, _______, DF(WIN_B),_______,_______, _______, RGB_MOD, _______, _______, _______,
75+
_______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, RGB_HUI,
76+
_______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_VAI,
77+
_______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_VAD, RGB_SAI)
78+
};
79+
// clang-format on
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
VIA_ENABLE = yes # Enable VIA
2+
VIAL_ENABLE = yes # Enable VIAL
3+
VIALRGB_ENABLE = yes # Enable VIALRGB
Lines changed: 206 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,206 @@
1+
{
2+
"name": "Akko ACR87",
3+
"vendorId": "0xFFFE",
4+
"productId": "0x0010",
5+
"lighting": "vialrgb",
6+
"matrix": { "rows": 6, "cols": 17 },
7+
"layouts": {
8+
"keymap":[
9+
[
10+
{
11+
"c": "#777777"
12+
},
13+
"0,0",
14+
{
15+
"x": 1,
16+
"c": "#aaaaaa"
17+
},
18+
"0,1",
19+
"0,2",
20+
"0,3",
21+
"0,4",
22+
{
23+
"x": 0.5
24+
},
25+
"0,5",
26+
"0,6",
27+
"0,7",
28+
"0,8",
29+
{
30+
"x": 0.5
31+
},
32+
"0,9",
33+
"0,10",
34+
"0,11",
35+
"0,12",
36+
{
37+
"x": 0.25
38+
},
39+
"0,14",
40+
"0,15",
41+
"0,16"
42+
],
43+
[
44+
{
45+
"y": 0.25,
46+
"c": "#cccccc"
47+
},
48+
"1,0",
49+
"1,1",
50+
"1,2",
51+
"1,3",
52+
"1,4",
53+
"1,5",
54+
"1,6",
55+
"1,7",
56+
"1,8",
57+
"1,9",
58+
"1,10",
59+
"1,11",
60+
"1,12",
61+
{
62+
"c": "#aaaaaa",
63+
"w": 2
64+
},
65+
"1,13",
66+
{
67+
"x": 0.25
68+
},
69+
"1,14",
70+
"1,15",
71+
"1,16"
72+
],
73+
[
74+
{
75+
"w": 1.5
76+
},
77+
"2,0",
78+
{
79+
"c": "#cccccc"
80+
},
81+
"2,1",
82+
"2,2",
83+
"2,3",
84+
"2,4",
85+
"2,5",
86+
"2,6",
87+
"2,7",
88+
"2,8",
89+
"2,9",
90+
"2,10",
91+
"2,11",
92+
"2,12",
93+
{
94+
"w": 1.5
95+
},
96+
"2,13",
97+
{
98+
"x": 0.25,
99+
"c": "#aaaaaa"
100+
},
101+
"2,14",
102+
"2,15",
103+
"2,16"
104+
],
105+
[
106+
{
107+
"w": 1.75
108+
},
109+
"3,0",
110+
{
111+
"c": "#cccccc"
112+
},
113+
"3,1",
114+
"3,2",
115+
"3,3",
116+
"3,4",
117+
"3,5",
118+
"3,6",
119+
"3,7",
120+
"3,8",
121+
"3,9",
122+
"3,10",
123+
"3,11",
124+
{
125+
"c": "#777777",
126+
"w": 2.25
127+
},
128+
"3,13"
129+
],
130+
[
131+
{
132+
"c": "#aaaaaa",
133+
"w": 2.25
134+
},
135+
"4,0",
136+
{
137+
"c": "#cccccc"
138+
},
139+
"4,1",
140+
"4,2",
141+
"4,3",
142+
"4,4",
143+
"4,5",
144+
"4,6",
145+
"4,7",
146+
"4,8",
147+
"4,9",
148+
"4,10",
149+
{
150+
"c": "#aaaaaa",
151+
"w": 2.75
152+
},
153+
"4,13",
154+
{
155+
"x": 1.25,
156+
"c": "#777777"
157+
},
158+
"4,15"
159+
],
160+
[
161+
{
162+
"c": "#aaaaaa",
163+
"w": 1.25
164+
},
165+
"5,0",
166+
{
167+
"w": 1.25
168+
},
169+
"5,1",
170+
{
171+
"w": 1.25
172+
},
173+
"5,2",
174+
{
175+
"c": "#777777",
176+
"w": 6.25
177+
},
178+
"5,5",
179+
{
180+
"c": "#aaaaaa",
181+
"w": 1.25
182+
},
183+
"5,9",
184+
{
185+
"w": 1.25
186+
},
187+
"5,10",
188+
{
189+
"w": 1.25
190+
},
191+
"5,11",
192+
{
193+
"w": 1.25
194+
},
195+
"5,13",
196+
{
197+
"x": 0.25,
198+
"c": "#777777"
199+
},
200+
"5,14",
201+
"5,15",
202+
"5,16"
203+
]
204+
]
205+
}
206+
}

0 commit comments

Comments
 (0)