diff options
author | Andrew-Fahmy <andrewj.fahmy@gmail.com> | 2021-02-27 23:38:13 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-28 16:38:13 +1100 |
commit | e6f7da403676b491ac278d5b793d18a0d114477e (patch) | |
tree | 0ff47ca4b6b0dbed7bbebdafb262183d9c55d9c9 /keyboards/k_type/keymaps/andrew-fahmy | |
parent | 7190971b44a53a099addd79ca98d5bb64ba087e1 (diff) | |
download | qmk_firmware-e6f7da403676b491ac278d5b793d18a0d114477e.tar.gz qmk_firmware-e6f7da403676b491ac278d5b793d18a0d114477e.zip |
Fixing K-type RGB lighting (#11551)
* initial rgb driver fix
* added underglow LEDs and fixed typo in RGB locations
* removed test code
* added my key maps
* updated rgb keymap to work with changes
* refactored my code to make it more maintainable and updated keymaps.
* added GPL licence
Diffstat (limited to 'keyboards/k_type/keymaps/andrew-fahmy')
-rw-r--r-- | keyboards/k_type/keymaps/andrew-fahmy/config.h | 52 | ||||
-rw-r--r-- | keyboards/k_type/keymaps/andrew-fahmy/keymap.c | 60 | ||||
-rw-r--r-- | keyboards/k_type/keymaps/andrew-fahmy/rules.mk | 1 |
3 files changed, 113 insertions, 0 deletions
diff --git a/keyboards/k_type/keymaps/andrew-fahmy/config.h b/keyboards/k_type/keymaps/andrew-fahmy/config.h new file mode 100644 index 0000000000..47d20119e0 --- /dev/null +++ b/keyboards/k_type/keymaps/andrew-fahmy/config.h @@ -0,0 +1,52 @@ +/* Copyright 2021 Andrew Fahmy + * + * 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 + + +#ifdef RGB_MATRIX_ENABLE +// # define RGB_MATRIX_FRAMEBUFFER_EFFECTS +// # define RGB_MATRIX_KEYPRESSES +# define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_RAINDROPS + +# define DEBUG_MATRIX_SCAN_RATE + +# define RGB_MATRIX_LED_FLUSH_LIMIT 100 +// # define RGB_MATRIX_LED_PROCESS_LIMIT 2 + +// i2c_master defines +# define I2C_COUNT 2 + +# define I2C1_BANK GPIOB +# define I2C1_SCL 0 // A2 on pinout = B0 +# define I2C1_SDA 1 // A2 on pinout = B1 +# define I2C1_SCL_PAL_MODE PAL_MODE_ALTERNATIVE_2 +# define I2C1_SDA_PAL_MODE PAL_MODE_ALTERNATIVE_2 + +# define USE_I2C2 +# define I2C2_BANK GPIOC +# define I2C2_SCL 10 // A2 on pinout = C10 +# define I2C2_SDA 11 // A2 on pinout = C11 +# define I2C2_SCL_PAL_MODE PAL_MODE_ALTERNATIVE_2 +# define I2C2_SDA_PAL_MODE PAL_MODE_ALTERNATIVE_2 + +# define DRIVER_ADDR_1 0b1010000 +# define DRIVER_ADDR_2 0b1010000 +# define DRIVER_COUNT 2 +# define DRIVER_1_LED_TOTAL 64 +# define DRIVER_2_LED_TOTAL 55 +# define DRIVER_LED_TOTAL (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) +#endif diff --git a/keyboards/k_type/keymaps/andrew-fahmy/keymap.c b/keyboards/k_type/keymaps/andrew-fahmy/keymap.c new file mode 100644 index 0000000000..53460516cb --- /dev/null +++ b/keyboards/k_type/keymaps/andrew-fahmy/keymap.c @@ -0,0 +1,60 @@ +/* Copyright 2021 Andrew Fahmy + * + * 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 layer_names { + _MAIN, + _L1 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_MAIN] = LAYOUT_tkl_ansi( + KC_ESC, 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_PSCR, KC_SLCK, KC_PAUS, + + KC_GRV, 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_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + 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, + KC_LCTL, _______, KC_LALT, KC_SPC, KC_RALT, MO(_L1), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [_L1] = LAYOUT_tkl_ansi( + EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, + + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______, RGB_HUI, RGB_SAI, RGB_VAI, + _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, + _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_LGUI, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; + +void keyboard_post_init_user(void) { + // Customise these values to desired behaviour + // debug_enable=true; + // debug_matrix=true; + // debug_keyboard=true; + // debug_mouse=true; +} + +#ifdef RGB_MATRIX_ENABLE +// Turn off SDB +void keyboard_pre_init_user() { + palSetPadMode(GPIOB, 16, PAL_MODE_OUTPUT_PUSHPULL); + palSetPad(GPIOB, 16); +} + +#endif diff --git a/keyboards/k_type/keymaps/andrew-fahmy/rules.mk b/keyboards/k_type/keymaps/andrew-fahmy/rules.mk new file mode 100644 index 0000000000..aad92997d0 --- /dev/null +++ b/keyboards/k_type/keymaps/andrew-fahmy/rules.mk @@ -0,0 +1 @@ +RGB_MATRIX_ENABLE = yes |