fix implementation issues from SSD1306 clean up, added rotation (#1494)
* moved OLED update task to keymap * fix splitting render display to keymap * Added rotation option for OLED, fixed splitting display render update to keymap * issues with attribute
This commit is contained in:
		
							parent
							
								
									cc468523df
								
							
						
					
					
						commit
						087af43dee
					
				
					 8 changed files with 203 additions and 14 deletions
				
			
		| 
						 | 
				
			
			@ -36,6 +36,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		|||
#define FLIP_HALF
 | 
			
		||||
 | 
			
		||||
#define SSD1306OLED
 | 
			
		||||
//#define OLED_ROTATE180
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define PREVENT_STUCK_MODIFIERS
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -358,6 +358,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		|||
    return MACRO_NONE;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void matrix_update(struct CharacterMatrix *dest,
 | 
			
		||||
                          const struct CharacterMatrix *source) {
 | 
			
		||||
  if (memcmp(dest->display, source->display, sizeof(dest->display))) {
 | 
			
		||||
| 
						 | 
				
			
			@ -366,6 +367,17 @@ void matrix_update(struct CharacterMatrix *dest,
 | 
			
		|||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//assign the right code to your layers for OLED display
 | 
			
		||||
#define L_BASE 0
 | 
			
		||||
#define L_LOWER 8
 | 
			
		||||
#define L_RAISE 16
 | 
			
		||||
#define L_FNLAYER 64
 | 
			
		||||
#define L_NUMLAY 128
 | 
			
		||||
#define L_NLOWER 136
 | 
			
		||||
#define L_NFNLAYER 192
 | 
			
		||||
#define L_MOUSECURSOR 256
 | 
			
		||||
#define L_ADJUST 65560
 | 
			
		||||
 | 
			
		||||
void iota_gfx_task_user(void) {
 | 
			
		||||
#if DEBUG_TO_SCREEN
 | 
			
		||||
  if (debug_enable) {
 | 
			
		||||
| 
						 | 
				
			
			@ -408,18 +420,16 @@ void iota_gfx_task_user(void) {
 | 
			
		|||
  snprintf(buf,sizeof(buf), "Undef-%ld", layer_state);
 | 
			
		||||
  matrix_write_P(&matrix, PSTR("\n\nLayer: "));
 | 
			
		||||
    switch (layer_state) {
 | 
			
		||||
        case _QWERTY:
 | 
			
		||||
        case _COLEMAK:
 | 
			
		||||
        case _DVORAK:
 | 
			
		||||
        case L_BASE:
 | 
			
		||||
           matrix_write_P(&matrix, PSTR("Default"));
 | 
			
		||||
           break;
 | 
			
		||||
        case _RAISE:
 | 
			
		||||
        case L_RAISE:
 | 
			
		||||
           matrix_write_P(&matrix, PSTR("Raise"));
 | 
			
		||||
           break;
 | 
			
		||||
        case _LOWER:
 | 
			
		||||
        case L_LOWER:
 | 
			
		||||
           matrix_write_P(&matrix, PSTR("Lower"));
 | 
			
		||||
           break;
 | 
			
		||||
        case _ADJUST:
 | 
			
		||||
        case L_ADJUST:
 | 
			
		||||
           matrix_write_P(&matrix, PSTR("ADJUST"));
 | 
			
		||||
           break;
 | 
			
		||||
        default:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue