From 37cb602acfc6e28dbd163071ecc77d1d362ab1f8 Mon Sep 17 00:00:00 2001 From: Jared DeCook Date: Sat, 19 Nov 2022 17:51:34 -0500 Subject: v1.1 WIP --- LEDs.ino | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 LEDs.ino (limited to 'LEDs.ino') diff --git a/LEDs.ino b/LEDs.ino new file mode 100644 index 0000000..5b72b65 --- /dev/null +++ b/LEDs.ino @@ -0,0 +1,38 @@ +void setOctLED() { + if (octave <= 0) { + strip.setPixelColor(octUpSW, 120, 0, 120); + strip.setPixelColor(octDnSW, 0, 0, 0); // No lower to go. + } else if (octave <= 12) { + strip.setPixelColor(octUpSW, 0, 0, 120); + strip.setPixelColor(octDnSW, 120, 0, 0); + } else if (octave <= 24) { + strip.setPixelColor(octUpSW, 0, 0, 0); //No higher to go. + strip.setPixelColor(octDnSW, 120, 0, 120); + } +} + +void setLayoutLEDs() { + for (int i = 0; i < elementCount; i++) { + if (currentLayout[i] <= 127) { + setLayoutLED(i); + } + } +} +void setLayoutLED(int i) { + strip.setPixelColor(i, strip.ColorHSV((currentLayout[i] % 12) * 5006, 255, 120)); + // black keys darker + if (blackKeys) { + // LEET programmers stuff + switch (currentLayout[i] % 12) { + // If it is one of the black keys, fall through to case 10. + case 1: + case 3: + case 6: + case 8: + // bitshift by 2 (efficient division by four) + case 10: strip.setPixelColor(i, strip.ColorHSV((currentLayout[i] % 12) * 5006, 255, 30)); break; + // otherwise it was a white key. Do nothing + default: break; + } + } +} \ No newline at end of file -- cgit 1.4.1