mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-11-03 23:02:34 +01:00 
			
		
		
		
	[Keyboard][Update] Add RGB Backlight feature to Pix (#14057)
* Initiate RGB Support * Add RGB Support for PIX * Revert Encoder pin assignment * Lower default RGB LED to 15 * Use Left shift for far left key * Replicate via keymap to default keymap
This commit is contained in:
		
							parent
							
								
									ce0ca94600
								
							
						
					
					
						commit
						dad7424bec
					
				@ -49,15 +49,17 @@
 | 
				
			|||||||
/* Locking resynchronize hack */
 | 
					/* Locking resynchronize hack */
 | 
				
			||||||
#define LOCKING_RESYNC_ENABLE
 | 
					#define LOCKING_RESYNC_ENABLE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// #define RGB_DI_PIN B5
 | 
					#define USB_MAX_POWER_CONSUMPTION 500
 | 
				
			||||||
// #ifdef RGB_DI_PIN
 | 
					
 | 
				
			||||||
// #define RGBLED_NUM 5
 | 
					#define RGB_DI_PIN B5
 | 
				
			||||||
// #define RGBLIGHT_HUE_STEP 8
 | 
					#ifdef RGB_DI_PIN
 | 
				
			||||||
// #define RGBLIGHT_SAT_STEP 8
 | 
					#define RGBLED_NUM 15
 | 
				
			||||||
// #define RGBLIGHT_VAL_STEP 8
 | 
					#define RGBLIGHT_HUE_STEP 8
 | 
				
			||||||
// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
 | 
					#define RGBLIGHT_SAT_STEP 8
 | 
				
			||||||
// #define RGBLIGHT_SLEEP  /* If defined, the RGB lighting will be switched off when the host goes to sleep */
 | 
					#define RGBLIGHT_VAL_STEP 8
 | 
				
			||||||
// #define RGBLIGHT_ANIMATIONS
 | 
					#define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
 | 
				
			||||||
// #define RGBLIGHT_LAYERS
 | 
					#define RGBLIGHT_SLEEP  /* If defined, the RGB lighting will be switched off when the host goes to sleep */
 | 
				
			||||||
// #define RGBLIGHT_LAYER_BLINK
 | 
					#define RGBLIGHT_ANIMATIONS
 | 
				
			||||||
// #endif
 | 
					#define RGBLIGHT_LAYERS
 | 
				
			||||||
 | 
					#define RGBLIGHT_LAYER_BLINK
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
				
			|||||||
@ -165,11 +165,11 @@ const unsigned char font[] PROGMEM = {
 | 
				
			|||||||
  0xF1, 0xF9, 0xFD, 0x01, 0x01, 0xFE,
 | 
					  0xF1, 0xF9, 0xFD, 0x01, 0x01, 0xFE,
 | 
				
			||||||
  0xFE, 0x01, 0x01, 0xFD, 0xF9, 0xF1,
 | 
					  0xFE, 0x01, 0x01, 0xFD, 0xF9, 0xF1,
 | 
				
			||||||
  0x61, 0x01, 0xFD, 0x01, 0x01, 0xFE,
 | 
					  0x61, 0x01, 0xFD, 0x01, 0x01, 0xFE,
 | 
				
			||||||
 | 
					  0xFE, 0x01, 0xF9, 0xF9, 0x31, 0xE1,
 | 
				
			||||||
 | 
					  0xE1, 0x31, 0xF9, 0xF9, 0x01, 0xFE,
 | 
				
			||||||
 | 
					  0xFE, 0x01, 0xF9, 0xF9, 0x61, 0x61,
 | 
				
			||||||
 | 
					  0x61, 0x61, 0xF9, 0xF9, 0x01, 0xFE,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
  0xF0, 0x08, 0x04, 0xC4, 0x24, 0x24,
 | 
					 | 
				
			||||||
  0x24, 0xC4, 0x04, 0x08, 0xF0, 0x00,
 | 
					 | 
				
			||||||
  0xF0, 0xF8, 0xFC, 0x3C, 0xDC, 0xDC,
 | 
					 | 
				
			||||||
  0xDC, 0x3C, 0xFC, 0xF8, 0xF0, 0x00,
 | 
					 | 
				
			||||||
  0xFE, 0xC1, 0xC1, 0xC9, 0xC5, 0xDD,
 | 
					  0xFE, 0xC1, 0xC1, 0xC9, 0xC5, 0xDD,
 | 
				
			||||||
  0xC5, 0xC9, 0xC1, 0xC1, 0xFE, 0x00,
 | 
					  0xC5, 0xC9, 0xC1, 0xC1, 0xFE, 0x00,
 | 
				
			||||||
  0xFC, 0xFE, 0xFE, 0xEE, 0xF6, 0xC6,
 | 
					  0xFC, 0xFE, 0xFE, 0xEE, 0xF6, 0xC6,
 | 
				
			||||||
@ -197,15 +197,15 @@ const unsigned char font[] PROGMEM = {
 | 
				
			|||||||
  0x08, 0x09, 0x0B, 0x08, 0x08, 0x07,
 | 
					  0x08, 0x09, 0x0B, 0x08, 0x08, 0x07,
 | 
				
			||||||
  0x07, 0x08, 0x08, 0x0B, 0x09, 0x08,
 | 
					  0x07, 0x08, 0x08, 0x0B, 0x09, 0x08,
 | 
				
			||||||
  0x08, 0x08, 0x0B, 0x08, 0x08, 0x07,
 | 
					  0x08, 0x08, 0x0B, 0x08, 0x08, 0x07,
 | 
				
			||||||
 | 
					  0x07, 0x08, 0x09, 0x09, 0x08, 0x08,
 | 
				
			||||||
 | 
					  0x08, 0x08, 0x09, 0x09, 0x08, 0x07,
 | 
				
			||||||
 | 
					  0x07, 0x08, 0x09, 0x09, 0x08, 0x08,
 | 
				
			||||||
 | 
					  0x08, 0x08, 0x09, 0x09, 0x08, 0x07,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
  0x07, 0x08, 0x10, 0x13, 0x11, 0x11,
 | 
					 | 
				
			||||||
  0x11, 0x13, 0x10, 0x08, 0x07, 0x00,
 | 
					 | 
				
			||||||
  0x07, 0x0F, 0x1F, 0x1C, 0x1E, 0x1E,
 | 
					 | 
				
			||||||
  0x1E, 0x1C, 0x1F, 0x0F, 0x07, 0x00,
 | 
					 | 
				
			||||||
  0xFE, 0x01, 0xF1, 0xF9, 0xFD, 0xFD,
 | 
					  0xFE, 0x01, 0xF1, 0xF9, 0xFD, 0xFD,
 | 
				
			||||||
  0x05, 0x05, 0x09, 0xF1, 0x01, 0xFE,
 | 
					  0x05, 0x05, 0x09, 0xF1, 0x01, 0xFE,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0xFE, 0x01, 0x39, 0x7D, 0x6D, 0x6D,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x6D, 0x6D, 0xED, 0xC9, 0x01, 0xFE,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
@ -236,8 +236,8 @@ const unsigned char font[] PROGMEM = {
 | 
				
			|||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
  0x07, 0x08, 0x08, 0x09, 0x0B, 0x0B,
 | 
					  0x07, 0x08, 0x08, 0x09, 0x0B, 0x0B,
 | 
				
			||||||
  0x0A, 0x0A, 0x09, 0x08, 0x08, 0x07,
 | 
					  0x0A, 0x0A, 0x09, 0x08, 0x08, 0x07,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x07, 0x08, 0x09, 0x0B, 0x0B, 0x0B,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x0B, 0x0B, 0x0B, 0x09, 0x08, 0x07,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
					  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 | 
				
			||||||
 | 
				
			|||||||
@ -16,11 +16,12 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#include QMK_KEYBOARD_H
 | 
					#include QMK_KEYBOARD_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define LAYERNUM 2
 | 
					#define LAYERNUM 3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
					const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
				
			||||||
    [0] = LAYOUT(KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, TO(1)),
 | 
					    [0] = LAYOUT(KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, TO(1)),
 | 
				
			||||||
    [1] = LAYOUT(KC_TRNS, KC_MSTP, KC_MRWD, KC_MFFD, TO(0))
 | 
					    [1] = LAYOUT(KC_TRNS, KC_MSTP, KC_MRWD, KC_MFFD, TO(2)),
 | 
				
			||||||
 | 
					    [2] = LAYOUT(KC_LSFT, RGB_MOD, RGB_HUI, RGB_SAI, TO(0))
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int get_icon_start_position(int key_position) {
 | 
					int get_icon_start_position(int key_position) {
 | 
				
			||||||
@ -44,13 +45,12 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
				
			|||||||
                oled_write_P(UP_ICON, false);
 | 
					                oled_write_P(UP_ICON, false);
 | 
				
			||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
                tap_code(KC_VOLD);
 | 
					                tap_code(KC_VOLD);
 | 
				
			||||||
 | 
					 | 
				
			||||||
                oled_set_cursor(get_icon_start_position(7), 2);
 | 
					                oled_set_cursor(get_icon_start_position(7), 2);
 | 
				
			||||||
                oled_write_P(PSTR(" "), false);
 | 
					                oled_write_P(PSTR(" "), false);
 | 
				
			||||||
                oled_set_cursor(get_icon_start_position(7), 3);
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
                oled_write_P(DOWN_ICON, false);
 | 
					                oled_write_P(DOWN_ICON, false);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        } else {
 | 
					        } else if (layer_state_is(1)) {
 | 
				
			||||||
            if (clockwise) {
 | 
					            if (clockwise) {
 | 
				
			||||||
                tap_code(KC_BRIU);
 | 
					                tap_code(KC_BRIU);
 | 
				
			||||||
                oled_set_cursor(get_icon_start_position(7), 3);
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
@ -64,6 +64,20 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
				
			|||||||
                oled_set_cursor(get_icon_start_position(7), 3);
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
                oled_write_P(DOWN_ICON, false);
 | 
					                oled_write_P(DOWN_ICON, false);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					        } else if (layer_state_is(2)) {
 | 
				
			||||||
 | 
					            if (clockwise) {
 | 
				
			||||||
 | 
					                rgblight_increase_val();
 | 
				
			||||||
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
 | 
					                oled_write_P(PSTR(" "), false);
 | 
				
			||||||
 | 
					                oled_set_cursor(get_icon_start_position(7), 2);
 | 
				
			||||||
 | 
					                oled_write_P(UP_ICON, false);
 | 
				
			||||||
 | 
					            } else {
 | 
				
			||||||
 | 
					                rgblight_decrease_val();
 | 
				
			||||||
 | 
					                oled_set_cursor(get_icon_start_position(7), 2);
 | 
				
			||||||
 | 
					                oled_write_P(PSTR(" "), false);
 | 
				
			||||||
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
 | 
					                oled_write_P(DOWN_ICON, false);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    return true;
 | 
					    return true;
 | 
				
			||||||
@ -174,7 +188,34 @@ void draw_brightness_icon(int key_position, int row) {
 | 
				
			|||||||
    oled_write_P(ICON_BRIGHTNESS_1, false);
 | 
					    oled_write_P(ICON_BRIGHTNESS_1, false);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool oled_task_user(void) {
 | 
					void draw_mode_icon(int key_position, int row) {
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_MODE_0[] = {0x94, 0x95, 0};
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_MODE_1[] = {0xB4, 0xB5, 0};
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_MODE_0, false);
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row + 1);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_MODE_1, false);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_hue_icon(int key_position, int row) {
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_HUE_0[] = {0x96, 0x97, 0};
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_HUE_1[] = {0xB6, 0xB7, 0};
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_HUE_0, false);
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row + 1);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_HUE_1, false);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_sat_icon(int key_position, int row) {
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_SAT_0[] = {0xBB, 0xBC, 0};
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_SAT_1[] = {0xDB, 0xDC, 0};
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_SAT_0, false);
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row + 1);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_SAT_1, false);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void oled_task_user(void) {
 | 
				
			||||||
    // Host Keyboard Layer Status
 | 
					    // Host Keyboard Layer Status
 | 
				
			||||||
    static const char PROGMEM ICON_LAYER[] = {0x80, 0x81, 0x82, 0x83, 0};
 | 
					    static const char PROGMEM ICON_LAYER[] = {0x80, 0x81, 0x82, 0x83, 0};
 | 
				
			||||||
    static const char PROGMEM ICON_ENCODER[] = {0x84, 0x85, 0x86, 0x87, 0};
 | 
					    static const char PROGMEM ICON_ENCODER[] = {0x84, 0x85, 0x86, 0x87, 0};
 | 
				
			||||||
@ -189,6 +230,9 @@ bool oled_task_user(void) {
 | 
				
			|||||||
        case 1:
 | 
					        case 1:
 | 
				
			||||||
            oled_write_P(PSTR("2ND "), false);
 | 
					            oled_write_P(PSTR("2ND "), false);
 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
 | 
					        case 2:
 | 
				
			||||||
 | 
					            oled_write_P(PSTR("3RD "), false);
 | 
				
			||||||
 | 
					            break;
 | 
				
			||||||
        default:
 | 
					        default:
 | 
				
			||||||
            // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
					            // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
				
			||||||
            oled_write_P(PSTR("UNDF"), false);
 | 
					            oled_write_P(PSTR("UNDF"), false);
 | 
				
			||||||
@ -204,6 +248,9 @@ bool oled_task_user(void) {
 | 
				
			|||||||
        case 1:
 | 
					        case 1:
 | 
				
			||||||
            oled_write_P(PSTR("BRGT"), false);
 | 
					            oled_write_P(PSTR("BRGT"), false);
 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
 | 
					        case 2:
 | 
				
			||||||
 | 
					            oled_write_P(PSTR("RGB "), false);
 | 
				
			||||||
 | 
					            break;
 | 
				
			||||||
        default:
 | 
					        default:
 | 
				
			||||||
            // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
					            // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
				
			||||||
            oled_write_P(PSTR("UNDF"), false);
 | 
					            oled_write_P(PSTR("UNDF"), false);
 | 
				
			||||||
@ -227,6 +274,14 @@ bool oled_task_user(void) {
 | 
				
			|||||||
            draw_lower_icon(5, 2);
 | 
					            draw_lower_icon(5, 2);
 | 
				
			||||||
            draw_brightness_icon(6, 2);
 | 
					            draw_brightness_icon(6, 2);
 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
 | 
					        case 2:
 | 
				
			||||||
 | 
					            draw_raise_icon(1, 2);
 | 
				
			||||||
 | 
					            draw_mode_icon(2, 2);
 | 
				
			||||||
 | 
					            draw_hue_icon(3, 2);
 | 
				
			||||||
 | 
					            draw_sat_icon(4, 2);
 | 
				
			||||||
 | 
					            draw_lower_icon(5, 2);
 | 
				
			||||||
 | 
					            draw_brightness_icon(6, 2);
 | 
				
			||||||
 | 
					            break;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return false;
 | 
					    return false;
 | 
				
			||||||
 | 
				
			|||||||
@ -16,11 +16,12 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#include QMK_KEYBOARD_H
 | 
					#include QMK_KEYBOARD_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define LAYERNUM 2
 | 
					#define LAYERNUM 3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
					const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
				
			||||||
    [0] = LAYOUT(KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, TO(1)),
 | 
					    [0] = LAYOUT(KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, TO(1)),
 | 
				
			||||||
    [1] = LAYOUT(KC_TRNS, KC_MSTP, KC_MRWD, KC_MFFD, TO(0))
 | 
					    [1] = LAYOUT(KC_TRNS, KC_MSTP, KC_MRWD, KC_MFFD, TO(2)),
 | 
				
			||||||
 | 
					    [2] = LAYOUT(KC_LSFT, RGB_MOD, RGB_HUI, RGB_SAI, TO(0))
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int get_icon_start_position(int key_position) {
 | 
					int get_icon_start_position(int key_position) {
 | 
				
			||||||
@ -44,13 +45,12 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
				
			|||||||
                oled_write_P(UP_ICON, false);
 | 
					                oled_write_P(UP_ICON, false);
 | 
				
			||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
                tap_code(KC_VOLD);
 | 
					                tap_code(KC_VOLD);
 | 
				
			||||||
 | 
					 | 
				
			||||||
                oled_set_cursor(get_icon_start_position(7), 2);
 | 
					                oled_set_cursor(get_icon_start_position(7), 2);
 | 
				
			||||||
                oled_write_P(PSTR(" "), false);
 | 
					                oled_write_P(PSTR(" "), false);
 | 
				
			||||||
                oled_set_cursor(get_icon_start_position(7), 3);
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
                oled_write_P(DOWN_ICON, false);
 | 
					                oled_write_P(DOWN_ICON, false);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        } else {
 | 
					        } else if (layer_state_is(1)) {
 | 
				
			||||||
            if (clockwise) {
 | 
					            if (clockwise) {
 | 
				
			||||||
                tap_code(KC_BRIU);
 | 
					                tap_code(KC_BRIU);
 | 
				
			||||||
                oled_set_cursor(get_icon_start_position(7), 3);
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
@ -64,6 +64,20 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
				
			|||||||
                oled_set_cursor(get_icon_start_position(7), 3);
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
                oled_write_P(DOWN_ICON, false);
 | 
					                oled_write_P(DOWN_ICON, false);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					        } else if (layer_state_is(2)) {
 | 
				
			||||||
 | 
					            if (clockwise) {
 | 
				
			||||||
 | 
					                rgblight_increase_val();
 | 
				
			||||||
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
 | 
					                oled_write_P(PSTR(" "), false);
 | 
				
			||||||
 | 
					                oled_set_cursor(get_icon_start_position(7), 2);
 | 
				
			||||||
 | 
					                oled_write_P(UP_ICON, false);
 | 
				
			||||||
 | 
					            } else {
 | 
				
			||||||
 | 
					                rgblight_decrease_val();
 | 
				
			||||||
 | 
					                oled_set_cursor(get_icon_start_position(7), 2);
 | 
				
			||||||
 | 
					                oled_write_P(PSTR(" "), false);
 | 
				
			||||||
 | 
					                oled_set_cursor(get_icon_start_position(7), 3);
 | 
				
			||||||
 | 
					                oled_write_P(DOWN_ICON, false);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    return true;
 | 
					    return true;
 | 
				
			||||||
@ -174,7 +188,34 @@ void draw_brightness_icon(int key_position, int row) {
 | 
				
			|||||||
    oled_write_P(ICON_BRIGHTNESS_1, false);
 | 
					    oled_write_P(ICON_BRIGHTNESS_1, false);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool oled_task_user(void) {
 | 
					void draw_mode_icon(int key_position, int row) {
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_MODE_0[] = {0x94, 0x95, 0};
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_MODE_1[] = {0xB4, 0xB5, 0};
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_MODE_0, false);
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row + 1);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_MODE_1, false);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_hue_icon(int key_position, int row) {
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_HUE_0[] = {0x96, 0x97, 0};
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_HUE_1[] = {0xB6, 0xB7, 0};
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_HUE_0, false);
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row + 1);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_HUE_1, false);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_sat_icon(int key_position, int row) {
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_SAT_0[] = {0xBB, 0xBC, 0};
 | 
				
			||||||
 | 
					    static const char PROGMEM ICON_SAT_1[] = {0xDB, 0xDC, 0};
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_SAT_0, false);
 | 
				
			||||||
 | 
					    oled_set_cursor(get_icon_start_position(key_position), row + 1);
 | 
				
			||||||
 | 
					    oled_write_P(ICON_SAT_1, false);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void oled_task_user(void) {
 | 
				
			||||||
    // Host Keyboard Layer Status
 | 
					    // Host Keyboard Layer Status
 | 
				
			||||||
    static const char PROGMEM ICON_LAYER[] = {0x80, 0x81, 0x82, 0x83, 0};
 | 
					    static const char PROGMEM ICON_LAYER[] = {0x80, 0x81, 0x82, 0x83, 0};
 | 
				
			||||||
    static const char PROGMEM ICON_ENCODER[] = {0x84, 0x85, 0x86, 0x87, 0};
 | 
					    static const char PROGMEM ICON_ENCODER[] = {0x84, 0x85, 0x86, 0x87, 0};
 | 
				
			||||||
@ -189,6 +230,9 @@ bool oled_task_user(void) {
 | 
				
			|||||||
        case 1:
 | 
					        case 1:
 | 
				
			||||||
            oled_write_P(PSTR("2ND "), false);
 | 
					            oled_write_P(PSTR("2ND "), false);
 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
 | 
					        case 2:
 | 
				
			||||||
 | 
					            oled_write_P(PSTR("3RD "), false);
 | 
				
			||||||
 | 
					            break;
 | 
				
			||||||
        default:
 | 
					        default:
 | 
				
			||||||
            // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
					            // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
				
			||||||
            oled_write_P(PSTR("UNDF"), false);
 | 
					            oled_write_P(PSTR("UNDF"), false);
 | 
				
			||||||
@ -204,6 +248,9 @@ bool oled_task_user(void) {
 | 
				
			|||||||
        case 1:
 | 
					        case 1:
 | 
				
			||||||
            oled_write_P(PSTR("BRGT"), false);
 | 
					            oled_write_P(PSTR("BRGT"), false);
 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
 | 
					        case 2:
 | 
				
			||||||
 | 
					            oled_write_P(PSTR("RGB "), false);
 | 
				
			||||||
 | 
					            break;
 | 
				
			||||||
        default:
 | 
					        default:
 | 
				
			||||||
            // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
					            // Or use the write_ln shortcut over adding '\n' to the end of your string
 | 
				
			||||||
            oled_write_P(PSTR("UNDF"), false);
 | 
					            oled_write_P(PSTR("UNDF"), false);
 | 
				
			||||||
@ -227,6 +274,14 @@ bool oled_task_user(void) {
 | 
				
			|||||||
            draw_lower_icon(5, 2);
 | 
					            draw_lower_icon(5, 2);
 | 
				
			||||||
            draw_brightness_icon(6, 2);
 | 
					            draw_brightness_icon(6, 2);
 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
 | 
					        case 2:
 | 
				
			||||||
 | 
					            draw_raise_icon(1, 2);
 | 
				
			||||||
 | 
					            draw_mode_icon(2, 2);
 | 
				
			||||||
 | 
					            draw_hue_icon(3, 2);
 | 
				
			||||||
 | 
					            draw_sat_icon(4, 2);
 | 
				
			||||||
 | 
					            draw_lower_icon(5, 2);
 | 
				
			||||||
 | 
					            draw_brightness_icon(6, 2);
 | 
				
			||||||
 | 
					            break;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return false;
 | 
					    return false;
 | 
				
			||||||
 | 
				
			|||||||
@ -14,7 +14,7 @@ CONSOLE_ENABLE = no         # Console for debug
 | 
				
			|||||||
COMMAND_ENABLE = no         # Commands for debug and configuration
 | 
					COMMAND_ENABLE = no         # Commands for debug and configuration
 | 
				
			||||||
NKRO_ENABLE = no            # Enable N-Key Rollover
 | 
					NKRO_ENABLE = no            # Enable N-Key Rollover
 | 
				
			||||||
BACKLIGHT_ENABLE = no      # Enable keyboard backlight functionality
 | 
					BACKLIGHT_ENABLE = no      # Enable keyboard backlight functionality
 | 
				
			||||||
RGBLIGHT_ENABLE = no       # Enable keyboard RGB underglow
 | 
					RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
 | 
				
			||||||
AUDIO_ENABLE = no           # Audio output
 | 
					AUDIO_ENABLE = no           # Audio output
 | 
				
			||||||
ENCODER_ENABLE = yes
 | 
					ENCODER_ENABLE = yes
 | 
				
			||||||
OLED_ENABLE = yes
 | 
					OLED_ENABLE = yes
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user