         // blue
         setColor(strip.Color(0, 0, brightness));
     }
-    else if (frequency >= base_freak * 6 && frequency < SAMPLE_RATE/4) {
+    else if (frequency >= base_freak * 6 && frequency < base_freak * 8) {
+        // violence!!!
+        setColor(strip.Color(brightness, 0, brightness));
+    // we'll cycle through the colors again so all high freaks ain't purple!!!
+    } else if (frequency > 8 && frequency < base_freak * 10) {
+        // red
+        setColor(strip.Color(brightness, 0, 0));
+    }
+    else if (frequency >= base_freak * 10 && frequency < (base_freak * 12)) {
+        // yellow
+        setColor(strip.Color(brightness, brightness, 0));
+    }
+    else if (frequency >= base_freak * 12 && frequency < (base_freak * 14)) {
+        // green
+        setColor(strip.Color(0, brightness, 0));
+    }
+    else if (frequency >= base_freak * 14 && frequency < base_freak * 16) {
+        // cyan
+        setColor(strip.Color(0, brightness, brightness));
+    }
+    else if (frequency >= base_freak * 16 && frequency < base_freak * 18) {
+        // blue
+        setColor(strip.Color(0, 0, brightness));
+    }
+    else if (frequency >= base_freak * 18 && frequency < SAMPLE_RATE/SKIP_MULT) {
         // violence!!!
         setColor(strip.Color(brightness, 0, brightness));
     }

float SAMPLE_RATE = 9600.0;
int SKIP_MULT = 4;
int MAX_FFT_BIN = 16383;
int brightness;  // controls the LED brightness based on dB level
// LEDs can be set up to 127, but it seems too bright so we tone it down a bit
int MAX_BRIGHTNESS = 95;

    frequency = (peak_index * (SAMPLE_RATE / SKIP_MULT)) / (FFT_N / 4);
    brightness = round(1.0 * MAX_BRIGHTNESS * sum_fft / MAX_FFT_BIN);
    
    if (max_value < 80 || sum_fft < MIN_FFT_SUM || peak_index == 0) {
        // signal too weak or we got the 1st peak (0Hz), no lights
        setColor(strip.Color(0, 0, 0));
    } else if (frequency > 0 && frequency < base_freak * 2) {
