~ruther/qmk_firmware

fffea620050dc44e1003658cc8f2f6ec5126e22f — peepeetee 1 year, 9 months ago cdff9b8
[Keyboard] Momokai Aurora (#20419)

Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Joel Challis <git@zvecr.com>
A keyboards/momokai/aurora/config.h => keyboards/momokai/aurora/config.h +78 -0
@@ 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

A keyboards/momokai/aurora/info.json => keyboards/momokai/aurora/info.json +73 -0
@@ 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}
            ]
        }
    }
}

A keyboards/momokai/aurora/keymaps/default/keymap.c => keyboards/momokai/aurora/keymaps/default/keymap.c +19 -0
@@ 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

A keyboards/momokai/aurora/keymaps/default/rules.mk => keyboards/momokai/aurora/keymaps/default/rules.mk +1 -0
@@ 0,0 1,1 @@
ENCODER_MAP_ENABLE = yes

A keyboards/momokai/aurora/keymaps/via/keymap.c => keyboards/momokai/aurora/keymaps/via/keymap.c +18 -0
@@ 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

A keyboards/momokai/aurora/keymaps/via/rules.mk => keyboards/momokai/aurora/keymaps/via/rules.mk +4 -0
@@ 0,0 1,4 @@
VIA_ENABLE = yes
LTO_ENABLE = yes

ENCODER_MAP_ENABLE = yes

A keyboards/momokai/aurora/readme.md => keyboards/momokai/aurora/readme.md +24 -0
@@ 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

A keyboards/momokai/aurora/rules.mk => keyboards/momokai/aurora/rules.mk +1 -0
@@ 0,0 1,1 @@
# This file intentionally left blank
\ No newline at end of file