@@ -196,11 +196,17 @@ void new_status_color(uint32_t rgb) {
196
196
uint8_t red_u8 = (rgb_adjusted >> 16 ) & 0xFF ;
197
197
uint8_t green_u8 = (rgb_adjusted >> 8 ) & 0xFF ;
198
198
uint8_t blue_u8 = rgb_adjusted & 0xFF ;
199
-
200
- status_rgb_color [0 ] = (1 <<16 ) - 1 - ((uint16_t ) (red_u8 << 8 ) + red_u8 );
201
- status_rgb_color [1 ] = (1 <<16 ) - 1 - ((uint16_t ) (green_u8 << 8 ) + green_u8 );
202
- status_rgb_color [2 ] = (1 <<16 ) - 1 - ((uint16_t ) (blue_u8 << 8 ) + blue_u8 );
203
-
199
+
200
+ #if defined(CP_RGB_STATUS_INVERTED_PWM )
201
+ status_rgb_color [0 ] = (1 << 16 ) - 1 - ((uint16_t ) (red_u8 << 8 ) + red_u8 );
202
+ status_rgb_color [1 ] = (1 << 16 ) - 1 - ((uint16_t ) (green_u8 << 8 ) + green_u8 );
203
+ status_rgb_color [2 ] = (1 << 16 ) - 1 - ((uint16_t ) (blue_u8 << 8 ) + blue_u8 );
204
+ #else
205
+ status_rgb_color [0 ] = (uint16_t ) (red_u8 << 8 ) + red_u8 ;
206
+ status_rgb_color [1 ] = (uint16_t ) (green_u8 << 8 ) + green_u8 ;
207
+ status_rgb_color [2 ] = (uint16_t ) (blue_u8 << 8 ) + blue_u8 ;
208
+ #endif
209
+
204
210
common_hal_pulseio_pwmout_set_duty_cycle (& rgb_status_r , status_rgb_color [0 ]);
205
211
common_hal_pulseio_pwmout_set_duty_cycle (& rgb_status_g , status_rgb_color [1 ]);
206
212
common_hal_pulseio_pwmout_set_duty_cycle (& rgb_status_b , status_rgb_color [2 ]);
@@ -235,11 +241,18 @@ void temp_status_color(uint32_t rgb) {
235
241
uint8_t green_u8 = (rgb_adjusted >> 8 ) & 0xFF ;
236
242
uint8_t blue_u8 = rgb_adjusted & 0xFF ;
237
243
238
- uint16_t temp_status_color_rgb [3 ];
244
+ uint16_t temp_status_color_rgb [3 ] = {0 };
245
+
246
+ #if defined(CP_RGB_STATUS_INVERTED_PWM )
247
+ temp_status_color_rgb [0 ] = (1 << 16 ) - 1 - ((uint16_t ) (red_u8 << 8 ) + red_u8 );
248
+ temp_status_color_rgb [1 ] = (1 << 16 ) - 1 - ((uint16_t ) (green_u8 << 8 ) + green_u8 );
249
+ temp_status_color_rgb [2 ] = (1 << 16 ) - 1 - ((uint16_t ) (blue_u8 << 8 ) + blue_u8 );
250
+ #else
239
251
temp_status_color_rgb [0 ] = (uint16_t ) (red_u8 << 8 ) + red_u8 ;
240
252
temp_status_color_rgb [1 ] = (uint16_t ) (green_u8 << 8 ) + green_u8 ;
241
253
temp_status_color_rgb [2 ] = (uint16_t ) (blue_u8 << 8 ) + blue_u8 ;
242
-
254
+ #endif
255
+
243
256
common_hal_pulseio_pwmout_set_duty_cycle (& rgb_status_r , temp_status_color_rgb [0 ]);
244
257
common_hal_pulseio_pwmout_set_duty_cycle (& rgb_status_g , temp_status_color_rgb [1 ]);
245
258
common_hal_pulseio_pwmout_set_duty_cycle (& rgb_status_b , temp_status_color_rgb [2 ]);
@@ -407,4 +420,4 @@ void tick_rgb_status_animation(rgb_status_animation_t* status) {
407
420
}
408
421
}
409
422
#endif
410
- }
423
+ }
0 commit comments