From 9bc0ad4952a3e05fbd9ed433b0aa94fc21b43698 Mon Sep 17 00:00:00 2001 From: true Date: Sat, 9 May 2026 10:29:33 -0700 Subject: [PATCH] reduced default power due to hardware spec fault The boost converter is fairly weak. This was known going into this design. However, the LED brightness wasn't ever really calculated and was just assumed it would be kept under control by the specific LED programs in use. Since per-color gain tuning isn't implemented yet, for now the default global gain is turned down to prevent voltage drop from turning off white LEDs when programs that light a significant number of LEDs are run. If turning up the brightness the white LEDs can still drop. --- firmware/app/driver/aw20xxx.c | 9 ++++----- firmware/app/led/matrix.c | 2 +- firmware/app/ui/temp_ui.c | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/firmware/app/driver/aw20xxx.c b/firmware/app/driver/aw20xxx.c index 01aaf1a..5f0031a 100644 --- a/firmware/app/driver/aw20xxx.c +++ b/firmware/app/driver/aw20xxx.c @@ -152,8 +152,8 @@ void aw20x_set_dim(struct AW20x *aw) void aw20x_set_dim_global(struct AW20x *aw, uint8_t dim) { uint8_t i; - uint8_t row; - uint8_t offset; + //uint8_t row; + uint8_t offset = 0; // ceil if (dim > 0x3f) dim = 0x3f; @@ -167,13 +167,12 @@ void aw20x_set_dim_global(struct AW20x *aw, uint8_t dim) for (i = 0; i <= aw->rows; i++) aw_buf[i] = dim; // send buffer for each column - row = offset = 0; + //row = offset = 0; for (i = 0; i < aw->cols; i++) { AW20X_I2C_writereg(aw->addr, offset, aw_buf, aw->rows); while (AW20X_I2C_busy()); - row += aw->rows; + //row += aw->rows; offset += AW20X_MAX_ROWS; - } } diff --git a/firmware/app/led/matrix.c b/firmware/app/led/matrix.c index 291f104..71fdadd 100644 --- a/firmware/app/led/matrix.c +++ b/firmware/app/led/matrix.c @@ -13,7 +13,7 @@ -#define AW20X_DIM 28 // initial global current setting +#define AW20X_DIM 20 // initial global current setting #define AW20X_COLS 6 #define AW20X_ROWS 12 diff --git a/firmware/app/ui/temp_ui.c b/firmware/app/ui/temp_ui.c index d17928d..8640631 100644 --- a/firmware/app/ui/temp_ui.c +++ b/firmware/app/ui/temp_ui.c @@ -10,7 +10,7 @@ -static uint32_t brt = 28; +static uint32_t brt = 20; // set to same as in matrix.c uint8_t ribbon_prog = 0; uint8_t aii_prog = 0;