diff options
Diffstat (limited to 'keyboards/le_chiffre')
-rw-r--r-- | keyboards/le_chiffre/config.h | 128 | ||||
-rw-r--r-- | keyboards/le_chiffre/info.json | 13 | ||||
-rw-r--r-- | keyboards/le_chiffre/keymaps/default/config.h | 21 | ||||
-rw-r--r-- | keyboards/le_chiffre/keymaps/default/keymap.c | 205 | ||||
-rw-r--r-- | keyboards/le_chiffre/keymaps/default/readme.md | 1 | ||||
-rw-r--r-- | keyboards/le_chiffre/keymaps/default/rules.mk | 1 | ||||
-rw-r--r-- | keyboards/le_chiffre/keymaps/via/keymap.c | 163 | ||||
-rw-r--r-- | keyboards/le_chiffre/keymaps/via/rules.mk | 1 | ||||
-rw-r--r-- | keyboards/le_chiffre/le_chiffre.c | 33 | ||||
-rw-r--r-- | keyboards/le_chiffre/le_chiffre.h | 33 | ||||
-rw-r--r-- | keyboards/le_chiffre/readme.md | 15 | ||||
-rw-r--r-- | keyboards/le_chiffre/rules.mk | 19 |
12 files changed, 0 insertions, 633 deletions
diff --git a/keyboards/le_chiffre/config.h b/keyboards/le_chiffre/config.h deleted file mode 100644 index b2e4c673a4..0000000000 --- a/keyboards/le_chiffre/config.h +++ /dev/null @@ -1,128 +0,0 @@ -/* Copyright 2020 tominabox1 - * - * 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 - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x7431 -#define PRODUCT_ID 0xD645 -#define DEVICE_VER 0x0001 -#define MANUFACTURER tominabox1 -#define PRODUCT Le Chiffre - -/* key matrix size */ -#define MATRIX_ROWS 4 -#define MATRIX_COLS 10 - -/* - * Keyboard Matrix Assignments - * - * Change this to how you wired your keyboard - * COLS: AVR pins used for columns, left to right - * ROWS: AVR pins used for rows, top to bottom - * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) - * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) - * - */ -#define MATRIX_ROW_PINS { B3, D4, F1, C6 } -#define MATRIX_COL_PINS { F4, F5, B0, B2, B1, B4, D7, C7, D2, F7 } -#define UNUSED_PINS - -/* COL2ROW, ROW2COL*/ -#define DIODE_DIRECTION ROW2COL - -/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ -#define DEBOUNCE 5 - -/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ -#define LOCKING_SUPPORT_ENABLE -/* Locking resynchronize hack */ -#define LOCKING_RESYNC_ENABLE - -/* Define encoder pads */ -#define ENCODERS_PAD_A { D5 } -#define ENCODERS_PAD_B { D3 } - -/* - * WS2812 Underglow Matrix options - */ -#define RGB_DI_PIN F0 -#define RGBLED_NUM 11 - -#define DRIVER_LED_TOTAL RGBLED_NUM - -#define RGBLIGHT_ANIMATIONS - -#ifdef RGB_MATRIX_ENABLE -#define RGB_MATRIX_KEYPRESSES // reacts to keypresses -#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended -#define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash. -#define RGB_MATRIX_HUE_STEP 8 -#define RGB_MATRIX_SAT_STEP 8 -#define RGB_MATRIX_VAL_STEP 8 -#define RGB_MATRIX_SPD_STEP 10 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -# define ENABLE_RGB_MATRIX_ALPHAS_MODS -# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN -# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT -# define ENABLE_RGB_MATRIX_BREATHING -# define ENABLE_RGB_MATRIX_BAND_SAT -# define ENABLE_RGB_MATRIX_BAND_VAL -# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT -# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL -# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT -# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL -# define ENABLE_RGB_MATRIX_CYCLE_ALL -# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT -# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN -# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON -# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN -# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL -# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL -# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL -# define ENABLE_RGB_MATRIX_DUAL_BEACON -# define ENABLE_RGB_MATRIX_RAINBOW_BEACON -# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS -# define ENABLE_RGB_MATRIX_RAINDROPS -# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS -# define ENABLE_RGB_MATRIX_HUE_BREATHING -# define ENABLE_RGB_MATRIX_HUE_PENDULUM -# define ENABLE_RGB_MATRIX_HUE_WAVE -# define ENABLE_RGB_MATRIX_PIXEL_RAIN -# define ENABLE_RGB_MATRIX_PIXEL_FLOW -# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL -// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined -# define ENABLE_RGB_MATRIX_TYPING_HEATMAP -# define ENABLE_RGB_MATRIX_DIGITAL_RAIN -// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS -# define ENABLE_RGB_MATRIX_SPLASH -# define ENABLE_RGB_MATRIX_MULTISPLASH -# define ENABLE_RGB_MATRIX_SOLID_SPLASH -# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH -#endif diff --git a/keyboards/le_chiffre/info.json b/keyboards/le_chiffre/info.json deleted file mode 100644 index afcbc752a5..0000000000 --- a/keyboards/le_chiffre/info.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "keyboard_name": "le_chiffre", - "url": "", - "maintainer": "tominabox1", - "layouts": { - "LAYOUT": { - "layout": [{"label":"Q", "x":0, "y":0}, {"label":"W", "x":1, "y":0}, {"label":"E", "x":2, "y":0}, {"label":"R", "x":3, "y":0}, {"label":"T", "x":4, "y":0}, {"label":"Rotary", "x":5, "y":0, "w":1}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, - {"label":"A", "x":0, "y":1}, {"label":"S", "x":1, "y":1}, {"label":"D", "x":2, "y":1}, {"label":"F", "x":3, "y":1}, {"label":"G", "x":4, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, - {"label":";", "x":10, "y":1}, {"label":"Z", "x":0, "y":2}, {"label":"X", "x":1, "y":2}, {"label":"C", "x":2, "y":2}, {"label":"V", "x":3, "y":2}, {"label":"B", "x":4, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":"<", "x":8, "y":2}, {"label":">", "x":9, "y":2}, {"label":"?", "x":10, "y":2}, - {"label":"", "x":1.75, "y":3, "w":1.25}, {"label":"", "x":3, "y":3, "w":2}, {"label":"", "x":6, "y":3, "w":2}, {"label":"", "x":8, "y":3, "w":1.25}] - } - } -} diff --git a/keyboards/le_chiffre/keymaps/default/config.h b/keyboards/le_chiffre/keymaps/default/config.h deleted file mode 100644 index ce604301a3..0000000000 --- a/keyboards/le_chiffre/keymaps/default/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 tominabox1 - * - * 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 IGNORE_MOD_TAP_INTERRUPT //helps with homerow mods - -#define COMBO_COUNT 5 -#define COMBO_TERM 30 diff --git a/keyboards/le_chiffre/keymaps/default/keymap.c b/keyboards/le_chiffre/keymaps/default/keymap.c deleted file mode 100644 index 45fee56a95..0000000000 --- a/keyboards/le_chiffre/keymaps/default/keymap.c +++ /dev/null @@ -1,205 +0,0 @@ -/* Copyright 2020 tominabox1 - * - * 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 - -enum layers{ - _BASE, - _NUM_SYM, - _NAV -}; - -enum combo_events { - COMBO_BSPC, - COMBO_NUMBAK, - COMBO_TAB, - COMBO_ESC, - COMBO_DEL, -}; - -#define KC_NUM_SPC LT(_NUM_SYM, KC_SPC) -#define KC_GA LGUI_T(KC_A) -#define KC_AS LALT_T(KC_S) -#define KC_CD LCTL_T(KC_D) -#define KC_SF LSFT_T(KC_F) -#define KC_SJ RSFT_T(KC_J) -#define KC_CK RCTL_T(KC_K) -#define KC_AL RALT_T(KC_L) -#define KC_GSCLN RGUI_T(KC_SCLN) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_MPLY, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_GA, KC_AS, KC_CD, KC_SF, KC_G, KC_H, KC_SJ, KC_CK, KC_AL, KC_GSCLN, - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, - KC_LCTL, KC_ENT, KC_NUM_SPC, MO(_NAV) - ), - - [_NUM_SYM] = LAYOUT( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_EQUAL, KC_MINS, - KC_BSLS,KC_LCBR, KC_LBRC, KC_LPRN, KC_UNDS, KC_RPRN, KC_RBRC, KC_RCBR, KC_DOT, KC_GRV, - KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS - ), - - [_NAV] = LAYOUT( - RESET, _______, AG_NORM, AG_SWAP, DEBUG, KC_TRNS, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, - RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, - RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_MINS, KC_RO, KC_COMM, KC_DOT, KC_BSLS, - KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS - ), -}; - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (index == 0) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - } - return true; -} - -#ifdef COMBO_ENABLE -const uint16_t PROGMEM combo_bspc[] = {KC_O, KC_P, COMBO_END}; -const uint16_t PROGMEM combo_numbak[] = {KC_0, KC_9, COMBO_END}; -const uint16_t PROGMEM combo_tab[] = {KC_Q, KC_W, COMBO_END}; -const uint16_t PROGMEM combo_esc[] = {KC_E, KC_W, COMBO_END}; -const uint16_t PROGMEM combo_del[] = {KC_MINS, KC_EQL, COMBO_END}; - -combo_t key_combos[COMBO_COUNT] = { - [COMBO_BSPC] = COMBO(combo_bspc,KC_BSPC), - [COMBO_NUMBAK] = COMBO(combo_numbak,KC_BSPC), - [COMBO_TAB] = COMBO(combo_tab,KC_TAB), - [COMBO_ESC] = COMBO(combo_esc,KC_ESC), - [COMBO_DEL] = COMBO(combo_del,KC_DEL), - -}; -#endif - -#ifdef OLED_ENABLE //Special thanks to Sickbabies for this great OLED widget! -oled_rotation_t oled_init_user(oled_rotation_t rotation) { - return OLED_ROTATION_90; // rotates for proper orientation -} - -void render_lechiffre_logo(void) { - static const char PROGMEM lechiffre_logo[] = { - // 'lechiffre_logo', 32x20px - 0x00, 0x3e, 0x20, 0x20, 0x00, 0x18, 0x2c, 0xa8, 0x80, 0x00, 0x1c, 0x22, 0x22, 0x00, 0x3e, 0x08, -0x30, 0x00, 0x34, 0x00, 0x3c, 0x0a, 0x00, 0xbc, 0x8a, 0x00, 0x38, 0x08, 0x00, 0x18, 0x2c, 0x28, -0x00, 0xb6, 0xb6, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00, -0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xb6, 0xb6, 0x00, -0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, -0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00 -}; - - oled_write_raw_P(lechiffre_logo, sizeof(lechiffre_logo)); -} - -static void render_layer_status(void) { - oled_write_P(PSTR("-----"), false); - switch (get_highest_layer(layer_state)) { - case _BASE: - oled_write_ln_P(PSTR("BASE"), false); - break; - case _NUM_SYM: - oled_write_ln_P(PSTR(" SYM"), false); - break; - case _NAV: - oled_write_ln_P(PSTR(" NAV"), false); - break; - default: - oled_write_ln_P(PSTR("?????"), false); - } -} - -# define KEYLOG_LEN 11 -char keylog_str[KEYLOG_LEN] = {}; -uint8_t keylogs_str_idx = 0; -uint16_t log_timer = 0; - -const char code_to_name[60] = { - ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', - 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', - 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', - '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', - 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\', - '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '}; - -void add_keylog(uint16_t keycode) { - if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { - keycode = keycode & 0xFF; - } - - for (uint8_t i = KEYLOG_LEN - 1; i > 0; i--) { - keylog_str[i] = keylog_str[i - 1]; - } - if (keycode < 60) { - keylog_str[0] = code_to_name[keycode]; - } - keylog_str[KEYLOG_LEN - 1] = 0; - - log_timer = timer_read(); -} - -void update_log(void) { - if (timer_elapsed(log_timer) > 750) { - add_keylog(0); - } -} - -//Text only renders -void render_keylogger_status(void) { - oled_write_P(PSTR("-----"), false); - oled_write(keylog_str, false); -} - -void render_keylock_status(led_t led_state) { - oled_write_P(PSTR("-----"), false); - oled_write_P(PSTR("C"), led_state.caps_lock); - oled_write_P(PSTR(" "), false); - oled_write_P(PSTR("N"), led_state.num_lock); - oled_write_P(PSTR(" "), false); - oled_write_P(PSTR("S"), led_state.scroll_lock); - //oled_write_ln_P(PSTR(" "), false); -} - -void render_mod_status(uint8_t modifiers) { - oled_write_P(PSTR("-----"), false); - oled_write_ln_P(PSTR("SHFT"), (modifiers & MOD_MASK_SHIFT)); - oled_write_ln_P(PSTR("ALT"), (modifiers & MOD_MASK_ALT)); - oled_write_ln_P(PSTR("CTRL"), (modifiers & MOD_MASK_CTRL)); - oled_write_ln_P(PSTR("GUI"), (modifiers & MOD_MASK_GUI)); -} - -bool oled_task_user(void) { - render_lechiffre_logo(); - oled_set_cursor(0,3); - render_layer_status(); // Renders the current keyboard state (layer, lock, caps, scroll, etc) - render_mod_status(get_mods()|get_oneshot_mods()); - render_keylock_status(host_keyboard_led_state()); - render_keylogger_status(); - - return false; -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (record->event.pressed) { - add_keylog(keycode); - } - return true; - } -#endif diff --git a/keyboards/le_chiffre/keymaps/default/readme.md b/keyboards/le_chiffre/keymaps/default/readme.md deleted file mode 100644 index 29f2d31f6f..0000000000 --- a/keyboards/le_chiffre/keymaps/default/readme.md +++ /dev/null @@ -1 +0,0 @@ -# Default Le Chiffre Keymap diff --git a/keyboards/le_chiffre/keymaps/default/rules.mk b/keyboards/le_chiffre/keymaps/default/rules.mk deleted file mode 100644 index ab1e438182..0000000000 --- a/keyboards/le_chiffre/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -COMBO_ENABLE = yes diff --git a/keyboards/le_chiffre/keymaps/via/keymap.c b/keyboards/le_chiffre/keymaps/via/keymap.c deleted file mode 100644 index 10a2fb0d4a..0000000000 --- a/keyboards/le_chiffre/keymaps/via/keymap.c +++ /dev/null @@ -1,163 +0,0 @@ -/* Copyright 2020 tominabox1 - * - * 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 - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_MPLY, 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, KC_ENT, KC_SPC, KC_RALT - ), - - [1] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), - - [2] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), -}; - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (index == 0) { - if (clockwise) { - tap_code(KC_MNXT); - } else { - tap_code(KC_MPRV); - } - } - return true; -} - -#ifdef OLED_ENABLE //Special thanks to Sickbabies for this great OLED widget! -oled_rotation_t oled_init_user(oled_rotation_t rotation) { - return OLED_ROTATION_90; // rotates for proper orientation -} - -void render_lechiffre_logo(void) { - static const char PROGMEM lechiffre_logo[] = { - // 'lechiffre_logo', 32x20px - 0x00, 0x3e, 0x20, 0x20, 0x00, 0x18, 0x2c, 0xa8, 0x80, 0x00, 0x1c, 0x22, 0x22, 0x00, 0x3e, 0x08, -0x30, 0x00, 0x34, 0x00, 0x3c, 0x0a, 0x00, 0xbc, 0x8a, 0x00, 0x38, 0x08, 0x00, 0x18, 0x2c, 0x28, -0x00, 0xb6, 0xb6, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00, -0x00, 0xdb, 0xdb, 0x00, 0xdb, 0xdb, 0x00, 0x6d, 0x6d, 0x00, 0xdb, 0xdb, 0x00, 0xb6, 0xb6, 0x00, -0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, -0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00 -}; - - oled_write_raw_P(lechiffre_logo, sizeof(lechiffre_logo)); -} - -// static void render_layer_status(void) { -// oled_write_P(PSTR("-----"), false); -// switch (get_highest_layer(layer_state)) { -// case _BASE: -// oled_write_ln_P(PSTR("BASE"), false); -// break; -// case _NUM_SYM: -// oled_write_ln_P(PSTR(" SYM"), false); -// break; -// case _NAV: -// oled_write_ln_P(PSTR(" NAV"), false); -// break; -// default: -// oled_write_ln_P(PSTR("?????"), false); -// } -// } - -# define KEYLOG_LEN 11 -char keylog_str[KEYLOG_LEN] = {}; -uint8_t keylogs_str_idx = 0; -uint16_t log_timer = 0; - -const char code_to_name[60] = { - ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', - 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', - 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', - '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', - 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\', - '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '}; - -void add_keylog(uint16_t keycode) { - if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { - keycode = keycode & 0xFF; - } - - for (uint8_t i = KEYLOG_LEN - 1; i > 0; i--) { - keylog_str[i] = keylog_str[i - 1]; - } - if (keycode < 60) { - keylog_str[0] = code_to_name[keycode]; - } - keylog_str[KEYLOG_LEN - 1] = 0; - - log_timer = timer_read(); -} - -void update_log(void) { - if (timer_elapsed(log_timer) > 750) { - add_keylog(0); - } -} - -//Text only renders -void render_keylogger_status(void) { - oled_write_P(PSTR("-----"), false); - oled_write(keylog_str, false); -} - -void render_keylock_status(led_t led_state) { - oled_write_P(PSTR("-----"), false); - oled_write_P(PSTR("C"), led_state.caps_lock); - oled_write_P(PSTR(" "), false); - oled_write_P(PSTR("N"), led_state.num_lock); - oled_write_P(PSTR(" "), false); - oled_write_P(PSTR("S"), led_state.scroll_lock); - //oled_write_ln_P(PSTR(" "), false); -} - -void render_mod_status(uint8_t modifiers) { - oled_write_P(PSTR("-----"), false); - oled_write_ln_P(PSTR("SHFT"), (modifiers & MOD_MASK_SHIFT)); - oled_write_ln_P(PSTR("ALT"), (modifiers & MOD_MASK_ALT)); - oled_write_ln_P(PSTR("CTRL"), (modifiers & MOD_MASK_CTRL)); - oled_write_ln_P(PSTR("GUI"), (modifiers & MOD_MASK_GUI)); -} - -bool oled_task_user(void) { - render_lechiffre_logo(); - oled_set_cursor(0,3); - // render_layer_status(); // Renders the current keyboard state (layer, lock, caps, scroll, etc) - render_mod_status(get_mods()|get_oneshot_mods()); - render_keylock_status(host_keyboard_led_state()); - render_keylogger_status(); - return false; -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (record->event.pressed) { - add_keylog(keycode); - } - return true; - } -#endif diff --git a/keyboards/le_chiffre/keymaps/via/rules.mk b/keyboards/le_chiffre/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/le_chiffre/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/le_chiffre/le_chiffre.c b/keyboards/le_chiffre/le_chiffre.c deleted file mode 100644 index 8eca292cce..0000000000 --- a/keyboards/le_chiffre/le_chiffre.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2020 tominabox1 - * - * 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 "le_chiffre.h" - -#ifdef RGB_MATRIX_ENABLE -led_config_t g_led_config = { { - // Key Matrix to LED Index - { 3, 4, NO_LED, 5, 6 }, - { NO_LED, NO_LED, 10, NO_LED, NO_LED }, - { NO_LED, NO_LED, 9, NO_LED, NO_LED }, - { 2, 1, 0, 8, 7 } -}, { - - // LED Index to Physical Position - { 128, 64 }, { 77, 64 }, { 0, 48 }, { 0, 0 }, { 115, 0 }, { 166, 0 }, { 255, 0 }, { 255, 48 }, { 178, 64 }, { 128, 40 }, { 128, 30 } -}, { - - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 -} }; -#endif diff --git a/keyboards/le_chiffre/le_chiffre.h b/keyboards/le_chiffre/le_chiffre.h deleted file mode 100644 index 0277e1b42d..0000000000 --- a/keyboards/le_chiffre/le_chiffre.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2020 tominabox1 - * - * 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 - -#include "quantum.h" - -#define XXX KC_NO - -#define LAYOUT( \ - K00, K01, K02, K03, K04, K38, K05, K06, K07, K08, K09, \ - K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ - K32, K34, K35, K37 \ -) \ -{ \ - { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ - { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ - { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ - { XXX, XXX, K32, XXX, K34, K35, XXX, K37, K38, XXX } \ -} diff --git a/keyboards/le_chiffre/readme.md b/keyboards/le_chiffre/readme.md deleted file mode 100644 index ead6d88b3e..0000000000 --- a/keyboards/le_chiffre/readme.md +++ /dev/null @@ -1,15 +0,0 @@ -# Le Chiffre - -![Le Chiffre](https://i.imgur.com/X1WsUmdl.png) - -Le Chiffre (ironically, "the number" in French is a 30% keyboard designed by tominabox1. The purpose of the board is to provide a platform for MX and Choc ergo in one package for when ones wrists need a break. The board supports an RGB LED strip with DI on port F0. The board is also fitted with support for run-of-the-mill .91" OLED and EC11 rotary encoder. - -* Keyboard Maintainer: [TJ Campie](https://github.com/tominabox1) -* Hardware Supported: Le Chiffre (source not available at this time) -* Hardware Availability: Bring your own case. - -Make example for this keyboard (after setting up your build environment): - - make le_chiffre:default - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/le_chiffre/rules.mk b/keyboards/le_chiffre/rules.mk deleted file mode 100644 index bc5775a151..0000000000 --- a/keyboards/le_chiffre/rules.mk +++ /dev/null @@ -1,19 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -NKRO_ENABLE = yes # Enable N-Key Rollover -RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -ENCODER_ENABLE = yes -OLED_ENABLE = no -RGB_MATRIX_ENABLE = yes -RGB_MATRIX_DRIVER = WS2812 -LTO_ENABLE = yes |