[Core] Refactor OLED to allow easy addition of other types (#13454)
* add docs * core changes * update keyboards to new OLED * updated users to new OLED * update layouts to new OLED * fixup docs * drashna's suggestion * fix up docs * new keyboards with oled * core split changes * remaining keyboard files * Fix The Helix keyboards oled options * reflect develop Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: mtei <2170248+mtei@users.noreply.github.com>
This commit is contained in:
		
							parent
							
								
									6fd20acf4b
								
							
						
					
					
						commit
						4e1c5887c5
					
				
					 500 changed files with 1579 additions and 1387 deletions
				
			
		| 
						 | 
				
			
			@ -80,7 +80,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
			
		|||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_DRIVER_ENABLE
 | 
			
		||||
#ifdef OLED_ENABLE
 | 
			
		||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
 | 
			
		||||
    return OLED_ROTATION_180;  // flips the display 180 degrees
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -61,7 +61,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
			
		|||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_DRIVER_ENABLE
 | 
			
		||||
#ifdef OLED_ENABLE
 | 
			
		||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
 | 
			
		||||
    return OLED_ROTATION_180;  // flips the display 180 degrees if offhand
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
#ifdef ENCODER_ENABLE       // Encoder Functionality
 | 
			
		||||
    uint8_t selected_layer = 0;
 | 
			
		||||
    bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
			
		||||
        #ifdef OLED_DRIVER_ENABLE
 | 
			
		||||
        #ifdef OLED_ENABLE
 | 
			
		||||
            oled_clear();
 | 
			
		||||
            oled_render();
 | 
			
		||||
        #endif
 | 
			
		||||
| 
						 | 
				
			
			@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    }
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_DRIVER_ENABLE   // OLED Functionality
 | 
			
		||||
#ifdef OLED_ENABLE   // OLED Functionality
 | 
			
		||||
    oled_rotation_t oled_init_user(oled_rotation_t rotation) {
 | 
			
		||||
        return OLED_ROTATION_180;       // flips the display 180 degrees if offhand
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -109,7 +109,7 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
 | 
			
		|||
    uint8_t selected_layer = 0;
 | 
			
		||||
 | 
			
		||||
    bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
			
		||||
        #ifdef OLED_DRIVER_ENABLE
 | 
			
		||||
        #ifdef OLED_ENABLE
 | 
			
		||||
            oled_clear();
 | 
			
		||||
            oled_render();
 | 
			
		||||
        #endif
 | 
			
		||||
| 
						 | 
				
			
			@ -172,7 +172,7 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
 | 
			
		|||
    }
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_DRIVER_ENABLE   // OLED Functionality
 | 
			
		||||
#ifdef OLED_ENABLE   // OLED Functionality
 | 
			
		||||
    oled_rotation_t oled_init_user(oled_rotation_t rotation) {
 | 
			
		||||
        return OLED_ROTATION_180;       // flips the display 180 degrees if offhand
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -61,7 +61,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
			
		|||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_DRIVER_ENABLE
 | 
			
		||||
#ifdef OLED_ENABLE
 | 
			
		||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
 | 
			
		||||
    return OLED_ROTATION_180;  // flips the display 180 degrees if offhand
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,4 +21,5 @@ RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
 | 
			
		|||
BLUETOOTH_ENABLE = no       # Enable Bluetooth
 | 
			
		||||
AUDIO_ENABLE = no           # Audio output
 | 
			
		||||
ENCODER_ENABLE = yes
 | 
			
		||||
OLED_DRIVER_ENABLE = yes
 | 
			
		||||
OLED_ENABLE = yes
 | 
			
		||||
OLED_DRIVER = SSD1306
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
						   
 | 
			
		||||
 | 
			
		||||
                  _______, _______, _______
 | 
			
		||||
 | 
			
		||||
    ),
 | 
			
		||||
| 
						 | 
				
			
			@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
                  _______, _______, _______
 | 
			
		||||
 | 
			
		||||
    )
 | 
			
		||||
| 
						 | 
				
			
			@ -95,7 +95,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
			
		|||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_DRIVER_ENABLE
 | 
			
		||||
#ifdef OLED_ENABLE
 | 
			
		||||
	oled_rotation_t oled_init_user(oled_rotation_t rotation) {
 | 
			
		||||
		return OLED_ROTATION_270;       // flips the display 270 degrees
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -32,18 +32,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
        KC_MUTE,  KC_P4,   KC_P5,   KC_P6,   _______,
 | 
			
		||||
        MO(_FN1), KC_P1,   KC_P2,   KC_P3,   KC_PENT,
 | 
			
		||||
        KC_BSPC,  KC_P0,   _______, KC_PDOT, _______,
 | 
			
		||||
		
 | 
			
		||||
 | 
			
		||||
				          KC_F5,   KC_F6,   KC_F7
 | 
			
		||||
 | 
			
		||||
    ),
 | 
			
		||||
    [_FN1] = LAYOUT(
 | 
			
		||||
                 _______,  _______, _______, _______,				
 | 
			
		||||
                 _______,  _______, _______, _______,
 | 
			
		||||
                 _______,  _______, _______, _______,
 | 
			
		||||
                 RGB_HUD,  RGB_SPI, RGB_HUI, _______,
 | 
			
		||||
        _______, RGB_RMOD, RGB_TOG, RGB_MOD, _______,
 | 
			
		||||
        _______, RGB_VAD,  RGB_SPD, RGB_VAI, _______,
 | 
			
		||||
        _______, RGB_SAD,  _______, RGB_SAI, _______,
 | 
			
		||||
		
 | 
			
		||||
 | 
			
		||||
                 _______,  _______, _______
 | 
			
		||||
 | 
			
		||||
    ),
 | 
			
		||||
| 
						 | 
				
			
			@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
						   
 | 
			
		||||
 | 
			
		||||
                  _______, _______, _______
 | 
			
		||||
 | 
			
		||||
    ),
 | 
			
		||||
| 
						 | 
				
			
			@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
        _______,  _______, _______, _______, _______,
 | 
			
		||||
		
 | 
			
		||||
 | 
			
		||||
                  _______, _______, _______
 | 
			
		||||
 | 
			
		||||
    )
 | 
			
		||||
| 
						 | 
				
			
			@ -93,7 +93,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
 | 
			
		|||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef OLED_DRIVER_ENABLE
 | 
			
		||||
#ifdef OLED_ENABLE
 | 
			
		||||
	oled_rotation_t oled_init_user(oled_rotation_t rotation) {
 | 
			
		||||
		return OLED_ROTATION_270;       // flips the display 270 degrees
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,4 +21,5 @@ RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
 | 
			
		|||
BLUETOOTH_ENABLE = no       # Enable Bluetooth
 | 
			
		||||
AUDIO_ENABLE = no           # Audio output
 | 
			
		||||
ENCODER_ENABLE = yes        # Enable encoder
 | 
			
		||||
OLED_DRIVER_ENABLE = yes    # Enable OLED Screen
 | 
			
		||||
OLED_ENABLE = yes
 | 
			
		||||
OLED_DRIVER = SSD1306    # Enable OLED Screen
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue