 #define MAX_RPM 15000
 
 #define ALERT_PULSE_MILLIS 110
-#define ALERT_PULSE_DUTY_CYCLE 160
+#define ALERT_PULSE_DUTY_CYCLE 127
 #define ALERT_MIN_BRIGHTNESS 60
+
+#define DEAD_COLOR cHSV(225, 255, 255)
+#define DEAD_PULSE_DURATION 1000
 
 #define LOW_COLOUR cHSV(240, 255, 255)
 #define MEDIUM_COLOUR cHSV(100, 255, 255)
 #define HIGH_COLOUR cHSV(120, 255, 255)
-#define BACKGROUND_COLOUR cHSV(240, 255, 5)
+#define BACKGROUND_COLOUR cHSV(240, 0, 0)
 #define LED_MIN_BRIGHTNESS_VALUE 20
 
 

	Success = RPMDriver.Begin();
	RPMDriver.SetDesignModel(SUB_PIXEL_ENABLED | BACKGROUND_ENABLED);// | SUB_PIXEL_HIGH_RANGE_ENABLED | BACKGROUND_ENABLED);
	RPMDriver.SetBrightness(GlobalBrightness);
	RPMDriver.SetRangeRPM(600, 15000);
	RPMDriver.ClearSections();

	RPMDriver.SetAlertBlink(HIGH_COLOUR, ALERT_PULSE_MILLIS, ALERT_PULSE_DUTY_CYCLE);

	//RPMDriver.SetExtendedOverflowRange(constrain(GlobalBrightness + 50, 0, 255));

	RPMDriver.SetSection(0, MEDIUM_RPM / 2, LOW_COLOUR, BACKGROUND_COLOUR);
	RPMDriver.SetSection(MEDIUM_RPM / 2, MEDIUM_RPM, cHSV(300, 254, 254), BACKGROUND_COLOUR);
	RPMDriver.SetSection(MEDIUM_RPM, HIGH_RPM, MEDIUM_COLOUR, BACKGROUND_COLOUR);
	RPMDriver.SetSection(HIGH_RPM, MAX_RPM, HIGH_COLOUR, BACKGROUND_COLOUR);//, { 120,255,1 }
	RPMDriver.BootAnimation(LOW_COLOUR);

}

void loop()

#include "RPMWS2812.h"

#define SERIAL_BAUD_RATE 115200
#define STARTING_BRIGHTNESS 100 //Out of 255

#define ANIMATION_STEPS 6000
#define DEMO_RPM_RANGE 18000

#define ANIMATION_DURATION 15000
#define ANIMATION_UPDATE_INTERVAL 5
#define DEMO_RPM_UPDATE_INTERVAL  5
#define DEMO_LED_UPDATE_INTERVAL 100
