Merge remote-tracking branch 'origin/develop' into xap

This commit is contained in:
QMK Bot 2023-12-23 23:46:09 +00:00
commit 61f618e3ac
83 changed files with 557 additions and 379 deletions

View File

@ -464,6 +464,9 @@
"montsinger/rebound": {
"target": "montsinger/rebound/rev1"
},
"moonlander": {
"target": "zsa/moonlander"
},
"mschwingen/modelm": {
"target": "ibm/model_m/mschwingen"
},
@ -975,9 +978,21 @@
"ls_60": {
"target": "weirdo/ls_60"
},
"lpad": {
"target": "laneware/lpad"
},
"lw67": {
"target": "laneware/lw67"
},
"lw75": {
"target": "laneware/lw75"
},
"m3n3van": {
"target": "matthewdias/m3n3van"
},
"macro1": {
"target": "laneware/macro1"
},
"massdrop/thekey": {
"target": "drop/thekey/v1"
},
@ -1125,6 +1140,9 @@
"rabbit_capture_plan": {
"target": "kakunpc/rabbit_capture_plan"
},
"raindrop": {
"target": "laneware/raindrop"
},
"ramonimbao/aelith": {
"target": "rmi_kb/aelith"
},

View File

@ -10,11 +10,11 @@ A Macro Keyboard with a RHS rotary encoder, made and sold by Laneware Peripheral
Make example for this keyboard (after setting up your build environment):
make lpad:default
make laneware/lpad:default
Flashing example for this keyboard:
make lpad:default:flash
make laneware/lpad:default:flash
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).

View File

@ -1,18 +1,5 @@
/* Copyright 2021 Laneware Peripherals
*
* 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/>.
*/
// Copyright 2023 Laneware Peripherals
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H

View File

@ -1,18 +1,5 @@
/* Copyright 2021 Laneware Peripherals
*
* 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/>.
*/
// Copyright 2023 Laneware Peripherals
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
@ -26,14 +13,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
[1] = LAYOUT_iso(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[2] = LAYOUT_iso(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,

View File

@ -1,18 +1,5 @@
/* Copyright 2021 Laneware Peripherals
*
* 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/>.
*/
// Copyright 2023 Laneware Peripherals
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H

View File

@ -10,7 +10,7 @@ A 65% Keyboard with a LHS rotary encoder, made and sold by Laneware Peripherals.
Make example for this keyboard (after setting up your build environment):
make lw67:default
make laneware/lw67:default
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).

View File

@ -10,10 +10,10 @@ A 75% Keyboard with a LHS rotary encoder, made and sold by Laneware Peripherals.
Make example for this keyboard (after setting up your build environment):
make lw75:default
make laneware/lw75:default
Flashing example for this keyboard:
make lw75:default:flash
make laneware/lw75:default:flash
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).

View File

@ -1,18 +1,5 @@
/* Copyright 2021 Laneware Peripherals
*
* 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/>.
*/
// Copyright 2023 Laneware Peripherals
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H

View File

@ -1,18 +1,5 @@
/* Copyright 2021 Laneware Peripherals
*
* 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/>.
*/
// Copyright 2023 Laneware Peripherals
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H

View File

@ -10,7 +10,7 @@ A versitile numpad/macropad (14x6) with a rotary encoder, made and sold by Lanew
Make example for this keyboard (after setting up your build environment):
make macro1:default
make laneware/macro1:default
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).

View File

@ -21,11 +21,11 @@ The Raindrop PCB can be configured in the following key layouts:
Make example for this keyboard (after setting up your build environment):
make raindrop:default
make laneware/raindrop:default
Flashing example for this keyboard:
make raindrop:default:flash
make laneware/raindrop:default:flash
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).

View File

@ -0,0 +1,102 @@
{
"manufacturer": "lucky_studio",
"keyboard_name": "kafka68",
"maintainer": "yuezp",
"development_board": "bluepill",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["A10", "B7", "B6", "B5", "B4", "B3", "A15", "B0", "A7", "A6", "A5", "A4", "A3", "B1", "B10", "B11"],
"rows": ["B13", "B14", "B15", "A8", "A9"]
},
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0xAA07",
"vid": "0xBB07"
},
"community_layouts": ["68_ansi"],
"layouts": {
"LAYOUT_68_ansi": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
{"matrix": [0, 2], "x": 2, "y": 0},
{"matrix": [0, 3], "x": 3, "y": 0},
{"matrix": [0, 4], "x": 4, "y": 0},
{"matrix": [0, 5], "x": 5, "y": 0},
{"matrix": [0, 6], "x": 6, "y": 0},
{"matrix": [0, 7], "x": 7, "y": 0},
{"matrix": [0, 8], "x": 8, "y": 0},
{"matrix": [0, 9], "x": 9, "y": 0},
{"matrix": [0, 10], "x": 10, "y": 0},
{"matrix": [0, 11], "x": 11, "y": 0},
{"matrix": [0, 12], "x": 12, "y": 0},
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
{"matrix": [0, 14], "x": 15.25, "y": 0},
{"matrix": [0, 15], "x": 16.25, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
{"matrix": [1, 1], "x": 1.5, "y": 1},
{"matrix": [1, 2], "x": 2.5, "y": 1},
{"matrix": [1, 3], "x": 3.5, "y": 1},
{"matrix": [1, 4], "x": 4.5, "y": 1},
{"matrix": [1, 5], "x": 5.5, "y": 1},
{"matrix": [1, 6], "x": 6.5, "y": 1},
{"matrix": [1, 7], "x": 7.5, "y": 1},
{"matrix": [1, 8], "x": 8.5, "y": 1},
{"matrix": [1, 9], "x": 9.5, "y": 1},
{"matrix": [1, 10], "x": 10.5, "y": 1},
{"matrix": [1, 11], "x": 11.5, "y": 1},
{"matrix": [1, 12], "x": 12.5, "y": 1},
{"matrix": [1, 13], "x": 12.5, "y": 1, "w": 1.5},
{"matrix": [1, 14], "x": 15.25, "y": 1},
{"matrix": [1, 15], "x": 16.25, "y": 1},
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
{"matrix": [2, 1], "x": 1.75, "y": 2},
{"matrix": [2, 2], "x": 2.75, "y": 2},
{"matrix": [2, 3], "x": 3.75, "y": 2},
{"matrix": [2, 4], "x": 4.75, "y": 2},
{"matrix": [2, 5], "x": 5.75, "y": 2},
{"matrix": [2, 6], "x": 6.75, "y": 2},
{"matrix": [2, 7], "x": 7.75, "y": 2},
{"matrix": [2, 8], "x": 8.75, "y": 2},
{"matrix": [2, 9], "x": 9.75, "y": 2},
{"matrix": [2, 10], "x": 10.75, "y": 2},
{"matrix": [2, 11], "x": 11.75, "y": 2},
{"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
{"matrix": [3, 1], "x": 2.25, "y": 3},
{"matrix": [3, 2], "x": 3.25, "y": 3},
{"matrix": [3, 3], "x": 4.25, "y": 3},
{"matrix": [3, 4], "x": 5.25, "y": 3},
{"matrix": [3, 5], "x": 6.25, "y": 3},
{"matrix": [3, 6], "x": 7.25, "y": 3},
{"matrix": [3, 7], "x": 8.25, "y": 3},
{"matrix": [3, 8], "x": 9.25, "y": 3},
{"matrix": [3, 9], "x": 10.25, "y": 3},
{"matrix": [3, 10], "x": 11.25, "y": 3},
{"matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
{"matrix": [3, 14], "x": 15.25, "y": 3},
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
{"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
{"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
{"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
{"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
{"matrix": [4, 13], "x": 14.25, "y": 4},
{"matrix": [4, 14], "x": 15.25, "y": 4},
{"matrix": [4, 15], "x": 16.25, "y": 4}
]
}
}
}

View File

@ -0,0 +1,35 @@
/* Copyright 2022 LXF-YZP(yuezp)
*
* 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
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0]=LAYOUT_68_ansi(
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_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_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,
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,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RGHT),
[1]=LAYOUT_68_ansi(
KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
};

View File

@ -0,0 +1,35 @@
/* Copyright 2022 LXF-YZP(yuezp)
*
* 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
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0]=LAYOUT_68_ansi(
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_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_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,
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,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RGHT),
[1]=LAYOUT_68_ansi(
KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
};

View File

@ -0,0 +1 @@
VIA_ENABLE = yes

View File

@ -0,0 +1,16 @@
# Matrix Diagram for kafka68
```
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┬───┐
│00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D ││0E │0F │
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┼───┤
│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D ││1E │1F │
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤└───┴───┘
│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │
├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤┌───┐
│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3C ││3E │
├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬───┬──┬──┴┼───┼───┐
│40 │41 │42 │45 │49 │4A │4B │ │4D │4E │4F │
└────┴────┴────┴────────────────────────┴────┴────┴───┘ └───┴───┴───┘
```

View File

@ -0,0 +1,26 @@
# kafka68 - PCB
![kafka68](https://i.imgur.com/5w8fESLh.jpg)
A 68 key keyboard made by Lucky, based on hhkb layout.
* Keyboard Maintainer: https://github.com/LXF-YZP
* Hardware Supported: Lucky PCB
Make example for this keyboard (after setting up your build environment):
make meetlab/kafka68:default
Flashing example for this keyboard:
make meetlab/kafka68:default:flash
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).
## Bootloader
Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available

View File

@ -0,0 +1 @@
# This file intentionally left blank

View File

@ -1,19 +0,0 @@
/* Copyright 2020 Sönke Hahn <SoenkeHahn@gmail.com>
*
* 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
#define ORYX_CONFIGURATOR

View File

@ -1,121 +0,0 @@
/* Copyright 2020 Sönke Hahn <SoenkeHahn@gmail.com>
*
* 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
#include "version.h"
enum layers {
BASE, // default layer
L_3,
L_4,
};
enum custom_keycodes {
a_umlaut = SAFE_RANGE,
o_umlaut,
u_umlaut,
eszett,
};
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[BASE] = LAYOUT_moonlander(
XXXXXXX, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , XXXXXXX, XXXXXXX, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , XXXXXXX,
KC_TAB , KC_X , KC_V , KC_L , KC_C , KC_W , XXXXXXX, XXXXXXX, KC_K , KC_H , KC_G , KC_F , KC_Q , eszett ,
XXXXXXX, KC_U , KC_I , KC_A , KC_E , KC_O , XXXXXXX, XXXXXXX, KC_S , KC_N , KC_R , KC_T , KC_D , KC_Y ,
XXXXXXX, u_umlaut, o_umlaut, a_umlaut, KC_P , KC_Z , KC_B , KC_M , KC_COMM, KC_DOT , KC_J , XXXXXXX,
XXXXXXX, XXXXXXX , XXXXXXX , KC_LGUI , MO(L_4), XXXXXXX, XXXXXXX, MO(L_4), KC_RGUI, XXXXXXX, XXXXXXX, XXXXXXX,
KC_LCTL, KC_LSFT, MO(L_3), MO(L_3), KC_RSFT, KC_SPC
),
[L_3] = LAYOUT_moonlander(
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, KC_UNDS, KC_LBRC, KC_RBRC, KC_CIRC, XXXXXXX, XXXXXXX, KC_EXLM, KC_LABK, KC_RABK, KC_EQL , KC_AMPR, XXXXXXX,
XXXXXXX, KC_BSLS, KC_SLSH, KC_LCBR, KC_RCBR, KC_ASTR, XXXXXXX, XXXXXXX, KC_QUES, KC_LPRN, KC_RPRN, KC_MINS, KC_COLN, KC_AT ,
XXXXXXX, KC_HASH, KC_DLR , KC_PIPE, KC_TILD, KC_GRV , KC_PLUS, KC_PERC, KC_DQUO, KC_QUOT, KC_SCLN, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
),
[L_4] = LAYOUT_moonlander(
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, KC_PGUP, KC_BSPC, KC_UP , KC_DEL , KC_PGDN, XXXXXXX, XXXXXXX, XXXXXXX, KC_7 , KC_8 , KC_9 , XXXXXXX, XXXXXXX,
XXXXXXX, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END , XXXXXXX, XXXXXXX, XXXXXXX, KC_4 , KC_5 , KC_6 , XXXXXXX, XXXXXXX,
XXXXXXX, KC_ESC , KC_TAB , XXXXXXX, KC_ENT , XXXXXXX, XXXXXXX, KC_1 , KC_2 , KC_3 , XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_0
),
};
layer_state_t layer_state_set_user(layer_state_t state) {
ML_LED_1(false);
ML_LED_2(false);
ML_LED_3(false);
ML_LED_4(false);
ML_LED_5(false);
ML_LED_6(false);
switch (get_highest_layer(state)) {
case 1:
ML_LED_1(1);
ML_LED_4(1);
break;
case 2:
ML_LED_2(1);
ML_LED_5(1);
break;
case 3:
ML_LED_3(1);
break;
case 4:
ML_LED_4(1);
break;
case 5:
ML_LED_5(1);
break;
case 6:
ML_LED_6(1);
break;
default:
break;
}
return state;
}
// only works after executing
// $ xmodmap -e "keycode 138 = Multi_key"
#define compose_key SS_TAP(X_MENU)
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
switch (keycode) {
case a_umlaut:
SEND_STRING(compose_key "\"a");
return false;
case o_umlaut:
SEND_STRING(compose_key "\"o");
return false;
case u_umlaut:
SEND_STRING(compose_key "\"u");
return false;
case eszett:
SEND_STRING(compose_key "ss");
return false;
}
}
return true;
}

View File

@ -1,16 +0,0 @@
# Sönke Hahn's Neo layout for the Moonlander keyboard
This is my personal keyboard layout based on the Neo keyboard layout:
https://en.wikipedia.org/wiki/Neo_(keyboard_layout)
This layout is not meant as a general layout for other people using the
Neo keyboard layout. It's very specific to my personal needs.
It still might be useful as inspiration to other people who want to
create a Neo layout.
Some notes:
- I've put the ctrl key, the shift keys and the modifiers to switch to
layer 4 in the middle to be operated by the thumbs. I wanted to avoid
having to use my pinkies on the outer rows of the keyboard.
- The umlauts (äöü) and the ß only work on linux when configuring the
compose key properly. See `compose_key` in `./keymap.c`.

View File

@ -0,0 +1,6 @@
// Copyright 2023 Jesse Leventhal (@The=Mad-Noodle)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL + 5

View File

@ -1,59 +1,52 @@
{
"keyboard_name": "Noodle Pad v1",
"manufacturer": "The Mad Noodle",
"url": "instagram.com/the_mad_noodle",
"maintainer": "The-Mad-Noodle",
"usb": {
"vid": "0xFEED",
"pid": "0x1701",
"device_version": "0.0.1"
},
"matrix_pins": {
"cols": ["B4", "B5", "B6"],
"rows": ["D4", "D6", "D7"]
},
"diode_direction": "ROW2COL",
"encoder": {
"rotary": [
{"pin_a": "D0", "pin_b": "D1"}
]
},
"rgblight": {
"led_count": 4,
"sleep": true,
"animations": {
"breathing": true,
"rainbow_mood": true,
"rainbow_swirl": true,
"snake": true,
"knight": true,
"christmas": true,
"static_gradient": true,
"rgb_test": true,
"alternating": true,
"twinkle": true
}
},
"ws2812": {
"pin": "B7"
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {
"LAYOUT_ortho_3x3": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
{"matrix": [0, 2], "x": 2, "y": 0},
"manufacturer": "The Mad Noodle",
"keyboard_name": "NoodlePad",
"maintainer": "The-Mad-Noodle",
"url": "https://www.madnoodleprototypes.com/",
"bootloader": "atmel-dfu",
"processor": "atmega32u4",
"diode_direction": "ROW2COL",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true,
"rgblight": true,
"encoder": true
},
"rgblight": {
"hue_steps": 10,
"led_count": 4,
"sleep": true,
"animations": {
"breathing": true,
"rainbow_mood": true,
"rainbow_swirl": true,
"snake": true,
"knight": true,
"christmas": true,
"static_gradient": true,
"rgb_test": true,
"alternating": true,
"twinkle": true
}
},
"layouts": {
"LAYOUT_ortho_3x3": {
"layout": [
{"x":0, "y":0, "matrix": [0,0]},
{"label":"Encoder", "x":1, "y":0, "matrix": [0,1]},
{"x":2, "y":0, "matrix": [0,2]},
{"x":0, "y":1, "matrix": [1,0]},
{"x":1, "y":1, "matrix": [1,1]},
{"x":2, "y":1, "matrix": [1,2]},
{"x":0, "y":2, "matrix": [2,0]},
{"x":1, "y":2, "matrix": [2,1]},
{"x":2, "y":2, "matrix": [2,2]}
]
}
},
{"matrix": [1, 0], "x": 0, "y": 1},
{"matrix": [1, 1], "x": 1, "y": 1},
{"matrix": [1, 2], "x": 2, "y": 1},
{"matrix": [2, 0], "x": 0, "y": 2},
{"matrix": [2, 1], "x": 1, "y": 2},
{"matrix": [2, 2], "x": 2, "y": 2}
]
}
}
}
}

View File

@ -1,10 +1,13 @@
// Copyright 2023 The Mad Noodle(@the_mad_noodle)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* LAYER 0
* ,-----------------------.
* | << | MUTE | >> | ENCODER - PRESS (MUTE) / KNOB (VOLUME CONTROL)
* ,-------|ENCODER|-------.
* | << | MUTE | >> |
* |-------+-------+-------|
* | STOP | PLAY | MEDIA |
* |-------+-------+-------|
@ -13,72 +16,70 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/
[0] = LAYOUT_ortho_3x3(
KC_MPRV, LT(2, KC_MUTE), KC_MNXT,
KC_MPRV, LT(2, KC_MUTE), KC_MNXT,
KC_MSTP, KC_MPLY, KC_MSEL,
KC_CALC, KC_MAIL, LT(1, KC_MYCM)
),
/* LAYER 1
* ,-----------------------.
* | MODE+ |RGB TOG| MODE- | ENCODER - PRESS (NA) / KNOB (Hue Control)
* ,-------|ENCODER|-------.
* | MODE+ |RGB TOG| MODE- |
* |-------+-------+-------|
* | SPD- | SPD+ |Bright |
* |Bright-| PLAIN |Bright+|
* |-------+-------+-------|
* | SAT+ | SAT- | |
* | SWIRL |BREATH | |
* `-----------------------'
*/
[1] = LAYOUT_ortho_3x3(
RGB_MOD, RGB_TOG, RGB_RMOD,
RGB_SPI, RGB_SPD, RGB_VAI,
RGB_SAI, RGB_SAD, KC_TRNS
RGB_MOD, RGB_TOG, RGB_RMOD,
RGB_VAD, RGB_M_P, RGB_VAI,
LT(3,RGB_M_SW), RGB_M_B, KC_TRNS
),
/* LAYER 2 (ENCODER)
* ,-----------------------.
* | | | | ENCODER - PRESS (NA) / KNOB (Arrow Left/Right)
/* LAYER 2
* ,-------|ENCODER|-------.
* | | | |
* |-------+-------+-------|
* | | | |
* |-------+-------+-------|
* | | | |
* `-----------------------'
*/
[2] = LAYOUT_ortho_3x3(
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS
),
/* LAYER 3
* ,-------|ENCODER|-------.
* | | | |
* |-------+-------+-------|
* | | | |
* |-------+-------+-------|
* | | | |
* `-----------------------'
*/
[3] = LAYOUT_ortho_3x3(
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS
)
};
bool encoder_update_user(uint8_t index, bool clockwise) {
switch (get_highest_layer(layer_state)) {
case 1:
if (clockwise) {
rgblight_increase_hue();
} else {
rgblight_decrease_hue();
}
break;
case 2:
if (clockwise) {
tap_code(KC_RGHT);
} else {
tap_code(KC_LEFT);
}
break;
default:
if (clockwise) {
tap_code(KC_VOLU);
} else {
tap_code(KC_VOLD);
}
break;
}
return true;
}
/*Encoder Mapping*/
#if defined(ENCODER_MAP_ENABLE)
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
[1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) },
[2] = { ENCODER_CCW_CW(KC_LEFT, KC_RGHT) },
[3] = { ENCODER_CCW_CW(RGB_SAD, RGB_SAI) },
};
#endif

View File

@ -0,0 +1 @@
ENCODER_MAP_ENABLE = yes

View File

@ -0,0 +1,85 @@
// Copyright 2023 The Mad Noodle(@the_mad_noodle)
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* LAYER 0
* ,-------|ENCODER|-------.
* | << | MUTE | >> |
* |-------+-------+-------|
* | STOP | PLAY | MEDIA |
* |-------+-------+-------|
* | CALC | MY PC | TO(3) |
* `-----------------------'
*/
[0] = LAYOUT_ortho_3x3(
KC_MPRV, KC_MUTE, KC_MNXT,
KC_MSTP, KC_MPLY, KC_MSEL,
KC_CALC, KC_MYCM, TO(3)
),
/* LAYER 1
* ,-------|ENCODER|-------.
* | MODE+ |RGB TOG| MODE- |
* |-------+-------+-------|
* |Bright-| PLAIN |Bright+|
* |-------+-------+-------|
* | SWIRL |BREATH | TO(0) |
* `-----------------------'
*/
[1] = LAYOUT_ortho_3x3(
RGB_MOD, RGB_TOG, RGB_RMOD,
RGB_VAD, RGB_M_P, RGB_VAI,
RGB_M_SW, RGB_M_B, TO(0)
),
/* LAYER 2
* ,-------|ENCODER|-------.
* | | | |
* |-------+-------+-------|
* | | | |
* |-------+-------+-------|
* | | | TO(0) |
* `-----------------------'
*/
[2] = LAYOUT_ortho_3x3(
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, TO(0)
),
/* LAYER 3
* ,-------|ENCODER|-------.
* | | | |
* |-------+-------+-------|
* | TO(1) | | TO(2) |
* |-------+-------+-------|
* | | | TO(0) |
* `-----------------------'
*/
[3] = LAYOUT_ortho_3x3(
KC_TRNS, KC_TRNS, KC_TRNS,
TO(1), KC_TRNS, TO(2),
KC_TRNS, KC_TRNS, TO(0)
)
};
/*Encoder Mapping*/
#if defined(ENCODER_MAP_ENABLE)
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
[1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI)},
[2] = { ENCODER_CCW_CW(RGB_SAD, RGB_SAI)},
[3] = { ENCODER_CCW_CW(KC_UP, KC_DOWN)},
};
#endif

View File

@ -0,0 +1,2 @@
ENCODER_MAP_ENABLE = yes
VIA_ENABLE = yes

View File

@ -1,17 +0,0 @@
# Noodle Pad v1 Keypad with Encoder
![NoodlePad TOP](https://static.wixstatic.com/media/59d0ff_052f27ee5ae84266821af7277c51c4ed~mv2.jpg)
![NoodlePad RGB](https://static.wixstatic.com/media/59d0ff_c91f2adc258547a38cc5b480a8d9c510~mv2.jpg)
The Noodle Pad by The Mad Noodle Prototypes is a custom 3x3 mechanical keypad with an encoder knob and full RGB Underglow.
* Keyboard Maintainer: [The Mad Noodle Prototypes](https://github.com/The-Mad-Noodle)
* Hardware Supported: NoodlePad PCB, ATmega32U4
* Hardware Availability: [MadNoodlePrototypes.com](https://www.madnoodleprototypes.com/shop)
Make example for this keyboard (after setting up your build environment):
make themadnoodle/noodlepad:default
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).

View File

@ -1,14 +1,3 @@
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
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
NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
UNICODE_ENABLE = yes # Unicode
ENCODER_ENABLE = yes
# Default folder for noodlepad
DEFAULT_FOLDER = themadnoodle/noodlepad/v1

View File

@ -0,0 +1,25 @@
{
"manufacturer": "The Mad Noodle",
"keyboard_name": "NoodlePad v1",
"maintainer": "The-Mad-Noodle",
"url": "https://www.madnoodleprototypes.com/",
"ws2812": {
"pin": "B7"
},
"matrix_pins": {
"rows": ["D4", "D6", "D7"],
"cols": ["B4", "B5", "B6"]
},
"processor": "atmega32u4",
"usb": {
"device_version": "1.0.0",
"pid": "0x0001",
"vid": "0x6A6C"
},
"encoder": {
"rotary": [
{ "pin_a": "D0", "pin_b": "D1" }
]
}
}

View File

@ -0,0 +1,27 @@
# NoodlePad v.1
![NoodPad v1](https://i.imgur.com/dmThaHq.jpg)
The Noodlepad v.1 is a 8 key macro keypad with a push button encoder knob.
* Keyboard Maintainer: [The Mad Noodle](https://github.com/The-Mad-Noodle)
* Hardware Supported: NoodlePad v.1 PCB
* Hardware Availability: https://www.madnoodleprototypes.com/shop
Compile example for this keyboard (after setting up your build environment):
qmk compile -kb themadnoodle/noodlepad/v1 -km default
Flashing example for this keyboard:
qmk flash -kb themadnoodle/noodlepad/v1 -km default
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).
## Bootloader & Flashing
**Physical reset button**:
* Press the physical button located on the top left of the back of the PCB (Labeled RST) to enter Bootloader Mode

View File

@ -0,0 +1 @@
#this file was left intentionally blank

View File

@ -0,0 +1,24 @@
{
"manufacturer": "The Mad Noodle",
"keyboard_name": "NoodlePad v2",
"maintainer": "The-Mad-Noodle",
"url": "https://www.madnoodleprototypes.com/",
"ws2812": {
"pin": "B7"
},
"matrix_pins": {
"cols": ["F0", "B5", "B6"],
"rows": ["F1", "D6", "D7"]
},
"usb": {
"device_version": "2.0.0",
"pid": "0x0002",
"vid": "0x6A6C"
},
"encoder": {
"rotary": [
{ "pin_a": "D0", "pin_b": "D1" }
]
}
}

View File

@ -0,0 +1,27 @@
# NoodlePad v.2
![NoodPad v2](https://i.imgur.com/tzP0tdzh.jpg)
The Noodlepad v.2 is a 8 hotswap key macro keypad with a push button encoder knob.
* Keyboard Maintainer: [The Mad Noodle](https://github.com/The-Mad-Noodle)
* Hardware Supported: NoodlePad v.2 PCB
* Hardware Availability: https://www.madnoodleprototypes.com/shop
Compile example for this keyboard (after setting up your build environment):
qmk compile -kb themadnoodle/noodlepad/v2 -km default
Flashing example for this keyboard:
qmk flash -kb themadnoodle/noodlepad/v2 -km default
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).
## Bootloader & Flashing
**Physical reset button**:
* Press the physical button located on the top left of the back of the PCB (Labeled RST) to enter Bootloader Mode

View File

@ -0,0 +1 @@
#this file was left intentionally blank

View File

@ -1,6 +1,6 @@
# Moonlander
![Moonlander](https://zsa.io/static/gallery-white-case-7a2ef555f8f7f4ce1b9030477b16e517.png)
![Moonlander](https://i.imgur.com/st2PCgph.png)
A next-gen split, ergonomic keyboard with an active left side, USB type C, integrated wrist rest, and a thumb cluster that can move.
@ -11,11 +11,11 @@ A next-gen split, ergonomic keyboard with an active left side, USB type C, integ
Make example for this keyboard (after setting up your build environment):
make moonlander:default
make zsa/moonlander:default
Flashing example for this keyboard:
make moonlander:default:flash
make zsa/moonlander:default:flash
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).
@ -55,4 +55,4 @@ void housekeeping_task_user(void) {
// set layer
}
}
```
```