aboutsummaryrefslogtreecommitdiffstats
path: root/keyboards/keebio
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/keebio')
-rw-r--r--keyboards/keebio/bdn9/keymaps/hbbisenieks/keymap.c85
-rw-r--r--keyboards/keebio/ergodicity/ergodicity.h2
-rw-r--r--keyboards/keebio/iris/iris.h2
-rw-r--r--keyboards/keebio/iris/keymaps/csc027/config.h (renamed from keyboards/keebio/iris/keymaps/via/config.h)8
-rw-r--r--keyboards/keebio/iris/keymaps/csc027/keymap.c70
-rw-r--r--keyboards/keebio/iris/keymaps/csc027/rules.mk6
-rw-r--r--keyboards/keebio/iris/keymaps/drashna/config.h14
-rw-r--r--keyboards/keebio/iris/keymaps/hbbisenieks/config.h41
-rw-r--r--keyboards/keebio/iris/keymaps/hbbisenieks/keymap.c161
-rw-r--r--keyboards/keebio/iris/keymaps/hbbisenieks/readme.md6
-rw-r--r--keyboards/keebio/iris/keymaps/hbbisenieks/rules.mk6
-rw-r--r--keyboards/keebio/iris/keymaps/jhelvy/README.md7
-rw-r--r--keyboards/keebio/iris/keymaps/jhelvy/config.h33
-rw-r--r--keyboards/keebio/iris/keymaps/jhelvy/keymap.c54
-rw-r--r--keyboards/keebio/iris/keymaps/jhelvy/rules.mk3
-rw-r--r--keyboards/keebio/iris/keymaps/osiris/rules.mk5
-rw-r--r--keyboards/keebio/iris/keymaps/sethBarberee/config.h1
-rw-r--r--keyboards/keebio/iris/keymaps/sethBarberee/rules.mk3
-rw-r--r--keyboards/keebio/iris/keymaps/via/rules.mk8
-rw-r--r--keyboards/keebio/iris/rev1/config.h22
-rw-r--r--keyboards/keebio/iris/rev1_led/config.h22
-rw-r--r--keyboards/keebio/iris/rev2/config.h22
-rw-r--r--keyboards/keebio/iris/rev3/config.h22
-rw-r--r--keyboards/keebio/iris/rev4/config.h20
-rw-r--r--keyboards/keebio/levinson/keymaps/ksamborski/config.h27
-rw-r--r--keyboards/keebio/levinson/keymaps/ksamborski/keymap.c151
-rw-r--r--keyboards/keebio/levinson/keymaps/ksamborski/rules.mk3
-rw-r--r--keyboards/keebio/levinson/keymaps/numpad/config.h34
-rw-r--r--keyboards/keebio/levinson/keymaps/numpad/keymap.c123
-rw-r--r--keyboards/keebio/levinson/keymaps/numpad/readme.md4
-rw-r--r--keyboards/keebio/levinson/keymaps/numpad/rules.mk3
-rw-r--r--keyboards/keebio/levinson/keymaps/rossman360/keymap.c135
-rw-r--r--keyboards/keebio/levinson/readme.md6
-rw-r--r--keyboards/keebio/levinson/rev1/config.h2
-rw-r--r--keyboards/keebio/levinson/rev2/config.h2
-rw-r--r--keyboards/keebio/quefrency/rev1/config.h2
-rw-r--r--keyboards/keebio/rorschach/rev1/config.h2
-rw-r--r--keyboards/keebio/tragicforce68/info.json2
-rw-r--r--keyboards/keebio/tragicforce68/keymaps/default/keymap.c4
-rwxr-xr-xkeyboards/keebio/tragicforce68/keymaps/rossman360/keymap.c71
-rw-r--r--keyboards/keebio/tragicforce68/keymaps/rossman360/readme.md3
-rw-r--r--keyboards/keebio/tragicforce68/keymaps/rossman360/rules.mk2
-rw-r--r--keyboards/keebio/tragicforce68/rules.mk2
-rw-r--r--keyboards/keebio/tragicforce68/tragicforce68.h4
-rw-r--r--keyboards/keebio/viterbi/keymaps/met/keymap.c321
-rw-r--r--keyboards/keebio/viterbi/keymaps/met/rules.mk1
46 files changed, 1384 insertions, 143 deletions
diff --git a/keyboards/keebio/bdn9/keymaps/hbbisenieks/keymap.c b/keyboards/keebio/bdn9/keymaps/hbbisenieks/keymap.c
new file mode 100644
index 000000000..1eaee012a
--- /dev/null
+++ b/keyboards/keebio/bdn9/keymaps/hbbisenieks/keymap.c
@@ -0,0 +1,85 @@
+/* Copyright 2019 Danny Nguyen <danny@keeb.io>
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+#include QMK_KEYBOARD_H
+
+#define _AUDACITY 0
+#define _LIGHTS 1
+
+enum custom_keycodes {
+ AUDACITY = SAFE_RANGE,
+ LIGHTS,
+};
+
+#define KC_ KC_TRNS
+#define KC_AUD AUDACITY
+#define KC_LITE LIGHTS
+#define KC_ZNRM LCTL(KC_2) // zoom normal
+#define KC_SAVE LCTL(KC_S) // save
+#define KC_SYNC LALT(KC_S) // sync-lock tracks
+#define KC_SLNC LCTL(KC_L) // silence selection
+#define KC_BL_S BL_STEP
+#define KC_RGBM RGB_MOD
+#define KC_RGBT RGB_TOG
+
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /*
+ | Knob 1: Vol Dn/Up | | Knob 2: Page Dn/Up |
+ | Press: Mute | Home | Press: Play/Pause |
+ | Hold: Layer 2 | Up | RGB Mode |
+ | Left | Down | Right |
+ */
+ [_AUDACITY] = LAYOUT(
+ //,-------+-------+-------.
+ KC_LITE,KC_SAVE,KC_ZNRM,
+ //|-------+-------+-------|
+ KC_SYNC,KC_SLNC,KC_BSPC,
+ //|-------+-------+-------|
+ KC_SPC , KC_F1 , KC_F2
+ //`-------+-------+-------'
+ ),
+ /*
+ | RESET | N/A | Media Stop |
+ | Held: Layer 2 | Home | RGB Mode |
+ | Media Previous | End | Media Next |
+ */
+ [_LIGHTS] = LAYOUT(
+ //,-------+-------+-------.
+ KC_ ,KC_BL_S,KC_STOP,
+ //|-------+-------+-------|
+ KC_RGBM,KC_HOME,KC_RGBT,
+ //|-------+-------+-------|
+ KC_MPRV,KC_END ,KC_MNXT
+ //`-------+-------+-------'
+ ),
+};
+
+void encoder_update_user(uint8_t index, bool clockwise) {
+ if (index == 0) {
+ if (clockwise) {
+ tap_code(KC_RGHT);
+ } else {
+ tap_code(KC_LEFT);
+ }
+ }
+ else if (index == 1) {
+ if (clockwise) {
+ SEND_STRING(SS_LCTRL("1")); // audacity zoom in
+ } else {
+ SEND_STRING(SS_LCTRL("3")); // audacity zoom out
+ }
+ }
+}
diff --git a/keyboards/keebio/ergodicity/ergodicity.h b/keyboards/keebio/ergodicity/ergodicity.h
index 156ad828a..a6a9cf4d7 100644
--- a/keyboards/keebio/ergodicity/ergodicity.h
+++ b/keyboards/keebio/ergodicity/ergodicity.h
@@ -37,5 +37,5 @@
{ kB1, kB2, kB3, kB4, kB5, kB6, kB7, kB8, kB9, kB10, kB11, kB12, kB13, kB14, kB15 }, \
{ kC1, kC2, kC3, kC4, kC5, kC6, kC7, kC8, kC9, kC10, kC11, kC12, kC13, KC_NO, kC15 }, \
{ KC_NO, kD2, kD3, kD4, kD5, kD6, kD7, kD8, kD9, kD10, kD11, kD12, kD13, kD14, kD15 }, \
- { KC_NO, kE2, kE3, kE4, KC_NO, kE6, kE7, KC_NO, kE9, KC_NO, kE11, KC_NO, KC_NO, kE15 } \
+ { KC_NO, kE2, kE3, kE4, KC_NO, kE6, kE7, KC_NO, kE9, KC_NO, kE11, KC_NO, KC_NO, KC_NO, kE15 } \
}
diff --git a/keyboards/keebio/iris/iris.h b/keyboards/keebio/iris/iris.h
index 5e6bc5b58..878d57897 100644
--- a/keyboards/keebio/iris/iris.h
+++ b/keyboards/keebio/iris/iris.h
@@ -13,7 +13,7 @@
#endif
#include "quantum.h"
-#include "../../wilba_tech/via_keycodes.h"
+#include "via.h"
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
diff --git a/keyboards/keebio/iris/keymaps/via/config.h b/keyboards/keebio/iris/keymaps/csc027/config.h
index f2498e592..5d201a6f1 100644
--- a/keyboards/keebio/iris/keymaps/via/config.h
+++ b/keyboards/keebio/iris/keymaps/csc027/config.h
@@ -17,4 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
+#define USE_I2C
+#define EE_HANDS
+
+#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
+#define RGBLED_NUM 12
+#define RGBLIGHT_HUE_STEP 8
+#define RGBLIGHT_SAT_STEP 8
+#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/keebio/iris/keymaps/csc027/keymap.c b/keyboards/keebio/iris/keymaps/csc027/keymap.c
new file mode 100644
index 000000000..82a077391
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/csc027/keymap.c
@@ -0,0 +1,70 @@
+#include QMK_KEYBOARD_H
+#include "csc027.h"
+
+#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_QW] = LAYOUT_wrapper(
+ _____________________QWERTY_L1_____________________, _____________________QWERTY_R1_____________________,
+ _____________________QWERTY_L2_____________________, _____________________QWERTY_R2_____________________,
+ _____________________QWERTY_L3_____________________, _____________________QWERTY_R3_____________________,
+ _____________________QWERTY_L4_____________________, KC_SPC, KC_SPC, _____________________QWERTY_R4_____________________,
+ KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI
+ ),
+
+ [_RS] = LAYOUT_wrapper(
+ ______________________RAISE_L1_____________________, ______________________RAISE_R1_____________________,
+ ______________________RAISE_L2_____________________, ______________________RAISE_R2_____________________,
+ ______________________RAISE_L3_____________________, ______________________RAISE_R3_____________________,
+ ______________________RAISE_L4_____________________, _______, _______, ______________________RAISE_R4_____________________,
+ _______, _______, _______, _______, _______, _______
+ ),
+
+ [_LW] = LAYOUT_wrapper(
+ ______________________LOWER_L1_____________________, ______________________LOWER_R1_____________________,
+ ______________________LOWER_L2_____________________, ______________________LOWER_R2_____________________,
+ ______________________LOWER_L3_____________________, ______________________LOWER_R3_____________________,
+ ______________________LOWER_L4_____________________, _______, _______, ______________________LOWER_R4_____________________,
+ _______, _______, _______, _______, _______, _______
+ ),
+
+ [_MS] = LAYOUT_wrapper(
+ ______________________MOUSE_L1_____________________, ______________________MOUSE_R1_____________________,
+ ______________________MOUSE_L2_____________________, ______________________MOUSE_R2_____________________,
+ ______________________MOUSE_L3_____________________, ______________________MOUSE_R3_____________________,
+ ______________________MOUSE_L4_____________________, _______, _______, ______________________MOUSE_R4_____________________,
+ _______, _______, _______, _______, _______, _______
+ ),
+
+ [_GT] = LAYOUT_wrapper(
+ _______________________GIT_L1______________________, _______________________GIT_R1______________________,
+ _______________________GIT_L2______________________, _______________________GIT_R2______________________,
+ _______________________GIT_L3______________________, _______________________GIT_R3______________________,
+ _______________________GIT_L4______________________, _______, _______, _______________________GIT_R4______________________,
+ _______, _______, _______, _______, _______, _______
+ ),
+
+ [_CN] = LAYOUT_wrapper(
+ ___________________CONVENIENCE_L1__________________, ___________________CONVENIENCE_R1__________________,
+ ___________________CONVENIENCE_L2__________________, ___________________CONVENIENCE_R2__________________,
+ ___________________CONVENIENCE_L3__________________, ___________________CONVENIENCE_R3__________________,
+ ___________________CONVENIENCE_L4__________________, _______, _______, ___________________CONVENIENCE_R4__________________,
+ _______, _______, _______, _______, _______, _______
+ ),
+
+ [_GW] = LAYOUT(
+ KC_Y, KC_GRV, KC_1, KC_2, KC_3, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
+ KC_B, KC_TAB, KC_T, KC_W, KC_4, KC_R, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
+ KC_M, MC_LSEC, KC_A, KC_S, KC_D, KC_F, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
+ KC_I, KC_LCTL, KC_Z, KC_LALT, KC_V, KC_SPC, KC_SPC, _______, KC_N, KC_M, KC_COMM, KC_DOT, TO(_CS), TO(_QW),
+ KC_X, KC_C, KC_SPC, _______, KC_M, KC_B
+ ),
+
+ [_CS] = LAYOUT(
+ XXXXXXX, KC_5, KC_1, KC_2, KC_3, KC_4, KC_6, KC_P7, KC_P8, KC_P9, KC_0, KC_BSPC,
+ XXXXXXX, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_Y, KC_P4, KC_P5, KC_P6, XXXXXXX, KC_NLCK,
+ KC_G, KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_H, KC_P1, KC_P2, KC_P3, KC_PENT, KC_ESC,
+ XXXXXXX, KC_LCTL, XXXXXXX, KC_X, XXXXXXX, XXXXXXX, KC_SPC, _______, KC_N, KC_P0, KC_P0, KC_PDOT, TO(_QW), TO(_QW),
+ KC_B, KC_SPC, KC_SPC, _______, KC_N, KC_P0
+ )
+};
diff --git a/keyboards/keebio/iris/keymaps/csc027/rules.mk b/keyboards/keebio/iris/keymaps/csc027/rules.mk
new file mode 100644
index 000000000..e922161e3
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/csc027/rules.mk
@@ -0,0 +1,6 @@
+BACKLIGHT_ENABLE = yes
+CONSOLE_ENABLE = no
+EXTRAKEY_ENABLE = no
+LTO_ENABLE = yes
+MOUSEKEY_ENABLE = yes
+NKRO_ENABLE = yes
diff --git a/keyboards/keebio/iris/keymaps/drashna/config.h b/keyboards/keebio/iris/keymaps/drashna/config.h
index 25678bd67..49381b60a 100644
--- a/keyboards/keebio/iris/keymaps/drashna/config.h
+++ b/keyboards/keebio/iris/keymaps/drashna/config.h
@@ -46,11 +46,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#ifdef AUDIO_ENABLE
# define C6_AUDIO
# ifdef RGBLIGHT_ENABLE
-# define NO_MUSIC_MODE
+# ifndef __arm__
+# define NO_MUSIC_MODE
+# endif
# endif // RGBLIGHT_ENABLE
#endif // AUDIO_ENABLE
-#ifndef KEYBOARD_keebio_iris_rev3
+#if defined(KEYBOARD_keebio_iris_rev1) || defined(KEYBOARD_keebio_iris_rev2)
# define QMK_ESC_OUTPUT F6 // usually COL
# define QMK_ESC_INPUT D7 // usually ROW
# define QMK_LED B0
@@ -58,10 +60,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#endif
#undef PRODUCT
-#ifdef KEYBOARD_keebio_iris_rev2
-# define PRODUCT Drashna Hacked Iris Rev .2
+#if defined(KEYBOARD_keebio_iris_rev2)
+# define PRODUCT Drashna Hacked Iris Rev 2
#elif defined(KEYBOARD_keebio_iris_rev3)
-# define PRODUCT Drashna Hacked Iris Rev .3
+# define PRODUCT Drashna Hacked Iris Rev 3
+#elif defined(KEYBOARD_keebio_iris_rev4)
+# define PRODUCT Drashna Hacked Iris Rev 4
#endif
#define SHFT_LED1 6
diff --git a/keyboards/keebio/iris/keymaps/hbbisenieks/config.h b/keyboards/keebio/iris/keymaps/hbbisenieks/config.h
new file mode 100644
index 000000000..48f448fa2
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/hbbisenieks/config.h
@@ -0,0 +1,41 @@
+/*
+Copyright 2017 Danny Nguyen <danny@keeb.io>
+
+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 <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+/* Use I2C or Serial, not both */
+
+#define USE_SERIAL
+// #define USE_I2C
+
+/* Select hand configuration */
+
+#define MASTER_LEFT
+// #define MASTER_RIGHT
+// #define EE_HANDS
+
+#define TAPPING_TERM 150
+
+#define TAPPING_TOGGLE 2
+#define PERMISSIVE_HOLD
+
+#undef RGBLED_NUM
+#define RGBLIGHT_ANIMATIONS
+#define RGBLED_NUM 12
+#define RGBLIGHT_HUE_STEP 8
+#define RGBLIGHT_SAT_STEP 8
+#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/keebio/iris/keymaps/hbbisenieks/keymap.c b/keyboards/keebio/iris/keymaps/hbbisenieks/keymap.c
new file mode 100644
index 000000000..9916fc5ee
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/hbbisenieks/keymap.c
@@ -0,0 +1,161 @@
+#include QMK_KEYBOARD_H
+
+enum layer_names {
+ _QWERTY,
+ _LOWER,
+ _RAISE,
+ _ADJUST,
+};
+
+enum custom_keycodes {
+ LOWER = SAFE_RANGE,
+ RAISE,
+ ADJUST,
+ GUSR,
+ HGRP,
+ CHUS,
+};
+
+#define KC_ KC_TRNS
+
+#define KC_CAPW LGUI(LSFT(KC_3)) // Capture whole screen
+#define KC_CPYW LGUI(LSFT(LCTL(KC_3))) // Copy whole screen
+#define KC_CAPP LGUI(LSFT(KC_4)) // Capture portion of screen
+#define KC_CPYP LGUI(LSFT(LCTL(KC_4))) // Copy portion of screen
+#define KC_ESCC MT(MOD_LCTL, KC_ESC)
+#define KC_LOWR LOWER
+#define KC_RASE RAISE
+#define KC_RST RESET
+#define KC_BL_S BL_STEP
+
+// Left and right shift as mot-tap square braces
+#define KC_LSBR MT(MOD_LSFT, KC_LBRC)
+#define KC_RSBR MT(MOD_RSFT, KC_RBRC)
+
+// mod-tap shift/minus
+#define KC_SMIN MT(MOD_LSFT, KC_MINS)
+
+// Tap-toggle layers
+#define KC_TT_L TT(1)
+#define KC_TT_R TT(2)
+
+#define KC_RGBM RGB_MOD
+#define KC_RGBT RGB_TOG
+
+#define KC_SLOK LGUI(LCTL(KC_Q)) // mojave lock screen
+#define KC_GUSR GUSR // "gam info user" macro
+#define KC_HGRP HGRP // "history | grep" macro
+#define KC_CHUS CHUS // "thisisunsafe" chrome browser macro
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [_QWERTY] = LAYOUT_kc(
+ //,----+----+----+----+----+----. ,----+----+----+----+----+----.
+ GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,BSPC,
+ //|----+----+----+----+----+----| |----+----+----+----+----+----|
+ TAB , Q , W , E , R , T , Y , U , I , O , P ,BSLS,
+ //|----+----+----+----+----+----| |----+----+----+----+----+----|
+ ESC , A , S , D , F , G , H , J , K , L ,SCLN,QUOT,
+ //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
+ LSBR, Z , X , C , V , B ,TT_L, TT_R, N , M ,COMM,DOT ,SLSH,RSBR,
+ //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
+ LCTL,SMIN,LGUI, ENT ,SPC ,LALT
+ // `----+----+----' `----+----+----'
+ ),
+
+ [_LOWER] = LAYOUT_kc(
+ //,----+----+----+----+----+----. ,----+----+----+----+----+----.
+ TILD,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,MINS,EQL , ,
+ //|----+----+----+----+----+----| |----+----+----+----+----+----|
+ ,SLOK, , UP , ,RGBT, P7 , P8 , P9 , E , F ,LPRN,
+ //|----+----+----+----+----+----| |----+----+----+----+----+----|
+ DEL , ,LEFT,DOWN,RGHT,GUSR, P4 , P5 , P6 , C , D ,RPRN,
+ //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
+ BL_S, , , ,HGRP,CHUS, , , P1 , P2 , P3 , A , B , ,
+ //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
+ , , , DOT , P0 ,COLN
+ // `----+----+----' `----+----+----'
+ ),
+
+ [_RAISE] = LAYOUT_kc(
+ //,----+----+----+----+----+----. ,----+----+----+----+----+----.
+ F12 , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,
+ //|----+----+----+----+----+----| |----+----+----+----+----+----|
+ ,RGBT,RGBM, , , , ,AMPR,MUTE, , , ,
+ //|----+----+----+----+----+----| |----+----+----+----+----+----|
+ ,CAPW,CPYW,CAPP,CPYP,PGUP, EQL ,HOME,VOLU,MRWD,MFFD, ,
+ //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
+ , , , , ,PGDN, , ,PLUS,END ,VOLD,MPLY,MSTP, ,
+ //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
+ , , , , ,
+ // `----+----+----' `----+----+----'
+ ),
+
+ [_ADJUST] = LAYOUT(
+ //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------.
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______,
+ //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
+ RESET , DEBUG , RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______,
+ //|--------+--------+--------+--------+--------+--------+--------. ,--------|--------+--------+--------+--------+--------+--------|
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ //`--------+--------+--------+----+---+--------+--------+--------/ \--------+--------+--------+---+----+--------+--------+--------'
+ _______, _______, _______, _______, _______, _______
+ // `--------+--------+--------' `--------+--------+--------'
+ )
+
+};
+
+#ifdef AUDIO_ENABLE
+float tone_qwerty[][2] = SONG(QWERTY_SOUND);
+#endif
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case LOWER:
+ if (record->event.pressed) {
+ layer_on(_LOWER);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ } else {
+ layer_off(_LOWER);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ }
+ return false;
+ break;
+ case RAISE:
+ if (record->event.pressed) {
+ layer_on(_RAISE);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ } else {
+ layer_off(_RAISE);
+ update_tri_layer(_LOWER, _RAISE, _ADJUST);
+ }
+ return false;
+ break;
+ case ADJUST:
+ if (record->event.pressed) {
+ layer_on(_ADJUST);
+ } else {
+ layer_off(_ADJUST);
+ }
+ return false;
+ break;
+ case GUSR:
+ if (record->event.pressed) {
+ SEND_STRING("gam info user ");
+ }
+ break;
+ case HGRP:
+ if (record->event.pressed) {
+ SEND_STRING("history|grep ");
+ }
+ break;
+ case CHUS:
+ if (record->event.pressed) {
+ SEND_STRING("thisisunsafe");
+ }
+ break;
+ }
+ return true;
+}
diff --git a/keyboards/keebio/iris/keymaps/hbbisenieks/readme.md b/keyboards/keebio/iris/keymaps/hbbisenieks/readme.md
new file mode 100644
index 000000000..57b9491da
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/hbbisenieks/readme.md
@@ -0,0 +1,6 @@
+# HBBisenieks' Iris Layout
+
+A modified Iris layout with toggle-tap layers and a hexidecimal
+numpad. Other features include Space-Cadet-like shift keys that can do
+square or curly braces and a home-row escape key.
+
diff --git a/keyboards/keebio/iris/keymaps/hbbisenieks/rules.mk b/keyboards/keebio/iris/keymaps/hbbisenieks/rules.mk
new file mode 100644
index 000000000..f8de3b808
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/hbbisenieks/rules.mk
@@ -0,0 +1,6 @@
+RGBLIGHT_ENABLE = yes
+BACKLIGHT_ENABLE = yes
+
+# Comment out for pro-micro board
+BOOTLOADER = atmel-dfu
+
diff --git a/keyboards/keebio/iris/keymaps/jhelvy/README.md b/keyboards/keebio/iris/keymaps/jhelvy/README.md
new file mode 100644
index 000000000..5d5ff1247
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/jhelvy/README.md
@@ -0,0 +1,7 @@
+# jhelvy Keymap for [Iris Rev 2](https://docs.keeb.io/iris-build-guide/)
+
+## Keymap
+
+This is a custom keymap with the following layout:
+
+<img src="https://github.com/jhelvy/qmkJsonConverter/raw/master/keymaps/keebio_iris_rev2_jhelvy.png" width="800">
diff --git a/keyboards/keebio/iris/keymaps/jhelvy/config.h b/keyboards/keebio/iris/keymaps/jhelvy/config.h
new file mode 100644
index 000000000..2285c3f9a
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/jhelvy/config.h
@@ -0,0 +1,33 @@
+/*
+Copyright 2017 Danny Nguyen <danny@keeb.io>
+
+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 <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+// #define USE_I2C
+#define EE_HANDS
+
+#undef RGBLED_NUM
+#define RGBLIGHT_ANIMATIONS
+#define RGBLED_NUM 12
+#define RGBLIGHT_HUE_STEP 8
+#define RGBLIGHT_SAT_STEP 8
+#define RGBLIGHT_VAL_STEP 8
+
+#define TAPPING_FORCE_HOLD
+#undef TAPPING_TERM
+#define TAPPING_TERM 200
+#define AUTO_SHIFT_TIMEOUT 150
diff --git a/keyboards/keebio/iris/keymaps/jhelvy/keymap.c b/keyboards/keebio/iris/keymaps/jhelvy/keymap.c
new file mode 100644
index 000000000..58ce3206d
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/jhelvy/keymap.c
@@ -0,0 +1,54 @@
+#include QMK_KEYBOARD_H
+
+
+#define _QWERTY 0
+#define _LOWER 1
+#define _RAISE 2
+
+enum custom_keycodes {
+ QWERTY = SAFE_RANGE,
+ LOWER,
+ RAISE,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+[_QWERTY] = LAYOUT( \
+ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, \
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, \
+ KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, \
+ KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_NO, KC_NO, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, \
+ LALT(KC_A),KC_LGUI, MO(1), KC_SPC, MO(2), KC_PGDN),
+
+[_LOWER] = LAYOUT( \
+ KC_ESC,LGUI(KC_1),LGUI(KC_2),LGUI(KC_3),LGUI(KC_4),LGUI(KC_5), KC_SCLN, KC_PIPE, KC_COLN,LCTL(KC_9),LCTL(KC_0), KC_F12, \
+ LCTL(KC_TAB),LGUI(KC_Q),LGUI(KC_W), KC_ESC,LGUI(KC_R),LGUI(KC_T), LCTL(KC_Y),LGUI(KC_LEFT), KC_UP,LGUI(KC_RGHT), KC_TILD, KC_F11, \
+ LGUI(KC_BSPC),MO(2),LGUI(KC_S),LGUI(KC_C),LGUI(KC_V),LGUI(KC_X), KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_GRV, KC_ENT, \
+ KC_F15,LGUI(KC_A),LGUI(KC_D), KC_F13,LGUI(KC_Z),LGUI(KC_Y), KC_NO, KC_NO,KC_BSPC,LGUI(KC_F), SGUI(KC_G),LGUI(KC_G), KC_BSLS, KC_F23, \
+ KC_LALT,KC_LGUI, KC_TRNS, KC_SPC,KC_RGUI, KC_PGUP),
+
+[_RAISE] = LAYOUT( \
+ KC_VOLU,LGUI(LALT(KC_1)),LGUI(LALT(KC_2)), KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PLUS, \
+ KC_VOLD, KC_NO, KC_NO, KC_NO,SGUI(KC_R), KC_F14, SGUI(KC_K),SGUI(KC_LEFT),LSFT(KC_UP),SGUI(KC_RGHT), KC_F18, KC_UNDS, \
+ KC_MUTE,KC_TRNS, KC_NO, KC_LBRC, KC_RBRC, KC_TAB, KC_F21,LSFT(KC_LEFT),LSFT(KC_DOWN),LSFT(KC_RGHT), KC_F20, KC_F16, \
+ KC_LSPO,KC_ASTG, KC_NO, KC_LCBR, KC_RCBR,LCTL(KC_U), KC_NO, KC_NO,KC_F22,LCTL(LGUI(KC_A)),LALT(LSFT(KC_LEFT)),LALT(LSFT(KC_RIGHT)), KC_F17, KC_F19, \
+ KC_CAPS,LALT(KC_SPC), KC_LGUI, KC_SPC,KC_TRNS, KC_NO)
+
+};
+
+void encoder_update_user(uint8_t index, bool clockwise) {
+ if (index == 0) {
+ if (clockwise) {
+ tap_code(KC_VOLU);
+ } else {
+ tap_code(KC_VOLD);
+ }
+ }
+ else if (index == 1) {
+ if (clockwise) {
+ tap_code(KC_PGDN);
+ } else {
+ tap_code(KC_PGUP);
+ }
+ }
+}
diff --git a/keyboards/keebio/iris/keymaps/jhelvy/rules.mk b/keyboards/keebio/iris/keymaps/jhelvy/rules.mk
new file mode 100644
index 000000000..c34fd4b1f
--- /dev/null
+++ b/keyboards/keebio/iris/keymaps/jhelvy/rules.mk
@@ -0,0 +1,3 @@
+AUTO_SHIFT_ENABLE = yes # Autoshift by holding down a key
+RGBLIGHT_ENABLE = yes
+BACKLIGHT_ENABLE = yes
diff --git a/keyboards/keebio/iris/keymaps/osiris/rules.mk b/keyboards/keebio/iris/keymaps/osiris/rules.mk
index f2788b5f7..45c570a3b 100644
--- a/keyboards/keebio/iris/keymaps/osiris/rules.mk
+++ b/keyboards/keebio/iris/keymaps/osiris/rules.mk
@@ -1,8 +1,3 @@
RGBLIGHT_ENABLE = yes
BACKLIGHT_ENABLE = yes
MOUSEKEY_ENABLE = yes
-
-# VIA Support - Comment these 3 lines out to disable
-# RAW_ENABLE = yes
-# DYNAMIC_KEYMAP_ENABLE = yes
-# SRC += keyboards/wilba_tech/wt_main.c \ No newline at end of file
diff --git a/keyboards/keebio/iris/keymaps/sethBarberee/config.h b/keyboards/keebio/iris/keymaps/sethBarberee/config.h
index fd5bda866..c031c0326 100644
--- a/keyboards/keebio/iris/keymaps/sethBarberee/config.h
+++ b/keyboards/keebio/iris/keymaps/sethBarberee/config.h
@@ -35,6 +35,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
+#undef RGBLED_SPLIT
#define RGBLED_SPLIT { RGBLED_NUM, 0} // defined to sync animations
#define FORCE_NKRO // force NKRO on by default
diff --git a/keyboards/keebio/iris/keymaps/sethBarberee/rules.mk b/keyboards/keebio/iris/keymaps/sethBarberee/rules.mk
index d7bc1927d..5df198b7b 100644
--- a/keyboards/keebio/iris/keymaps/sethBarberee/rules.mk
+++ b/keyboards/keebio/iris/keymaps/sethBarberee/rules.mk
@@ -1,8 +1,9 @@
BOOTMAGIC_ENABLE = no
+CONSOLE_ENABLE = no
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
BACKLIGHT_ENABLE = yes # Enable my Red LEDS
RGBLIGHT_ENABLE = yes # Enable my RGBS
VELOCIKEY_ENABLE = yes # I like RGB
TAP_DANCE_ENABLE = yes # fancy fancy Caps
-LINK_TIME_OPTIMIZATION = yes # Enable link time optimization
+LTO_ENABLE = yes # Enable link time optimization
diff --git a/keyboards/keebio/iris/keymaps/via/rules.mk b/keyboards/keebio/iris/keymaps/via/rules.mk
index ca2680325..1e5b99807 100644
--- a/keyboards/keebio/iris/keymaps/via/rules.mk
+++ b/keyboards/keebio/iris/keymaps/via/rules.mk
@@ -1,7 +1 @@
-RGBLIGHT_ENABLE = yes
-BACKLIGHT_ENABLE = yes
-
-# VIA Support - Comment these 3 lines out to disable
-RAW_ENABLE = yes
-DYNAMIC_KEYMAP_ENABLE = yes
-SRC += keyboards/wilba_tech/wt_main.c
+VIA_ENABLE = yes
diff --git a/keyboards/keebio/iris/rev1/config.h b/keyboards/keebio/iris/rev1/config.h
index 12b4e098b..a6b14138e 100644
--- a/keyboards/keebio/iris/rev1/config.h
+++ b/keyboards/keebio/iris/rev1/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include QMK_KEYBOARD_CONFIG_H
-
/* USB Device descriptor parameter */
#define VENDOR_ID 0xCB10
#define PRODUCT_ID 0x1256
@@ -62,23 +60,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* ws2812 RGB LED */
#define RGB_DI_PIN D3
#define RGBLED_NUM 12 // Number of LEDs
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
-
-// EEPROM usage
-
-// TODO: refactor with new user EEPROM code (coming soon)
-#define EEPROM_MAGIC 0x451F
-#define EEPROM_MAGIC_ADDR 34
-// Bump this every time we change what we store
-// This will automatically reset the EEPROM with defaults
-// and avoid loading invalid data from the EEPROM
-#define EEPROM_VERSION 0x08
-#define EEPROM_VERSION_ADDR 36
-
-// Dynamic keymap starts after EEPROM version
-#define DYNAMIC_KEYMAP_EEPROM_ADDR 37
-// Dynamic macro starts after dynamic keymaps (37+(4*10*6*2)) = (37+480)
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR 517
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE 507 // 1024-DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
-#define DYNAMIC_KEYMAP_MACRO_COUNT 16
diff --git a/keyboards/keebio/iris/rev1_led/config.h b/keyboards/keebio/iris/rev1_led/config.h
index 3b3c999b8..5f93a61df 100644
--- a/keyboards/keebio/iris/rev1_led/config.h
+++ b/keyboards/keebio/iris/rev1_led/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include QMK_KEYBOARD_CONFIG_H
-
/* USB Device descriptor parameter */
#define VENDOR_ID 0xCB10
#define PRODUCT_ID 0x1256
@@ -62,23 +60,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* ws2812 RGB LED */
#define RGB_DI_PIN D3
#define RGBLED_NUM 12 // Number of LEDs
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
-
-// EEPROM usage
-
-// TODO: refactor with new user EEPROM code (coming soon)
-#define EEPROM_MAGIC 0x451F
-#define EEPROM_MAGIC_ADDR 34
-// Bump this every time we change what we store
-// This will automatically reset the EEPROM with defaults
-// and avoid loading invalid data from the EEPROM
-#define EEPROM_VERSION 0x08
-#define EEPROM_VERSION_ADDR 36
-
-// Dynamic keymap starts after EEPROM version
-#define DYNAMIC_KEYMAP_EEPROM_ADDR 37
-// Dynamic macro starts after dynamic keymaps (37+(4*10*6*2)) = (37+480)
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR 517
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE 507 // 1024-DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
-#define DYNAMIC_KEYMAP_MACRO_COUNT 16
diff --git a/keyboards/keebio/iris/rev2/config.h b/keyboards/keebio/iris/rev2/config.h
index 938ff05f0..ab55bf77b 100644
--- a/keyboards/keebio/iris/rev2/config.h
+++ b/keyboards/keebio/iris/rev2/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include QMK_KEYBOARD_CONFIG_H
-
/* USB Device descriptor parameter */
#define VENDOR_ID 0xCB10
#define PRODUCT_ID 0x1256
@@ -62,23 +60,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* ws2812 RGB LED */
#define RGB_DI_PIN D3
#define RGBLED_NUM 12 // Number of LEDs
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
-
-// EEPROM usage
-
-// TODO: refactor with new user EEPROM code (coming soon)
-#define EEPROM_MAGIC 0x451F
-#define EEPROM_MAGIC_ADDR 34
-// Bump this every time we change what we store
-// This will automatically reset the EEPROM with defaults
-// and avoid loading invalid data from the EEPROM
-#define EEPROM_VERSION 0x08
-#define EEPROM_VERSION_ADDR 36
-
-// Dynamic keymap starts after EEPROM version
-#define DYNAMIC_KEYMAP_EEPROM_ADDR 37
-// Dynamic macro starts after dynamic keymaps (37+(4*10*6*2)) = (37+480)
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR 517
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE 507 // 1024-DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
-#define DYNAMIC_KEYMAP_MACRO_COUNT 16
diff --git a/keyboards/keebio/iris/rev3/config.h b/keyboards/keebio/iris/rev3/config.h
index 6576ff683..8c6f4ad08 100644
--- a/keyboards/keebio/iris/rev3/config.h
+++ b/keyboards/keebio/iris/rev3/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include QMK_KEYBOARD_CONFIG_H
-
/* USB Device descriptor parameter */
#define VENDOR_ID 0xCB10
#define PRODUCT_ID 0x1256
@@ -71,23 +69,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_DI_PIN F7
#define RGBLED_NUM 12 // Number of LEDs
#define RGBLED_SPLIT { 6, 6 }
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
-
-// EEPROM usage
-
-// TODO: refactor with new user EEPROM code (coming soon)
-#define EEPROM_MAGIC 0x451F
-#define EEPROM_MAGIC_ADDR 34
-// Bump this every time we change what we store
-// This will automatically reset the EEPROM with defaults
-// and avoid loading invalid data from the EEPROM
-#define EEPROM_VERSION 0x08
-#define EEPROM_VERSION_ADDR 36
-
-// Dynamic keymap starts after EEPROM version
-#define DYNAMIC_KEYMAP_EEPROM_ADDR 37
-// Dynamic macro starts after dynamic keymaps (37+(4*10*6*2)) = (37+480)
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR 517
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE 507 // 1024-DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
-#define DYNAMIC_KEYMAP_MACRO_COUNT 16
diff --git a/keyboards/keebio/iris/rev4/config.h b/keyboards/keebio/iris/rev4/config.h
index b4bcd6139..87fdafcd5 100644
--- a/keyboards/keebio/iris/rev4/config.h
+++ b/keyboards/keebio/iris/rev4/config.h
@@ -73,23 +73,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_DI_PIN D6
#define RGBLED_NUM 12 // Number of LEDs
#define RGBLED_SPLIT { 6, 6 }
-
-#define DYNAMIC_KEYMAP_LAYER_COUNT 4
-
-// EEPROM usage
-
-// TODO: refactor with new user EEPROM code (coming soon)
-#define EEPROM_MAGIC 0x451F
-#define EEPROM_MAGIC_ADDR 34
-// Bump this every time we change what we store
-// This will automatically reset the EEPROM with defaults
-// and avoid loading invalid data from the EEPROM
-#define EEPROM_VERSION 0x08
-#define EEPROM_VERSION_ADDR 36
-
-// Dynamic keymap starts after EEPROM version
-#define DYNAMIC_KEYMAP_EEPROM_ADDR 37
-// Dynamic macro starts after dynamic keymaps (37+(4*10*6*2)) = (37+480)
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR 517
-#define DYNAMIC_KEYMAP_MACRO_EEPROM_SIZE 507 // 1024-DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
-#define DYNAMIC_KEYMAP_MACRO_COUNT 16
diff --git a/keyboards/keebio/levinson/keymaps/ksamborski/config.h b/keyboards/keebio/levinson/keymaps/ksamborski/config.h
new file mode 100644
index 000000000..7a21830f2
--- /dev/null
+++ b/keyboards/keebio/levinson/keymaps/ksamborski/config.h
@@ -0,0 +1,27 @@
+/*
+This is the c configuration file for the keymap
+
+Copyright 2012 Jun Wako <wakojun@gmail.com>
+Copyright 2015 Jack Humbert
+
+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 <http://www.gnu.org/licenses/>.
+*/
+#pragma once
+
+/* Select hand configuration */
+#define MASTER_LEFT
+
+#define RGBLIGHT_ANIMATIONS
+#define RGBLED_NUM 12
+
diff --git a/keyboards/keebio/levinson/keymaps/ksamborski/keymap.c b/keyboards/keebio/levinson/keymaps/ksamborski/keymap.c
new file mode 100644
index 000000000..4fc77fb83
--- /dev/null
+++ b/keyboards/keebio/levinson/keymaps/ksamborski/keymap.c
@@ -0,0 +1,151 @@
+#include QMK_KEYBOARD_H
+
+enum layers {
+ _QW,
+ _LW,
+ _RS,
+ _AD,
+};
+
+enum custom_keycodes {
+ QWERTY = SAFE_RANGE,
+ LOWER,
+ RAISE,
+ ADJUST,
+ MKITPNK
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Qwerty
+ * ,-----------------------------------------. ,-----------------------------------------.
+ * | Esc | Q | W | E | R | T | | Y | U | I | O | P | Del |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | Tab | A | S | D | F | G | | H | J | K | L | ; | Bksp |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | Shift| Z | X | C | V | B | | N | M | , | . | \ | = |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | Ctrl | | Meta | Alt | Lower| Enter| | Space| Raise| Alt | Meta | | |
+ * `-----------------------------------------' `-----------------------------------------'
+ */
+ [_QW] = LAYOUT_ortho_4x12(
+ KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_DEL ,
+ KC_TAB , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_BSPC,
+ KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_BSLS, KC_EQL ,
+ KC_LCTL , _______, KC_LGUI, KC_LALT, LOWER , KC_ENT , KC_SPC , RAISE , KC_RALT, KC_LGUI, _______, _______
+ ),
+
+/* Raise
+ * ,-----------------------------------------. ,-----------------------------------------.
+ * | , | 1 | 2 | 3 | + | - | | { | } | ( | ) | | |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | . | 4 | 5 | 6 | # | * | | F1 | F2 | F3 | F4 | F5 | F6 |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | Shift| 7 | 8 | 9 | / | = | | F7 | F8 | F9 | F10 | F11 | F12 |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | | | 0 | |Adjust| | | | RAISE| | | | |
+ * `-----------------------------------------' `-----------------------------------------'
+ */
+ [_RS] = LAYOUT_ortho_4x12(
+ KC_COMM , KC_1 , KC_2 , KC_3 , KC_PLUS, KC_MINS, KC_LCBR, KC_RCBR, KC_LPRN, KC_RPRN, _______, _______,
+ KC_DOT , KC_4 , KC_5 , KC_6 , KC_HASH, KC_ASTR, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 ,
+ KC_LSFT , KC_7 , KC_8 , KC_9 , KC_SLSH, KC_EQL , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 ,
+ _______ , _______, KC_0 , _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+/* Lower
+ * ,-----------------------------------------. ,-----------------------------------------.
+ * | ` | ! | @ | # | $ | % | | Home| PgDn| PgUp| End | ( | ) |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | | Vol+ | Mute | Play | | Ins | | Left| Down| Up | Right| { | } |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | | Vol- | < M | M > | | | | ^ | & | * | ' | [ | ] |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | | | | |LOWER | | | Shift|Adjust| | | | |
+ * `-----------------------------------------' `-----------------------------------------'
+ */
+ [_LW] = LAYOUT_ortho_4x12(
+ KC_GRV , KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, KC_HOME , KC_PGDN, KC_PGUP, KC_END , KC_LPRN, KC_RPRN,
+ _______ , KC_VOLU, KC_MUTE, KC_MPLY, _______, KC_INS , KC_LEFT , KC_DOWN, KC_UP , KC_RIGHT, KC_LCBR, KC_RCBR,
+ _______ , KC_VOLD, KC_MPRV, KC_MNXT, _______, _______, KC_CIRC , KC_AMPR, KC_ASTR, KC_QUOT , KC_LBRC, KC_RBRC ,
+ _______ , _______, _______, _______, _______, _______, KC_LSFT , _______, _______, _______ , _______, _______
+ ),
+
+/* Adjust
+ * ,-----------------------------------------. ,-----------------------------------------.
+ * | Reset| | Up | | | Rec1 | | Rec2 | Plain| Snake|Gradnt| | Del |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | Caps | Left | Down | Right|MkItPk| Play1| | Play2| RGB | HUE+ | SAT+ | BRI+ | |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | | | | | | Stop1| | Stop2| MODE | HUE- | SAT- | BRI- | |
+ * |------+------+------+------+------+------| |------+------+------+------+------+------|
+ * | | | | | | | | | | | | | |
+ * `-----------------------------------------' `-----------------------------------------'
+ */
+ [_AD] = LAYOUT_ortho_4x12(
+ RESET , XXXXXXX, KC_UP , XXXXXXX, XXXXXXX, DM_REC1, DM_REC2, RGB_M_P, RGB_M_SN,RGB_M_G, XXXXXXX, KC_DEL ,
+ KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, MKITPNK, DM_PLY1, DM_PLY2, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______,
+ _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DM_RSTP, DM_RSTP, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ )
+};
+
+void make_it_pink_blue(void) {
+ uint16_t blue_hue = 210;
+ uint16_t pink_hue = 315;
+
+ /* key is pressed */
+ uint16_t hue = rgblight_get_hue();
+ uint8_t sat = rgblight_get_sat();
+ uint8_t val = rgblight_get_val();
+
+ if (hue != blue_hue)
+ rgblight_sethsv(blue_hue, sat, val);
+ else
+ rgblight_sethsv(pink_hue, sat, val);
+}
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case QWERTY:
+ if (record->event.pressed) {
+ set_single_persistent_default_layer(_QW);
+ }
+ return false;
+ break;
+ case LOWER:
+ if (record->event.pressed) {
+ layer_on(_LW);
+ update_tri_layer(_LW, _RS, _AD);
+ } else {
+ layer_off(_LW);
+ update_tri_layer(_LW, _RS, _AD);
+ }
+ return false;
+ break;
+ case RAISE:
+ if (record->event.pressed) {
+ layer_on(_RS);
+ update_tri_layer(_LW, _RS, _AD);
+ } else {
+ layer_off(_RS);
+ update_tri_layer(_LW, _RS, _AD);
+ }
+ return false;
+ break;
+ case ADJUST:
+ if (record->event.pressed) {
+ layer_on(_AD);
+ } else {
+ layer_off(_AD);
+ }
+ return false;
+ break;
+ case MKITPNK:
+ if (record->event.pressed)
+ make_it_pink_blue();
+ return false;
+ break;
+ }
+ return true;
+}
diff --git a/keyboards/keebio/levinson/keymaps/ksamborski/rules.mk b/keyboards/keebio/levinson/keymaps/ksamborski/rules.mk
new file mode 100644
index 000000000..1ce3f222f
--- /dev/null
+++ b/keyboards/keebio/levinson/keymaps/ksamborski/rules.mk
@@ -0,0 +1,3 @@
+RGBLIGHT_ENABLE=yes
+BOOTMAGIC_ENABLE=no
+DYNAMIC_MACRO_ENABLE=yes
diff --git a/keyboards/keebio/levinson/keymaps/numpad/config.h b/keyboards/keebio/levinson/keymaps/numpad/config.h
new file mode 100644
index 000000000..7e10bc445
--- /dev/null
+++ b/keyboards/keebio/levinson/keymaps/numpad/config.h
@@ -0,0 +1,34 @@
+/*
+This is the c configuration file for the keymap
+
+Copyright 2012 Jun Wako <wakojun@gmail.com>
+Copyright 2015 Jack Humbert
+Copyright 2018 Danny Nguyen <danny@keeb.io>
+
+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 <http://www.gnu.org/licenses/>.
+*/
+
+#pragma once
+
+// #define USE_I2C
+// Need to flip the rows
+#undef MATRIX_COL_PINS
+#define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6 }
+
+/* Select hand configuration */
+// #define MASTER_RIGHT
+// #define EE_HANDS
+
+/* Time in ms until oneshot layer times out */
+#define ONESHOT_TIMEOUT 3000
diff --git a/keyboards/keebio/levinson/keymaps/numpad/keymap.c b/keyboards/keebio/levinson/keymaps/numpad/keymap.c
new file mode 100644
index 000000000..32a1113c5
--- /dev/null
+++ b/keyboards/keebio/levinson/keymaps/numpad/keymap.c
@@ -0,0 +1,123 @@
+#include QMK_KEYBOARD_H
+
+/* Add the stings you want to send as macros, see
+ * https://docs.qmk.fm/#/feature_macros for what all can be used
+ */
+#define MACRO_0 "zero"
+#define MACRO_1 "one"
+#define MACRO_2 "two"
+#define MACRO_3 "three"
+#define MACRO_4 "four"
+#define MACRO_5 "five"
+#define MACRO_6 "six"
+#define MACRO_7 "seven"
+#define MACRO_8 "eight"
+#define MACRO_9 "nine"
+
+enum macro_keycodes {
+ M0 = SAFE_RANGE,
+ M1,
+ M2,
+ M3,
+ M4,
+ M5,
+ M6,
+ M7,
+ M8,
+ M9
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+/* Numpad
+ * ,-----------------------------------------------------------------------------------.
+ * | 0 | 1 | 4 | 7 | BkSp |OSL(1)| | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | , | 2 | 5 | 8 | / | Down | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | . | 3 | 6 | 9 | * | Up | | | | | | |
+ * |------+------+------+------+------+------+------+------+------+------+------+------|
+ * | Enter | + | - | = | MO(1)| | | | | | |
+ * `-----------------------------------------------------------------------------------'
+ */
+[0] = LAYOUT_ortho_4x12( \
+ KC_KP_0, KC_KP_1, KC_KP_4, KC_KP_7, KC_BSPACE, OSL(1), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
+ KC_COMMA, KC_KP_2, KC_KP_5, KC_KP_8, KC_KP_SLASH, KC_DOWN, KC_NO, KC_A, KC_B, KC_C, KC_D, KC_NO, \
+ KC_KP_DOT, KC_KP_3, KC_KP_6, KC_KP_9, KC_KP_ASTERISK, KC_UP, KC_NO, KC_E, KC_F, KC_G, KC_H, KC_NO, \
+ KC_KP_ENTER, KC_NO, KC_KP_PLUS, KC_KP_MINUS, KC_KP_EQUAL, MO(1), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO \
+),
+/* Macro layer - the number keys are macros,
+ * other functions on remaining keys
+ * ,-----------------------------------------.
+ * | M(0) | M(1) | M(4) | M(7) | | Esc |
+ * |------+------+------+------+------+------|
+ * | Left | M(2) | M(5) | M(8) | | |
+ * |------+------+------+------+------+------|
+ * | Right| M(3) | M(6) | M(9) | | |
+ * |------+------+------+------+------+------|
+ * | NumLock | RESET| | | Calc |
+ * `-----------------------------------------'
+ */
+[1] = LAYOUT_ortho_4x12( \
+ M0, M1, M4, M7, KC_NO, KC_ESC, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
+ KC_LEFT, M2, M5, M8, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
+ KC_RIGHT, M3, M6, M8, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
+ KC_NUMLOCK, RESET, KC_NO, KC_NO, KC_CALC, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO \
+)
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case M0:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_0);
+ }
+ break;
+ case M1:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_1);
+ }
+ break;
+ case M2:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_2);
+ }
+ break;
+ case M3:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_3);
+ }
+ break;
+ case M4:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_4);
+ }
+ break;
+ case M5:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_5);
+ }
+ break;
+ case M6:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_6);
+ }
+ break;
+ case M7:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_7);
+ }
+ break;
+ case M8:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_8);
+ }
+ break;
+ case M9:
+ if (record->event.pressed) {
+ SEND_STRING(MACRO_9);
+ }
+ break;
+ }
+ return true;
+};
diff --git a/keyboards/keebio/levinson/keymaps/numpad/readme.md b/keyboards/keebio/levinson/keymaps/numpad/readme.md
new file mode 100644
index 000000000..0c15ac54d
--- /dev/null
+++ b/keyboards/keebio/levinson/keymaps/numpad/readme.md
@@ -0,0 +1,4 @@
+# Numpad Layout
+[Layout Example](http://www.keyboard-layout-editor.com/##@@_c=%23ffd100&a:7%3B&=&_c=%23909596&f:5%3B&=&=&=%3B&@_c=%23c4c8c5&st=MX1A-L1xx&f:6%3B&=Esc&=%2F%2F&=*&=%3F%3B&@=7&=8&=9&=%E2%80%93%3B&@=4&_n:true%3B&=5&=6&=+%3B&@=1&=2&=3&_c=%23ffd100&h:2%3B&=%3B&@_c=%23c4c8c5%3B&=0&_a:5%3B&=%3C%0A,&=%3E%0A.)
+
+Uses a single half of the Levinson a vertical 4x6 numpad/macropad.
diff --git a/keyboards/keebio/levinson/keymaps/numpad/rules.mk b/keyboards/keebio/levinson/keymaps/numpad/rules.mk
new file mode 100644
index 000000000..639c76834
--- /dev/null
+++ b/keyboards/keebio/levinson/keymaps/numpad/rules.mk
@@ -0,0 +1,3 @@
+# Build Options
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
+RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
diff --git a/keyboards/keebio/levinson/keymaps/rossman360/keymap.c b/keyboards/keebio/levinson/keymaps/rossman360/keymap.c
new file mode 100644
index 000000000..efb5f9cfa
--- /dev/null
+++ b/keyboards/keebio/levinson/keymaps/rossman360/keymap.c
@@ -0,0 +1,135 @@
+#include QMK_KEYBOARD_H
+
+#define PGMOD LT(_NUM, KC_PGDN)
+#define TABMOD LT(_FN1, KC_TAB)
+#define SPCMOD LT(_FN1, KC_SPACE)
+#define ENTMOD LT(_FN2, KC_ENTER)
+#define ESCMOD LT(_NUM, KC_ESC)
+#define RSMOD LT(_FN1, KC_RSHIFT)
+#define CMDBSP MT(MOD_LGUI, KC_BSPC)
+#define ALTDEL MT(MOD_LALT, KC_DEL)
+#define CTRLSP MT(MOD_LCTL, KC_SPACE)
+#define BWORD LCTL(KC_BSPC)
+#define JUMPBACK LSFT(KC_TAB)
+#define LWORD LCTL(KC_LEFT)
+#define RWORD LCTL(KC_RIGHT)
+#define UNDO LCTL(KC_Z)
+#define NTAB LCTL(KC_T)
+#define CTAB LCTL(KC_W)
+#define XPANDR LCTL(LSFT(KC_X))
+#define TAB1 LCTL(KC_1)
+#define TAB2 LCTL(KC_2)
+#define TAB3 LCTL(KC_3)
+#define TAB4 LCTL(KC_4)
+#define RVOLU LCTL(KC_RBRC)
+#define RVOLD LCTL(KC_LBRC)
+
+enum layer_names {
+ _BASE,
+ _DEL,
+ _FN1,
+ _FN2,
+ _NUM,
+};
+
+enum custom_keycodes {
+ QWERTY = SAFE_RANGE,
+ CSPEAK,
+ PARADOWN,
+ PMERGE,
+ WREFRESH,
+ REMCAPS,
+ SPEAK1,
+ SPEAK2,
+ SPEAK3,
+ SPEAK4
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+switch (keycode) {
+ case CSPEAK:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_PGDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PGDOWN));
+ }
+ break;
+ case SPEAK1:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_PGDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PGDOWN) SS_LCTRL(SS_TAP(X_1)));
+ }
+ break;
+ case SPEAK2:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_PGDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PGDOWN) SS_LCTRL(SS_TAP(X_2)));
+ }
+ break;
+ case SPEAK3:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_PGDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PGDOWN) SS_LCTRL(SS_TAP(X_3)));
+ }
+ break;
+ case SPEAK4:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_PGDOWN) SS_TAP(X_ENTER) SS_TAP(X_ENTER) SS_TAP(X_PGDOWN) SS_LCTRL(SS_TAP(X_4)));
+ }
+ break;
+ case PARADOWN:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_PGDOWN) SS_TAP(X_ENTER) SS_TAP(X_PGDOWN));
+ }
+ break;
+ case PMERGE:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_HOME) SS_TAP(X_BSPACE) SS_TAP(X_SPACE) SS_LCTRL(SS_TAP(X_BSPACE)) SS_TAP(X_SPACE));
+ }
+ break;
+ case WREFRESH:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_SPACE) SS_TAP(X_BSPACE));
+ }
+ break;
+ case REMCAPS:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_LEFT) SS_TAP(X_LEFT) SS_LCTRL(SS_TAP(X_LEFT)) SS_TAP(X_DELETE));
+ }
+ break;
+};
+return true;
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+[_BASE] = LAYOUT_ortho_4x12(
+ KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , NTAB ,
+ JUMPBACK, 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_MINS,
+ CMDBSP , ALTDEL , KC_NO , CTRLSP , TABMOD , PGMOD , ENTMOD , SPCMOD , MO(_DEL),KC_NO , KC_BSPC, KC_DEL
+ ),
+
+[_FN1] = LAYOUT_ortho_4x12(
+ _______, TAB1 , TAB2 , TAB3 , TAB4 , _______, _______, UNDO , _______, _______, _______, CTAB ,
+ KC_CAPS, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP , KC_RIGHT,KC_END , KC_NO ,
+ _______, _______, XPANDR , _______, _______, _______, _______, PMERGE , KC_DOWN, _______, _______, _______,
+ WREFRESH,_______, _______, _______, LWORD , RWORD , RVOLD , RVOLU , _______, _______, _______, _______
+ ),
+
+[_FN2] = LAYOUT_ortho_4x12(
+ _______, SPEAK1 , SPEAK2 , SPEAK3 , SPEAK4 , _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, PARADOWN, CSPEAK, _______, _______, _______, _______, _______, _______
+ ),
+
+[_DEL] = LAYOUT_ortho_4x12(
+ _______, _______, _______, _______, _______, _______, _______, UNDO , _______, _______, _______, CTAB ,
+ REMCAPS, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_UP ,KC_RIGHT, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, _______,
+ _______, _______, _______, KC_DEL , KC_BSPC, BWORD , _______, _______, _______, _______, _______, _______
+ ),
+
+[_NUM] = LAYOUT_ortho_4x12(
+ _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_MINS, KC_EQL,
+ KC_CAPS, _______, _______, _______, _______, _______, KC_MINS, KC_4 , KC_5 , KC_6 , KC_COLN, _______,
+ _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_1 , KC_2 , KC_3 , KC_BSLS, _______,
+ _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_0 , _______, _______, _______
+ )
+};
diff --git a/keyboards/keebio/levinson/readme.md b/keyboards/keebio/levinson/readme.md
index 8cb4ff1cf..f328aa420 100644
--- a/keyboards/keebio/levinson/readme.md
+++ b/keyboards/keebio/levinson/readme.md
@@ -9,11 +9,11 @@ Hardware Availability: [Keebio](https://keeb.io)
Make example for this keyboard (after setting up your build environment):
- make levinson/rev2:default
+ make keebio/levinson/rev3:default
Example of flashing this keyboard with Pro micro:
- make levinson/rev2:default:avrdude
+ make keebio/levinson/rev3:default:avrdude
Example of flashing this keyboard with Elite-C:
@@ -21,7 +21,7 @@ You'll need to add `BOOTLOADER = atmel-dfu` to your `rules.mk` to ensure that re
Hold the reset button on the Elite-C board, or the reset button on the keyboard if already assembled, then release the button and run:
- make levinson/rev2:default:dfu
+ make keebio/levinson/rev3:default:dfu
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/keebio/levinson/rev1/config.h b/keyboards/keebio/levinson/rev1/config.h
index 52cf7baf7..a34c8bdcc 100644
--- a/keyboards/keebio/levinson/rev1/config.h
+++ b/keyboards/keebio/levinson/rev1/config.h
@@ -19,8 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include QMK_KEYBOARD_CONFIG_H
-
/* USB Device descriptor parameter */
#define VENDOR_ID 0xCB10
#define PRODUCT_ID 0x1146
diff --git a/keyboards/keebio/levinson/rev2/config.h b/keyboards/keebio/levinson/rev2/config.h
index 1365ae792..9d6947125 100644
--- a/keyboards/keebio/levinson/rev2/config.h
+++ b/keyboards/keebio/levinson/rev2/config.h
@@ -19,8 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include QMK_KEYBOARD_CONFIG_H
-
/* USB Device descriptor parameter */
#define VENDOR_ID 0xCB10
#define PRODUCT_ID 0x1146
diff --git a/keyboards/keebio/quefrency/rev1/config.h b/keyboards/keebio/quefrency/rev1/config.h
index 9778ef470..1d726a0fc 100644
--- a/keyboards/keebio/quefrency/rev1/config.h
+++ b/keyboards/keebio/quefrency/rev1/config.h
@@ -18,8 +18,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include QMK_KEYBOARD_CONFIG_H
-
/* USB Device descriptor parameter */
#define VENDOR_ID 0xCB10
#define PRODUCT_ID 0x1257
diff --git a/keyboards/keebio/rorschach/rev1/config.h b/keyboards/keebio/rorschach/rev1/config.h
index bcfce2bee..4dae31f8c 100644
--- a/keyboards/keebio/rorschach/rev1/config.h
+++ b/keyboards/keebio/rorschach/rev1/config.h
@@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include QMK_KEYBOARD_CONFIG_H
-
/* USB Device descriptor parameter */
#define VENDOR_ID 0xCB10
#define PRODUCT_ID 0x1246
diff --git a/keyboards/keebio/tragicforce68/info.json b/keyboards/keebio/tragicforce68/info.json
index 550040a3a..3ff0b3678 100644
--- a/keyboards/keebio/tragicforce68/info.json
+++ b/keyboards/keebio/tragicforce68/info.json
@@ -5,7 +5,7 @@
"width": 17.25,
"height": 5,
"layouts": {
- "LAYOUT": {
+ "LAYOUT_68_ansi": {
"layout": [
{"label":"~", "x":0, "y":0},
{"label":"!", "x":1, "y":0},
diff --git a/keyboards/keebio/tragicforce68/keymaps/default/keymap.c b/keyboards/keebio/tragicforce68/keymaps/default/keymap.c
index 69255e080..12d738b3a 100644
--- a/keyboards/keebio/tragicforce68/keymaps/default/keymap.c
+++ b/keyboards/keebio/tragicforce68/keymaps/default/keymap.c
@@ -4,7 +4,7 @@
#define _FN1 1
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [_QWERTY] = LAYOUT(
+ [_QWERTY] = LAYOUT_68_ansi(
//┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
KC_ESC, 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_INS, KC_PGUP,
//├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
@@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//└──────────┴──────────┴──────────┴───────────────────────────────────────────────────────┴──────────┴──────────┴──────────┘ └────────┴────────┴────────┘
),
- [_FN1] = LAYOUT(
+ [_FN1] = LAYOUT_68_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_HOME,
//├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
diff --git a/keyboards/keebio/tragicforce68/keymaps/rossman360/keymap.c b/keyboards/keebio/tragicforce68/keymaps/rossman360/keymap.c
new file mode 100755
index 000000000..127a0fd1e
--- /dev/null
+++ b/keyboards/keebio/tragicforce68/keymaps/rossman360/keymap.c
@@ -0,0 +1,71 @@
+#include QMK_KEYBOARD_H
+#include "rossman360.h"
+
+#define PGMOD LT(_MOD, KC_PGDN)
+#define SPCMOD LT(_MOD, KC_SPACE)
+#define VOLMOD LT(_MOD, KC__MUTE)
+
+enum layer_names {
+ _BASE,
+ _REV,
+ _MOD,
+ _DEL,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[_BASE] = LAYOUT_split_space(
+ //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
+ KC_ESC, 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_DEL, NTAB,
+ //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
+ 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, MO(_MOD),CTAB,
+ //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
+ 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_ENTER,
+ //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
+ 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_UP,
+ //├──────────┬───────┴──┬─────┴────┬───┴────────┴─────┬───┴────────┴───┬─────┴────────┴┬────────┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
+ CMDBSP, ALTDEL, KC_LCTRL, KC_SPACE, SPCMOD, SPCMOD, MO(_DEL), KC_LCTL, KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT
+ //└──────────┴──────────┴──────────┴──────────────────┴────────────────┴───────────────┴─────────────────┴──────────┴──────────┘ └────────┴────────┴────────┘
+ ),
+
+[_REV] = LAYOUT_split_space(
+ //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
+ _______, _______, _______, _______, _______, _______,_______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
+ //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
+ KC_LEFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,KC_HOME, KC_END, KC_RIGHT, _______, _______,
+ //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
+ JUMPBACK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CSPEAK, _______,
+ //├──────────┬───────┴──┬─────┴────┬───┴────────┴──────┬──┴────────┴────┬────┴────────┴┬────────┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
+ _______, _______, _______, KC_TAB, PGMOD, _______, _______, _______, _______, _______, _______, _______
+ //└──────────┴──────────┴──────────┴───────────────────┴────────────────┴──────────────┴─────────────────┴──────────┴──────────┘ └────────┴────────┴────────┘
+ ),
+
+[_MOD] = LAYOUT_split_space(
+ //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
+ RESET, _______, _______, _______, _______, _______,_______, _______,KC_F8 , _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU,
+ //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
+ _______, _______, WREFRESH,_______, DF(_REV), _______, _______, UNDO, _______, _______, _______, _______, _______, _______, _______, _______,
+ //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
+ KC_CAPS, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP, KC_RIGHT, KC_END, _______, PARADOWN,
+ //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
+ _______, _______, XPANDR, _______, _______, _______, _______, PMERGE, KC_DOWN, _______, _______, _______, KC_F1 ,
+ //├──────────┬───────┴──┬─────┴────┬───┴────────┴──────┬──┴────────┴────┬────┴────────┴┬────────┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
+ _______, _______, _______, LWORD, RWORD, LWORD, RWORD, _______, _______, _______, KC_F2 , _______
+ //└──────────┴──────────┴──────────┴───────────────────┴────────────────┴──────────────┴─────────────────┴──────────┴──────────┘ └────────┴────────┴────────┘
+ ),
+
+[_DEL] = LAYOUT_split_space(
+ //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────┬────────────────┐ ┌────────┬────────┐
+ _______, SPEAK1, SPEAK2, SPEAK3, SPEAK4, _______,_______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
+ //├────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────────────┤ ├────────┼────────┤
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ //├────────────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴─┬──────┴────────────┤ └────────┴────────┘
+ REMCAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ //├──────────────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───┬────┴───────────────────┤ ┌────────┐
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ //├──────────┬───────┴──┬─────┴────┬───┴────────┴──────┬──┴────────┴────┬────┴────────┴┬────────┴────────┼────────┴─┬──────────┬────┬──────┴─┬────────┼────────┐
+ _______, _______, KC_DEL, KC_BSPC, BWORD, _______, _______, _______, _______, _______, _______, _______
+ //└──────────┴──────────┴──────────┴───────────────────┴────────────────┴──────────────┴─────────────────┴──────────┴──────────┘ └────────┴────────┴────────┘
+ ),
+};
diff --git a/keyboards/keebio/tragicforce68/keymaps/rossman360/readme.md b/keyboards/keebio/tragicforce68/keymaps/rossman360/readme.md
new file mode 100644
index 000000000..95e76d630
--- /dev/null
+++ b/keyboards/keebio/tragicforce68/keymaps/rossman360/readme.md
@@ -0,0 +1,3 @@
+#Rossman360's Tragicforce68 Layout
+
+This is a split-space layout that, like a lot of my layouts, has a lot of macros specific to the transcription service Rev. Moving back through text, deleting characters or whole words and returning to the end of the document can all be done using thumbs.
diff --git a/keyboards/keebio/tragicforce68/keymaps/rossman360/rules.mk b/keyboards/keebio/tragicforce68/keymaps/rossman360/rules.mk
new file mode 100644
index 000000000..d10eda0fb
--- /dev/null
+++ b/keyboards/keebio/tragicforce68/keymaps/rossman360/rules.mk
@@ -0,0 +1,2 @@
+MACROS_ENABLED = yes
+BOOTLOADER = atmel-dfu
diff --git a/keyboards/keebio/tragicforce68/rules.mk b/keyboards/keebio/tragicforce68/rules.mk
index 2118d3fc2..f9f487a2a 100644
--- a/keyboards/keebio/tragicforce68/rules.mk
+++ b/keyboards/keebio/tragicforce68/rules.mk
@@ -28,3 +28,5 @@ MIDI_ENABLE = no # MIDI controls
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
AUDIO_ENABLE = no # Audio output on port C6
+
+LAYOUTS = 68_ansi
diff --git a/keyboards/keebio/tragicforce68/tragicforce68.h b/keyboards/keebio/tragicforce68/tragicforce68.h
index a63ce50a5..cdecc55d9 100644
--- a/keyboards/keebio/tragicforce68/tragicforce68.h
+++ b/keyboards/keebio/tragicforce68/tragicforce68.h
@@ -2,7 +2,7 @@
#include "quantum.h"
-#define LAYOUT( \
+#define LAYOUT_68_ansi( \
A1, A2, A3, A4, A5, A6, A7, A8, E1, E2, E3, E4, E5, E6, E7, E8, \
B1, B2, B3, B4, B5, B6, B7, B8, F1, F2, F3, F4, F5, F6, F7, F8, \
C1, C2, C3, C4, C5, C6, C7, C8, G1, G2, G3, G4, G5, \
@@ -72,3 +72,5 @@
KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66, KC_##K67, KC_##K68, \
KC_##K70, KC_##K71, KC_##K72, KC_##K73, KC_##K74 \
)
+
+#define LAYOUT LAYOUT_68_ansi
diff --git a/keyboards/keebio/viterbi/keymaps/met/keymap.c b/keyboards/keebio/viterbi/keymaps/met/keymap.c
new file mode 100644
index 000000000..45427018a
--- /dev/null
+++ b/keyboards/keebio/viterbi/keymaps/met/keymap.c
@@ -0,0 +1,321 @@
+#include QMK_KEYBOARD_H
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+
+#define CANCEL LCTL(KC_C)
+#define TERM LCTL(LALT(KC_T))
+#define ALPHAMOD LT(_ALPHA, KC_VOLD)
+#define CTLBSP MT(MOD_LCTL, KC_BSPC)
+#define GUIDEL MT(MOD_LGUI, KC_DEL)
+#define ALTSPC MT(MOD_LALT, KC_SPACE)
+#define SPCMOD LT(_MOD, KC_SPACE)
+#define JUMPBACK LSFT(KC_TAB)
+#define NTAB LCTL(KC_T)
+#define CTAB LCTL(KC_W)
+#define TAB1 LCTL(KC_1)
+#define TAB2 LCTL(KC_2)
+#define TAB3 LCTL(KC_3)
+#define TAB4 LCTL(KC_4)
+#define BWORD LCTL(KC_BSPC)
+#define LWORD LCTL(KC_LEFT)
+#define RWORD LCTL(KC_RIGHT)
+#define TABMOD LT(_MOD, KC_TAB)
+#define ENTMOD LT(_ENT, KC_ENTER)
+
+enum layer_names {
+ _BASE,
+ _PLAYING,
+ _PLAYED,
+ _NUMS,
+ _FN,
+ _TEST,
+ _ALPHA,
+ _QWERTY,
+ _REV,
+ _DEL,
+ _MOD,
+ _ENT
+};
+
+enum custom_keycodes {
+ MET = SAFE_RANGE,
+ SET,
+ GO,
+ STOP,
+ RESUME,
+ NEWRESUME,
+ SYNC,
+ SHUTDOWN,
+ REBOOT,
+ SOURCE,
+ PUSH,
+ TEST,
+ TST,
+ ENAME,
+ SNAME,
+ LNAME,
+ BUS,
+ PMERGE,
+ CSPEAK
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case SET:
+ if (record->event.pressed) {
+ layer_on(_NUMS);
+ SEND_STRING("met ");
+}
+ break;
+ case GO:
+ if (record->event.pressed) {
+ layer_off(_NUMS);
+ layer_off(_ALPHA);
+ layer_off(_PLAYED);
+ layer_on(_PLAYING);
+ SEND_STRING(SS_TAP(X_ENTER));
+}
+ break;
+ case STOP:
+ if (record->event.pressed) {
+ layer_off(_PLAYING);
+ layer_on(_PLAYED);
+ layer_off(_NUMS);
+ layer_off(_ALPHA);
+ SEND_STRING(SS_TAP(X_N));
+ SEND_STRING(SS_TAP(X_N));
+ SEND_STRING(SS_LCTRL(SS_TAP(X_C)));
+}
+ break;
+ case RESUME:
+ if (record->event.pressed) {
+ layer_off(_PLAYED);
+ layer_on(_PLAYING);
+ SEND_STRING(SS_LCTRL(SS_TAP(X_C)));
+ SEND_STRING(SS_TAP(X_UP));
+ SEND_STRING(SS_TAP(X_ENTER));
+}
+ break;
+ case NEWRESUME:
+ if (record->event.pressed) {
+ layer_off(_NUMS);
+ layer_off(_ALPHA);
+ layer_off(_PLAYED);
+ layer_on(_PLAYING);
+ SEND_STRING(SS_TAP(X_R));
+ SEND_STRING(SS_TAP(X_ENTER));
+}
+ break;
+ case SYNC:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_N));
+}
+ break;
+ case SHUTDOWN:
+ if (record->event.pressed) {
+ SEND_STRING(SS_LCTRL(SS_TAP(X_C)));
+ SEND_STRING("shutdown now");
+ SEND_STRING(SS_TAP(X_ENTER));
+}
+ break;
+ case REBOOT:
+ if (record->event.pressed) {
+ SEND_STRING(SS_LCTRL(SS_TAP(X_C)));
+ SEND_STRING("reboot");
+ SEND_STRING(SS_TAP(X_ENTER));
+ }
+ break;
+ case SOURCE:
+ if (record->event.pressed) {
+ SEND_STRING("source .bashrc");
+ SEND_STRING(SS_TAP(X_ENTER));
+ }
+ break;
+ case PUSH:
+ if (record->event.pressed) {
+ SEND_STRING("ftp rossmontsinger.net");
+ _delay_ms(250);
+ SEND_STRING(SS_TAP(X_ENTER));
+ _delay_ms(2250);
+ SEND_STRING("met@rossmontsinger.net");
+ _delay_ms(250);
+ SEND_STRING(SS_TAP(X_ENTER));
+ _delay_ms(2500);
+ SEND_STRING("metboard");
+ _delay_ms(250);
+ SEND_STRING(SS_TAP(X_ENTER));
+ }
+ break;
+ case TEST:
+ if (record->event.pressed) {
+ layer_off(_NUMS);
+ layer_off(_ALPHA);
+ layer_off(_PLAYED);
+ layer_on(_PLAYING);
+ SEND_STRING(SS_LCTRL(SS_TAP(X_C)));
+ _delay_ms(250);
+ SEND_STRING("play Desktop/met/a_lazoom.mp3");
+ SEND_STRING(SS_TAP(X_ENTER));
+ }
+ case TST:
+ if (record->event.pressed) {
+ SEND_STRING("tst");
+ SEND_STRING(SS_TAP(X_ENTER));
+ }
+ break;
+ case ENAME:
+ if (record->event.pressed) {
+ SEND_STRING("sname ");
+ layer_on(_NUMS);
+ layer_on(_ALPHA);
+ }
+ break;
+ case SNAME:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_ENTER));
+ layer_off(_NUMS);
+ layer_off(_ALPHA);
+ }
+ break;
+ case LNAME:
+ if (record->event.pressed) {
+ SEND_STRING("met $");
+ layer_off(_NUMS);
+ layer_on(_ALPHA);
+ }
+ break;
+ case BUS:
+ if (record->event.pressed) {
+ SEND_STRING("met $bus");
+ layer_off(_NUMS);
+ layer_off(_ALPHA);
+ layer_off(_PLAYED);
+ layer_on(_PLAYING);
+ SEND_STRING(SS_TAP(X_ENTER));
+ }
+ break;
+ case PMERGE:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_HOME));
+ SEND_STRING(SS_TAP(X_BSPACE));
+ SEND_STRING(SS_TAP(X_SPACE));
+ SEND_STRING(SS_LCTRL(SS_TAP(X_BSPACE)));
+ SEND_STRING(SS_TAP(X_SPACE));
+ }
+break;
+case CSPEAK:
+ if (record->event.pressed) {
+ SEND_STRING(SS_TAP(X_PGDOWN));
+ SEND_STRING(SS_TAP(X_ENTER));
+ SEND_STRING(SS_TAP(X_ENTER));
+ SEND_STRING(SS_TAP(X_PGDOWN));
+}
+ break;
+};
+
+ return true;
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_BASE] = LAYOUT_ortho_5x14(
+ KC_NO, STOP , TST , _______, _______, _______, BUS , _______, _______, _______, _______, _______, _______, _______, \
+ KC_NO, _______, SET , SET , SET , _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ KC_NO, _______, SET , SET , SET , _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ KC_NO, LNAME , SET , SET , SET , _______, _______, _______, _______, _______, _______, _______, _______, _______, \
+ KC_NO, MO(_FN), _______, SET , _______, _______, _______, TG(_QWERTY),KC_B, _______, _______, _______, _______, _______ \
+ ),
+
+ [_PLAYING] = LAYOUT_ortho_5x14(
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, STOP , _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [_PLAYED] = LAYOUT_ortho_5x14(
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______,_______, _______, _______, _______,NEWRESUME, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [_NUMS] = LAYOUT_ortho_5x14(
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, KC_7 , KC_8 , KC_9 , _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, KC_4 , KC_5 , KC_6 , _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, KC_1 , KC_2 , KC_3 , _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, KC_0 , _______, _______, GO , _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [_FN] = LAYOUT_ortho_5x14(
+ KC_NO, SHUTDOWN,_______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, REBOOT , _______, _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, ENAME , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, _______, _______, _______, _______, SOURCE , _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [_TEST] = LAYOUT_ortho_5x14(
+ KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, TST , TST , TST , TST , TST , TST , _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [_ALPHA] = LAYOUT_ortho_5x14(
+ KC_NO, _______, KC_Y , KC_U , KC_I , KC_O , KC_P , _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, KC_N , KC_Q , KC_W , KC_E , KC_R , KC_T , _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, KC_M , KC_A , KC_S , KC_D , KC_F , KC_G , _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, KC_Z , KC_X , KC_C , KC_V , KC_B , _______, _______, _______, _______, _______, _______, _______,
+ KC_NO, _______, KC_H , KC_J , KC_K , KC_L , GO , _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [_QWERTY] = LAYOUT_ortho_5x14(
+ KC_NO, KC_ESC , 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_NO, KC_CAPS, 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_NO, 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_PGUP ,
+ KC_NO, KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_UP, KC_PGDN ,
+ KC_NO, CTLBSP , GUIDEL , KC_ENTER, ALTSPC, TABMOD , KC_BSPC, ENTMOD , SPCMOD ,MO(_DEL), KC_BSLS, KC_LEFT, KC_DOWN, KC_RIGHT
+ ),
+
+
+ [_REV] = LAYOUT_ortho_5x14(
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, KC_TAB , KC_PGDN, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+
+ [_DEL] = LAYOUT_ortho_5x14(
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, KC_BSPC, BWORD , _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [_MOD] = LAYOUT_ortho_5x14(
+ KC_NO , KC_GRAVE,KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , NTAB ,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CTAB,
+ KC_NO , _______, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_UP ,KC_RIGHT, KC_END , _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, PMERGE , KC_DOWN, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, LWORD , RWORD , TG(_QWERTY),_______,_______,_______,_______, _______, _______
+ ),
+
+ [_ENT] = LAYOUT_ortho_5x14(
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_NO , _______, _______, _______, _______, _______, CSPEAK , _______, _______, _______, _______, _______, _______, _______
+ )
+};
+
diff --git a/keyboards/keebio/viterbi/keymaps/met/rules.mk b/keyboards/keebio/viterbi/keymaps/met/rules.mk
new file mode 100644
index 000000000..1e3cebb14
--- /dev/null
+++ b/keyboards/keebio/viterbi/keymaps/met/rules.mk
@@ -0,0 +1 @@
+RGBLIGHT_ENABLE = yes