Christmas RGB light mode
This commit is contained in:
		
							parent
							
								
									9675e1357f
								
							
						
					
					
						commit
						cae269b08b
					
				
					 2 changed files with 23 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -449,6 +449,9 @@ void rgblight_task(void) {
 | 
			
		|||
    } else if (rgblight_config.mode >= 21 && rgblight_config.mode <= 23) {
 | 
			
		||||
      // mode = 21 to 23, knight mode
 | 
			
		||||
      rgblight_effect_knight(rgblight_config.mode - 21);
 | 
			
		||||
    } else {
 | 
			
		||||
      // mode = 24, christmas mode
 | 
			
		||||
      rgblight_effect_christmas();
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -594,4 +597,22 @@ void rgblight_effect_knight(uint8_t interval) {
 | 
			
		|||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void rgblight_effect_christmas(void) {
 | 
			
		||||
  static uint16_t current_offset = 0;
 | 
			
		||||
  static uint16_t last_timer = 0;
 | 
			
		||||
  uint16_t hue;
 | 
			
		||||
  uint8_t i;
 | 
			
		||||
  if (timer_elapsed(last_timer) < 1000) {
 | 
			
		||||
    return;
 | 
			
		||||
  }
 | 
			
		||||
  last_timer = timer_read();
 | 
			
		||||
  current_offset = (current_offset + 1) % 2;
 | 
			
		||||
  for (i = 0; i < RGBLED_NUM; i++) {
 | 
			
		||||
    hue = 0 + ((RGBLED_NUM * (i + current_offset)) % 2) * 80;
 | 
			
		||||
    sethsv(hue, rgblight_config.sat, rgblight_config.val, (LED_TYPE *)&led[i]);
 | 
			
		||||
  }
 | 
			
		||||
  rgblight_set();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,7 +2,7 @@
 | 
			
		|||
#define RGBLIGHT_H
 | 
			
		||||
 | 
			
		||||
#ifdef RGBLIGHT_ANIMATIONS
 | 
			
		||||
	#define RGBLIGHT_MODES 23
 | 
			
		||||
	#define RGBLIGHT_MODES 24
 | 
			
		||||
#else
 | 
			
		||||
	#define RGBLIGHT_MODES 1
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			@ -98,5 +98,6 @@ void rgblight_effect_rainbow_mood(uint8_t interval);
 | 
			
		|||
void rgblight_effect_rainbow_swirl(uint8_t interval);
 | 
			
		||||
void rgblight_effect_snake(uint8_t interval);
 | 
			
		||||
void rgblight_effect_knight(uint8_t interval);
 | 
			
		||||
void rgblight_effect_christmas(void);
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue