From b7a6586b1b8c2ac3d3c3cc75db733a8c16d62903 Mon Sep 17 00:00:00 2001 From: Linus Nibell Date: Thu, 21 Dec 2023 16:20:53 +0100 Subject: [PATCH] added mpad16 --- keyboards/nibell/mpad16/config.h | 20 ++++++++ keyboards/nibell/mpad16/info.json | 48 +++++++++++++++++++ .../nibell/mpad16/keymaps/default/keymap.c | 24 ++++++++++ keyboards/nibell/mpad16/readme.md | 27 +++++++++++ keyboards/nibell/mpad16/rules.mk | 1 + 5 files changed, 120 insertions(+) create mode 100644 keyboards/nibell/mpad16/config.h create mode 100644 keyboards/nibell/mpad16/info.json create mode 100644 keyboards/nibell/mpad16/keymaps/default/keymap.c create mode 100644 keyboards/nibell/mpad16/readme.md create mode 100644 keyboards/nibell/mpad16/rules.mk diff --git a/keyboards/nibell/mpad16/config.h b/keyboards/nibell/mpad16/config.h new file mode 100644 index 00000000000..fb97bb0304c --- /dev/null +++ b/keyboards/nibell/mpad16/config.h @@ -0,0 +1,20 @@ +// Copyright 2023 nibell (@Linus Nibell) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT diff --git a/keyboards/nibell/mpad16/info.json b/keyboards/nibell/mpad16/info.json new file mode 100644 index 00000000000..36d1a2c20a9 --- /dev/null +++ b/keyboards/nibell/mpad16/info.json @@ -0,0 +1,48 @@ +{ + "manufacturer": "nibell", + "keyboard_name": "nibell/mpad16", + "maintainer": "Linus Nibell", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["C2", "C2", "C2", "C2"], + "rows": ["D1", "D1", "D1", "D1"] + }, + "processor": "RP2040", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x0000", + "vid": "0xFEED" + }, + "layouts": { + "LAYOUT_ortho_4x4": { + "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": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3} + ] + } + } +} diff --git a/keyboards/nibell/mpad16/keymaps/default/keymap.c b/keyboards/nibell/mpad16/keymaps/default/keymap.c new file mode 100644 index 00000000000..53ae7925cd0 --- /dev/null +++ b/keyboards/nibell/mpad16/keymaps/default/keymap.c @@ -0,0 +1,24 @@ +// Copyright 2023 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┬───┬───┬───┐ + * │ 7 │ 8 │ 9 │ / │ + * ├───┼───┼───┼───┤ + * │ 4 │ 5 │ 6 │ * │ + * ├───┼───┼───┼───┤ + * │ 1 │ 2 │ 3 │ - │ + * ├───┼───┼───┼───┤ + * │ 0 │ . │Ent│ + │ + * └───┴───┴───┴───┘ + */ + [0] = LAYOUT_ortho_4x4( + KC_P7, KC_P8, KC_P9, KC_PSLS, + KC_P4, KC_P5, KC_P6, KC_PAST, + KC_P1, KC_P2, KC_P3, KC_PMNS, + KC_P0, KC_PDOT, KC_PENT, KC_PPLS + ) +}; diff --git a/keyboards/nibell/mpad16/readme.md b/keyboards/nibell/mpad16/readme.md new file mode 100644 index 00000000000..d2f3928f9f0 --- /dev/null +++ b/keyboards/nibell/mpad16/readme.md @@ -0,0 +1,27 @@ +# nibell/mpad16 + +![nibell/mpad16](imgur.com image replace me!) + +*A short description of the keyboard/project* + +* Keyboard Maintainer: [nibell](https://github.com/Linus Nibell) +* Hardware Supported: *The PCBs, controllers supported* +* Hardware Availability: *Links to where you can find this hardware* + +Make example for this keyboard (after setting up your build environment): + + make nibell/mpad16:default + +Flashing example for this keyboard: + + make nibell/mpad16: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 diff --git a/keyboards/nibell/mpad16/rules.mk b/keyboards/nibell/mpad16/rules.mk new file mode 100644 index 00000000000..6e7633bfe01 --- /dev/null +++ b/keyboards/nibell/mpad16/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank