diff --git a/keyboards/tumler/reviungdash47/config.h b/keyboards/tumler/reviungdash47/config.h new file mode 100644 index 0000000000..d63474de99 --- /dev/null +++ b/keyboards/tumler/reviungdash47/config.h @@ -0,0 +1,41 @@ +/* +Copyright 2023 tumler + +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 + +/* + * 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 WS2812_DI_PIN D3 +#ifdef WS2812_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 */ +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 diff --git a/keyboards/tumler/reviungdash47/info.json b/keyboards/tumler/reviungdash47/info.json new file mode 100644 index 0000000000..40a3959b63 --- /dev/null +++ b/keyboards/tumler/reviungdash47/info.json @@ -0,0 +1,141 @@ +{ + "keyboard_name": "reviungdash47", + "manufacturer": "tumler", + "url": "", + "maintainer": "tumler", + "usb": { + "vid": "0xFEED", + "pid": "0x6061", + "device_version": "0.0.1" + }, + "matrix_pins": { + "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], + "rows": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"] + }, + "diode_direction": "COL2ROW", + "processor": "atmega32u4", + "bootloader": "atmel-dfu", + "layout_aliases": { + "LAYOUT": "LAYOUT_reviungdash_double" + }, + "layouts": { + "LAYOUT_reviungdash_single": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0.54}, + {"matrix": [0, 1], "x":1, "y":0.36}, + {"matrix": [0, 2], "x":2, "y":0.18}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0.18}, + {"matrix": [0, 5], "x":5, "y":0.36}, + + {"matrix": [3, 0], "x":7, "y":0.36}, + {"matrix": [3, 1], "x":8, "y":0.18}, + {"matrix": [3, 2], "x":9, "y":0}, + {"matrix": [3, 3], "x":10, "y":0.18}, + {"matrix": [3, 4], "x":11, "y":0.36}, + {"matrix": [3, 5], "x":12, "y":0.54}, + + {"matrix": [1, 0], "x":0, "y":1.54}, + {"matrix": [1, 1], "x":1, "y":1.36}, + {"matrix": [1, 2], "x":2, "y":1.18}, + {"matrix": [1, 3], "x":3, "y":1}, + {"matrix": [1, 4], "x":4, "y":1.18}, + {"matrix": [1, 5], "x":5, "y":1.36}, + + {"matrix": [4, 0], "x":7, "y":1.36}, + {"matrix": [4, 1], "x":8, "y":1.18}, + {"matrix": [4, 2], "x":9, "y":1}, + {"matrix": [4, 3], "x":10, "y":1.18}, + {"matrix": [4, 4], "x":11, "y":1.36}, + {"matrix": [4, 5], "x":12, "y":1.54}, + + {"matrix": [2, 0], "x":0, "y":2.54}, + {"matrix": [2, 1], "x":1, "y":2.36}, + {"matrix": [2, 2], "x":2, "y":2.18}, + {"matrix": [2, 3], "x":3, "y":2}, + {"matrix": [2, 4], "x":4, "y":2.18}, + {"matrix": [2, 5], "x":5, "y":2.36}, + + {"matrix": [5, 0], "x":7, "y":2.36}, + {"matrix": [5, 1], "x":8, "y":2.18}, + {"matrix": [5, 2], "x":9, "y":2}, + {"matrix": [5, 3], "x":10, "y":2.18}, + {"matrix": [5, 4], "x":11, "y":2.36}, + {"matrix": [5, 5], "x":12, "y":2.54}, + + {"matrix": [7, 0], "x":0, "y":3.54}, + {"matrix": [7, 1], "x":1, "y":3.54}, + {"matrix": [7, 2], "x":2, "y":3.54}, + {"matrix": [7, 3], "x":3, "y":3.54}, + {"matrix": [7, 4], "x":4, "y":3.54}, + + {"matrix": [6, 0], "x":5.375, "y":3.54, "w":2.25}, + {"matrix": [6, 1], "x":8, "y":3.54}, + {"matrix": [6, 2], "x":9, "y":3.54}, + {"matrix": [6, 3], "x":10, "y":3.54}, + {"matrix": [6, 4], "x":11, "y":3.54}, + {"matrix": [6, 5], "x":12, "y":3.54} + ] + }, + "LAYOUT_reviungdash_double": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0.54}, + {"matrix": [0, 1], "x":1, "y":0.36}, + {"matrix": [0, 2], "x":2, "y":0.18}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0.18}, + {"matrix": [0, 5], "x":5, "y":0.36}, + + {"matrix": [3, 0], "x":7, "y":0.36}, + {"matrix": [3, 1], "x":8, "y":0.18}, + {"matrix": [3, 2], "x":9, "y":0}, + {"matrix": [3, 3], "x":10, "y":0.18}, + {"matrix": [3, 4], "x":11, "y":0.36}, + {"matrix": [3, 5], "x":12, "y":0.54}, + + {"matrix": [1, 0], "x":0, "y":1.54}, + {"matrix": [1, 1], "x":1, "y":1.36}, + {"matrix": [1, 2], "x":2, "y":1.18}, + {"matrix": [1, 3], "x":3, "y":1}, + {"matrix": [1, 4], "x":4, "y":1.18}, + {"matrix": [1, 5], "x":5, "y":1.36}, + + {"matrix": [4, 0], "x":7, "y":1.36}, + {"matrix": [4, 1], "x":8, "y":1.18}, + {"matrix": [4, 2], "x":9, "y":1}, + {"matrix": [4, 3], "x":10, "y":1.18}, + {"matrix": [4, 4], "x":11, "y":1.36}, + {"matrix": [4, 5], "x":12, "y":1.54}, + + {"matrix": [2, 0], "x":0, "y":2.54}, + {"matrix": [2, 1], "x":1, "y":2.36}, + {"matrix": [2, 2], "x":2, "y":2.18}, + {"matrix": [2, 3], "x":3, "y":2}, + {"matrix": [2, 4], "x":4, "y":2.18}, + {"matrix": [2, 5], "x":5, "y":2.36}, + + {"matrix": [5, 0], "x":7, "y":2.36}, + {"matrix": [5, 1], "x":8, "y":2.18}, + {"matrix": [5, 2], "x":9, "y":2}, + {"matrix": [5, 3], "x":10, "y":2.18}, + {"matrix": [5, 4], "x":11, "y":2.36}, + {"matrix": [5, 5], "x":12, "y":2.54}, + + {"matrix": [7, 0], "x":0, "y":3.54}, + {"matrix": [7, 1], "x":1, "y":3.54}, + {"matrix": [7, 2], "x":2, "y":3.54}, + {"matrix": [7, 3], "x":3, "y":3.54}, + {"matrix": [7, 4], "x":4, "y":3.54}, + {"matrix": [7, 5], "x":5, "y":3.54}, + + {"matrix": [6, 0], "x":7, "y":3.54}, + {"matrix": [6, 1], "x":8, "y":3.54}, + {"matrix": [6, 2], "x":9, "y":3.54}, + {"matrix": [6, 3], "x":10, "y":3.54}, + {"matrix": [6, 4], "x":11, "y":3.54}, + {"matrix": [6, 5], "x":12, "y":3.54} + ] + } + + } +} diff --git a/keyboards/tumler/reviungdash47/keymaps/default/keymap.c b/keyboards/tumler/reviungdash47/keymaps/default/keymap.c new file mode 100644 index 0000000000..4e13be6cca --- /dev/null +++ b/keyboards/tumler/reviungdash47/keymaps/default/keymap.c @@ -0,0 +1,59 @@ +/* Copyright 2023 tumler + * + * 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( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, + 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, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_ENT, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT + ), + [_LOWER] = LAYOUT( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, 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_SPC, KC_ENT, MO(3), _______, _______, _______, _______ + ), + [_RAISE] = LAYOUT( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, 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, + _______, _______, _______, _______, MO(3), KC_SPC, KC_ENT, _______, _______, _______, _______, _______ + ), + [_ADJUST] = LAYOUT( + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, _______, RGB_TOG, _______, _______, _______, _______, _______, KC_VOLU, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,_______, _______, _______, _______, _______, _______, _______, KC_VOLD, + _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, KC_SPC, KC_ENT, _______, _______, _______, _______, _______ + ) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + diff --git a/keyboards/tumler/reviungdash47/keymaps/default/readme.md b/keyboards/tumler/reviungdash47/keymaps/default/readme.md new file mode 100644 index 0000000000..3dead4dae3 --- /dev/null +++ b/keyboards/tumler/reviungdash47/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reviungdash diff --git a/keyboards/tumler/reviungdash47/keymaps/vial/config.h b/keyboards/tumler/reviungdash47/keymaps/vial/config.h new file mode 100644 index 0000000000..082994ae08 --- /dev/null +++ b/keyboards/tumler/reviungdash47/keymaps/vial/config.h @@ -0,0 +1,8 @@ +#pragma once + +#define VIAL_KEYBOARD_UID {0xE8, 0xB1, 0x52, 0x65, 0x1D, 0x03, 0x1B, 0x19} + +// Unlock with top left key (row 0, column 0) and +// top right key (row 3, column 5): +#define VIAL_UNLOCK_COMBO_ROWS { 0, 3 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 5 } diff --git a/keyboards/tumler/reviungdash47/keymaps/vial/keymap.json b/keyboards/tumler/reviungdash47/keymaps/vial/keymap.json new file mode 100644 index 0000000000..ed3c12edde --- /dev/null +++ b/keyboards/tumler/reviungdash47/keymaps/vial/keymap.json @@ -0,0 +1,31 @@ +{ + "keyboard": "tumler/reviungdash47", + "keymap": "default", + "layout": "LAYOUT_reviungdash_double", + "layers": [ + [ + "KC_TAB", "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P", "KC_DEL", + "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", "KC_RSFT", + "KC_LCTL", "KC_LGUI", "KC_LALT", "KC_LGUI", "MO(1)", "KC_SPC", "KC_ENT", "MO(2)", "KC_LEFT", "KC_DOWN", "KC_UP", "KC_RIGHT" + ], + [ + "_______", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "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_SPC", "KC_ENT", "MO(3)", "_______", "_______", "_______", "_______" + ], + [ + "_______", "KC_EXLM", "KC_AT", "KC_HASH", "KC_DLR", "KC_PERC", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "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", + "_______", "_______", "_______", "_______", "MO(3)", "KC_SPC", "KC_ENT", "_______", "_______", "_______", "_______", "_______" + ], + [ + "RGB_VAI", "RGB_SAI", "RGB_HUI", "RGB_MOD", "_______", "RGB_TOG", "_______", "_______", "_______", "_______", "_______", "KC_VOLU", + "RGB_VAD", "RGB_SAD", "RGB_HUD", "RGB_RMOD","_______", "_______", "_______", "_______", "_______", "_______", "_______", "KC_VOLD", + "_______", "_______", "_______", "_______", "_______", "_______", "QK_BOOT", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "KC_SPC", "KC_ENT", "_______", "_______", "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/tumler/reviungdash47/keymaps/vial/readme.md b/keyboards/tumler/reviungdash47/keymaps/vial/readme.md new file mode 100644 index 0000000000..451918781c --- /dev/null +++ b/keyboards/tumler/reviungdash47/keymaps/vial/readme.md @@ -0,0 +1,13 @@ +# Vial Keymap for ReviungDash47 + +The REVIUNGDASH47 is a 47-key column staggered keyboard. + +* Keyboard Maintainer: [tumler](https://github.com/tumler) +* Hardware Supported: REVIUNGDASH47 PCBs, Pro Micro / RP2040 supported +* Hardware Availability: [PCB & Case Data](https://github.com/tumler/reviungdash/tree/master/reviungdash47) + +Make example for this keyboard (after setting up your build environment): + + make reviungdash47:vial + +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/tumler/reviungdash47/keymaps/vial/rules.mk b/keyboards/tumler/reviungdash47/keymaps/vial/rules.mk new file mode 100644 index 0000000000..a35c5f03fc --- /dev/null +++ b/keyboards/tumler/reviungdash47/keymaps/vial/rules.mk @@ -0,0 +1,13 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes + +CONSOLE_ENABLE = no +LTO_ENABLE = yes + +ifndef CONVERT_TO + # Disable QMK Settings when using a ProMicro to reduce size: + QMK_SETTINGS = no +else + # Enable Mouse Keys when when not using a ProMicro as there will be space: + MOUSEKEY_ENABLE = yes +endif diff --git a/keyboards/tumler/reviungdash47/keymaps/vial/vial.json b/keyboards/tumler/reviungdash47/keymaps/vial/vial.json new file mode 100644 index 0000000000..0d9cd44adc --- /dev/null +++ b/keyboards/tumler/reviungdash47/keymaps/vial/vial.json @@ -0,0 +1,60 @@ +{ + "name": "reviungdash", + "vendorId": "0xFEED", + "productId": "0x6061", + "lighting": "qmk_rgblight", + "customKeycodes": + [{"name": "BASE","title": "BASE Layer","shortName": "BASE"}, + {"name": "LOWER","title": "Lower Layer","shortname": "LOWER"}, + {"name": "RAISE","title": "Raise Layer","shortName": "RAISE"}, + {"name": "ADJUST","title": "Adjust Layer","shortName": "ADJUST"} + ], + "matrix": { "rows": 8, "cols": 6 }, + "layouts": { + "labels": [ + [ + "Thumb Keys", + "Single 2.25", + "Double 1+1 Double" + ] + ], + "keymap": [ + [{"y":4.2,"x":5.525,"w":2.25},"6,0\n\n\n0,0"], + [{"y":4.2,"x":5.525},"7,5\n\n\n0,1",{"w":0.25,"d":true},"\n\n\n0,1",{"x":-0.25},"6,0\n\n\n0,1"], + [{"r":2,"rx":10.5,"ry":4.5,"y":-1,"x":-1.375},"6,2"], + [{"r":10,"rx":5.425,"ry":4.2,"x":-1.25,"w":1.25},"7,4"], + [{"rx":6.75,"ry":0,"y":0.75,"x":-3},"0,3"], + [{"y":-0.82,"x":-4},"0,2",{"x":1},"0,4"], + [{"y":-0.82,"x":-5},"0,1",{"x":3},"0,5"], + [{"y":-0.82,"x":-6},"0,0"], + [{"y":-0.54,"x":-3},"1,3"], + [{"y":-0.82,"x":-4},"1,2",{"x":1},"1,4"], + [{"y":-0.82,"x":-5},"1,1",{"x":3},"1,5"], + [{"y":-0.82,"x":-6},"1,0"], + [{"y":-0.54,"x":-3},"2,3"], + [{"y":-0.82,"x":-4},"2,2",{"x":1},"2,4"], + [{"y":-0.82,"x":-5},"2,1",{"x":3},"2,5"], + [{"rx":6.8,"y":3.29,"x":-6.05},"2,0"], + [{"y":-0.36,"x":-4.05},"7,2"], + [{"y":-0.82,"x":-5.05},"7,1"], + [{"y":-0.82,"x":-6.05},"7,0"], + [{"r":-10,"rx":6.5,"y":0.75,"x":2},"3,2"], + [{"y":-0.82,"x":1},"3,1",{"x":1},"3,3"], + [{"y":-0.82},"3,0",{"x":3},"3,4"], + [{"y":-0.82,"x":5},"3,5"], + [{"y":-0.54,"x":2},"4,2"], + [{"y":-0.82,"x":1},"4,1",{"x":1},"4,3"], + [{"y":-0.82},"4,0",{"x":3},"4,4"], + [{"y":-0.82,"x":5},"4,5"], + [{"y":-0.54,"x":2},"5,2"], + [{"y":-0.82,"x":1},"5,1",{"x":1},"5,3"], + [{"y":-0.82},"5,0",{"x":3},"5,4"], + [{"y":-0.82,"x":5},"5,5"], + [{"y":-0.36,"x":3},"6,3"], + [{"y":-0.82,"x":4},"6,4"], + [{"y":-0.82,"x":5},"6,5"], + [{"rx":7.875,"ry":4.2,"w":1.25},"6,1"], + [{"r":-2,"rx":2.75,"ry":4.5,"y":-1,"x":0.375},"7,3"] + ] + } +} diff --git a/keyboards/tumler/reviungdash47/readme.md b/keyboards/tumler/reviungdash47/readme.md new file mode 100644 index 0000000000..a7df7ea0f8 --- /dev/null +++ b/keyboards/tumler/reviungdash47/readme.md @@ -0,0 +1,13 @@ +# ReviungDash47 + +The REVIUNGDASH47 is a 47-key column staggered keyboard. + +* Keyboard Maintainer: [tumler](https://github.com/tumler) +* Hardware Supported: REVIUNGDASH47 PCBs, Pro Micro / RP2040 supported +* Hardware Availability: [PCB & Case Data](https://github.com/tumler/reviungdash/tree/master/reviungdash47) + +Make example for this keyboard (after setting up your build environment): + + make reviungdash47:vial + +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/tumler/reviungdash47/rules.mk b/keyboards/tumler/reviungdash47/rules.mk new file mode 100644 index 0000000000..01c4e50a8a --- /dev/null +++ b/keyboards/tumler/reviungdash47/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +# BOOTLOADER = caterina +BOOTLOADER = atmel-dfu + +# 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/tumler/reviungdash52/config.h b/keyboards/tumler/reviungdash52/config.h new file mode 100644 index 0000000000..fda7a1e54a --- /dev/null +++ b/keyboards/tumler/reviungdash52/config.h @@ -0,0 +1,30 @@ +/* +Copyright 2024 tumler + +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 RGBLED_NUM 0 + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 + + diff --git a/keyboards/tumler/reviungdash52/info.json b/keyboards/tumler/reviungdash52/info.json new file mode 100644 index 0000000000..cb2a4986eb --- /dev/null +++ b/keyboards/tumler/reviungdash52/info.json @@ -0,0 +1,93 @@ +{ + "keyboard_name": "reviungdash52", + "manufacturer": "tumler", + "url": "", + "maintainer": "tumler", + "usb": { + "vid": "0xFEED", + "pid": "0x6062", + "device_version": "0.0.1" + }, + "matrix_pins_minipro": { + "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], + "rows": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "D1"] + }, + "matrix_pins": { + "cols": ["GP4", "GP5", "GP6", "GP7", "GP8", "GP9"], + "rows": ["GP29", "GP28", "GP27", "GP26", "GP22", "GP20", "GP23", "GP21", "GP2"] + }, + "diode_direction": "COL2ROW", + "processor": "RP2040", + "bootloader": "rp2040", + "layout_aliases": { + "LAYOUT": "LAYOUT_reviungdash" + }, + "layouts": { + "LAYOUT_reviungdash": { + "layout": [ + {"matrix": [0, 0], "x":0, "y":0.54}, + {"matrix": [0, 1], "x":1, "y":0.36}, + {"matrix": [0, 2], "x":2, "y":0.18}, + {"matrix": [0, 3], "x":3, "y":0}, + {"matrix": [0, 4], "x":4, "y":0.18}, + {"matrix": [0, 5], "x":5, "y":0.36}, + + {"matrix": [3, 0], "x":7, "y":0.36}, + {"matrix": [3, 1], "x":8, "y":0.18}, + {"matrix": [3, 2], "x":9, "y":0}, + {"matrix": [3, 3], "x":10, "y":0.18}, + {"matrix": [3, 4], "x":11, "y":0.36}, + {"matrix": [3, 5], "x":12, "y":0.54}, + + {"matrix": [1, 0], "x":0, "y":1.54}, + {"matrix": [1, 1], "x":1, "y":1.36}, + {"matrix": [1, 2], "x":2, "y":1.18}, + {"matrix": [1, 3], "x":3, "y":1}, + {"matrix": [1, 4], "x":4, "y":1.18}, + {"matrix": [1, 5], "x":5, "y":1.36}, + + {"matrix": [4, 0], "x":7, "y":1.36}, + {"matrix": [4, 1], "x":8, "y":1.18}, + {"matrix": [4, 2], "x":9, "y":1}, + {"matrix": [4, 3], "x":10, "y":1.18}, + {"matrix": [4, 4], "x":11, "y":1.36}, + {"matrix": [4, 5], "x":12, "y":1.54}, + + {"matrix": [2, 0], "x":0, "y":2.54}, + {"matrix": [2, 1], "x":1, "y":2.36}, + {"matrix": [2, 2], "x":2, "y":2.18}, + {"matrix": [2, 3], "x":3, "y":2}, + {"matrix": [2, 4], "x":4, "y":2.18}, + {"matrix": [2, 5], "x":5, "y":2.36}, + + {"matrix": [5, 0], "x":7, "y":2.36}, + {"matrix": [5, 1], "x":8, "y":2.18}, + {"matrix": [5, 2], "x":9, "y":2}, + {"matrix": [5, 3], "x":10, "y":2.18}, + {"matrix": [5, 4], "x":11, "y":2.36}, + {"matrix": [5, 5], "x":12, "y":2.54}, + + {"matrix": [7, 0], "x":0, "y":3.54}, + {"matrix": [7, 1], "x":1, "y":3.54}, + {"matrix": [7, 2], "x":2, "y":3.54}, + {"matrix": [7, 3], "x":3, "y":3.54}, + + {"matrix": [6, 2], "x":9, "y":3.54}, + {"matrix": [6, 3], "x":10, "y":3.54}, + {"matrix": [6, 4], "x":11, "y":3.54}, + {"matrix": [6, 5], "x":12, "y":3.54}, + + {"matrix": [8, 0], "x":0, "y":3.54}, + {"matrix": [8, 2], "x":2, "y":3.54}, + + {"matrix": [7, 4], "x":4, "y":3.54}, + {"matrix": [7, 5], "x":5, "y":3.54}, + {"matrix": [8, 1], "x":1, "y":3.54}, + + {"matrix": [8, 3], "x":3, "y":3.54}, + {"matrix": [6, 0], "x":5.375, "y":3.54, "w":2.25}, + {"matrix": [6, 1], "x":8, "y":3.54} + ] + } + } +} diff --git a/keyboards/tumler/reviungdash52/keymaps/default/keymap.c b/keyboards/tumler/reviungdash52/keymaps/default/keymap.c new file mode 100644 index 0000000000..59f96de141 --- /dev/null +++ b/keyboards/tumler/reviungdash52/keymaps/default/keymap.c @@ -0,0 +1,69 @@ +/* Copyright 2024 tumler + * + * 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( + 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_QUOT, + 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_LGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, + KC_LALT, KC_BSPC, + MO(1), KC_LCTL, KC_SPC, KC_ENT, KC_DEL, MO(2) + ), + + [_LOWER] = LAYOUT( + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_GRV, KC_TILD, + _______, KC_ESC, KC_LGUI, KC_LALT, KC_CAPS, KC_QUOT, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_PSCR, RSFT_T(KC_SPC), + _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, + _______, _______, + _______, _______, _______, _______, _______, MO(3) + ), + + [_RAISE] = LAYOUT( + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, 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_DOWN, KC_UP, + MO(3), KC_LCTL, KC_LCTL, KC_LCTL, KC_LCTL, _______ +), + [_ADJUST] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ + ) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + diff --git a/keyboards/tumler/reviungdash52/keymaps/default/readme.md b/keyboards/tumler/reviungdash52/keymaps/default/readme.md new file mode 100644 index 0000000000..3dead4dae3 --- /dev/null +++ b/keyboards/tumler/reviungdash52/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reviungdash diff --git a/keyboards/tumler/reviungdash52/keymaps/vial/config.h b/keyboards/tumler/reviungdash52/keymaps/vial/config.h new file mode 100644 index 0000000000..86a25eb754 --- /dev/null +++ b/keyboards/tumler/reviungdash52/keymaps/vial/config.h @@ -0,0 +1,8 @@ +#pragma once + +#define VIAL_KEYBOARD_UID {0x69, 0x01, 0x58, 0x30, 0xE7, 0xA6, 0x7D, 0x5D} + +// Unlock with top left key (row 0, column 0) and +// top right key (row 3, column 5): +#define VIAL_UNLOCK_COMBO_ROWS { 0, 3 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 5 } diff --git a/keyboards/tumler/reviungdash52/keymaps/vial/keymap.json b/keyboards/tumler/reviungdash52/keymaps/vial/keymap.json new file mode 100644 index 0000000000..6fa144854c --- /dev/null +++ b/keyboards/tumler/reviungdash52/keymaps/vial/keymap.json @@ -0,0 +1,42 @@ +{ + "keyboard": "tumler/reviungdash52", + "keymap": "default", + "layout": "LAYOUT_reviungdash", + "layers": [ + [ + "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_QUOT", + "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_LGUI", "KC_LEFT", "KC_DOWN", "KC_UP", "KC_RIGHT", + "KC_LALT", "KC_BSPC", + "MO(1)", "KC_LCTL", "KC_SPC", "KC_ENT", "KC_DEL", "MO(2)" + + ], + [ + "_______", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "KC_DEL", + "_______", "KC_UNDS", "KC_PLUS", "KC_LCBR", "KC_RCBR", "KC_PIPE", "KC_LEFT", "KC_DOWN", "KC_UP", "KC_RIGHT", "KC_GRV", "KC_TILD", + "_______", "KC_ESC", "KC_LGUI", "KC_LALT", "KC_CAPS", "KC_QUOT", "KC_HOME", "KC_PGDN", "KC_PGUP", "KC_END", "KC_PSCR", "RSFT_T(KC_SPC)", + "_______", "_______", "_______", "_______", "KC_HOME", "KC_PGDN", "KC_PGUP", "KC_END", + "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "MO(3)" + + ], + [ + "_______", "KC_EXLM", "KC_AT", "KC_HASH", "KC_DLR", "KC_PERC", "KC_CIRC", "KC_AMPR", "KC_ASTR", "KC_LPRN", "KC_RPRN", "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_DOWN", "KC_UP", + "MO(3)", "KC_LCTL", "KC_LCTL", "KC_LCTL", "KC_LCTL", "_______" + + ], + [ + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "KC_VOLU", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "KC_VOLD", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______", "_______", "_______", + "_______", "_______", + "_______", "_______", "_______", "_______", "_______", "_______" + ] + ] +} diff --git a/keyboards/tumler/reviungdash52/keymaps/vial/readme.md b/keyboards/tumler/reviungdash52/keymaps/vial/readme.md new file mode 100644 index 0000000000..a69270f5d7 --- /dev/null +++ b/keyboards/tumler/reviungdash52/keymaps/vial/readme.md @@ -0,0 +1,13 @@ +# Vial Keymap for ReviungDash52 + +The REVIUNGDASH52 is a 52-key column staggered keyboard. + +* Keyboard Maintainer: [tumler](https://github.com/tumler) +* Hardware Supported: REVIUNGDASH52 PCBs, Pro Micro / RP2040 supported +* Hardware Availability: [PCB & Case Data](https://github.com/tumler/reviungdash/tree/master/reviungdash52) + +Make example for this keyboard (after setting up your build environment): + + make reviungdash52:vial + +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/tumler/reviungdash52/keymaps/vial/rules.mk b/keyboards/tumler/reviungdash52/keymaps/vial/rules.mk new file mode 100644 index 0000000000..a35c5f03fc --- /dev/null +++ b/keyboards/tumler/reviungdash52/keymaps/vial/rules.mk @@ -0,0 +1,13 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes + +CONSOLE_ENABLE = no +LTO_ENABLE = yes + +ifndef CONVERT_TO + # Disable QMK Settings when using a ProMicro to reduce size: + QMK_SETTINGS = no +else + # Enable Mouse Keys when when not using a ProMicro as there will be space: + MOUSEKEY_ENABLE = yes +endif diff --git a/keyboards/tumler/reviungdash52/keymaps/vial/vial.json b/keyboards/tumler/reviungdash52/keymaps/vial/vial.json new file mode 100644 index 0000000000..0ecfcd93a5 --- /dev/null +++ b/keyboards/tumler/reviungdash52/keymaps/vial/vial.json @@ -0,0 +1,46 @@ +{ + "name": "reviungdash52", + "vendorId": "0xFEED", + "productId": "0x6062", + "matrix": { "rows": 9, "cols": 6 }, + "layouts": { + "keymap": [ + [{"rx":2.5,"ry":4.5,"y":-1,"x":0.45},"7,3"], + [{"rx":10.5,"y":-1,"x":0.31},"6,2"], + [{"r":13,"rx":6.75,"ry":0,"y":0.75,"x":-3},"0,3"], + [{"y":-0.82,"x":-4},"0,2",{"x":1},"0,4"], + [{"y":-0.82,"x":-5},"0,1",{"x":3},"0,5"], + [{"y":-0.82,"x":-6},"0,0"], + [{"y":-0.54,"x":-3},"1,3"], + [{"y":-0.82,"x":-4},"1,2",{"x":1},"1,4"], + [{"y":-0.82,"x":-5},"1,1",{"x":3},"1,5"], + [{"y":-0.82,"x":-6},"1,0"], + [{"y":-0.54,"x":-3},"2,3"], + [{"y":-0.82,"x":-4},"2,2",{"x":1},"2,4"], + [{"y":-0.82,"x":-5},"2,1",{"x":3},"2,5"], + [{"rx":6.8,"y":3.29,"x":-6.05},"2,0"], + [{"y":-0.36,"x":-4.05},"7,2"], + [{"y":-0.82,"x":-5.05},"7,1"], + [{"y":-0.82,"x":-6.05},"7,0"], + [{"r":46,"rx":7.8,"ry":3.5,"y":1.3,"x":-1},"8,0"], + [{"x":-2},"7,4","7,5","8,1"], + [{"r":-46,"rx":6.95,"y":1.3},"8,2"], + [{"x":-1},"8,3","6,0","6,1"], + [{"r":-13,"rx":8,"ry":0,"y":0.75,"x":2},"3,2"], + [{"y":-0.82,"x":1},"3,1",{"x":1},"3,3"], + [{"y":-0.82},"3,0",{"x":3},"3,4"], + [{"y":-0.82,"x":5},"3,5"], + [{"y":-0.54,"x":2},"4,2"], + [{"y":-0.82,"x":1},"4,1",{"x":1},"4,3"], + [{"y":-0.82},"4,0",{"x":3},"4,4"], + [{"y":-0.82,"x":5},"4,5"], + [{"y":-0.54,"x":2},"5,2"], + [{"y":-0.82,"x":1},"5,1",{"x":1},"5,3"], + [{"y":-0.82},"5,0",{"x":3},"5,4"], + [{"y":-0.82,"x":5},"5,5"], + [{"y":-0.36,"x":3},"6,3"], + [{"y":-0.82,"x":4},"6,4"], + [{"y":-0.82,"x":5},"6,5"] + ] + } +} diff --git a/keyboards/tumler/reviungdash52/readme.md b/keyboards/tumler/reviungdash52/readme.md new file mode 100644 index 0000000000..c165bca0d5 --- /dev/null +++ b/keyboards/tumler/reviungdash52/readme.md @@ -0,0 +1,13 @@ +# ReviungDash52 + +The REVIUNGDASH52 is a 52-key column staggered keyboard. + +* Keyboard Maintainer: [tumler](https://github.com/tumler) +* Hardware Supported: REVIUNGDASH52 PCBs, Pro Micro / RP2040 supported +* Hardware Availability: [PCB & Case Data](https://github.com/tumler/reviungdash/tree/master/reviungdash52) + +Make example for this keyboard (after setting up your build environment): + + make reviungdash52:vial + +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/tumler/reviungdash52/rules.mk b/keyboards/tumler/reviungdash52/rules.mk new file mode 100644 index 0000000000..5000682036 --- /dev/null +++ b/keyboards/tumler/reviungdash52/rules.mk @@ -0,0 +1,19 @@ +# MCU name +# MCU = RP2040 + +# Bootloader selection +# BOOTLOADER = caterina +# BOOTLOADER = rp2040 + +# 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