mirror of
https://github.com/qmk/qmk_firmware
synced 2024-11-19 11:46:08 +00:00
Add RGB LED for Dozen0 (#7458)
* enable rgb led. * add layer for default keymap * Update keymap.c * Update rules.mk * Update rules.mk * fix keymaps remove backslashes.
This commit is contained in:
parent
f4fb0e1617
commit
583094aa26
5 changed files with 159 additions and 32 deletions
|
@ -52,14 +52,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
// #define BACKLIGHT_BREATHING
|
// #define BACKLIGHT_BREATHING
|
||||||
// #define BACKLIGHT_LEVELS 3
|
// #define BACKLIGHT_LEVELS 3
|
||||||
|
|
||||||
// #define RGB_DI_PIN E2
|
#define RGB_DI_PIN D3
|
||||||
// #ifdef RGB_DI_PIN
|
#ifdef RGB_DI_PIN
|
||||||
// #define RGBLIGHT_ANIMATIONS
|
#define RGBLIGHT_ANIMATIONS
|
||||||
// #define RGBLED_NUM 16
|
#define RGBLED_NUM 2
|
||||||
// #define RGBLIGHT_HUE_STEP 8
|
#define RGBLIGHT_HUE_STEP 8
|
||||||
// #define RGBLIGHT_SAT_STEP 8
|
#define RGBLIGHT_SAT_STEP 8
|
||||||
// #define RGBLIGHT_VAL_STEP 8
|
#define RGBLIGHT_VAL_STEP 8
|
||||||
// #endif
|
#endif
|
||||||
|
|
||||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||||
#define DEBOUNCE 5
|
#define DEBOUNCE 5
|
||||||
|
|
|
@ -15,20 +15,110 @@
|
||||||
*/
|
*/
|
||||||
#include QMK_KEYBOARD_H
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
|
#ifdef RGBLIGHT_ENABLE
|
||||||
|
//Following line allows macro to read current RGB settings
|
||||||
|
extern rgblight_config_t rgblight_config;
|
||||||
|
#endif
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
enum layer_number {
|
||||||
[0] = LAYOUT(
|
_BASE = 0,
|
||||||
LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_UP, KC_DEL, KC_BSPC, \
|
_LOWER,
|
||||||
KC_LCTRL, KC_LSFT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_ENT \
|
_RAISE,
|
||||||
),
|
_ADJUST
|
||||||
};
|
};
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
enum custom_keycodes {
|
||||||
return true;
|
BASE = SAFE_RANGE,
|
||||||
|
LOWER,
|
||||||
|
RAISE,
|
||||||
|
ADJUST,
|
||||||
|
RGBRST
|
||||||
|
};
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
/* Base
|
||||||
|
* ,-----------------------------------------.
|
||||||
|
* | Cut | Copy |Paste | Up |Delete| Bksp |
|
||||||
|
* | | | | | |Raise |
|
||||||
|
* |------+------+------+------+------+------|
|
||||||
|
* | Ctrl |Shift | Left | Down |Right |Enter |
|
||||||
|
* | | | | | |Lower |
|
||||||
|
* `-----------------------------------------'
|
||||||
|
*/
|
||||||
|
[_BASE] = LAYOUT(
|
||||||
|
LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_UP, KC_DEL, LT(_RAISE,KC_BSPC),
|
||||||
|
KC_LCTL, KC_LSFT, KC_LEFT, KC_DOWN, KC_RGHT, LT(_LOWER,KC_ENT)
|
||||||
|
),
|
||||||
|
|
||||||
|
/* Lower
|
||||||
|
* ,-----------------------------------------.
|
||||||
|
* | | | | Page | | |
|
||||||
|
* | | | | Up | | |
|
||||||
|
* |------+------+------+------+------+------|
|
||||||
|
* | | | Home | Page | End | |
|
||||||
|
* | | | | Down | | |
|
||||||
|
* `-----------------------------------------'
|
||||||
|
*/
|
||||||
|
[_LOWER] = LAYOUT(
|
||||||
|
_______, _______, _______, KC_PGUP, _______, _______,
|
||||||
|
_______, _______, KC_HOME, KC_PGDN, KC_END, _______
|
||||||
|
),
|
||||||
|
|
||||||
|
/* Raise
|
||||||
|
* ,-----------------------------------------.
|
||||||
|
* | | | | | | |
|
||||||
|
* | | | | | | |
|
||||||
|
* |------+------+------+------+------+------|
|
||||||
|
* | | | | | | |
|
||||||
|
* | | | | | | |
|
||||||
|
* `-----------------------------------------'
|
||||||
|
*/
|
||||||
|
[_RAISE] = LAYOUT(
|
||||||
|
_______, _______, _______, _______, _______, _______,
|
||||||
|
_______, _______, _______, _______, _______, _______
|
||||||
|
),
|
||||||
|
|
||||||
|
/* Adjust
|
||||||
|
* ,-----------------------------------------.
|
||||||
|
* | RGB | RGB | RGB | RGB | RGB | |
|
||||||
|
* |Toggle|Mode+ | Hue+ | Sat+ | Val+ | |
|
||||||
|
* |------+------+------+------+------+------|
|
||||||
|
* | RGB | RGB | RGB | RGB | RGB | |
|
||||||
|
* |Reset |Mode- | Hue- | Sat- | Val- | |
|
||||||
|
* `-----------------------------------------'
|
||||||
|
*/
|
||||||
|
[_ADJUST] = LAYOUT(
|
||||||
|
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______,
|
||||||
|
RGBRST, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, _______
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
layer_state_t layer_state_set_user(layer_state_t state) {
|
||||||
|
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
int RGB_current_mode;
|
||||||
|
|
||||||
|
void matrix_init_user(void) {
|
||||||
|
#ifdef RGBLIGHT_ENABLE
|
||||||
|
RGB_current_mode = rgblight_config.mode;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
|
|
||||||
|
switch (keycode) {
|
||||||
|
case RGBRST:
|
||||||
|
#ifdef RGBLIGHT_ENABLE
|
||||||
|
if (record->event.pressed) {
|
||||||
|
eeconfig_update_rgblight_default();
|
||||||
|
rgblight_enable();
|
||||||
|
RGB_current_mode = rgblight_config.mode;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_scan_user(void) {
|
void matrix_scan_user(void) {
|
||||||
|
|
|
@ -1,8 +1,45 @@
|
||||||
# The default keymap for Dozen0
|
# The default keymap for Dozen0
|
||||||
|
|
||||||
|
## Base
|
||||||
```
|
```
|
||||||
,-------------------------------------------------.
|
,-----------------------------------------.
|
||||||
| Ctrl+X | Ctrl+C | Ctrl+V | Up | Delete | Bksp |
|
| Cut | Copy |Paste | Up |Delete| Bksp |
|
||||||
| Ctrl | Shift | Left | Down | Right | Enter |
|
| | | | | |Raise |
|
||||||
`--------------------------------------------------'
|
|------+------+------+------+------+------|
|
||||||
|
| Ctrl |Shift | Left | Down |Right |Enter |
|
||||||
|
| | | | | |Lower |
|
||||||
|
`-----------------------------------------'
|
||||||
|
```
|
||||||
|
|
||||||
|
## Lower
|
||||||
|
```
|
||||||
|
,-----------------------------------------.
|
||||||
|
| | | | Page | | |
|
||||||
|
| | | | Up | | |
|
||||||
|
|------+------+------+------+------+------|
|
||||||
|
| | | Home | Page | End | |
|
||||||
|
| | | | Down | | |
|
||||||
|
`-----------------------------------------'
|
||||||
|
```
|
||||||
|
|
||||||
|
## Raise
|
||||||
|
```
|
||||||
|
,-----------------------------------------.
|
||||||
|
| | | | | | |
|
||||||
|
| | | | | | |
|
||||||
|
|------+------+------+------+------+------|
|
||||||
|
| | | | | | |
|
||||||
|
| | | | | | |
|
||||||
|
`-----------------------------------------'
|
||||||
|
```
|
||||||
|
|
||||||
|
## Adjust
|
||||||
|
```
|
||||||
|
,-----------------------------------------.
|
||||||
|
| RGB | RGB | RGB | RGB | RGB | |
|
||||||
|
|Toggle|Mode+ | Hue+ | Sat+ | Val+ | |
|
||||||
|
|------+------+------+------+------+------|
|
||||||
|
| RGB | RGB | RGB | RGB | RGB | |
|
||||||
|
|Reset |Mode- | Hue- | Sat- | Val- | |
|
||||||
|
`-----------------------------------------'
|
||||||
```
|
```
|
||||||
|
|
|
@ -18,8 +18,8 @@
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
[0] = LAYOUT(
|
[0] = LAYOUT(
|
||||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, \
|
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_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12
|
||||||
),
|
),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -9,25 +9,25 @@ MCU = atmega32u4
|
||||||
# QMK DFU qmk-dfu
|
# QMK DFU qmk-dfu
|
||||||
# ATmega32A bootloadHID
|
# ATmega32A bootloadHID
|
||||||
# ATmega328P USBasp
|
# ATmega328P USBasp
|
||||||
BOOTLOADER = atmel-dfu
|
BOOTLOADER = caterina
|
||||||
|
|
||||||
# Build Options
|
# Build Options
|
||||||
# change yes to no to disable
|
# change yes to no to disable
|
||||||
#
|
#
|
||||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
|
||||||
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||||
CONSOLE_ENABLE = yes # Console for debug(+400)
|
CONSOLE_ENABLE = no # Console for debug
|
||||||
COMMAND_ENABLE = yes # Commands for debug and configuration
|
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
||||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
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
|
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||||
NKRO_ENABLE = no # USB Nkey Rollover
|
NKRO_ENABLE = no # USB Nkey Rollover
|
||||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default
|
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
|
||||||
MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config)
|
MIDI_ENABLE = no # MIDI support
|
||||||
UNICODE_ENABLE = no # Unicode
|
UNICODE_ENABLE = no # Unicode
|
||||||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||||
AUDIO_ENABLE = no # Audio output on port C6
|
AUDIO_ENABLE = no # Audio output on port C6
|
||||||
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
|
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
|
||||||
HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)
|
HD44780_ENABLE = no # Enable support for HD44780 based LCDs
|
||||||
|
|
Loading…
Reference in a new issue