summaryrefslogtreecommitdiff
path: root/keyboards/handwired
diff options
context:
space:
mode:
authorLucasMateijsen <l.mateijsen@outlook.com>2025-04-28 05:58:47 +0200
committerGitHub <noreply@github.com>2025-04-27 20:58:47 -0700
commitac8b914a11e84b73332e191a675c85355432aa77 (patch)
treea7e34bf45fd46b9a788202bcc3b2d7054541e051 /keyboards/handwired
parentde598ac8f08a70c7e6f9f28b4b29453284e562ac (diff)
Add handwired 4x14 LuMaWing keyboard (#24885)
Diffstat (limited to 'keyboards/handwired')
-rw-r--r--keyboards/handwired/lumawing/keyboard.json94
-rw-r--r--keyboards/handwired/lumawing/keymaps/default/keymap.c70
-rw-r--r--keyboards/handwired/lumawing/readme.md15
3 files changed, 179 insertions, 0 deletions
diff --git a/keyboards/handwired/lumawing/keyboard.json b/keyboards/handwired/lumawing/keyboard.json
new file mode 100644
index 0000000000..a99d6d2a2e
--- /dev/null
+++ b/keyboards/handwired/lumawing/keyboard.json
@@ -0,0 +1,94 @@
1{
2 "keyboard_name": "LuMaWing",
3 "manufacturer": "Lucas Mateijsen",
4 "url": "",
5 "maintainer": "qmk",
6 "usb": {
7 "vid": "0xBB80",
8 "pid": "0x050D",
9 "device_version": "0.0.1"
10 },
11 "features": {
12 "bootmagic": true,
13 "command": true,
14 "console": false,
15 "extrakey": true,
16 "mousekey": true,
17 "nkro": false
18 },
19 "qmk": {
20 "locking": {
21 "enabled": true,
22 "resync": true
23 }
24 },
25 "matrix_pins": {
26 "cols": ["B1", "B3", "B2", "B6", "B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"],
27 "rows": ["F4", "F5", "F6", "F7"]
28 },
29 "diode_direction": "COL2ROW",
30 "development_board": "promicro",
31 "layouts": {
32 "LAYOUT": {
33 "layout": [
34 {"matrix": [0, 0], "x": 0, "y": 0},
35 {"matrix": [0, 1], "x": 1, "y": 0},
36 {"matrix": [0, 2], "x": 2, "y": 0},
37 {"matrix": [0, 3], "x": 3, "y": 0},
38 {"matrix": [0, 4], "x": 4, "y": 0},
39 {"matrix": [0, 5], "x": 5, "y": 0},
40 {"matrix": [0, 6], "x": 6, "y": 0},
41 {"matrix": [0, 7], "x": 7, "y": 0},
42 {"matrix": [0, 8], "x": 8, "y": 0},
43 {"matrix": [0, 9], "x": 9, "y": 0},
44 {"matrix": [0, 10], "x": 10, "y": 0},
45 {"matrix": [0, 11], "x": 11, "y": 0},
46 {"matrix": [0, 12], "x": 12, "y": 0},
47 {"matrix": [0, 13], "x": 13, "y": 0},
48
49 {"matrix": [1, 0], "x": 0, "y": 1},
50 {"matrix": [1, 1], "x": 1, "y": 1},
51 {"matrix": [1, 2], "x": 2, "y": 1},
52 {"matrix": [1, 3], "x": 3, "y": 1},
53 {"matrix": [1, 4], "x": 4, "y": 1},
54 {"matrix": [1, 5], "x": 5, "y": 1},
55 {"matrix": [1, 6], "x": 6, "y": 1},
56 {"matrix": [1, 7], "x": 7, "y": 1},
57 {"matrix": [1, 8], "x": 8, "y": 1},
58 {"matrix": [1, 9], "x": 9, "y": 1},
59 {"matrix": [1, 10], "x": 10, "y": 1},
60 {"matrix": [1, 11], "x": 11, "y": 1},
61 {"matrix": [1, 12], "x": 12, "y": 1},
62 {"matrix": [1, 13], "x": 13, "y": 1},
63
64 {"matrix": [2, 0], "x": 0, "y": 2},
65 {"matrix": [2, 1], "x": 1, "y": 2},
66 {"matrix": [2, 2], "x": 2, "y": 2},
67 {"matrix": [2, 3], "x": 3, "y": 2},
68 {"matrix": [2, 4], "x": 4, "y": 2},
69 {"matrix": [2, 5], "x": 5, "y": 2},
70 {"matrix": [2, 6], "x": 6, "y": 2},
71 {"matrix": [2, 7], "x": 7, "y": 2},
72 {"matrix": [2, 8], "x": 8, "y": 2},
73 {"matrix": [2, 9], "x": 9, "y": 2},
74 {"matrix": [2, 10], "x": 10, "y": 2},
75 {"matrix": [2, 11], "x": 11, "y": 2},
76 {"matrix": [2, 12], "x": 12, "y": 2},
77 {"matrix": [2, 13], "x": 13, "y": 2},
78
79 {"matrix": [3, 0], "x": 0, "y": 3},
80 {"matrix": [3, 1], "x": 1, "y": 3},
81 {"matrix": [3, 2], "x": 2, "y": 3},
82 {"matrix": [3, 3], "x": 3, "y": 3},
83 {"matrix": [3, 4], "x": 4, "y": 3},
84 {"matrix": [3, 6], "x": 5, "y": 3, "w": 2},
85 {"matrix": [3, 7], "x": 7, "y": 3, "w": 2},
86 {"matrix": [3, 9], "x": 9, "y": 3},
87 {"matrix": [3, 10], "x": 10, "y": 3},
88 {"matrix": [3, 11], "x": 11, "y": 3},
89 {"matrix": [3, 12], "x": 12, "y": 3},
90 {"matrix": [3, 13], "x": 13, "y": 3}
91 ]
92 }
93 }
94}
diff --git a/keyboards/handwired/lumawing/keymaps/default/keymap.c b/keyboards/handwired/lumawing/keymaps/default/keymap.c
new file mode 100644
index 0000000000..c9d1367c8c
--- /dev/null
+++ b/keyboards/handwired/lumawing/keymaps/default/keymap.c
@@ -0,0 +1,70 @@
1/* Copyright 2021 Richard Nunez <l.mateijsen@outlook.com>
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#define KC_COPY LCTL(KC_C)
20#define KC_CUT LCTL(KC_X)
21#define KC_PSTE LCTL(KC_V)
22
23#define KC_UNDO LCTL(KC_Z)
24#define KC_AGIN LCTL(KC_Y)
25
26enum layer_names {
27 _COLEMAKDH,
28 _QWERTY,
29 _NUMBERS,
30 _FUNCTIONAL,
31 _ADMIN
32};
33
34 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
35
36 [_COLEMAKDH] = LAYOUT(
37 KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_B, XXXXXXX, XXXXXXX, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL,
38 KC_TAB, KC_A, KC_R, KC_S, KC_T, KC_G, XXXXXXX, XXXXXXX, KC_M, KC_N, KC_E, KC_I, KC_O, KC_BSPC,
39 KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, XXXXXXX, XXXXXXX, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
40 KC_LCTL, XXXXXXX, KC_LGUI, KC_LALT, MO(3), KC_SPC, KC_ENT, MO(2), KC_RALT, KC_RGUI, XXXXXXX, KC_ENT
41 ),
42
43 [_QWERTY] = LAYOUT(
44 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
45 KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_DEL,
46 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
47 KC_LCTL, XXXXXXX, KC_LGUI, KC_LALT, MO(3), KC_SPC, KC_ENT, MO(2), KC_RALT, KC_RGUI, XXXXXXX, KC_ENT
48 ),
49
50 [_NUMBERS] = LAYOUT(
51 KC_ESC, 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,
52 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_QUOT, KC_LBRC, KC_RBRC, XXXXXXX, XXXXXXX,
53 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
54 _______, XXXXXXX, XXXXXXX, _______, MO(4), _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX
55 ),
56
57 [_FUNCTIONAL] = LAYOUT(
58 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX,
59 XXXXXXX, KC_UNDO, KC_CUT, KC_COPY, KC_PSTE, KC_AGIN, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX,
60 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
61 _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX
62 ),
63
64 [_ADMIN] = LAYOUT(
65 QK_BOOT, DF(0), DF(1), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
66 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, XXXXXXX, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
67 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
68 _______, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX
69 )
70};
diff --git a/keyboards/handwired/lumawing/readme.md b/keyboards/handwired/lumawing/readme.md
new file mode 100644
index 0000000000..aea5dab4ac
--- /dev/null
+++ b/keyboards/handwired/lumawing/readme.md
@@ -0,0 +1,15 @@
1# LuMaWing handwired
2
3Custom handwired LuMaWing keyboard.
4
5* Keyboard Maintainer: [Lucas Mateijsen](https://github.com/LucasMateijsen/)
6* Hardware Supported: Handwired LuMaWing 14x4 ortho keyboard Pro-Micro
7* Hardware Availability:
8
9Make example for this keyboard (after setting up your build environment):
10
11 make handwired/ortho4x14:default
12
13See 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).
14
15To get into the Bootloader, simply hold down the top-left key (pos 0, 0) and power the board.