From 34602f4b25f24d3238c8e76fe7d65dc8b69bf9c8 Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Tue, 11 Jan 2022 08:57:20 +0800 Subject: [Keyboard] move reviung keyboards to a directory (#15636) --- keyboards/reviung/reviung33/config.h | 137 +++++++++ keyboards/reviung/reviung33/info.json | 47 +++ .../reviung/reviung33/keymaps/default/keymap.c | 71 +++++ .../reviung/reviung33/keymaps/default/readme.md | 1 + .../reviung/reviung33/keymaps/default_jp/keymap.c | 70 +++++ .../reviung/reviung33/keymaps/default_jp/readme.md | 1 + keyboards/reviung/reviung33/readme.md | 15 + keyboards/reviung/reviung33/reviung33.c | 17 ++ keyboards/reviung/reviung33/reviung33.h | 40 +++ keyboards/reviung/reviung33/rules.mk | 18 ++ keyboards/reviung/reviung34/config.h | 146 +++++++++ keyboards/reviung/reviung34/info.json | 45 +++ .../reviung/reviung34/keymaps/default/keymap.c | 69 +++++ .../reviung/reviung34/keymaps/default/readme.md | 1 + .../reviung/reviung34/keymaps/default_2uL/keymap.c | 69 +++++ .../reviung34/keymaps/default_2uL/readme.md | 1 + .../reviung/reviung34/keymaps/default_jp/keymap.c | 70 +++++ .../reviung/reviung34/keymaps/default_jp/readme.md | 1 + .../reviung/reviung34/keymaps/default_rgb/config.h | 31 ++ .../reviung/reviung34/keymaps/default_rgb/keymap.c | 69 +++++ .../reviung34/keymaps/default_rgb/readme.md | 1 + .../reviung/reviung34/keymaps/default_rgb/rules.mk | 1 + .../reviung34/keymaps/default_rgb2u/config.h | 31 ++ .../reviung34/keymaps/default_rgb2u/keymap.c | 68 +++++ .../reviung34/keymaps/default_rgb2u/readme.md | 3 + .../reviung34/keymaps/default_rgb2u/rules.mk | 1 + keyboards/reviung/reviung34/readme.md | 18 ++ keyboards/reviung/reviung34/reviung34.c | 16 + keyboards/reviung/reviung34/reviung34.h | 52 ++++ keyboards/reviung/reviung34/rules.mk | 18 ++ keyboards/reviung/reviung39/config.h | 146 +++++++++ keyboards/reviung/reviung39/info.json | 56 ++++ .../reviung/reviung39/keymaps/default/config.h | 47 +++ .../reviung/reviung39/keymaps/default/keymap.c | 61 ++++ .../reviung/reviung39/keymaps/default/readme.md | 3 + .../reviung/reviung39/keymaps/default/rules.mk | 1 + .../reviung/reviung39/keymaps/default_s/config.h | 47 +++ .../reviung/reviung39/keymaps/default_s/keymap.c | 61 ++++ .../reviung/reviung39/keymaps/default_s/readme.md | 6 + .../reviung/reviung39/keymaps/default_s/rules.mk | 1 + .../reviung/reviung39/keymaps/toshi0383/config.h | 47 +++ .../reviung/reviung39/keymaps/toshi0383/keymap.c | 57 ++++ .../reviung/reviung39/keymaps/toshi0383/readme.md | 3 + .../reviung/reviung39/keymaps/toshi0383/rules.mk | 1 + keyboards/reviung/reviung39/keymaps/via/keymap.c | 54 ++++ keyboards/reviung/reviung39/keymaps/via/rules.mk | 3 + keyboards/reviung/reviung39/readme.md | 15 + keyboards/reviung/reviung39/reviung39.c | 16 + keyboards/reviung/reviung39/reviung39.h | 42 +++ keyboards/reviung/reviung39/rules.mk | 18 ++ keyboards/reviung/reviung41/config.h | 146 +++++++++ keyboards/reviung/reviung41/info.json | 58 ++++ .../reviung/reviung41/keymaps/ciutadellla/config.h | 29 ++ .../reviung/reviung41/keymaps/ciutadellla/keymap.c | 333 +++++++++++++++++++++ .../reviung/reviung41/keymaps/ciutadellla/rules.mk | 10 + .../reviung/reviung41/keymaps/default/keymap.c | 62 ++++ .../reviung/reviung41/keymaps/default/readme.md | 1 + keyboards/reviung/reviung41/keymaps/via/keymap.c | 54 ++++ keyboards/reviung/reviung41/keymaps/via/rules.mk | 3 + keyboards/reviung/reviung41/readme.md | 15 + keyboards/reviung/reviung41/reviung41.c | 16 + keyboards/reviung/reviung41/reviung41.h | 42 +++ keyboards/reviung/reviung41/rules.mk | 18 ++ keyboards/reviung/reviung5/config.h | 145 +++++++++ keyboards/reviung/reviung5/info.json | 16 + .../reviung/reviung5/keymaps/default/keymap.c | 34 +++ .../reviung/reviung5/keymaps/default/readme.md | 1 + .../reviung/reviung5/keymaps/default_lre/keymap.c | 55 ++++ .../reviung/reviung5/keymaps/default_lre/readme.md | 3 + .../reviung/reviung5/keymaps/default_rre/keymap.c | 55 ++++ .../reviung/reviung5/keymaps/default_rre/readme.md | 4 + keyboards/reviung/reviung5/readme.md | 19 ++ keyboards/reviung/reviung5/reviung5.c | 17 ++ keyboards/reviung/reviung5/reviung5.h | 33 ++ keyboards/reviung/reviung5/rules.mk | 19 ++ keyboards/reviung/reviung53/config.h | 138 +++++++++ keyboards/reviung/reviung53/info.json | 68 +++++ .../reviung/reviung53/keymaps/default/keymap.c | 55 ++++ .../reviung/reviung53/keymaps/default/readme.md | 1 + keyboards/reviung/reviung53/keymaps/via/keymap.c | 55 ++++ keyboards/reviung/reviung53/keymaps/via/readme.md | 3 + keyboards/reviung/reviung53/keymaps/via/rules.mk | 1 + keyboards/reviung/reviung53/readme.md | 27 ++ keyboards/reviung/reviung53/reviung53.c | 4 + keyboards/reviung/reviung53/reviung53.h | 30 ++ keyboards/reviung/reviung53/rules.mk | 19 ++ keyboards/reviung/reviung61/config.h | 63 ++++ keyboards/reviung/reviung61/info.json | 72 +++++ .../reviung/reviung61/keymaps/default/keymap.c | 41 +++ .../reviung/reviung61/keymaps/default/readme.md | 1 + .../reviung/reviung61/keymaps/default_rgb/config.h | 31 ++ .../reviung/reviung61/keymaps/default_rgb/keymap.c | 41 +++ .../reviung61/keymaps/default_rgb/readme.md | 3 + .../reviung/reviung61/keymaps/default_rgb/rules.mk | 1 + keyboards/reviung/reviung61/readme.md | 15 + keyboards/reviung/reviung61/reviung61.c | 17 ++ keyboards/reviung/reviung61/reviung61.h | 58 ++++ keyboards/reviung/reviung61/rules.mk | 20 ++ 98 files changed, 3765 insertions(+) create mode 100644 keyboards/reviung/reviung33/config.h create mode 100644 keyboards/reviung/reviung33/info.json create mode 100644 keyboards/reviung/reviung33/keymaps/default/keymap.c create mode 100644 keyboards/reviung/reviung33/keymaps/default/readme.md create mode 100644 keyboards/reviung/reviung33/keymaps/default_jp/keymap.c create mode 100644 keyboards/reviung/reviung33/keymaps/default_jp/readme.md create mode 100644 keyboards/reviung/reviung33/readme.md create mode 100644 keyboards/reviung/reviung33/reviung33.c create mode 100644 keyboards/reviung/reviung33/reviung33.h create mode 100644 keyboards/reviung/reviung33/rules.mk create mode 100755 keyboards/reviung/reviung34/config.h create mode 100755 keyboards/reviung/reviung34/info.json create mode 100755 keyboards/reviung/reviung34/keymaps/default/keymap.c create mode 100755 keyboards/reviung/reviung34/keymaps/default/readme.md create mode 100755 keyboards/reviung/reviung34/keymaps/default_2uL/keymap.c create mode 100755 keyboards/reviung/reviung34/keymaps/default_2uL/readme.md create mode 100755 keyboards/reviung/reviung34/keymaps/default_jp/keymap.c create mode 100755 keyboards/reviung/reviung34/keymaps/default_jp/readme.md create mode 100644 keyboards/reviung/reviung34/keymaps/default_rgb/config.h create mode 100755 keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c create mode 100755 keyboards/reviung/reviung34/keymaps/default_rgb/readme.md create mode 100644 keyboards/reviung/reviung34/keymaps/default_rgb/rules.mk create mode 100644 keyboards/reviung/reviung34/keymaps/default_rgb2u/config.h create mode 100755 keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c create mode 100755 keyboards/reviung/reviung34/keymaps/default_rgb2u/readme.md create mode 100644 keyboards/reviung/reviung34/keymaps/default_rgb2u/rules.mk create mode 100755 keyboards/reviung/reviung34/readme.md create mode 100755 keyboards/reviung/reviung34/reviung34.c create mode 100755 keyboards/reviung/reviung34/reviung34.h create mode 100755 keyboards/reviung/reviung34/rules.mk create mode 100644 keyboards/reviung/reviung39/config.h create mode 100644 keyboards/reviung/reviung39/info.json create mode 100644 keyboards/reviung/reviung39/keymaps/default/config.h create mode 100644 keyboards/reviung/reviung39/keymaps/default/keymap.c create mode 100644 keyboards/reviung/reviung39/keymaps/default/readme.md create mode 100644 keyboards/reviung/reviung39/keymaps/default/rules.mk create mode 100644 keyboards/reviung/reviung39/keymaps/default_s/config.h create mode 100644 keyboards/reviung/reviung39/keymaps/default_s/keymap.c create mode 100644 keyboards/reviung/reviung39/keymaps/default_s/readme.md create mode 100644 keyboards/reviung/reviung39/keymaps/default_s/rules.mk create mode 100644 keyboards/reviung/reviung39/keymaps/toshi0383/config.h create mode 100644 keyboards/reviung/reviung39/keymaps/toshi0383/keymap.c create mode 100644 keyboards/reviung/reviung39/keymaps/toshi0383/readme.md create mode 100644 keyboards/reviung/reviung39/keymaps/toshi0383/rules.mk create mode 100644 keyboards/reviung/reviung39/keymaps/via/keymap.c create mode 100644 keyboards/reviung/reviung39/keymaps/via/rules.mk create mode 100644 keyboards/reviung/reviung39/readme.md create mode 100644 keyboards/reviung/reviung39/reviung39.c create mode 100644 keyboards/reviung/reviung39/reviung39.h create mode 100644 keyboards/reviung/reviung39/rules.mk create mode 100644 keyboards/reviung/reviung41/config.h create mode 100644 keyboards/reviung/reviung41/info.json create mode 100644 keyboards/reviung/reviung41/keymaps/ciutadellla/config.h create mode 100644 keyboards/reviung/reviung41/keymaps/ciutadellla/keymap.c create mode 100644 keyboards/reviung/reviung41/keymaps/ciutadellla/rules.mk create mode 100644 keyboards/reviung/reviung41/keymaps/default/keymap.c create mode 100644 keyboards/reviung/reviung41/keymaps/default/readme.md create mode 100644 keyboards/reviung/reviung41/keymaps/via/keymap.c create mode 100644 keyboards/reviung/reviung41/keymaps/via/rules.mk create mode 100644 keyboards/reviung/reviung41/readme.md create mode 100644 keyboards/reviung/reviung41/reviung41.c create mode 100644 keyboards/reviung/reviung41/reviung41.h create mode 100644 keyboards/reviung/reviung41/rules.mk create mode 100644 keyboards/reviung/reviung5/config.h create mode 100644 keyboards/reviung/reviung5/info.json create mode 100644 keyboards/reviung/reviung5/keymaps/default/keymap.c create mode 100644 keyboards/reviung/reviung5/keymaps/default/readme.md create mode 100644 keyboards/reviung/reviung5/keymaps/default_lre/keymap.c create mode 100644 keyboards/reviung/reviung5/keymaps/default_lre/readme.md create mode 100644 keyboards/reviung/reviung5/keymaps/default_rre/keymap.c create mode 100644 keyboards/reviung/reviung5/keymaps/default_rre/readme.md create mode 100644 keyboards/reviung/reviung5/readme.md create mode 100644 keyboards/reviung/reviung5/reviung5.c create mode 100644 keyboards/reviung/reviung5/reviung5.h create mode 100644 keyboards/reviung/reviung5/rules.mk create mode 100644 keyboards/reviung/reviung53/config.h create mode 100644 keyboards/reviung/reviung53/info.json create mode 100644 keyboards/reviung/reviung53/keymaps/default/keymap.c create mode 100644 keyboards/reviung/reviung53/keymaps/default/readme.md create mode 100644 keyboards/reviung/reviung53/keymaps/via/keymap.c create mode 100644 keyboards/reviung/reviung53/keymaps/via/readme.md create mode 100644 keyboards/reviung/reviung53/keymaps/via/rules.mk create mode 100644 keyboards/reviung/reviung53/readme.md create mode 100644 keyboards/reviung/reviung53/reviung53.c create mode 100644 keyboards/reviung/reviung53/reviung53.h create mode 100644 keyboards/reviung/reviung53/rules.mk create mode 100644 keyboards/reviung/reviung61/config.h create mode 100644 keyboards/reviung/reviung61/info.json create mode 100644 keyboards/reviung/reviung61/keymaps/default/keymap.c create mode 100644 keyboards/reviung/reviung61/keymaps/default/readme.md create mode 100644 keyboards/reviung/reviung61/keymaps/default_rgb/config.h create mode 100644 keyboards/reviung/reviung61/keymaps/default_rgb/keymap.c create mode 100644 keyboards/reviung/reviung61/keymaps/default_rgb/readme.md create mode 100644 keyboards/reviung/reviung61/keymaps/default_rgb/rules.mk create mode 100644 keyboards/reviung/reviung61/readme.md create mode 100644 keyboards/reviung/reviung61/reviung61.c create mode 100644 keyboards/reviung/reviung61/reviung61.h create mode 100644 keyboards/reviung/reviung61/rules.mk (limited to 'keyboards/reviung') diff --git a/keyboards/reviung/reviung33/config.h b/keyboards/reviung/reviung33/config.h new file mode 100644 index 0000000000..b65d1d7c39 --- /dev/null +++ b/keyboards/reviung/reviung33/config.h @@ -0,0 +1,137 @@ +/* +Copyright 2020 gtips + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x516D +#define DEVICE_VER 0x0001 +#define MANUFACTURER gtips +#define PRODUCT reviung33 + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 10 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * + */ +#define MATRIX_ROW_PINS { F4, F5, F6, F7} +#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B1, B3, B2, B6, B5 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN +# define RGBLED_NUM 5 +# define RGBLIGHT_HUE_STEP 16 +# define RGBLIGHT_SAT_STEP 16 +# define RGBLIGHT_VAL_STEP 16 +# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. + * This is useful for the Windows task manager shortcut (ctrl+shift+esc). + */ +//#define GRAVE_ESC_CTRL_OVERRIDE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung33/info.json b/keyboards/reviung/reviung33/info.json new file mode 100644 index 0000000000..450a41930b --- /dev/null +++ b/keyboards/reviung/reviung33/info.json @@ -0,0 +1,47 @@ +{ + "keyboard_name": "reviung33", + "url": "", + "maintainer": "gtips", + "layouts": { + "LAYOUT_reviung33": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + + {"x":0, "y":1}, + {"x":1, "y":1}, + {"x":2, "y":1}, + {"x":3, "y":1}, + {"x":4, "y":1}, + {"x":5, "y":1}, + {"x":6, "y":1}, + {"x":7, "y":1}, + {"x":8, "y":1}, + {"x":9, "y":1}, + + {"x":0, "y":2}, + {"x":1, "y":2}, + {"x":2, "y":2}, + {"x":3, "y":2}, + {"x":4, "y":2}, + {"x":5, "y":2}, + {"x":6, "y":2}, + {"x":7, "y":2}, + {"x":8, "y":2}, + {"x":9, "y":2}, + + {"x":0, "y":3}, + {"x":2, "y":3, "w":6}, + {"x":9, "y":3} + ] + } + } +} diff --git a/keyboards/reviung/reviung33/keymaps/default/keymap.c b/keyboards/reviung/reviung33/keymaps/default/keymap.c new file mode 100644 index 0000000000..875df97601 --- /dev/null +++ b/keyboards/reviung/reviung33/keymaps/default/keymap.c @@ -0,0 +1,71 @@ +/* Copyright 2020 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +#define CT_Q LCTL_T(KC_Q) +#define CT_CM RCTL_T(KC_COMM) +#define SF_Z LSFT_T(KC_Z) +#define SF_SS RSFT_T(KC_SLSH) +#define AL_X LALT_T(KC_X) +#define AL_DT RALT_T(KC_DOT) +#define TB_LO LT(LOWER, KC_TAB) +#define BS_RA LT(RAISE, KC_BSPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung33( + CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, + TB_LO, KC_SPC, BS_RA + ), + + [_LOWER] = LAYOUT_reviung33( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, + KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_RSFT, + _______, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung33( + 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, + KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, KC_RALT, KC_RCTL, KC_RALT, KC_RSFT, + _______, KC_DEL, _______ + ), + + [_ADJUST] = LAYOUT_reviung33( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, + _______, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + diff --git a/keyboards/reviung/reviung33/keymaps/default/readme.md b/keyboards/reviung/reviung33/keymaps/default/readme.md new file mode 100644 index 0000000000..9121b14294 --- /dev/null +++ b/keyboards/reviung/reviung33/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reviung33 diff --git a/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c b/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c new file mode 100644 index 0000000000..1265a301ed --- /dev/null +++ b/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c @@ -0,0 +1,70 @@ +/* Copyright 2020 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H +#include "keymap_jp.h" + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +#define CT_Q LCTL_T(JP_Q) +#define CT_CM RCTL_T(JP_COMM) +#define SF_Z LSFT_T(JP_Z) +#define SF_SS RSFT_T(JP_SLSH) +#define AL_X LALT_T(JP_X) +#define AL_DT RALT_T(JP_DOT) +#define TB_LO LT(LOWER, KC_TAB) +#define BS_RA LT(RAISE, KC_BSPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung33( + CT_Q, JP_W, JP_E, JP_R, JP_T, JP_Y, JP_U, JP_I, JP_O, JP_P, + JP_A, JP_S, JP_D, JP_F, JP_G, JP_H, JP_J, JP_K, JP_L, KC_ENT, + SF_Z, AL_X, JP_C, JP_V, JP_B, JP_N, JP_M, CT_CM, AL_DT, SF_SS, + TB_LO, KC_SPC, BS_RA + ), + + [_LOWER] = LAYOUT_reviung33( + JP_EXLM, JP_AT, JP_HASH, JP_DLR, JP_PERC, JP_CIRC, JP_AMPR, JP_ASTR, JP_LPRN, JP_RPRN, + JP_UNDS, JP_PLUS, JP_LCBR, JP_RCBR, JP_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, JP_SCLN, + KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, JP_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_RSFT, + _______, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung33( + JP_1, JP_2, JP_3, JP_4, JP_5, JP_6, JP_7, JP_8, JP_9, JP_0, + JP_MINS, JP_EQL, JP_LBRC, JP_RBRC, JP_YEN, KC_RO, XXXXXXX, JP_GRV, JP_TILD, JP_COLN, + KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, JP_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_RSFT, + _______, KC_DEL, _______ + ), + + [_ADJUST] = LAYOUT_reviung33( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, + _______, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung33/keymaps/default_jp/readme.md b/keyboards/reviung/reviung33/keymaps/default_jp/readme.md new file mode 100644 index 0000000000..d7739a3d86 --- /dev/null +++ b/keyboards/reviung/reviung33/keymaps/default_jp/readme.md @@ -0,0 +1 @@ +# The default_jp keymap for reviung33 diff --git a/keyboards/reviung/reviung33/readme.md b/keyboards/reviung/reviung33/readme.md new file mode 100644 index 0000000000..64ed4d57fe --- /dev/null +++ b/keyboards/reviung/reviung33/readme.md @@ -0,0 +1,15 @@ +# reviung33 + +![REVIUNG33](https://github.com/gtips/reviung/blob/master/reviung33/image/reviung33-01.jpg) + +The REVIUNG33 is 33-key ortholinear keyboard. + +* Keyboard Maintainer: [gtips](https://github.com/gtips) +* Hardware Supported: REVIUNG33 PCB. +* Hardware Availability: [PCB & Case Data](https://github.com/gtips/reviung/tree/master/reviung33) + +Make example for this keyboard (after setting up your build environment): + + make reviung33: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). diff --git a/keyboards/reviung/reviung33/reviung33.c b/keyboards/reviung/reviung33/reviung33.c new file mode 100644 index 0000000000..7684cb72c8 --- /dev/null +++ b/keyboards/reviung/reviung33/reviung33.c @@ -0,0 +1,17 @@ +/* Copyright 2020 gtips + * + * 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 . + */ + +#include "reviung33.h" diff --git a/keyboards/reviung/reviung33/reviung33.h b/keyboards/reviung/reviung33/reviung33.h new file mode 100644 index 0000000000..ea72a4aadb --- /dev/null +++ b/keyboards/reviung/reviung33/reviung33.h @@ -0,0 +1,40 @@ +/* Copyright 2020 gtips + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_reviung33( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K30, K31, K32 \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ + { K30, K31, K32, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ +} diff --git a/keyboards/reviung/reviung33/rules.mk b/keyboards/reviung/reviung33/rules.mk new file mode 100644 index 0000000000..77a2d1ee7d --- /dev/null +++ b/keyboards/reviung/reviung33/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/reviung/reviung34/config.h b/keyboards/reviung/reviung34/config.h new file mode 100755 index 0000000000..0847678e86 --- /dev/null +++ b/keyboards/reviung/reviung34/config.h @@ -0,0 +1,146 @@ +/* +Copyright 2019 gtips + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x4E03 +#define DEVICE_VER 0x0001 +#define MANUFACTURER gtips +#define PRODUCT reviung34 + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 9 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +#define MATRIX_ROW_PINS { F4, F5, F6, F7} +#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B1, B3, B2, B6 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +// #define BACKLIGHT_PIN B7 +// #define BACKLIGHT_BREATHING +// #define BACKLIGHT_LEVELS 3 + +// #define RGB_DI_PIN E2 +// #ifdef RGB_DI_PIN +// #define RGBLED_NUM 16 +// #define RGBLIGHT_HUE_STEP 8 +// #define RGBLIGHT_SAT_STEP 8 +// #define RGBLIGHT_VAL_STEP 8 +// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== all animations enable ==*/ +// #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ +// #define RGBLIGHT_EFFECT_BREATHING +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT +// #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +// /*== customize breathing effect ==*/ +// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +// /*==== use exp() and sin() ====*/ +// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +// #endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. + * This is userful for the Windows task manager shortcut (ctrl+shift+esc). + */ +// #define GRAVE_ESC_CTRL_OVERRIDE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * 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 NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +// #define BOOTMAGIC_LITE_ROW 0 +// #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung34/info.json b/keyboards/reviung/reviung34/info.json new file mode 100755 index 0000000000..ecd89d4742 --- /dev/null +++ b/keyboards/reviung/reviung34/info.json @@ -0,0 +1,45 @@ +{ + "keyboard_name": "reviung34", + "url": "", + "maintainer": "gtips", + "layouts": { + "LAYOUT_reviung34": { + "layout": [ + {"label":"K00", "x":0, "y":0}, + {"label":"K01", "x":1, "y":0}, + {"label":"K02", "x":2, "y":0}, + {"label":"K03", "x":3, "y":0}, + {"label":"K04", "x":4, "y":0}, + {"label":"K05", "x":6, "y":0}, + {"label":"K06", "x":7, "y":0}, + {"label":"K07", "x":8, "y":0}, + {"label":"K08", "x":9, "y":0}, + {"label":"K35", "x":10, "y":0}, + {"label":"K10", "x":0, "y":1}, + {"label":"K11", "x":1, "y":1}, + {"label":"K12", "x":2, "y":1}, + {"label":"K13", "x":3, "y":1}, + {"label":"K14", "x":4, "y":1}, + {"label":"K15", "x":6, "y":1}, + {"label":"K16", "x":7, "y":1}, + {"label":"K17", "x":8, "y":1}, + {"label":"K18", "x":9, "y":1}, + {"label":"K36", "x":10, "y":1}, + {"label":"K20", "x":0, "y":2}, + {"label":"K21", "x":1, "y":2}, + {"label":"K22", "x":2, "y":2}, + {"label":"K23", "x":3, "y":2}, + {"label":"K24", "x":4, "y":2}, + {"label":"K25", "x":6, "y":2}, + {"label":"K26", "x":7, "y":2}, + {"label":"K27", "x":8, "y":2}, + {"label":"K28", "x":9, "y":2}, + {"label":"K37", "x":10, "y":2}, + {"label":"K32", "x":2, "y":3}, + {"label":"K33", "x":3, "y":3}, + {"label":"K34", "x":4, "y":3}, + {"label":"K38", "x":6, "y":3, "w":2} + ] + } + } +} diff --git a/keyboards/reviung/reviung34/keymaps/default/keymap.c b/keyboards/reviung/reviung34/keymaps/default/keymap.c new file mode 100755 index 0000000000..66939d2469 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default/keymap.c @@ -0,0 +1,69 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +#define CT_Q LCTL_T(KC_Q) +#define CT_CM RCTL_T(KC_COMM) +#define SF_Z LSFT_T(KC_Z) +#define SF_SS RSFT_T(KC_SLSH) +#define AL_X LALT_T(KC_X) +#define AL_DT RALT_T(KC_DOT) +#define RA_SP LT(RAISE, KC_SPC) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung34( + CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, + KC_TAB, KC_BSPC, LOWER, RA_SP + ), + + [_LOWER] = LAYOUT_reviung34( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, + KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, + _______, _______, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung34( + 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, + KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, + _______, _______, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung34( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, + KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung34/keymaps/default/readme.md b/keyboards/reviung/reviung34/keymaps/default/readme.md new file mode 100755 index 0000000000..2e4619fae8 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reviung34 diff --git a/keyboards/reviung/reviung34/keymaps/default_2uL/keymap.c b/keyboards/reviung/reviung34/keymaps/default_2uL/keymap.c new file mode 100755 index 0000000000..767c0ff4c6 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_2uL/keymap.c @@ -0,0 +1,69 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +#define CT_Q LCTL_T(KC_Q) +#define CT_CM RCTL_T(KC_COMM) +#define SF_Z LSFT_T(KC_Z) +#define SF_SS RSFT_T(KC_SLSH) +#define AL_X LALT_T(KC_X) +#define AL_DT RALT_T(KC_DOT) +#define RA_SP LT(RAISE, KC_SPC) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung34_2uL( + CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, + KC_TAB, LOWER, RA_SP + ), + + [_LOWER] = LAYOUT_reviung34_2uL( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, + KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, + _______, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung34_2uL( + 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, + KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, + _______, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung34_2uL( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, + KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung34/keymaps/default_2uL/readme.md b/keyboards/reviung/reviung34/keymaps/default_2uL/readme.md new file mode 100755 index 0000000000..2e4619fae8 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_2uL/readme.md @@ -0,0 +1 @@ +# The default keymap for reviung34 diff --git a/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c b/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c new file mode 100755 index 0000000000..c37d87662c --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c @@ -0,0 +1,70 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H +#include "keymap_jp.h" + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +#define CT_Q LCTL_T(JP_Q) +#define CT_CM RCTL_T(JP_COMM) +#define SF_Z LSFT_T(JP_Z) +#define SF_SS RSFT_T(JP_SLSH) +#define AL_X LALT_T(JP_X) +#define AL_DT RALT_T(JP_DOT) +#define RA_SP LT(RAISE, KC_SPC) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung34( + CT_Q, JP_W, JP_E, JP_R, JP_T, JP_Y, JP_U, JP_I, JP_O, JP_P, + JP_A, JP_S, JP_D, JP_F, JP_G, JP_H, JP_J, JP_K, JP_L, KC_ENT, + SF_Z, AL_X, JP_C, JP_V, JP_B, JP_N, JP_M, CT_CM, AL_DT, SF_SS, + KC_TAB, KC_BSPC, LOWER, RA_SP + ), + + [_LOWER] = LAYOUT_reviung34( + JP_EXLM, JP_AT, JP_HASH, JP_DLR, JP_PERC, JP_CIRC, JP_AMPR, JP_ASTR, JP_LPRN, JP_RPRN, + JP_UNDS, JP_PLUS, JP_LCBR, JP_RCBR, JP_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, JP_SCLN, + KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, JP_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, + _______, _______, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung34( + JP_1, JP_2, JP_3, JP_4, JP_5, JP_6, JP_7, JP_8, JP_9, JP_0, + JP_MINS, JP_EQL, JP_LBRC, JP_RBRC, JP_YEN, KC_RO, XXXXXXX, JP_GRV, JP_TILD, JP_COLN, + KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, JP_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, + _______, _______, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung34( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, + KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung34/keymaps/default_jp/readme.md b/keyboards/reviung/reviung34/keymaps/default_jp/readme.md new file mode 100755 index 0000000000..2e4619fae8 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_jp/readme.md @@ -0,0 +1 @@ +# The default keymap for reviung34 diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb/config.h b/keyboards/reviung/reviung34/keymaps/default_rgb/config.h new file mode 100644 index 0000000000..b68201231f --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_rgb/config.h @@ -0,0 +1,31 @@ +/* Copyright 2021 gtips + * + * 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 . + */ + +#pragma once + +// place overrides here + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 9 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 255 + #define RGBLIGHT_SLEEP +// /*== all animations enable ==*/ + #define RGBLIGHT_ANIMATIONS +#endif \ No newline at end of file diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c b/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c new file mode 100755 index 0000000000..e2d852354b --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c @@ -0,0 +1,69 @@ +/* Copyright 2021 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +#define CT_Q LCTL_T(KC_Q) +#define CT_CM RCTL_T(KC_COMM) +#define SF_Z LSFT_T(KC_Z) +#define SF_SS RSFT_T(KC_SLSH) +#define AL_X LALT_T(KC_X) +#define AL_DT RALT_T(KC_DOT) +#define LO_TB LT(LOWER, KC_TAB) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung34( + CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, + LO_TB, KC_BSPC, KC_SPC, RAISE + ), + + [_LOWER] = LAYOUT_reviung34( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, + KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, + _______, _______, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung34( + 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, + KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, + _______, KC_DEL, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung34( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, + _______, _______, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb/readme.md b/keyboards/reviung/reviung34/keymaps/default_rgb/readme.md new file mode 100755 index 0000000000..81b04868cb --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_rgb/readme.md @@ -0,0 +1 @@ +# The default keymap for non-split reviung34 diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb/rules.mk b/keyboards/reviung/reviung34/keymaps/default_rgb/rules.mk new file mode 100644 index 0000000000..1e3cebb145 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_rgb/rules.mk @@ -0,0 +1 @@ +RGBLIGHT_ENABLE = yes diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb2u/config.h b/keyboards/reviung/reviung34/keymaps/default_rgb2u/config.h new file mode 100644 index 0000000000..b68201231f --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_rgb2u/config.h @@ -0,0 +1,31 @@ +/* Copyright 2021 gtips + * + * 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 . + */ + +#pragma once + +// place overrides here + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 9 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 255 + #define RGBLIGHT_SLEEP +// /*== all animations enable ==*/ + #define RGBLIGHT_ANIMATIONS +#endif \ No newline at end of file diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c b/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c new file mode 100755 index 0000000000..f4f1d3be50 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c @@ -0,0 +1,68 @@ +/* Copyright 2021 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +#define CT_Q LCTL_T(KC_Q) +#define CT_CM RCTL_T(KC_COMM) +#define SF_Z LSFT_T(KC_Z) +#define SF_SS RSFT_T(KC_SLSH) +#define AL_X LALT_T(KC_X) +#define AL_DT RALT_T(KC_DOT) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung34_2uL( + CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, + LOWER, KC_SPC, RAISE + ), + + [_LOWER] = LAYOUT_reviung34_2uL( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, + KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, + _______, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung34_2uL( + 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, + KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, + _______, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung34_2uL( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, + _______, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb2u/readme.md b/keyboards/reviung/reviung34/keymaps/default_rgb2u/readme.md new file mode 100755 index 0000000000..8acc99250f --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_rgb2u/readme.md @@ -0,0 +1,3 @@ +# The default keymap for non-split reviung34 + +Use the thumb key with 2u diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb2u/rules.mk b/keyboards/reviung/reviung34/keymaps/default_rgb2u/rules.mk new file mode 100644 index 0000000000..1e3cebb145 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/default_rgb2u/rules.mk @@ -0,0 +1 @@ +RGBLIGHT_ENABLE = yes diff --git a/keyboards/reviung/reviung34/readme.md b/keyboards/reviung/reviung34/readme.md new file mode 100755 index 0000000000..48b054cf94 --- /dev/null +++ b/keyboards/reviung/reviung34/readme.md @@ -0,0 +1,18 @@ +# reviung34 + +![REVIUNG34 SPLIT](https://github.com/gtips/reviung/blob/master/reviung34split/image/REVIUNG34.jpg) + +The REVIUNG34 SPLIT is 34-key split ortholinear keyboard. +Use one ProMicro. +And connect the left and right keyboards using a LAN cable. + +Keyboard Maintainer: [gtips](https://github.com/gtips) +Hardware Supported: The REVIUNG34 PCBs, Pro Micro supported +Hardware Availability: [PCB & Case Data](https://github.com/gtips/reviung/tree/master/reviung34split) + +Make example for this keyboard (after setting up your build environment): + + make reviung34: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). + diff --git a/keyboards/reviung/reviung34/reviung34.c b/keyboards/reviung/reviung34/reviung34.c new file mode 100755 index 0000000000..00862d73e9 --- /dev/null +++ b/keyboards/reviung/reviung34/reviung34.c @@ -0,0 +1,16 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include "reviung34.h" diff --git a/keyboards/reviung/reviung34/reviung34.h b/keyboards/reviung/reviung34/reviung34.h new file mode 100755 index 0000000000..8385e5c8c2 --- /dev/null +++ b/keyboards/reviung/reviung34/reviung34.h @@ -0,0 +1,52 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_reviung34( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K35, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K36, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K37, \ + K32, K33, K34, K38 \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { KC_NO, KC_NO, K32, K33, K34, K35, K36, K37, K38 } \ +} + +#define LAYOUT_reviung34_2uL( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K35, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K36, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K37, \ + K32, K34, K38 \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { KC_NO, KC_NO, K32, KC_NO, K34, K35, K36, K37, K38 } \ +} diff --git a/keyboards/reviung/reviung34/rules.mk b/keyboards/reviung/reviung34/rules.mk new file mode 100755 index 0000000000..203f9645e5 --- /dev/null +++ b/keyboards/reviung/reviung34/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/reviung/reviung39/config.h b/keyboards/reviung/reviung39/config.h new file mode 100644 index 0000000000..098497bc9f --- /dev/null +++ b/keyboards/reviung/reviung39/config.h @@ -0,0 +1,146 @@ +/* +Copyright 2019 gtips + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x5F10 +#define DEVICE_VER 0x0001 +#define MANUFACTURER gtips +#define PRODUCT reviung39 + +/* key matrix size */ +#define MATRIX_ROWS 7 +#define MATRIX_COLS 6 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ +#define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3, B2 } +#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +// #define BACKLIGHT_PIN B7 +// #define BACKLIGHT_BREATHING +// #define BACKLIGHT_LEVELS 3 + +// #define RGB_DI_PIN E2 +// #ifdef RGB_DI_PIN +// #define RGBLED_NUM 16 +// #define RGBLIGHT_HUE_STEP 8 +// #define RGBLIGHT_SAT_STEP 8 +// #define RGBLIGHT_VAL_STEP 8 +// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== all animations enable ==*/ +// #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ +// #define RGBLIGHT_EFFECT_BREATHING +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT +// #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +// /*== customize breathing effect ==*/ +// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +// /*==== use exp() and sin() ====*/ +// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +// #endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. + * This is userful for the Windows task manager shortcut (ctrl+shift+esc). + */ +// #define GRAVE_ESC_CTRL_OVERRIDE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * 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 NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +// #define BOOTMAGIC_LITE_ROW 0 +// #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung39/info.json b/keyboards/reviung/reviung39/info.json new file mode 100644 index 0000000000..725e2ff8e1 --- /dev/null +++ b/keyboards/reviung/reviung39/info.json @@ -0,0 +1,56 @@ +{ + "keyboard_name": "reviung39", + "url": "", + "maintainer": "gtips", + "layouts": { + "LAYOUT_reviung39": { + "layout": [ + {"label":"K00", "x":0, "y":0.54}, + {"label":"K01", "x":1, "y":0.36}, + {"label":"K02", "x":2, "y":0.18}, + {"label":"K03", "x":3, "y":0}, + {"label":"K04", "x":4, "y":0.18}, + {"label":"K05", "x":5, "y":0.36}, + + {"label":"K30", "x":7, "y":0.36}, + {"label":"K31", "x":8, "y":0.18}, + {"label":"K32", "x":9, "y":0}, + {"label":"K33", "x":10, "y":0.18}, + {"label":"K34", "x":11, "y":0.36}, + {"label":"K35", "x":12, "y":0.54}, + + {"label":"K10", "x":0, "y":1.54}, + {"label":"K11", "x":1, "y":1.36}, + {"label":"K12", "x":2, "y":1.18}, + {"label":"K13", "x":3, "y":1}, + {"label":"K14", "x":4, "y":1.18}, + {"label":"K15", "x":5, "y":1.36}, + + {"label":"K40", "x":7, "y":1.36}, + {"label":"K41", "x":8, "y":1.18}, + {"label":"K42", "x":9, "y":1}, + {"label":"K43", "x":10, "y":1.18}, + {"label":"K44", "x":11, "y":1.36}, + {"label":"K45", "x":12, "y":1.54}, + + {"label":"K20", "x":0, "y":2.54}, + {"label":"K21", "x":1, "y":2.36}, + {"label":"K22", "x":2, "y":2.18}, + {"label":"K23", "x":3, "y":2}, + {"label":"K24", "x":4, "y":2.18}, + {"label":"K25", "x":5, "y":2.36}, + + {"label":"K50", "x":7, "y":2.36}, + {"label":"K51", "x":8, "y":2.18}, + {"label":"K52", "x":9, "y":2}, + {"label":"K53", "x":10, "y":2.18}, + {"label":"K54", "x":11, "y":2.36}, + {"label":"K55", "x":12, "y":2.54}, + + {"label":"K60", "x":4.125, "y":3.54, "w":1.25}, + {"label":"K61", "x":5.375, "y":3.54, "w":2.25}, + {"label":"K62", "x":7.625, "y":3.54, "w":1.25} + ] + } + } +} diff --git a/keyboards/reviung/reviung39/keymaps/default/config.h b/keyboards/reviung/reviung39/keymaps/default/config.h new file mode 100644 index 0000000000..70c641fca0 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/default/config.h @@ -0,0 +1,47 @@ +/* Copyright 2019 gtips + * + * 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 . + */ + +#pragma once + +// place overrides here + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 11 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== all animations enable ==*/ + #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ +// #define RGBLIGHT_EFFECT_BREATHING +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT +// #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +// /*== customize breathing effect ==*/ +// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +// /*==== use exp() and sin() ====*/ +// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif \ No newline at end of file diff --git a/keyboards/reviung/reviung39/keymaps/default/keymap.c b/keyboards/reviung/reviung39/keymaps/default/keymap.c new file mode 100644 index 0000000000..7030be13fa --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/default/keymap.c @@ -0,0 +1,61 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung39( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT), + LOWER, KC_SPC, RAISE + ), + + [_LOWER] = LAYOUT_reviung39( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_GRV, KC_TILD, + _______, KC_ESC, KC_LGUI, KC_LALT, KC_CAPS, KC_DQUO, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, RSFT_T(KC_SPC), + _______, KC_ENT, _______ + ), + + [_RAISE] = LAYOUT_reviung39( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + _______, KC_ESC, KC_RGUI, KC_RALT, KC_CAPS, KC_QUOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + _______, KC_BSPC, _______ + ), + + [_ADJUST] = LAYOUT_reviung39( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung39/keymaps/default/readme.md b/keyboards/reviung/reviung39/keymaps/default/readme.md new file mode 100644 index 0000000000..0c8f52d105 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/default/readme.md @@ -0,0 +1,3 @@ +# The default keymap for REVIUNG39 + +__REVIUNG39 is regular version__ diff --git a/keyboards/reviung/reviung39/keymaps/default/rules.mk b/keyboards/reviung/reviung39/keymaps/default/rules.mk new file mode 100644 index 0000000000..1e3cebb145 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/default/rules.mk @@ -0,0 +1 @@ +RGBLIGHT_ENABLE = yes diff --git a/keyboards/reviung/reviung39/keymaps/default_s/config.h b/keyboards/reviung/reviung39/keymaps/default_s/config.h new file mode 100644 index 0000000000..48be04a5b1 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/default_s/config.h @@ -0,0 +1,47 @@ +/* Copyright 2019 gtips + * + * 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 . + */ + +#pragma once + +// place overrides here + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 6 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== all animations enable ==*/ + #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ +// #define RGBLIGHT_EFFECT_BREATHING +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT +// #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +// /*== customize breathing effect ==*/ +// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +// /*==== use exp() and sin() ====*/ +// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif \ No newline at end of file diff --git a/keyboards/reviung/reviung39/keymaps/default_s/keymap.c b/keyboards/reviung/reviung39/keymaps/default_s/keymap.c new file mode 100644 index 0000000000..42e2694315 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/default_s/keymap.c @@ -0,0 +1,61 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung39( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT), + LOWER, KC_SPC, RAISE + ), + + [_LOWER] = LAYOUT_reviung39( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_GRV, KC_TILD, + _______, KC_ESC, KC_LGUI, KC_LALT, KC_CAPS, KC_DQUO, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, RSFT_T(KC_SPC), + _______, KC_ENT, _______ + ), + + [_RAISE] = LAYOUT_reviung39( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + _______, KC_ESC, KC_RGUI, KC_RALT, KC_CAPS, KC_QUOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + _______, KC_BSPC, _______ + ), + + [_ADJUST] = LAYOUT_reviung39( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung39/keymaps/default_s/readme.md b/keyboards/reviung/reviung39/keymaps/default_s/readme.md new file mode 100644 index 0000000000..b882ec40c2 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/default_s/readme.md @@ -0,0 +1,6 @@ +# The default keymap for REVIUNG39S + +__REVIUNG39S is simple version__ + +The number of RGB LEDs is set to 6. +To change the number of RGB LEDs, change the "#define RGBLED_NUM 6" number in "default_s / config.h". diff --git a/keyboards/reviung/reviung39/keymaps/default_s/rules.mk b/keyboards/reviung/reviung39/keymaps/default_s/rules.mk new file mode 100644 index 0000000000..1e3cebb145 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/default_s/rules.mk @@ -0,0 +1 @@ +RGBLIGHT_ENABLE = yes diff --git a/keyboards/reviung/reviung39/keymaps/toshi0383/config.h b/keyboards/reviung/reviung39/keymaps/toshi0383/config.h new file mode 100644 index 0000000000..cd201ebfbb --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/toshi0383/config.h @@ -0,0 +1,47 @@ +/* Copyright 2019 gtips + * + * 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 . + */ + +#pragma once + +// place overrides here + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 11 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== all animations enable ==*/ + #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ +// #define RGBLIGHT_EFFECT_BREATHING +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT +// #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +// /*== customize breathing effect ==*/ +// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +// /*==== use exp() and sin() ====*/ +// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif diff --git a/keyboards/reviung/reviung39/keymaps/toshi0383/keymap.c b/keyboards/reviung/reviung39/keymaps/toshi0383/keymap.c new file mode 100644 index 0000000000..f2586086c2 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/toshi0383/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung39( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPACE, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SFT_T(KC_SCLN), KC_RGUI, + KC_SPC, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_RCTL, KC_DOT, KC_RALT, RGUI(KC_RSFT), + LOWER, KC_ENT, RAISE + ), + + [_LOWER] = LAYOUT_reviung39( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, _______, _______, _______, + _______, KC_LT, KC_GT, KC_LPRN, KC_RPRN, KC_GRV, KC_MINS, KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_PIPE, + KC_LALT, _______, _______, _______, KC_EQL, KC_QUES, KC_UNDS, KC_PLUS, KC_COMM, _______, KC_SLSH, _______, + _______, _______, KC_RGUI + ), + + [_RAISE] = LAYOUT_reviung39( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + _______, KC_COLN, KC_SCLN, KC_DQT, KC_QUOT, KC_BSLS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, ADJUST, _______, _______, _______, _______, _______, + KC_LGUI, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung39( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, + KC_MUTE, KC_VOLD, KC_VOLU, KC_BRID, KC_BRIU, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LANG1, KC_LANG2, + KC_LGUI, XXXXXXX, _______ + ), +}; diff --git a/keyboards/reviung/reviung39/keymaps/toshi0383/readme.md b/keyboards/reviung/reviung39/keymaps/toshi0383/readme.md new file mode 100644 index 0000000000..5a09f2559a --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/toshi0383/readme.md @@ -0,0 +1,3 @@ +# toshi0383's keymap for REVIUNG39 + +__REVIUNG39 is regular version__ diff --git a/keyboards/reviung/reviung39/keymaps/toshi0383/rules.mk b/keyboards/reviung/reviung39/keymaps/toshi0383/rules.mk new file mode 100644 index 0000000000..7ad666d1a3 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/toshi0383/rules.mk @@ -0,0 +1 @@ +RGBLIGHT_ENABLE = yes \ No newline at end of file diff --git a/keyboards/reviung/reviung39/keymaps/via/keymap.c b/keyboards/reviung/reviung39/keymaps/via/keymap.c new file mode 100644 index 0000000000..0a4a664dc2 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/via/keymap.c @@ -0,0 +1,54 @@ +/* Copyright 2020 @toastedmangoes + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung39( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT), + FN_MO13, KC_SPC, FN_MO23 + ), + + [_LOWER] = LAYOUT_reviung39( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_GRV, KC_TILD, + _______, KC_ESC, KC_LGUI, KC_LALT, KC_CAPS, KC_DQUO, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, RSFT_T(KC_SPC), + _______, KC_ENT, _______ + ), + + [_RAISE] = LAYOUT_reviung39( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + _______, KC_ESC, KC_RGUI, KC_RALT, KC_CAPS, KC_QUOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + _______, KC_BSPC, _______ + ), + + [_ADJUST] = LAYOUT_reviung39( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX, _______ + ), +}; + diff --git a/keyboards/reviung/reviung39/keymaps/via/rules.mk b/keyboards/reviung/reviung39/keymaps/via/rules.mk new file mode 100644 index 0000000000..5d85ccd103 --- /dev/null +++ b/keyboards/reviung/reviung39/keymaps/via/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +RGBLIGHT_ENABLE = no +LTO_ENABLE = yes diff --git a/keyboards/reviung/reviung39/readme.md b/keyboards/reviung/reviung39/readme.md new file mode 100644 index 0000000000..e0bf642828 --- /dev/null +++ b/keyboards/reviung/reviung39/readme.md @@ -0,0 +1,15 @@ +# reviung39 + +![reviung39](https://github.com/gtips/reviung/blob/master/reviung39/image/REVIUNG39-1.jpg) + +The REVIUNG39 is 39-key column staggered keyboard. + +Keyboard Maintainer: [gtips](https://github.com/gtips) +Hardware Supported: The REVIUNG39 PCBs, Pro Micro supported +Hardware Availability: [PCB & Case Data](https://github.com/gtips/reviung) + +Make example for this keyboard (after setting up your build environment): + + make reviung39: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). diff --git a/keyboards/reviung/reviung39/reviung39.c b/keyboards/reviung/reviung39/reviung39.c new file mode 100644 index 0000000000..0948106e9d --- /dev/null +++ b/keyboards/reviung/reviung39/reviung39.c @@ -0,0 +1,16 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include "reviung39.h" diff --git a/keyboards/reviung/reviung39/reviung39.h b/keyboards/reviung/reviung39/reviung39.h new file mode 100644 index 0000000000..89776c5aa2 --- /dev/null +++ b/keyboards/reviung/reviung39/reviung39.h @@ -0,0 +1,42 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_reviung39( \ + K00, K01, K02, K03, K04, K05, K30, K31, K32, K33, K34, K35, \ + K10, K11, K12, K13, K14, K15, K40, K41, K42, K43, K44, K45, \ + K20, K21, K22, K23, K24, K25, K50, K51, K52, K53, K54, K55, \ + K60, K61, K62 \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05 }, \ + { K10, K11, K12, K13, K14, K15 }, \ + { K20, K21, K22, K23, K24, K25 }, \ + { K30, K31, K32, K33, K34, K35 }, \ + { K40, K41, K42, K43, K44, K45 }, \ + { K50, K51, K52, K53, K54, K55 }, \ + { K60, K61, K62, KC_NO, KC_NO, KC_NO } \ +} diff --git a/keyboards/reviung/reviung39/rules.mk b/keyboards/reviung/reviung39/rules.mk new file mode 100644 index 0000000000..203f9645e5 --- /dev/null +++ b/keyboards/reviung/reviung39/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/reviung/reviung41/config.h b/keyboards/reviung/reviung41/config.h new file mode 100644 index 0000000000..967ca791d5 --- /dev/null +++ b/keyboards/reviung/reviung41/config.h @@ -0,0 +1,146 @@ +/* +Copyright 2020 gtips + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7807 +#define PRODUCT_ID 0xDCCB +#define DEVICE_VER 0x0001 +#define MANUFACTURER gtips +#define PRODUCT reviung41 + +/* key matrix size */ +#define MATRIX_ROWS 7 +#define MATRIX_COLS 6 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * + */ +#define MATRIX_ROW_PINS \ + { F4, F5, F6, F7, B1, B3, B2 } +#define MATRIX_COL_PINS \ + { D4, C6, D7, E6, B4, B5 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +// #define BACKLIGHT_PIN B7 +// #define BACKLIGHT_BREATHING +// #define BACKLIGHT_LEVELS 3 + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 11 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== all animations enable ==*/ + #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ +// #define RGBLIGHT_EFFECT_BREATHING +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT +// #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +// /*== customize breathing effect ==*/ +// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +// /*==== use exp() and sin() ====*/ +// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. + * This is userful for the Windows task manager shortcut (ctrl+shift+esc). + */ +// #define GRAVE_ESC_CTRL_OVERRIDE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * 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 NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +// #define BOOTMAGIC_LITE_ROW 0 +// #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung41/info.json b/keyboards/reviung/reviung41/info.json new file mode 100644 index 0000000000..ff9e11b939 --- /dev/null +++ b/keyboards/reviung/reviung41/info.json @@ -0,0 +1,58 @@ +{ + "keyboard_name": "reviung39", + "url": "", + "maintainer": "gtips", + "layouts": { + "LAYOUT_reviung41": { + "layout": [ + {"label":"K00", "x":0, "y":0.54}, + {"label":"K01", "x":1, "y":0.36}, + {"label":"K02", "x":2, "y":0.18}, + {"label":"K03", "x":3, "y":0}, + {"label":"K04", "x":4, "y":0.18}, + {"label":"K05", "x":5, "y":0.36}, + + {"label":"K30", "x":7, "y":0.36}, + {"label":"K31", "x":8, "y":0.18}, + {"label":"K32", "x":9, "y":0}, + {"label":"K33", "x":10, "y":0.18}, + {"label":"K34", "x":11, "y":0.36}, + {"label":"K35", "x":12, "y":0.54}, + + {"label":"K10", "x":0, "y":1.54}, + {"label":"K11", "x":1, "y":1.36}, + {"label":"K12", "x":2, "y":1.18}, + {"label":"K13", "x":3, "y":1}, + {"label":"K14", "x":4, "y":1.18}, + {"label":"K15", "x":5, "y":1.36}, + + {"label":"K40", "x":7, "y":1.36}, + {"label":"K41", "x":8, "y":1.18}, + {"label":"K42", "x":9, "y":1}, + {"label":"K43", "x":10, "y":1.18}, + {"label":"K44", "x":11, "y":1.36}, + {"label":"K45", "x":12, "y":1.54}, + + {"label":"K20", "x":0, "y":2.54}, + {"label":"K21", "x":1, "y":2.36}, + {"label":"K22", "x":2, "y":2.18}, + {"label":"K23", "x":3, "y":2}, + {"label":"K24", "x":4, "y":2.18}, + {"label":"K25", "x":5, "y":2.36}, + + {"label":"K50", "x":7, "y":2.36}, + {"label":"K51", "x":8, "y":2.18}, + {"label":"K52", "x":9, "y":2}, + {"label":"K53", "x":10, "y":2.18}, + {"label":"K54", "x":11, "y":2.36}, + {"label":"K55", "x":12, "y":2.54}, + + {"label":"K60", "x":2.875, "y":3.54, "w":1.25}, + {"label":"K61", "x":4.125, "y":3.54, "w":1.25}, + {"label":"K62", "x":5.375, "y":3.54, "w":2.25}, + {"label":"K63", "x":7.625, "y":3.54, "w":1.25}, + {"label":"K64", "x":8.875, "y":3.54, "w":1.25} + ] + } + } +} diff --git a/keyboards/reviung/reviung41/keymaps/ciutadellla/config.h b/keyboards/reviung/reviung41/keymaps/ciutadellla/config.h new file mode 100644 index 0000000000..920c317e4b --- /dev/null +++ b/keyboards/reviung/reviung41/keymaps/ciutadellla/config.h @@ -0,0 +1,29 @@ +/* Copyright 2021 @Ciutadellla + * + * 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 . + */ + +#pragma once +#define RGBLIGHT_LAYERS +#ifdef RGB_DI_PIN + // /*== all animations enable ==*/ + //#define RGBLIGHT_ANIMATIONS + // /*== or choose animations ==*/ + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#endif + +#define TAPPING_TERM 200 +#define UNICODE_SELECTED_MODES UC_MAC, UC_LNX, UC_WINC diff --git a/keyboards/reviung/reviung41/keymaps/ciutadellla/keymap.c b/keyboards/reviung/reviung41/keymaps/ciutadellla/keymap.c new file mode 100644 index 0000000000..a35b677197 --- /dev/null +++ b/keyboards/reviung/reviung41/keymaps/ciutadellla/keymap.c @@ -0,0 +1,333 @@ +/* Copyright 2021 @Ciutadellla + * + * 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 . + */ + + + #include QMK_KEYBOARD_H + + enum layer_names { + _BASE, + _LOWER, + _RAISE, + _MOVE, + _ADJUST + }; + + //UNICODES + #include "process_unicode.h" + + enum unicode_names { + CKC_EUR, + N_TILDE, + COMB_ACUTE_ACCENT, + GRINNING_FACE, // 😃 + BEAMING_FACE, // 😁 + GRINNING_FACE_WITH_SWEAT, // 😅 + ROLLING_LAUGHING, // 🤣 + FACE_TEARS_JOY, // 😂 + WINKING_FACE, // 😉 + SMILING_FACE_HALO, // 😇 + SMILING_FACE_HEARTS, // 🥰 + SMILING_FACE_HEART_EYES, // 😍 + FACE_BLOWING_KISS, // 😘 + FACE_SAVORING_FOOD, // 😋 + ZANY_FACE, // 🤪 + HUGGING_FACE, // 🤗 + SHUSHING_FACE, // 🤫 + THINKING_FACE, // 🤔 + FACE_RAISED_EYEBROW, // 🤨 + NEUTRAL_FACE, // 😐 + SMIRKING_FACE, // 😏 + FACE_ROLLING_EYES, // 🙄 + PENSIVE_FACE, // 😔 + FACE_VOMITING, // 🤮 + WOOZY_FACE, // 🥴 + PLEADING_FACE, // 🥺 + LOUDLY_CRYING_FACE, // 😭 + DISAPPOINTED_FACE, // 😞 + FACE_SYMBOLS_MOUTH, // 🤬 + SMILING_FACE_HORNS, // 😈 + SKULL, // 💀 + PILE_POO, // 💩 + GHOST, // 👻 + ALIEN_MONSTER, // 👾 + RED_HEART, // ❤ + BOMB, // 💣 + WAVING_HAND, // 👋 + OK_HAND, // 👌 + CLAPPING_HANDS, // 👏 + EYES, // 👀 + MAN_FACEPALMING, // 🤦 + TURTLE, // 🐢 + SNAKE, // 🐍 + SPOUTING_WHALE, // 🐳 + DRAGON, // 🐉 + TREX, // 🦖 + THUMBSDOWN, // 👍 + THUMBSUP, // 👎 + }; + + //https://unicode-table.com/en/#00F1 + const uint32_t PROGMEM unicode_map[] = { + [CKC_EUR] = 0x20AC, //€ + [N_TILDE] = 0x00F1, // ñ + [COMB_ACUTE_ACCENT] = 0x0301, // ´ + [GRINNING_FACE] = 0x1F603, + [BEAMING_FACE] = 0x1F601, + [GRINNING_FACE_WITH_SWEAT] = 0x1F605, + [ROLLING_LAUGHING] = 0x1F923, + [FACE_TEARS_JOY] = 0x1F602, + [WINKING_FACE] = 0x1F609, + [SMILING_FACE_HALO] = 0x1F607, + [SMILING_FACE_HEARTS] = 0x1F970, + [SMILING_FACE_HEART_EYES] = 0x1F60D, + [FACE_BLOWING_KISS] = 0x1F618, + [FACE_SAVORING_FOOD] = 0x1F60B, + [ZANY_FACE] = 0x1F92A, + [HUGGING_FACE] = 0x1F917, + [SHUSHING_FACE] = 0x1F92B, + [THINKING_FACE] = 0x1F914, + [FACE_RAISED_EYEBROW] = 0x1F928, + [NEUTRAL_FACE] = 0x1F610, + [SMIRKING_FACE] = 0x1F60F, + [FACE_ROLLING_EYES] = 0x1F644, + [PENSIVE_FACE] = 0x1F614, + [FACE_VOMITING] = 0x1F92E, + [WOOZY_FACE] = 0x1F974, + [PLEADING_FACE] = 0x1F97A, + [LOUDLY_CRYING_FACE] = 0x1F62D, + [DISAPPOINTED_FACE] = 0x1F61E, + [FACE_SYMBOLS_MOUTH] = 0x1F92C, + [SMILING_FACE_HORNS] = 0x1F608, + [SKULL] = 0x1F480, + [PILE_POO] = 0x1F4A9, + [GHOST] = 0x1F47B, + [ALIEN_MONSTER] = 0x1F47E, + [RED_HEART] = 0x2764, + [BOMB] = 0x1F4A3, + [WAVING_HAND] = 0x1F44B, + [OK_HAND] = 0x1F44C, + [CLAPPING_HANDS] = 0x1F44F, + [EYES] = 0x1F440, + [MAN_FACEPALMING] = 0x1F926, + [TURTLE] = 0x1F422, + [SNAKE] = 0x1F40D, + [SPOUTING_WHALE] = 0x1F433, + [DRAGON] = 0x1F409, + [TREX] = 0x1F996, + [THUMBSDOWN] = 0x1F44E, + [THUMBSUP] = 0x1F44D, + }; + + + void matrix_init_user(){ + set_unicode_input_mode(UC_MAC); + } + + + // Shortcut to make keymap more readable + #define KC_OSX_EJECT 0x66 + #define LOCK_OSX LSFT(LCTL(KC_OSX_EJECT)) + #define SLEEP_OSX LALT(LGUI(KC_OSX_EJECT)) + #define KC_C_LF RCTL(KC_LEFT) // control + left + #define KC_C_RT RCTL(KC_RGHT) // control + right + + // tap dance declarations + enum { + _TD_TAB_ESC = 0, + _TD_BSPC_WDEL, + _TD_SFT_CAPS, + _TD_SPC_ENT, + _TD_N_NTILDE, + _TD_CTRL_LANG, + _TD_SCLN_NTILDE + }; + + #define TD_TAB_ESC TD(_TD_TAB_ESC) + #define TD_BSPC_WDEL TD(_TD_BSPC_WDEL) + #define TD_SFT_CAPS TD(_TD_SFT_CAPS) + #define TD_SPC_ENT TD(_TD_SPC_ENT) + #define TD_N_NTILDE TD(_TD_N_NTILDE) + #define TD_CTRL_LANG TD(_TD_CTRL_LANG) + #define TD_SCLN_NTILDE TD(_TD_SCLN_NTILDE) //TP with costum keycodes has to be a funtion + + void td_scln_ntilde(qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + register_code(KC_SCLN); + unregister_code(KC_SCLN); + } else { + send_unicode_string("ñ"); + } + reset_tap_dance(state); + } + + // Tap Dance Definitions + qk_tap_dance_action_t tap_dance_actions[] = { + [_TD_TAB_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_TAB, KC_ESC), + [_TD_BSPC_WDEL] = ACTION_TAP_DANCE_DOUBLE(KC_BSPC, LALT(KC_BSPC)), + [_TD_SFT_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS), + [_TD_SPC_ENT] = ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_ENT), + [_TD_CTRL_LANG] = ACTION_TAP_DANCE_DOUBLE(KC_LCTL, LCTL(LSFT(KC_SPACE))), + [_TD_SCLN_NTILDE] = ACTION_TAP_DANCE_FN(td_scln_ntilde), + }; + + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + + /* Qwerty 0 + * ,-----------------------------------------+ +-----------------------------------------. + * | Tab | Q | W | E | R | T | | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * |CtlLNG| A | S | D | F | G | | H | J | K | L | ; | " | + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | | N | M | , | . | / | Shift| + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * | GUI | Lower| Space | Raise| Alt | + * +-------------/ \--------------+ + */ + [_BASE] = LAYOUT_reviung41(TD_TAB_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, TD_BSPC_WDEL, TD_CTRL_LANG, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD_SCLN_NTILDE, KC_QUOT, TD_SFT_CAPS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT), KC_LGUI, MO(1), TD_SPC_ENT, MO(2), LT(4,KC_NO)), + + + /* LOWER 1 + * ,-----------------------------------------+ +-----------------------------------------. + * | Tab | ! | @ | # | $ | % | | ^ | & | * | () | ) | Del | + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * | Ctl | _ | + | {} | } | | | | LEFT | DOWN | UP | RIGHT| ´ | " | + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * | Shift| Esc | Gui | Alt | = | "" | | HOME | END | PGUP | PDOWN| / | Shft | + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * | GUI | Lower| Space | Raise| Alt | + * +-------------/ \--------------+ + */ + [_LOWER] = LAYOUT_reviung41(KC_TRNS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_ESC, KC_LGUI, KC_LALT, KC_LCTL, KC_TRNS, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, MT(MOD_LSFT | MOD_RSFT,KC_SPC), KC_TRNS, KC_TRNS, KC_ENT, MO(3), KC_TRNS), + + /* Raise 2 + * ,-----------------------------------------+ +-----------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | DEL | + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * | | MINS | EQL | LBRC | RBRC | BSLS | | F1 | F2 | F3 | F4 | F5 | F6 | + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * | | | | | | QUOT | | F7 | F8 | F9 | F10 | F11 | F12 | + * |------+------+------+------+------+------+ +------+------+------+------+------+------| + * | ____ | MO(3)| BSPC | ____ | ____ | + * +-------------/ \--------------+ + */ + + // [_RAISE] = LAYOUT_reviung41( + // KC_TRNS, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_DEL, + // KC_TRNS, KC_LPRN, KC_RPRN, KC_LT, KC_GT, KC_AMPR, KC_PMNS, KC_PPLS, KC_HASH, KC_PERC, KC_COLN, KC_PEQL, + // KC_TRNS, KC_LCBR, KC_RCBR, KC_SLSH, KC_RO, KC_PIPE, KC_PSLS, KC_PAST, KC_PCMM, KC_PDOT, KC_HASH, KC_PENT, + // KC_TRNS, MO(3), KC_BSPC, KC_TRNS, KC_TRNS + // ), + + [_RAISE] = LAYOUT_reviung41( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_P7, KC_P8, KC_P9, KC_P0, KC_PPLS, KC_PMNS, + KC_COLN, KC_DQUO, KC_LCBR, KC_RCBR, KC_LT, KC_GT, KC_P4, KC_P5, KC_P6, KC_PERC, KC_PAST, KC_PSLS, + KC_AMPR, KC_PIPE, KC_LPRN, KC_RPRN, KC_LBRC, KC_RBRC, KC_P1, KC_P2, KC_P3, KC_PCMM, KC_PDOT, KC_PEQL, + KC_TRNS, MO(3), KC_PENT, KC_TRNS, KC_TRNS + ), + + + /* _MOVE 3 + * ,---------------------------------------------------+ +------------------------------------------. + * | | | | | | | | | WHD | WHU | | | LOCK | + * |-------+-------+-------+---------+-------+---------+ +------+------+------+------+------+-------| + * | | | | | | | | M_L | M_D | M_I | M_R | | SLEEP | + * |-------+-------+-------+---------+-------+---------+ +------+------+------+------+------+-------| + * | | | | | SCRLFT| SCRRGHT | | M_B1 | M_B2| M0 | M2 | | RESET | + * |-------+-------+-------+---------+-------+---------+ +------+------+------+------+------+-------| + * | ____ | ____ | BSPC | ____ | ____ | + * +-------------/ \--------------+ + */ + [_MOVE] = LAYOUT_reviung41(KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, KC_ACL2, LOCK_OSX, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_ACL0, SLEEP_OSX, KC_F13, KC_F14, KC_F15, KC_F16, KC_C_LF, KC_C_RT, KC_BTN1, KC_BTN2, KC_BTN3, KC_BTN4, KC_BTN5, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + /* _ADJUST 4 + * ,----------------------------------------+ +---------------------------------------------------. + * | 😃 | 😅 | 🤣 | 😉 | 😇 | 🥰 | | RGBUP | HUEUP | RGB_MOD | BRIU | PLAY | VOLU | + * |------+-----+------+------+------+------+ +-------+--------+----------+-------+-------+------| + * | 😍 | 😘 | 🙄 | 😔 | 😭 | 💩 | | RGBDWN| HUEDWN | RGB_TOG | BRID | STOP | VOLD | + * |------+-----+------+------+------+------+ +-------+--------+----------+--------+------+------| + * | 👍 | 👎 | 👏 | 👀 | 🤦 | 👻 | | RGB_TG| | | | | MUTE | + * |------+------+------+------+------+------+ +-------+--------+----------+--------+------+------| + * | GUI | Lower| BSPC | Raise| Alt | + * +-------------/ \--------------+ + */ + + [_ADJUST] = LAYOUT_reviung41(X(GRINNING_FACE), X(GRINNING_FACE_WITH_SWEAT), X(ROLLING_LAUGHING), X(WINKING_FACE), X(SMILING_FACE_HALO), X(SMILING_FACE_HEARTS), RGB_VAI, RGB_HUI, RGB_MOD, KC_BRIU, KC_MPLY, KC_VOLU, X(SMILING_FACE_HEART_EYES), X(FACE_BLOWING_KISS), X(FACE_ROLLING_EYES), X(PENSIVE_FACE), X(LOUDLY_CRYING_FACE), X(PILE_POO), RGB_VAD, RGB_HUD, RGB_RMOD, KC_BRID, KC_MSTP, KC_VOLD, X(THUMBSUP), X(THUMBSDOWN), X(CLAPPING_HANDS), X(EYES), X(MAN_FACEPALMING), X(GHOST), RGB_TOG, RGB_SAD, RGB_SAI, RGB_SPD, RGB_SPI, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) + + }; + + + + #ifdef RGBLIGHT_ENABLE + // RGB LED Indicators + const rgblight_segment_t PROGMEM my_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 11, HSV_RED} // Light 1 LED, starting with LED 0 + ); + + // RGB LED Indicators + const rgblight_segment_t PROGMEM my_base_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 11, HSV_CYAN} // Light 1 LED, starting with LED 0 + ); + + const rgblight_segment_t PROGMEM my_lower_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 11, HSV_GREEN} // Light 1 LED, starting with LED 1 + ); + + // RGB LED Indicators + const rgblight_segment_t PROGMEM my_rise_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 11, HSV_MAGENTA} // Light 1 LED, starting with LED 0 + ); + + // RGB LED Indicators + const rgblight_segment_t PROGMEM my_MOVE_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 11, HSV_YELLOW} // Light 1 LED, starting with LED 0 + ); + + + // RGB LED Indicators + const rgblight_segment_t PROGMEM my_ADJUST_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 11, HSV_AZURE} // Light 1 LED, starting with LED 0 + ); + + // Now define the array of layers. Later layers take precedence + const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST( + my_base_layer, // 0 + my_lower_layer, // 1 + my_rise_layer, // 2 + my_MOVE_layer, // 3 + my_ADJUST_layer, // 4 + my_capslock_layer // 5 + ); + + // Enable the LED layers + void keyboard_post_init_user(void) { + rgblight_layers = my_rgb_layers; + } + + layer_state_t layer_state_set_user(layer_state_t state) { + rgblight_set_layer_state(1, layer_state_cmp(state, _LOWER)); + rgblight_set_layer_state(2, layer_state_cmp(state, _RAISE)); + rgblight_set_layer_state(3, layer_state_cmp(state, _MOVE)); + rgblight_set_layer_state(4, layer_state_cmp(state, _ADJUST)); + return state; + } + + bool led_update_user(led_t led_state) { + rgblight_set_layer_state(5, led_state.caps_lock); + return true; + } + #endif + diff --git a/keyboards/reviung/reviung41/keymaps/ciutadellla/rules.mk b/keyboards/reviung/reviung41/keymaps/ciutadellla/rules.mk new file mode 100644 index 0000000000..eeafc12006 --- /dev/null +++ b/keyboards/reviung/reviung41/keymaps/ciutadellla/rules.mk @@ -0,0 +1,10 @@ +# MCU name +MCU = atmega32u4 +BOOTLOADER = atmel-dfu +MOUSEKEY_ENABLE = yes # Mouse keys +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +UNICODEMAP_ENABLE = yes # Unicode +TAP_DANCE_ENABLE = yes diff --git a/keyboards/reviung/reviung41/keymaps/default/keymap.c b/keyboards/reviung/reviung41/keymaps/default/keymap.c new file mode 100644 index 0000000000..4231e4896b --- /dev/null +++ b/keyboards/reviung/reviung41/keymaps/default/keymap.c @@ -0,0 +1,62 @@ +/* Copyright 2020 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung41( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT), + KC_LALT, LOWER, KC_SPC, RAISE, KC_RGUI + ), + + [_LOWER] = LAYOUT_reviung41( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_GRV, KC_TILD, + _______, KC_ESC, KC_LGUI, KC_LALT, KC_CAPS, KC_DQUO, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, RSFT_T(KC_SPC), + _______, _______, KC_ENT, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung41( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + _______, KC_ESC, KC_RGUI, KC_RALT, KC_CAPS, KC_QUOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + _______, _______, KC_BSPC, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung41( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, XXXXXXX, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + diff --git a/keyboards/reviung/reviung41/keymaps/default/readme.md b/keyboards/reviung/reviung41/keymaps/default/readme.md new file mode 100644 index 0000000000..7e8120413e --- /dev/null +++ b/keyboards/reviung/reviung41/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reviung41 diff --git a/keyboards/reviung/reviung41/keymaps/via/keymap.c b/keyboards/reviung/reviung41/keymaps/via/keymap.c new file mode 100644 index 0000000000..1f0bce741f --- /dev/null +++ b/keyboards/reviung/reviung41/keymaps/via/keymap.c @@ -0,0 +1,54 @@ +/* Copyright 2020 @toastedmangoes + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung41( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT), + KC_LGUI, MO(1), KC_SPC, MO(2), LT(3, KC_RALT) + ), + + [_LOWER] = LAYOUT_reviung41( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_GRV, KC_TILD, + _______, KC_ESC, KC_LGUI, KC_LALT, KC_CAPS, KC_DQUO, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, RSFT_T(KC_SPC), + _______, _______, KC_ENT, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung41( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + _______, KC_ESC, KC_RGUI, KC_RALT, KC_CAPS, KC_QUOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + _______, _______, KC_BSPC, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung41( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, XXXXXXX, _______, _______ + ), +}; + diff --git a/keyboards/reviung/reviung41/keymaps/via/rules.mk b/keyboards/reviung/reviung41/keymaps/via/rules.mk new file mode 100644 index 0000000000..5ed1ee4706 --- /dev/null +++ b/keyboards/reviung/reviung41/keymaps/via/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +RGBLIGHT_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/reviung/reviung41/readme.md b/keyboards/reviung/reviung41/readme.md new file mode 100644 index 0000000000..c8f5146385 --- /dev/null +++ b/keyboards/reviung/reviung41/readme.md @@ -0,0 +1,15 @@ +# reviung41 + +![reviung41](https://github.com/gtips/reviung/blob/master/reviung41/image/reviung41-01.jpg) + +The REVIUNG41 is 41-key column staggered keyboard. + +* Keyboard Maintainer: [gtips](https://github.com/gtips) +* Hardware Supported: REVIUNG41 PCBs, Pro Micro supported +* Hardware Availability: [PCB & Case Data](https://github.com/gtips/reviung/tree/master/reviung41) + +Make example for this keyboard (after setting up your build environment): + + make reviung41: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). diff --git a/keyboards/reviung/reviung41/reviung41.c b/keyboards/reviung/reviung41/reviung41.c new file mode 100644 index 0000000000..05bb42160a --- /dev/null +++ b/keyboards/reviung/reviung41/reviung41.c @@ -0,0 +1,16 @@ +/* Copyright 2020 gtips + * + * 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 . + */ +#include "reviung41.h" diff --git a/keyboards/reviung/reviung41/reviung41.h b/keyboards/reviung/reviung41/reviung41.h new file mode 100644 index 0000000000..6bc80e8b21 --- /dev/null +++ b/keyboards/reviung/reviung41/reviung41.h @@ -0,0 +1,42 @@ +/* Copyright 2020 gtips + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_reviung41( \ + K00, K01, K02, K03, K04, K05, K30, K31, K32, K33, K34, K35, \ + K10, K11, K12, K13, K14, K15, K40, K41, K42, K43, K44, K45, \ + K20, K21, K22, K23, K24, K25, K50, K51, K52, K53, K54, K55, \ + K60, K61, K62, K63, K64 \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05 }, \ + { K10, K11, K12, K13, K14, K15 }, \ + { K20, K21, K22, K23, K24, K25 }, \ + { K30, K31, K32, K33, K34, K35 }, \ + { K40, K41, K42, K43, K44, K45 }, \ + { K50, K51, K52, K53, K54, K55 }, \ + { K60, K61, K62, K63, K64, KC_NO } \ +} diff --git a/keyboards/reviung/reviung41/rules.mk b/keyboards/reviung/reviung41/rules.mk new file mode 100644 index 0000000000..e4e00e6274 --- /dev/null +++ b/keyboards/reviung/reviung41/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/reviung/reviung5/config.h b/keyboards/reviung/reviung5/config.h new file mode 100644 index 0000000000..b06c5797fd --- /dev/null +++ b/keyboards/reviung/reviung5/config.h @@ -0,0 +1,145 @@ +/* +Copyright 2021 gtips + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x5C06 +#define PRODUCT_ID 0x4F0D +#define DEVICE_VER 0x0001 +#define MANUFACTURER gtips +#define PRODUCT reviung5 + +/* key matrix size */ +#define MATRIX_ROWS 1 +#define MATRIX_COLS 5 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * + */ +#define MATRIX_ROW_PINS \ + { F4 } +#define MATRIX_COL_PINS \ + { D4, C6, D7, E6, B4 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Encoder */ +#define ENCODERS_PAD_A \ + { D0 } +#define ENCODERS_PAD_B \ + { D1 } + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN +# define RGBLED_NUM 4 +# define RGBLIGHT_HUE_STEP 16 +# define RGBLIGHT_SAT_STEP 16 +# define RGBLIGHT_VAL_STEP 16 +# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. + * This is useful for the Windows task manager shortcut (ctrl+shift+esc). + */ +//#define GRAVE_ESC_CTRL_OVERRIDE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung5/info.json b/keyboards/reviung/reviung5/info.json new file mode 100644 index 0000000000..78d27d64e2 --- /dev/null +++ b/keyboards/reviung/reviung5/info.json @@ -0,0 +1,16 @@ +{ + "keyboard_name": "reviung5", + "url": "", + "maintainer": "gtips", + "layouts": { + "LAYOUT_reviung5": { + "layout": [ + {"label": "k00", "x": 0, "y": 0}, + {"label": "k01", "x": 1, "y": 0.25}, + {"label": "k02", "x": 2, "y": 0.25}, + {"label": "k03", "x": 3, "y": 0.25}, + {"label": "k04", "x": 4, "y": 0} + ] + } + } +} diff --git a/keyboards/reviung/reviung5/keymaps/default/keymap.c b/keyboards/reviung/reviung5/keymaps/default/keymap.c new file mode 100644 index 0000000000..39f6669a52 --- /dev/null +++ b/keyboards/reviung/reviung5/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +/* Copyright 2021 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LOWER, +}; + +#define LO_VD LT(_LOWER, KC_VOLD) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_reviung5( + LO_VD, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLU + ), + [_LOWER] = LAYOUT_reviung5( + _______, RGB_HUI, RGB_MOD, RGB_TOG, KC_MUTE + ) +}; diff --git a/keyboards/reviung/reviung5/keymaps/default/readme.md b/keyboards/reviung/reviung5/keymaps/default/readme.md new file mode 100644 index 0000000000..babdce579f --- /dev/null +++ b/keyboards/reviung/reviung5/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reviung5 diff --git a/keyboards/reviung/reviung5/keymaps/default_lre/keymap.c b/keyboards/reviung/reviung5/keymaps/default_lre/keymap.c new file mode 100644 index 0000000000..2e732e72fe --- /dev/null +++ b/keyboards/reviung/reviung5/keymaps/default_lre/keymap.c @@ -0,0 +1,55 @@ +/* Copyright 2021 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LOWER, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_reviung5( + TG(_LOWER), KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE + ), + [_LOWER] = LAYOUT_reviung5( + _______, LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), RGB_TOG + ) +}; + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { + if (IS_LAYER_ON(_LOWER)) { + tap_code16((clockwise == true) ? KC_WH_D : KC_WH_U); + } else { + tap_code((clockwise == true) ? KC_VOLD : KC_VOLU); + } + } + return true; +} + +layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case _LOWER: + rgblight_setrgb (RGB_GOLD); + break; + default: // for any other layers, or the default layer + rgblight_setrgb (RGB_TEAL); + break; + } + return state; +} diff --git a/keyboards/reviung/reviung5/keymaps/default_lre/readme.md b/keyboards/reviung/reviung5/keymaps/default_lre/readme.md new file mode 100644 index 0000000000..0e3edee7b1 --- /dev/null +++ b/keyboards/reviung/reviung5/keymaps/default_lre/readme.md @@ -0,0 +1,3 @@ +# The default keymap for reviung5 + +## Use the Left Rotary Encoder diff --git a/keyboards/reviung/reviung5/keymaps/default_rre/keymap.c b/keyboards/reviung/reviung5/keymaps/default_rre/keymap.c new file mode 100644 index 0000000000..9ee41cb7e9 --- /dev/null +++ b/keyboards/reviung/reviung5/keymaps/default_rre/keymap.c @@ -0,0 +1,55 @@ +/* Copyright 2021 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LOWER, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_reviung5( + KC_MUTE, KC_MPRV, KC_MPLY, KC_MNXT, TG(_LOWER) + ), + [_LOWER] = LAYOUT_reviung5( + RGB_TOG, LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______ + ) +}; + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { + if (IS_LAYER_ON(_LOWER)) { + tap_code16((clockwise == true) ? KC_WH_D : KC_WH_U); + } else { + tap_code((clockwise == true) ? KC_VOLD : KC_VOLU); + } + } + return true; +} + +layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case _LOWER: + rgblight_setrgb (RGB_RED); + break; + default: // for any other layers, or the default layer + rgblight_setrgb (RGB_TEAL); + break; + } + return state; +} diff --git a/keyboards/reviung/reviung5/keymaps/default_rre/readme.md b/keyboards/reviung/reviung5/keymaps/default_rre/readme.md new file mode 100644 index 0000000000..d16e25ce50 --- /dev/null +++ b/keyboards/reviung/reviung5/keymaps/default_rre/readme.md @@ -0,0 +1,4 @@ +# The default keymap for reviung5 + +## Use the Right Rotary Encoder + diff --git a/keyboards/reviung/reviung5/readme.md b/keyboards/reviung/reviung5/readme.md new file mode 100644 index 0000000000..990645649c --- /dev/null +++ b/keyboards/reviung/reviung5/readme.md @@ -0,0 +1,19 @@ +# reviung5 + +![reviung5](https://github.com/gtips/reviung/blob/master/reviung5/image/reviung5-1.jpg) + +The REVIUNG5 is 5-key (or 4-key + Rotary Encoder) macropad. + +* Keyboard Maintainer: [gtips](https://github.com/gtips) +* Hardware Supported: REVIUNG5 PCB. +* Hardware Availability: [PCB & Case Data](https://github.com/gtips/reviung/tree/master/reviung5) + +Make example for this keyboard (after setting up your build environment): + + make reviung5:default + +Flashing example for this keyboard: + + make reviung5: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). diff --git a/keyboards/reviung/reviung5/reviung5.c b/keyboards/reviung/reviung5/reviung5.c new file mode 100644 index 0000000000..a8f98f0627 --- /dev/null +++ b/keyboards/reviung/reviung5/reviung5.c @@ -0,0 +1,17 @@ +/* Copyright 2021 gtips + * + * 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 . + */ + +#include "reviung5.h" diff --git a/keyboards/reviung/reviung5/reviung5.h b/keyboards/reviung/reviung5/reviung5.h new file mode 100644 index 0000000000..f5d952ba94 --- /dev/null +++ b/keyboards/reviung/reviung5/reviung5.h @@ -0,0 +1,33 @@ +/* Copyright 2021 gtips + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_reviung5( \ + K00, K01, K02, K03, K04 \ +) { \ + { K00, K01, K02, K03, K04 } \ +} diff --git a/keyboards/reviung/reviung5/rules.mk b/keyboards/reviung/reviung5/rules.mk new file mode 100644 index 0000000000..a72c119315 --- /dev/null +++ b/keyboards/reviung/reviung5/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# 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 = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes \ No newline at end of file diff --git a/keyboards/reviung/reviung53/config.h b/keyboards/reviung/reviung53/config.h new file mode 100644 index 0000000000..d73e6eab8a --- /dev/null +++ b/keyboards/reviung/reviung53/config.h @@ -0,0 +1,138 @@ +// Copyright 2021 gtips (@gtips) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4E94 +#define PRODUCT_ID 0x4E09 +#define DEVICE_VER 0x0001 +#define MANUFACTURER gtips +#define PRODUCT reviung53 + +/* key matrix size */ +#define MATRIX_ROWS 7 +#define MATRIX_COLS 8 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * + */ +#define MATRIX_ROW_PINS { D0, D4, C6, D7, E6, B4, B5 } +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +// #define SOFT_SERIAL_PIN D0 + +//#define LED_NUM_LOCK_PIN B0 +//#define LED_CAPS_LOCK_PIN B1 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN +#define RGBLED_NUM 10 +#define RGBLIGHT_HUE_STEP 16 +#define RGBLIGHT_SAT_STEP 16 +#define RGBLIGHT_VAL_STEP 16 +#define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +#define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +#define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* If defined, GRAVE_ESC will always act as ESC when CTRL is held. + * This is useful for the Windows task manager shortcut (ctrl+shift+esc). + */ +//#define GRAVE_ESC_CTRL_OVERRIDE + +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ +//#define FORCE_NKRO + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung53/info.json b/keyboards/reviung/reviung53/info.json new file mode 100644 index 0000000000..ff63de5bc8 --- /dev/null +++ b/keyboards/reviung/reviung53/info.json @@ -0,0 +1,68 @@ +{ + "keyboard_name": "reviung53", + "url": "", + "maintainer": "gtips", + "layouts": { + "LAYOUT_reviung53": { + "layout": [ + {"label": "k02", "x":2.25, "y":0}, + {"label": "k03", "x":3.5, "y":0}, + {"label": "k04", "x":4.5, "y":0}, + {"label": "k05", "x":5.5, "y":0}, + {"label": "k06", "x":6.5, "y":0}, + {"label": "k07", "x":7.75, "y":0}, + {"label": "k40", "x":8.75, "y":0}, + {"label": "k41", "x":9.75, "y":0}, + {"label": "k42", "x":10.75, "y":0}, + {"label": "k43", "x":12, "y":0}, + + {"label": "k10", "x":0, "y":1.25, "w":1.5}, + {"label": "k11", "x":1.5, "y":1.25}, + {"label": "k12", "x":2.5, "y":1.25}, + {"label": "k13", "x":3.5, "y":1.25}, + {"label": "k14", "x":4.5, "y":1.25}, + {"label": "k15", "x":5.5, "y":1.25}, + {"label": "k16", "x":6.5, "y":1.25}, + {"label": "k17", "x":7.5, "y":1.25}, + {"label": "k44", "x":8.5, "y":1.25}, + {"label": "k45", "x":9.5, "y":1.25}, + {"label": "k46", "x":10.5, "y":1.25}, + {"label": "k47", "x":11.5, "y":1.25, "w":1.5}, + + {"label": "k20", "x":0, "y":2.25, "w":1.75}, + {"label": "k21", "x":1.75, "y":2.25}, + {"label": "k22", "x":2.75, "y":2.25}, + {"label": "k23", "x":3.75, "y":2.25}, + {"label": "k24", "x":4.75, "y":2.25}, + {"label": "k25", "x":5.75, "y":2.25}, + {"label": "k26", "x":6.75, "y":2.25}, + {"label": "k27", "x":7.75, "y":2.25}, + {"label": "k50", "x":8.75, "y":2.25}, + {"label": "k51", "x":9.75, "y":2.25}, + {"label": "k52", "x":10.75, "y":2.25}, + {"label": "k53", "x":11.75, "y":2.25, "w":1.25}, + + {"label": "k30", "x":0, "y":3.25, "w":2.25}, + {"label": "k31", "x":2.25, "y":3.25}, + {"label": "k32", "x":3.25, "y":3.25}, + {"label": "k33", "x":4.25, "y":3.25}, + {"label": "k34", "x":5.25, "y":3.25}, + {"label": "k35", "x":6.25, "y":3.25}, + {"label": "k36", "x":7.25, "y":3.25}, + {"label": "k37", "x":8.25, "y":3.25}, + {"label": "k54", "x":9.25, "y":3.25}, + {"label": "k55", "x":10.25, "y":3.25}, + {"label": "k56", "x":11.25, "y":3.25, "w":1.75}, + + {"label": "k60", "x":0, "y":4.25, "w":1.5}, + {"label": "k61", "x":1.5, "y":4.25, "w":1.25}, + {"label": "k62", "x":2.75, "y":4.25, "w":1.25}, + {"label": "k63", "x":4, "y":4.25, "w":2.75}, + {"label": "k64", "x":6.75, "y":4.25, "w":2.25}, + {"label": "k65", "x":9, "y":4.25, "w":1.25}, + {"label": "k66", "x":10.25, "y":4.25, "w":1.25}, + {"label": "k67", "x":11.5, "y":4.25, "w":1.5} + ] + } + } +} diff --git a/keyboards/reviung/reviung53/keymaps/default/keymap.c b/keyboards/reviung/reviung53/keymaps/default/keymap.c new file mode 100644 index 0000000000..a8d95d70d5 --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/default/keymap.c @@ -0,0 +1,55 @@ +// Copyright 2021 gtips (@gtips) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) + +#define SF_SS RSFT_T(KC_SLSH) +#define SP_LO LT(LOWER, KC_SPC) +#define SP_RA LT(RAISE, KC_SPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung53( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_DEL, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SF_SS, + KC_LCTL, KC_LGUI, KC_LALT, SP_LO, SP_RA, KC_LALT, KC_RGUI, KC_RCTL + ), + [_LOWER] = LAYOUT_reviung53( + KC_GESC, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_PAUS, KC_SLCK, KC_PSCR, _______, + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, KC_QUOT, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_SLSH, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_RAISE] = LAYOUT_reviung53( + KC_TILD, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_VOLU, KC_VOLD, KC_MPLY, _______, + _______, 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DQUO, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_QUES, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_ADJUST] = LAYOUT_reviung53( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung53/keymaps/default/readme.md b/keyboards/reviung/reviung53/keymaps/default/readme.md new file mode 100644 index 0000000000..1e473c9a74 --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reviung53 diff --git a/keyboards/reviung/reviung53/keymaps/via/keymap.c b/keyboards/reviung/reviung53/keymaps/via/keymap.c new file mode 100644 index 0000000000..a8d95d70d5 --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/via/keymap.c @@ -0,0 +1,55 @@ +// Copyright 2021 gtips (@gtips) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) + +#define SF_SS RSFT_T(KC_SLSH) +#define SP_LO LT(LOWER, KC_SPC) +#define SP_RA LT(RAISE, KC_SPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung53( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_DEL, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SF_SS, + KC_LCTL, KC_LGUI, KC_LALT, SP_LO, SP_RA, KC_LALT, KC_RGUI, KC_RCTL + ), + [_LOWER] = LAYOUT_reviung53( + KC_GESC, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_PAUS, KC_SLCK, KC_PSCR, _______, + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, KC_QUOT, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_SLSH, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_RAISE] = LAYOUT_reviung53( + KC_TILD, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_VOLU, KC_VOLD, KC_MPLY, _______, + _______, 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DQUO, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_QUES, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_ADJUST] = LAYOUT_reviung53( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung53/keymaps/via/readme.md b/keyboards/reviung/reviung53/keymaps/via/readme.md new file mode 100644 index 0000000000..9b299ba286 --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/via/readme.md @@ -0,0 +1,3 @@ +# The default keymap for reviung53 + +For use with VIA configurator and compatible keymap editors. \ No newline at end of file diff --git a/keyboards/reviung/reviung53/keymaps/via/rules.mk b/keyboards/reviung/reviung53/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/reviung/reviung53/readme.md b/keyboards/reviung/reviung53/readme.md new file mode 100644 index 0000000000..a2bfbcdbc2 --- /dev/null +++ b/keyboards/reviung/reviung53/readme.md @@ -0,0 +1,27 @@ +# reviung53 + +![reviung53](https://github.com/gtips/reviung/blob/master/reviung53/image/reviung53-04.jpg) + +The REVIUNG53 is 53-key keyboard. + +* Keyboard Maintainer: [gtips](https://github.com/gtips) +* Hardware Supported: REVIUNG53 PCB. +* Hardware Availability: [PCB & Case Data](https://github.com/gtips/reviung/tree/master/reviung53) + +Make example for this keyboard (after setting up your build environment): + + make reviung53:default + +Flashing example for this keyboard: + + make reviung53: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 `RESET` if it is available diff --git a/keyboards/reviung/reviung53/reviung53.c b/keyboards/reviung/reviung53/reviung53.c new file mode 100644 index 0000000000..e2190aeccf --- /dev/null +++ b/keyboards/reviung/reviung53/reviung53.c @@ -0,0 +1,4 @@ +// Copyright 2021 gtips (@gtips) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "reviung53.h" diff --git a/keyboards/reviung/reviung53/reviung53.h b/keyboards/reviung/reviung53/reviung53.h new file mode 100644 index 0000000000..89ebc45c18 --- /dev/null +++ b/keyboards/reviung/reviung53/reviung53.h @@ -0,0 +1,30 @@ +// Copyright 2021 gtips (@gtips) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_reviung53( \ + K02, K03, K04, K05, K06, K07, K40, K41, K42, K43, \ + K10, K11, K12, K13, K14, K15, K16, K17, K44, K45, K46, K47, \ + K20, K21, K22, K23, K24, K25, K26, K27, K50, K51, K52, K53, \ + K30, K31, K32, K33, K34, K35, K36, K37, K54, K55, K56,\ + K60, K61, K62, K63, K64, K65, K66, K67 \ +) { \ + { KC_NO, KC_NO, K02, K03, K04, K05, K06, K07 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47 }, \ + { K50, K51, K52, K53, K54, K55, K56, KC_NO }, \ + { K60, K61, K62, K63, K64, K65, K66, K67 } \ +} diff --git a/keyboards/reviung/reviung53/rules.mk b/keyboards/reviung/reviung53/rules.mk new file mode 100644 index 0000000000..90670e4b9e --- /dev/null +++ b/keyboards/reviung/reviung53/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/reviung/reviung61/config.h b/keyboards/reviung/reviung61/config.h new file mode 100644 index 0000000000..26588d8688 --- /dev/null +++ b/keyboards/reviung/reviung61/config.h @@ -0,0 +1,63 @@ +/* +Copyright 2020 gtips + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x7C1A +#define DEVICE_VER 0x0001 +#define MANUFACTURER gtips +#define PRODUCT reviung61 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 + +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * + */ +#define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 } +#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION diff --git a/keyboards/reviung/reviung61/info.json b/keyboards/reviung/reviung61/info.json new file mode 100644 index 0000000000..5a23617d55 --- /dev/null +++ b/keyboards/reviung/reviung61/info.json @@ -0,0 +1,72 @@ +{ + "keyboard_name": "reviung61", + "url": "", + "maintainer": "gtips", + "layouts": { + "LAYOUT_60_ansi": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":2.75}, + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":12.5, "y":4, "w":1.25}, + {"x":13.75, "y":4, "w":1.25} + ] + } + } +} diff --git a/keyboards/reviung/reviung61/keymaps/default/keymap.c b/keyboards/reviung/reviung61/keymaps/default/keymap.c new file mode 100644 index 0000000000..ef24d4be27 --- /dev/null +++ b/keyboards/reviung/reviung61/keymaps/default/keymap.c @@ -0,0 +1,41 @@ +/* Copyright 2020 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_60_ansi( + KC_GESC, 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_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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FN), KC_RCTL + + ), + [_FN] = LAYOUT_60_ansi( + KC_GRV, 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_DEL, + _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, + _______, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, _______, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, KC_INS, _______, + _______, _______, _______, _______, RESET, _______, _______, _______ + ) +}; diff --git a/keyboards/reviung/reviung61/keymaps/default/readme.md b/keyboards/reviung/reviung61/keymaps/default/readme.md new file mode 100644 index 0000000000..43446daa89 --- /dev/null +++ b/keyboards/reviung/reviung61/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reviung61 diff --git a/keyboards/reviung/reviung61/keymaps/default_rgb/config.h b/keyboards/reviung/reviung61/keymaps/default_rgb/config.h new file mode 100644 index 0000000000..619060d0bc --- /dev/null +++ b/keyboards/reviung/reviung61/keymaps/default_rgb/config.h @@ -0,0 +1,31 @@ +/* Copyright 2020 gtips + * + * 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 . + */ + +#pragma once + +// place overrides here + +// --- RGB underglow --- +#define RGB_DI_PIN B7 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 12 + #define RGBLIGHT_HUE_STEP 16 + #define RGBLIGHT_SAT_STEP 16 + #define RGBLIGHT_VAL_STEP 16 + #define RGBLIGHT_LIMIT_VAL 255 + #define RGBLIGHT_SLEEP + #define RGBLIGHT_ANIMATIONS +#endif diff --git a/keyboards/reviung/reviung61/keymaps/default_rgb/keymap.c b/keyboards/reviung/reviung61/keymaps/default_rgb/keymap.c new file mode 100644 index 0000000000..ef24d4be27 --- /dev/null +++ b/keyboards/reviung/reviung61/keymaps/default_rgb/keymap.c @@ -0,0 +1,41 @@ +/* Copyright 2020 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_60_ansi( + KC_GESC, 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_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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FN), KC_RCTL + + ), + [_FN] = LAYOUT_60_ansi( + KC_GRV, 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_DEL, + _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, + _______, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, _______, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, KC_INS, _______, + _______, _______, _______, _______, RESET, _______, _______, _______ + ) +}; diff --git a/keyboards/reviung/reviung61/keymaps/default_rgb/readme.md b/keyboards/reviung/reviung61/keymaps/default_rgb/readme.md new file mode 100644 index 0000000000..741e912705 --- /dev/null +++ b/keyboards/reviung/reviung61/keymaps/default_rgb/readme.md @@ -0,0 +1,3 @@ +# The default_rgb keymap for reviung61 + +Use LED STRIP SERIAL RGB for RGB underglow. diff --git a/keyboards/reviung/reviung61/keymaps/default_rgb/rules.mk b/keyboards/reviung/reviung61/keymaps/default_rgb/rules.mk new file mode 100644 index 0000000000..7ad666d1a3 --- /dev/null +++ b/keyboards/reviung/reviung61/keymaps/default_rgb/rules.mk @@ -0,0 +1 @@ +RGBLIGHT_ENABLE = yes \ No newline at end of file diff --git a/keyboards/reviung/reviung61/readme.md b/keyboards/reviung/reviung61/readme.md new file mode 100644 index 0000000000..d483ec5b09 --- /dev/null +++ b/keyboards/reviung/reviung61/readme.md @@ -0,0 +1,15 @@ +# reviung61 + +![REVIUNG61](https://github.com/gtips/reviung/blob/master/reviung61/image/reviung61-pcb.jpg) + +The REVIUNG61 is 61-key Standard ANSI 60% keyboard. And compatible with MX and ALPS. + +* Keyboard Maintainer: [gtips](https://github.com/gtips) +* Hardware Supported: REVIUNG61 +* Hardware Availability: [PCB & Case Data](https://github.com/gtips/reviung/tree/master/reviung61) + +Make example for this keyboard (after setting up your build environment): + + make reviung61: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). diff --git a/keyboards/reviung/reviung61/reviung61.c b/keyboards/reviung/reviung61/reviung61.c new file mode 100644 index 0000000000..3cd69bf27f --- /dev/null +++ b/keyboards/reviung/reviung61/reviung61.c @@ -0,0 +1,17 @@ +/* Copyright 2020 gtips + * + * 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 . + */ + +#include "reviung61.h" diff --git a/keyboards/reviung/reviung61/reviung61.h b/keyboards/reviung/reviung61/reviung61.h new file mode 100644 index 0000000000..bae0cd2155 --- /dev/null +++ b/keyboards/reviung/reviung61/reviung61.h @@ -0,0 +1,58 @@ +/* Copyright 2020 gtips + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +/* ANSI + * ,-----------------------------------------------------------. + * | 00| 01| 02| 03| 04| 05| 06| 07| 08| 09| 0a| 0b| 0c| 0d | + * |-----------------------------------------------------------| + * | 10 | 11| 12| 13| 14| 15| 16| 17| 18| 19| 1a| 1b| 1c| 1d | + * |-----------------------------------------------------------| + * | 20 | 21| 22| 23| 24| 25| 26| 27| 28| 29| 2a| 2b| 2c | + * |-----------------------------------------------------------| + * | 30 | 31| 32| 33| 34| 35| 36| 37| 38| 39| 3a| 3b | + * |-----------------------------------------------------------| + * | 40 | 41 | 42 | 45 | 48 | 49 | 4a | 4b | + * `-----------------------------------------------------------' + */ + + +#define LAYOUT_60_ansi( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \ + k40, k41, k42, k45, k48, k49, k4a, k4b \ +) \ +{ \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, KC_NO }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, KC_NO, KC_NO }, \ + { k40, k41, k42, KC_NO, KC_NO, k45, KC_NO, KC_NO, k48, k49, k4a, k4b, KC_NO, KC_NO } \ +} diff --git a/keyboards/reviung/reviung61/rules.mk b/keyboards/reviung/reviung61/rules.mk new file mode 100644 index 0000000000..badcdb845b --- /dev/null +++ b/keyboards/reviung/reviung61/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +LAYOUTS = 60_ansi -- cgit v1.2.3