diff --git a/bin/build-barobord-default.sh b/bin/build-barobord-default.sh new file mode 100755 index 0000000000..ab6f1c6e21 --- /dev/null +++ b/bin/build-barobord-default.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +# TODO: consolidate all the build files into one + +make xoiviox/barobord:default +cp .build/xoiviox_barobord_default* /mnt/g/My\ Drive/qmk-keyboards/barobord-default/ diff --git a/bin/build-barobord-oled.sh b/bin/build-barobord-oled.sh index fd1ffe1a46..d923549f1b 100755 --- a/bin/build-barobord-oled.sh +++ b/bin/build-barobord-oled.sh @@ -2,6 +2,7 @@ # TODO: consolidate all the build files into one +cp keyboards/xoiviox/barobord/rules.mk keyboards/xoiviox/barobord/rules.mk.bak cp keyboards/xoiviox/barobord/rules-oled.mk keyboards/xoiviox/barobord/rules.mk make xoiviox/barobord:sadekbaroudi ; cp .build/xoiviox_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-oled/ ; -rm keyboards/xoiviox/barobord/rules.mk +mv keyboards/xoiviox/barobord/rules.mk.bak keyboards/xoiviox/barobord/rules.mk diff --git a/bin/build-barobord-pimoroni.sh b/bin/build-barobord-pimoroni.sh index 396330c12b..51f5589421 100755 --- a/bin/build-barobord-pimoroni.sh +++ b/bin/build-barobord-pimoroni.sh @@ -2,6 +2,7 @@ # TODO: consolidate all the build files into one +cp keyboards/xoiviox/barobord/rules.mk keyboards/xoiviox/barobord/rules.mk.bak cp keyboards/xoiviox/barobord/rules-pimoroni.mk keyboards/xoiviox/barobord/rules.mk make xoiviox/barobord:sadekbaroudi ; cp .build/xoiviox_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-pimoroni/ ; -rm keyboards/xoiviox/barobord/rules.mk +mv keyboards/xoiviox/barobord/rules.mk.bak keyboards/xoiviox/barobord/rules.mk diff --git a/bin/build-barobord-rgb-matrix-noenc-nooled.sh b/bin/build-barobord-rgb-matrix-noenc-nooled.sh index ddea1438ce..9ee26b9f94 100755 --- a/bin/build-barobord-rgb-matrix-noenc-nooled.sh +++ b/bin/build-barobord-rgb-matrix-noenc-nooled.sh @@ -2,9 +2,10 @@ # TODO: consolidate all the build files into one +cp keyboards/xoiviox/barobord/rules.mk keyboards/xoiviox/barobord/rules.mk.bak cp keyboards/xoiviox/barobord/rules-rgb-matrix-noenc-nooled.mk keyboards/xoiviox/barobord/rules.mk cp keyboards/xoiviox/barobord/config.h keyboards/xoiviox/barobord/config.h.bak cp keyboards/xoiviox/barobord/rules-rgb-matrix-noenc-nooled.config.h keyboards/xoiviox/barobord/config.h make xoiviox/barobord:sadekbaroudi ; cp .build/xoiviox_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-rgb-matrix-noenc-nooled/ ; -rm keyboards/xoiviox/barobord/rules.mk +mv keyboards/xoiviox/barobord/rules.mk.bak keyboards/xoiviox/barobord/rules.mk mv keyboards/xoiviox/barobord/config.h.bak keyboards/xoiviox/barobord/config.h diff --git a/bin/build-barobord-rgb-matrix.sh b/bin/build-barobord-rgb-matrix.sh index 64a5107e24..4d4e56e1c3 100755 --- a/bin/build-barobord-rgb-matrix.sh +++ b/bin/build-barobord-rgb-matrix.sh @@ -2,6 +2,7 @@ # TODO: consolidate all the build files into one +cp keyboards/xoiviox/barobord/rules.mk keyboards/xoiviox/barobord/rules.mk.bak cp keyboards/xoiviox/barobord/rules-rgb-matrix.mk keyboards/xoiviox/barobord/rules.mk make xoiviox/barobord:sadekbaroudi ; cp .build/xoiviox_barobord_sadekbaroudi* /mnt/g/My\ Drive/qmk-keyboards/barobord-rgb-matrix/ ; -rm keyboards/xoiviox/barobord/rules.mk +mv keyboards/xoiviox/barobord/rules.mk.bak keyboards/xoiviox/barobord/rules.mk diff --git a/keyboards/xoiviox/barobord/config.h b/keyboards/xoiviox/barobord/config.h index 87d4617519..dad8596baa 100644 --- a/keyboards/xoiviox/barobord/config.h +++ b/keyboards/xoiviox/barobord/config.h @@ -45,6 +45,11 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW + +#define TAP_CODE_DELAY 25 +#define TAPPING_FORCE_HOLD +#define IGNORE_MOD_TAP_INTERRUPT + #define RGB_DI_PIN F0 #ifdef RGBLIGHT_ENABLE #define RGBLED_NUM 40 @@ -82,39 +87,39 @@ along with this program. If not, see . #define RGB_MATRIX_FRAMEBUFFER_EFFECTS #define RGB_MATRIX_KEYREACTIVE_ENABLED // #define DISABLE_RGB_MATRIX_ALPHAS_MODS - #define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN - #define DISABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + // #define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN + // #define DISABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // #define DISABLE_RGB_MATRIX_BREATHING // #define DISABLE_RGB_MATRIX_BAND_SAT // #define DISABLE_RGB_MATRIX_BAND_VAL - #define DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT - #define DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL - #define DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT - #define DISABLE_RGB_MATRIX_BAND_SPIRAL_VAL - #define DISABLE_RGB_MATRIX_CYCLE_ALL + // #define DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + // #define DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + // #define DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT + // #define DISABLE_RGB_MATRIX_BAND_SPIRAL_VAL + // #define DISABLE_RGB_MATRIX_CYCLE_ALL // #define DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // #define DISABLE_RGB_MATRIX_CYCLE_UP_DOWN - #define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON - #define DISABLE_RGB_MATRIX_DUAL_BEACON - #define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL - #define DISABLE_RGB_MATRIX_CYCLE_SPIRAL - #define DISABLE_RGB_MATRIX_RAINBOW_BEACON - #define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS + // #define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + // #define DISABLE_RGB_MATRIX_DUAL_BEACON + // #define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL + // #define DISABLE_RGB_MATRIX_CYCLE_SPIRAL + // #define DISABLE_RGB_MATRIX_RAINBOW_BEACON + // #define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS // #define DISABLE_RGB_MATRIX_RAINDROPS // #define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // #define DISABLE_RGB_MATRIX_DIGITAL_RAIN - #define DISABLE_RGB_MATRIX_SOLID_REACTIVE - #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE - #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE - #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE - #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS - #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS - #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS - #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS - #define DISABLE_RGB_MATRIX_SPLASH - #define DISABLE_RGB_MATRIX_MULTISPLASH - #define DISABLE_RGB_MATRIX_SOLID_SPLASH - #define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + // #define DISABLE_RGB_MATRIX_SPLASH + // #define DISABLE_RGB_MATRIX_MULTISPLASH + // #define DISABLE_RGB_MATRIX_SOLID_SPLASH + // #define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif #define ENCODERS_PAD_A {B4 , D6} diff --git a/keyboards/xoiviox/barobord/keymaps/default/keymap.c b/keyboards/xoiviox/barobord/keymaps/default/keymap.c index 0685c07b47..c25e4aed7b 100644 --- a/keyboards/xoiviox/barobord/keymaps/default/keymap.c +++ b/keyboards/xoiviox/barobord/keymaps/default/keymap.c @@ -3,6 +3,7 @@ // Defines names for use in layer keycodes and the keymap enum layer_names { _QWERTY, + _COLEMAK, _LOWER, _RAISE, _ADJUST @@ -24,15 +25,42 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | Z | X | C | V | B | | N | M | , | . | / | * `----------------------------------' `----------------------------------' * ,--------------------. ,--------------------. - * | Ctrl | LOWER| Space| |BckSpc| RAISE| Shift| + * | LOWER| Enter| ' | |BckSpc| Space| RAISE| * `--------------------' `--------------------. */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift [_QWERTY] = LAYOUT_barobord( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, - _______, _______, KC_LCTL, LOWER, KC_SPC, KC_BSPC, RAISE, OSM(MOD_LSFT), _______, _______, - _______, _______ + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + LCTL_T(KC_A), LGUI_T(KC_S), LALT_T(KC_D), LSFT_T(KC_F), KC_G, KC_H, RSFT_T(KC_J), RALT_T(KC_K), RGUI_T(KC_L), RCTL_T(KC_SCLN), + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + _______, _______, LOWER, KC_ENT, KC_QUOT, KC_BSPC, KC_SPC, RAISE, _______, _______, + _______, _______ // These are for the rotary encoders +), + +/* Colemak + * + * ,----------------------------------. ,----------------------------------. + * | Q | W | F | P | B | | J | L | U | Y | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | A | R | S | T | G | | M | N | E | I | O | + * |------+------+------+------+------| |------+------+------+------+------| + * | Z | X | C | D | V | | K | H | , | . | / | + * `-------------+--------------------' `----------------------------------' + * | | | | | | + * `------+------' `------+------' + * ,--------------------. ,--------------------. + * | LOWER| Enter| ' | |BckSpc| Space| RAISE| + * `--------------------' `--------------------. + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_COLEMAK] = LAYOUT_barobord( + KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + LCTL_T(KC_A), LGUI_T(KC_R), LALT_T(KC_S), LSFT_T(KC_T), KC_G, KC_M, RSFT_T(KC_N), RALT_T(KC_E), RGUI_T(KC_I), RCTL_T(KC_O), + KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, + _______, _______, LOWER, KC_ENT, KC_QUOT, KC_BSPC, KC_SPC, RAISE, _______, _______, + _______, _______ // These are for the rotary encoders ), /* Raise @@ -40,19 +68,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------. ,----------------------------------. * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | * |------+------+------+------+------| |------+------+------+------+------| - * | Tab | Left | Down | Up | Right| | | - | = | [ | ] | + * | Left | Down | Up | Right| Tab | | | - | = | [ | ] | * |------+------+------+------+------| |------+------+------+------+------| * | Ctrl| ` | GUI | Alt | | | | | | \ | ' | * `----------------------------------' `----------------------------------' + * | | | | | | + * `------+------' `------+------' * ,--------------------. ,--------------------. - * | | LOWER| | | | RAISE| | + * | LOWER| | | | | | RAISE| * `--------------------' `--------------------. */ [_RAISE] = LAYOUT_barobord( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, - KC_TAB, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, - KC_LCTL, KC_GRV, KC_LGUI, KC_LALT, _______, _______, _______, _______, KC_BSLS, KC_QUOT, - _______, _______, _______, _______, _______, _______, _______, _______, + KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, + KC_LCTL, KC_GRV, KC_LGUI, KC_LALT, _______, _______, _______, _______, KC_BSLS, KC_QUOT, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), @@ -65,37 +95,41 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------| |------+------+------+------+------| * | Caps| ~ | | | | | | | | | | " | * `----------------------------------' `----------------------------------' + * | | | | | | + * `------+------' `------+------' * ,--------------------. ,--------------------. - * | | LOWER| | | | RAISE| Del | + * | LOWER| | | | Del | | RAISE| * `--------------------' `--------------------. */ [_LOWER] = LAYOUT_barobord( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_ESC, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_CAPS, KC_TILD, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, - _______, _______, _______, KC_ENT, _______, KC_DEL, _______, _______, + _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______ ), /* Adjust (Lower + Raise) * * ,----------------------------------. ,----------------------------------. - * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | + * | RGB_T| RGB_R| RGB_F| |QWERTY| | F1 | F2 | F3 | F4 | F5 | * |------+------+------+------+------| |------+------+------+------+------| - * | F11 | F12 | | | | | | | | | | + * | SPD_I| HUE_I| SAT_I| VAL_I|COLEMK| | F6 | F7 | F8 | F9 | F10 | * |------+------+------+------+------| |------+------+------+------+------| - * | Reset| | | | | | | | | | | + * | SPD_D| HUE_D| SAT_D| VAL_D| | | F11 | F12 | | | Reset| * `----------------------------------' `----------------------------------' + * | | | | | | + * `------+------' `------+------' * ,--------------------. ,--------------------. - * | | LOWER| | | | RAISE| | + * | LOWER| | | | | | RAISE| * `--------------------' `--------------------. */ [_ADJUST] = LAYOUT_barobord( - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______ + RGB_TOG, RGB_RMOD, RGB_MOD, _______, TO(_QWERTY), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, + RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TO(_COLEMAK), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______ ) }; diff --git a/keyboards/xoiviox/barobord/rules.mk b/keyboards/xoiviox/barobord/rules.mk new file mode 100644 index 0000000000..fe9f297786 --- /dev/null +++ b/keyboards/xoiviox/barobord/rules.mk @@ -0,0 +1,38 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +# Teensy halfkay +# Pro Micro caterina +# Atmel DFU atmel-dfu +# LUFA DFU lufa-dfu +# QMK DFU qmk-dfu +# ATmega32A bootloadHID +# ATmega328P USBasp +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality + +# Either do RGBLIGHT_ENABLE or RGB_MATRIX_ENABLE and RGB_MATRIX_DRIVER +#RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 + +MIDI_ENABLE = no # MIDI support +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +AUDIO_ENABLE = no # Audio output on port C6 +FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches +ENCODER_ENABLE = no +EXTRAFLAGS += -flto