From fffea620050dc44e1003658cc8f2f6ec5126e22f Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Wed, 20 Sep 2023 21:03:32 -0500 Subject: [PATCH] [Keyboard] Momokai Aurora (#20419) Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com> Co-authored-by: Ryan Co-authored-by: Drashna Jaelre Co-authored-by: Joel Challis --- keyboards/momokai/aurora/config.h | 78 +++++++++++++++++++ keyboards/momokai/aurora/info.json | 73 +++++++++++++++++ .../momokai/aurora/keymaps/default/keymap.c | 19 +++++ .../momokai/aurora/keymaps/default/rules.mk | 1 + keyboards/momokai/aurora/keymaps/via/keymap.c | 18 +++++ keyboards/momokai/aurora/keymaps/via/rules.mk | 4 + keyboards/momokai/aurora/readme.md | 24 ++++++ keyboards/momokai/aurora/rules.mk | 1 + 8 files changed, 218 insertions(+) create mode 100644 keyboards/momokai/aurora/config.h create mode 100644 keyboards/momokai/aurora/info.json create mode 100644 keyboards/momokai/aurora/keymaps/default/keymap.c create mode 100644 keyboards/momokai/aurora/keymaps/default/rules.mk create mode 100644 keyboards/momokai/aurora/keymaps/via/keymap.c create mode 100644 keyboards/momokai/aurora/keymaps/via/rules.mk create mode 100644 keyboards/momokai/aurora/readme.md create mode 100644 keyboards/momokai/aurora/rules.mk diff --git a/keyboards/momokai/aurora/config.h b/keyboards/momokai/aurora/config.h new file mode 100644 index 0000000000..b12313ff2c --- /dev/null +++ b/keyboards/momokai/aurora/config.h @@ -0,0 +1,78 @@ +// Copyright 2023 peepeetee (@peepeetee) +// 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 + + +#define RGB_MATRIX_LED_COUNT 10 +#define RGB_MATRIX_KEYPRESSES // reacts to keypresses +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 + // RGB Matrix Animation modes. Explicitly enabled + // For full list of effects, see: + // https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects + #define ENABLE_RGB_MATRIX_SOLID_COLOR + #define ENABLE_RGB_MATRIX_ALPHAS_MODS + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_BREATHING + #define ENABLE_RGB_MATRIX_BAND_SAT + #define ENABLE_RGB_MATRIX_BAND_VAL + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_DUAL_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_HUE_BREATHING + #define ENABLE_RGB_MATRIX_HUE_PENDULUM + #define ENABLE_RGB_MATRIX_HUE_WAVE + #define ENABLE_RGB_MATRIX_PIXEL_RAIN + #define ENABLE_RGB_MATRIX_PIXEL_FLOW + #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL + + // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined + #define ENABLE_RGB_MATRIX_TYPING_HEATMAP + #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + + // enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH diff --git a/keyboards/momokai/aurora/info.json b/keyboards/momokai/aurora/info.json new file mode 100644 index 0000000000..58aa75ad01 --- /dev/null +++ b/keyboards/momokai/aurora/info.json @@ -0,0 +1,73 @@ +{ + "manufacturer": "momokai", + "keyboard_name": "momokai/aurora", + "maintainer": "peepeetee", + "bootloader": "atmel-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "bootmagic": { + "matrix": [1, 0] + }, + "matrix_pins": { + "direct": [ + ["NO_PIN", "B0", "NO_PIN" ], + ["B4", "D2", "D1" ], + ["D7", "D4", "D6" ] + ] + }, + "processor": "atmega32u4", + "url": "", + "usb": { + "device_version": "0.0.1", + "pid": "0x0009", + "vid": "0x69F9" + }, + "encoder": { + "enabled": true, + "rotary": [ + { + "pin_a": "B2", + "pin_b": "B1" + } + ] + }, + "ws2812": { + "pin": "C7" + }, + "rgb_matrix": { + "driver": "ws2812", + "layout": [ + { "flags": 4, "matrix": [2, 0], "x": 51, "y": 51 }, + { "flags": 4, "matrix": [1, 0], "x": 51, "y": 38 }, + { "flags": 4, "matrix": [1, 1], "x": 102, "y": 38 }, + { "flags": 4, "matrix": [2, 1], "x": 102, "y": 51 }, + { "flags": 4, "matrix": [2, 2], "x": 154, "y": 51 }, + { "flags": 4, "matrix": [1, 2], "x": 154, "y": 38 }, + { "flags": 2, "x": 77, "y": 12 }, + { "flags": 2, "x": 128, "y": 26 }, + { "flags": 2, "x": 77, "y": 26 }, + { "flags": 2, "x": 128, "y": 12 } + ] + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [1, 0], "x": 0, "y": 2}, + {"matrix": [1, 1], "x": 1, "y": 2}, + {"matrix": [1, 2], "x": 2, "y": 2}, + {"matrix": [2, 0], "x": 0, "y": 3}, + {"matrix": [2, 1], "x": 1, "y": 3}, + {"matrix": [2, 2], "x": 2, "y": 3} + ] + } + } +} diff --git a/keyboards/momokai/aurora/keymaps/default/keymap.c b/keyboards/momokai/aurora/keymaps/default/keymap.c new file mode 100644 index 0000000000..cb84cc87d9 --- /dev/null +++ b/keyboards/momokai/aurora/keymaps/default/keymap.c @@ -0,0 +1,19 @@ +// Copyright 2023 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_MUTE, + KC_Z, KC_X, KC_C, + KC_GRV, KC_ESC, KC_F2 + ) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) } + +}; +#endif \ No newline at end of file diff --git a/keyboards/momokai/aurora/keymaps/default/rules.mk b/keyboards/momokai/aurora/keymaps/default/rules.mk new file mode 100644 index 0000000000..ee32568148 --- /dev/null +++ b/keyboards/momokai/aurora/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/momokai/aurora/keymaps/via/keymap.c b/keyboards/momokai/aurora/keymaps/via/keymap.c new file mode 100644 index 0000000000..710f1d57bb --- /dev/null +++ b/keyboards/momokai/aurora/keymaps/via/keymap.c @@ -0,0 +1,18 @@ +// Copyright 2023 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_MUTE, + KC_Z, KC_X, KC_C, + KC_GRV, KC_ESC, KC_F2 + ), +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, +}; +#endif \ No newline at end of file diff --git a/keyboards/momokai/aurora/keymaps/via/rules.mk b/keyboards/momokai/aurora/keymaps/via/rules.mk new file mode 100644 index 0000000000..293c5ffdeb --- /dev/null +++ b/keyboards/momokai/aurora/keymaps/via/rules.mk @@ -0,0 +1,4 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes + +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/momokai/aurora/readme.md b/keyboards/momokai/aurora/readme.md new file mode 100644 index 0000000000..7bbf885bba --- /dev/null +++ b/keyboards/momokai/aurora/readme.md @@ -0,0 +1,24 @@ +# Momokai Aurora + +A 6 key keypad with a rotary encoder + +* Keyboard Maintainer: [peepeetee](https://github.com/peepeetee) +* Hardware Supported: Aurora +* Hardware Availability: [Momokai](https://www.momokai.com/) + +Make example for this keyboard (after setting up your build environment): + + make momokai/aurora:default + +Flashing example for this keyboard: + + make momokai/aurora: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 2 ways: + +* **Bootmagic reset**: Hold down the key at (1,0) in the matrix (the top left physical key) and plug in the keyboard +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/momokai/aurora/rules.mk b/keyboards/momokai/aurora/rules.mk new file mode 100644 index 0000000000..7ff128fa69 --- /dev/null +++ b/keyboards/momokai/aurora/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank \ No newline at end of file