forked from vial-kb/vial-qmk
-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
8 changed files
with
678 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#include "armada.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
#pragma once | ||
|
||
#include "quantum.h" | ||
|
||
/* This is a shortcut to help you visually see your layout. | ||
* | ||
* The first section contains all of the arguments representing the physical | ||
* layout of the board and position of the keys. | ||
* | ||
* The second converts the arguments into a two-dimensional array which | ||
* represents the switch matrix. | ||
*/ | ||
#define LAYOUT_armada( \ | ||
r06cn1, r06c00, r06c01, r06c02, r06c03, r06c04, r06c05, r06c06, r06c07, r06c09, r06c10, r06c11, r06c12, r06c13, r06c14, r06c15, r06c16, r06c17, r06c18, r06c19, r06c20, r06c21, r06c22, r06c23, \ | ||
r05cn1, r05c00, r05c01, r05c02, r05c03, r05c04, r05c05, r05c06, r05c07, r05c08, r05c09, r05c10, r05c11, r05c12, r05c13, r05c14, r05c15, r05c16, r05c17, r05c18, r05c19, r05c20, r05c21, r05c22, r05c23, \ | ||
r04cn1, r04c00, r04c01, r04c02, r04c03, r04c04, r04c05, r04c06, r04c07, r03c09, r04c09, r04c10, r04c11, r04c12, r04c13, r04c14, r04c15, r04c16, r04c17, r04c18, r04c19, r04c20, r04c21, r04c22, r04c23, \ | ||
r03cn1, r03c00, r03c01, r03c03, r03c04, r03c05, r03c06, r03c07, r03c08, r02c09, r03c10, r03c11, r03c12, r03c13, r03c14, r03c15, r03c16, r03c20, r03c21, r03c22, \ | ||
r02cn1, r02c00, r02c02, r02c03, r02c04, r02c05, r02c06, r02c07, r02c08, r02c10, r02c11, r02c12, r02c13, r02c14, r02c15, r02c16, r02c18, r02c20, r02c21, r02c22, r02c23, \ | ||
r01cn1, r01c00, r01c01, r01c02, r01c04, r01c07, r01c11, r01c13, r01c14, r01c15, r01c16, r01c17, r01c18, r01c19, r01c20, r01c22 \ | ||
) \ | ||
{ \ | ||
{ r01cn1, r01c00, r01c01, r01c02, KC_NO, r01c04, KC_NO, KC_NO, r01c07, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \ | ||
{ r02cn1, r02c00, KC_NO, r02c02, r02c03, r02c04, r02c05, r02c06, r02c07, r02c08, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \ | ||
{ r03cn1, r03c00, r03c01, KC_NO, r03c03, r03c04, r03c05, r03c06, r03c07, r03c08, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \ | ||
{ r04cn1, r04c00, r04c01, r04c02, r04c03, r04c04, r04c05, r04c06, r04c07, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \ | ||
{ r05cn1, r05c00, r05c01, r05c02, r05c03, r05c04, r05c05, r05c06, r05c07, r05c08, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \ | ||
{ r06cn1, r06c00, r06c01, r06c02, r06c03, r06c04, r06c05, r06c06, r06c07, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \ | ||
\ | ||
{ KC_NO, KC_NO, r01c11, KC_NO, r01c13, r01c14, r01c15, r01c16, r01c17, r01c18, r01c19, r01c20, KC_NO, r01c22, KC_NO }, \ | ||
{ r02c09, r02c10, r02c11, r02c12, r02c13, r02c14, r02c15, r02c16, KC_NO, r02c18, KC_NO, r02c20, r02c21, r02c22, r02c23 }, \ | ||
{ r03c09, r03c10, r03c11, r03c12, r03c13, r03c14, r03c15, r03c16, KC_NO, KC_NO, KC_NO, r03c20, r03c21, r03c22, KC_NO }, \ | ||
{ r04c09, r04c10, r04c11, r04c12, r04c13, r04c14, r04c15, r04c16, r04c17, r04c18, r04c19, r04c20, r04c21, r04c22, r04c23 }, \ | ||
{ r05c09, r05c10, r05c11, r05c12, r05c13, r05c14, r05c15, r05c16, r05c17, r05c18, r05c19, r05c20, r05c21, r05c22, r05c23 }, \ | ||
{ r06c09, r06c10, r06c11, r06c12, r06c13, r06c14, r06c15, r06c16, r06c17, r06c18, r06c19, r06c20, r06c21, r06c22, r06c23 } \ | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
#pragma once | ||
|
||
|
||
/* USB Device descriptor parameter */ | ||
#define VENDOR_ID 0xFEED | ||
#define PRODUCT_ID 0x0000 | ||
#define DEVICE_VER 0x0001 | ||
#define MANUFACTURER "Cyboard" | ||
#define PRODUCT "Armada" | ||
|
||
/* key matrix size */ | ||
#define MATRIX_ROWS 12 | ||
#define MATRIX_COLS 15 | ||
|
||
/* | ||
* Keyboard Matrix Assignments | ||
* | ||
* Change this to how you wired your keyboard | ||
* COLS: AVR pins used for columns, left to right | ||
* ROWS: AVR pins used for rows, top to bottom | ||
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) | ||
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) | ||
* | ||
*/ | ||
|
||
#define MATRIX_ROW_PINS { B3, B1, F7, F6, F5, F4 } | ||
#define MATRIX_COL_PINS { D1, D0, D4, C6, D7, E6, B4, B5, B6, B2, B7, D5, C7, F1, F0 } //last 5 are unused on left hand | ||
#define MATRIX_ROW_PINS_RIGHT { B3, B1, F7, F6, F5, F4 } | ||
#define MATRIX_COL_PINS_RIGHT { D1, D0, D4, C6, D7, E6, B4, B5, B7, D5, C7, F1, F0, B6, B2 } | ||
|
||
/* COL2ROW, ROW2COL */ | ||
#define DIODE_DIRECTION ROW2COL | ||
|
||
/* | ||
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. | ||
*/ | ||
#define SOFT_SERIAL_PIN D2 // or D0, D1, D3, E6 | ||
#define EE_HANDS | ||
|
||
//#define LED_NUM_LOCK_PIN B0 | ||
//#define LED_CAPS_LOCK_PIN B1 | ||
//#define LED_SCROLL_LOCK_PIN B2 | ||
//#define LED_COMPOSE_PIN B3 | ||
//#define LED_KANA_PIN B4 | ||
|
||
//#define BACKLIGHT_PIN B7 | ||
//#define BACKLIGHT_LEVELS 3 | ||
//#define BACKLIGHT_BREATHING | ||
|
||
#define WS2812_DI_PIN D3 | ||
#ifdef WS2812_DI_PIN | ||
# define RGBLED_NUM 131 | ||
# define RGBLIGHT_SPLIT | ||
# define RGBLIGHT_SPLIT | ||
# define RGBLED_SPLIT { 52, 79 } | ||
//# define RGBLIGHT_HUE_STEP 8 | ||
//# define RGBLIGHT_SAT_STEP 8 | ||
//# define RGBLIGHT_VAL_STEP 8 | ||
# define RGBLIGHT_LIMIT_VAL 120 /* The maximum brightness level */ | ||
# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ | ||
/*== all animations enable ==*/ | ||
//# define RGBLIGHT_ANIMATIONS | ||
/*== or choose animations ==*/ | ||
//# define RGBLIGHT_EFFECT_BREATHING | ||
//# define RGBLIGHT_EFFECT_RAINBOW_MOOD | ||
//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL | ||
//# define RGBLIGHT_EFFECT_SNAKE | ||
//# define RGBLIGHT_EFFECT_KNIGHT | ||
//# define RGBLIGHT_EFFECT_CHRISTMAS | ||
//# define RGBLIGHT_EFFECT_STATIC_GRADIENT | ||
//# define RGBLIGHT_EFFECT_RGB_TEST | ||
//# define RGBLIGHT_EFFECT_ALTERNATING | ||
/*== customize breathing effect ==*/ | ||
/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ | ||
//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 | ||
/*==== use exp() and sin() ====*/ | ||
//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 | ||
//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 | ||
#endif | ||
|
||
#define RGBLIGHT_LAYERS | ||
#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF | ||
//#define SPLIT_LAYER_STATE_ENABLE//this would be needed for non-caps/num/scroll lock layer statuses | ||
#define SPLIT_LED_STATE_ENABLE | ||
|
||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ | ||
#define DEBOUNCE 5 | ||
|
||
#define TAPPING_TERM_PER_KEY | ||
|
||
/* Bootmagic Lite key configuration */ | ||
/* Bootmagic Lite key is F9 */ | ||
#define BOOTMAGIC_LITE_ROW 11 | ||
#define BOOTMAGIC_LITE_COLUMN 4 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
#pragma once | ||
|
||
#define VIAL_KEYBOARD_UID {0xD5, 0x68, 0xF8, 0xDB, 0xDE, 0xF8, 0xB0, 0xF3} | ||
|
||
#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } | ||
#define VIAL_UNLOCK_COMBO_COLS { 0, 2 } | ||
|
||
#define DYNAMIC_KEYMAP_LAYER_COUNT 2 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
#include QMK_KEYBOARD_H | ||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
|
||
[0] = LAYOUT_armada( | ||
KC_F11, KC_F12, KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, LT(1,KC_F5), KC_F6, LT(1,KC_F5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCROLL_LOCK, KC_PAUS, RGB_TOG, RGB_VAI, RGB_VAD, _______, | ||
KC_F1, KC_F2, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM_LOCK, KC_PSLS, KC_PAST, KC_PMNS, | ||
KC_F3, KC_F4, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, | ||
KC_F5, KC_F6, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENTER, KC_P4, KC_P5, KC_P6, | ||
KC_F7, KC_F8, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, | ||
KC_F9, KC_F10, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT | ||
), | ||
|
||
[1] = LAYOUT_armada( | ||
_______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
) | ||
}; | ||
|
||
const rgblight_segment_t PROGMEM caps_lock_layer[] = RGBLIGHT_LAYER_SEGMENTS( | ||
// {34, 1, HSV_CYAN}, // Light caps lock | ||
// {39, 1, HSV_CYAN} // Light lshift | ||
// below lights all alphas as well as caps lock | ||
{22, 13, HSV_CYAN}, // Light 13 leds, Q through caps lock on left hand | ||
{40, 6, HSV_CYAN}, // Light 6 leds, Z through N on left hand | ||
{71, 11, HSV_CYAN}, // right hand alphas | ||
{89, 3, HSV_CYAN} // right hand alphas | ||
); | ||
|
||
const rgblight_segment_t PROGMEM num_lock_layer[] = RGBLIGHT_LAYER_SEGMENTS( | ||
{107, 1, HSV_CYAN}, //numlock key | ||
{112, 3, HSV_CYAN}, | ||
{118, 3, HSV_CYAN}, | ||
{122, 3, HSV_CYAN}, | ||
{129, 2, HSV_CYAN} | ||
); | ||
|
||
const rgblight_segment_t PROGMEM scroll_lock_layer[] = RGBLIGHT_LAYER_SEGMENTS( | ||
{102, 1, HSV_CYAN} | ||
); | ||
|
||
// Now define the array of layers. Later layers take precedence | ||
const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST( | ||
caps_lock_layer, | ||
num_lock_layer, | ||
scroll_lock_layer | ||
); | ||
|
||
void keyboard_post_init_user(void) { | ||
// Enable the LED layers | ||
rgblight_layers = my_rgb_layers; | ||
} | ||
|
||
bool led_update_user(led_t led_state) { | ||
rgblight_set_layer_state(0, led_state.caps_lock); | ||
rgblight_set_layer_state(1, led_state.num_lock); | ||
rgblight_set_layer_state(2, led_state.scroll_lock); | ||
rgblight_set(); | ||
return true; | ||
} | ||
|
||
uint16_t g_tapping_term(uint16_t keycode, keyrecord_t *record) { | ||
switch (keycode) { | ||
case LT(1, KC_F5): | ||
return 2000; | ||
default: | ||
return TAPPING_TERM; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
VIA_ENABLE = yes | ||
VIAL_ENABLE = yes | ||
LTO_ENABLE = yes | ||
QMK_SETTINGS = no | ||
TAP_DANCE_ENABLE = no | ||
COMBO_ENABLE = no | ||
KEY_OVERRIDE_ENABLE = yes |
Oops, something went wrong.