Remove time signature assumption — all beats equal brightness
This commit is contained in:
+2
-9
@@ -29,7 +29,6 @@ void midi_task(void* parameter) {
|
|||||||
// Beat timing fixes for precise beat alignment - sync to real MIDI time, not hardcoded tempo
|
// Beat timing fixes for precise beat alignment - sync to real MIDI time, not hardcoded tempo
|
||||||
uint32_t last_beat = UINT32_MAX;
|
uint32_t last_beat = UINT32_MAX;
|
||||||
uint32_t flash_start = 0;
|
uint32_t flash_start = 0;
|
||||||
uint8_t flash_peak = 255;
|
|
||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
midi_transport.update();
|
midi_transport.update();
|
||||||
@@ -46,13 +45,7 @@ void midi_task(void* parameter) {
|
|||||||
if (current_beat != last_beat) {
|
if (current_beat != last_beat) {
|
||||||
last_beat = current_beat;
|
last_beat = current_beat;
|
||||||
flash_start = now;
|
flash_start = now;
|
||||||
// Beat 1 of each bar (every 4th beat) = full white; others dimmer
|
mux.set_led_color(6, 255, 255, 255);
|
||||||
if (current_beat % 4 == 0) {
|
|
||||||
flash_peak = 255;
|
|
||||||
} else {
|
|
||||||
flash_peak = 64;
|
|
||||||
}
|
|
||||||
mux.set_led_color(6, flash_peak, flash_peak, flash_peak);
|
|
||||||
mux.show();
|
mux.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -65,7 +58,7 @@ void midi_task(void* parameter) {
|
|||||||
flash_start = 0;
|
flash_start = 0;
|
||||||
} else {
|
} else {
|
||||||
float b = 1.0f - (float)elapsed / 80.0f;
|
float b = 1.0f - (float)elapsed / 80.0f;
|
||||||
uint8_t v = (uint8_t)((float)flash_peak * b * b);
|
uint8_t v = (uint8_t)(255 * b * b);
|
||||||
mux.set_led_color(6, v, v, v);
|
mux.set_led_color(6, v, v, v);
|
||||||
mux.show();
|
mux.show();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user