diff --git a/Controllers/NZXTHue2Controller/NZXTHue2Controller.h b/Controllers/NZXTHue2Controller/NZXTHue2Controller.h index 0a76087b..78b31902 100644 --- a/Controllers/NZXTHue2Controller/NZXTHue2Controller.h +++ b/Controllers/NZXTHue2Controller/NZXTHue2Controller.h @@ -48,6 +48,11 @@ enum HUE_2_MODE_ALTERNATING = 0x05, /* Alternating mode */ HUE_2_MODE_PULSING = 0x06, /* Pulsing mode */ HUE_2_MODE_BREATHING = 0x07, /* Breathing mode */ + HUE_2_MODE_CANDLE = 0x08, /* Candle Mode */ + HUE_2_MODE_STARRY_NIGHT = 0x09, /* Starry Night mode */ + HUE_2_MODE_RAINBOW_FLOW = 0x0b, /* Rainbow Flow mode */ + HUE_2_MODE_SUPER_RAINBOW = 0x0c, /* Super Rainbow mode */ + HUE_2_MODE_RAINBOW_PULSE = 0x0d, /* Rainbow Pulse mode */ HUE_2_NUM_MODES /* Number of Hue 2 modes */ }; diff --git a/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp b/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp index ab272f78..f281370a 100644 --- a/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp +++ b/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp @@ -22,32 +22,32 @@ RGBController_NZXTHue2::RGBController_NZXTHue2(NZXTHue2Controller* hue2_ptr) serial = hue2->GetSerialString(); mode Direct; - Direct.name = "Direct"; - Direct.value = 0xFFFF; - Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; - Direct.color_mode = MODE_COLORS_PER_LED; + Direct.name = "Direct"; + Direct.value = 0xFFFF; + Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; + Direct.color_mode = MODE_COLORS_PER_LED; modes.push_back(Direct); mode Static; - Static.name = "Static"; - Static.value = HUE_2_MODE_FIXED; - Static.flags = MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Static.colors_min = 1; - Static.colors_max = 1; - Static.color_mode = MODE_COLORS_MODE_SPECIFIC; + Static.name = "Static"; + Static.value = HUE_2_MODE_FIXED; + Static.flags = MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Static.colors_min = 1; + Static.colors_max = 1; + Static.color_mode = MODE_COLORS_MODE_SPECIFIC; Static.colors.resize(1); modes.push_back(Static); mode Fading; - Fading.name = "Fading"; - Fading.value = HUE_2_MODE_FADING; - Fading.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Fading.speed_min = HUE_2_SPEED_SLOWEST; - Fading.speed_max = HUE_2_SPEED_FASTEST; - Fading.colors_min = 1; - Fading.colors_max = 8; - Fading.speed = HUE_2_SPEED_NORMAL; - Fading.color_mode = MODE_COLORS_MODE_SPECIFIC; + Fading.name = "Fading"; + Fading.value = HUE_2_MODE_FADING; + Fading.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Fading.speed_min = HUE_2_SPEED_SLOWEST; + Fading.speed_max = HUE_2_SPEED_FASTEST; + Fading.colors_min = 1; + Fading.colors_max = 8; + Fading.speed = HUE_2_SPEED_NORMAL; + Fading.color_mode = MODE_COLORS_MODE_SPECIFIC; Fading.colors.resize(1); modes.push_back(Fading); @@ -63,72 +63,131 @@ RGBController_NZXTHue2::RGBController_NZXTHue2(NZXTHue2Controller* hue2_ptr) modes.push_back(SpectrumCycle); mode Marquee; - Marquee.name = "Marquee"; - Marquee.value = HUE_2_MODE_MARQUEE; - Marquee.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Marquee.speed_min = HUE_2_SPEED_SLOWEST; - Marquee.speed_max = HUE_2_SPEED_FASTEST; - Marquee.colors_min = 1; - Marquee.colors_max = 1; - Marquee.speed = HUE_2_SPEED_NORMAL; - Marquee.direction = MODE_DIRECTION_RIGHT; - Marquee.color_mode = MODE_COLORS_MODE_SPECIFIC; + Marquee.name = "Marquee"; + Marquee.value = HUE_2_MODE_MARQUEE; + Marquee.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Marquee.speed_min = HUE_2_SPEED_SLOWEST; + Marquee.speed_max = HUE_2_SPEED_FASTEST; + Marquee.colors_min = 1; + Marquee.colors_max = 1; + Marquee.speed = HUE_2_SPEED_NORMAL; + Marquee.direction = MODE_DIRECTION_RIGHT; + Marquee.color_mode = MODE_COLORS_MODE_SPECIFIC; Marquee.colors.resize(1); modes.push_back(Marquee); mode CoverMarquee; - CoverMarquee.name = "Cover Marquee"; - CoverMarquee.value = HUE_2_MODE_COVER_MARQUEE; - CoverMarquee.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - CoverMarquee.speed_min = HUE_2_SPEED_SLOWEST; - CoverMarquee.speed_max = HUE_2_SPEED_FASTEST; - CoverMarquee.colors_min = 1; - CoverMarquee.colors_max = 8; - CoverMarquee.speed = HUE_2_SPEED_NORMAL; - CoverMarquee.direction = MODE_DIRECTION_RIGHT; - CoverMarquee.color_mode = MODE_COLORS_MODE_SPECIFIC; + CoverMarquee.name = "Cover Marquee"; + CoverMarquee.value = HUE_2_MODE_COVER_MARQUEE; + CoverMarquee.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + CoverMarquee.speed_min = HUE_2_SPEED_SLOWEST; + CoverMarquee.speed_max = HUE_2_SPEED_FASTEST; + CoverMarquee.colors_min = 1; + CoverMarquee.colors_max = 8; + CoverMarquee.speed = HUE_2_SPEED_NORMAL; + CoverMarquee.direction = MODE_DIRECTION_RIGHT; + CoverMarquee.color_mode = MODE_COLORS_MODE_SPECIFIC; CoverMarquee.colors.resize(1); modes.push_back(CoverMarquee); mode Alternating; - Alternating.name = "Alternating"; - Alternating.value = HUE_2_MODE_ALTERNATING; - Alternating.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Alternating.speed_min = HUE_2_SPEED_SLOWEST; - Alternating.speed_max = HUE_2_SPEED_FASTEST; - Alternating.colors_min = 1; - Alternating.colors_max = 2; - Alternating.speed = HUE_2_SPEED_NORMAL; - Alternating.direction = MODE_DIRECTION_RIGHT; - Alternating.color_mode = MODE_COLORS_MODE_SPECIFIC; + Alternating.name = "Alternating"; + Alternating.value = HUE_2_MODE_ALTERNATING; + Alternating.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Alternating.speed_min = HUE_2_SPEED_SLOWEST; + Alternating.speed_max = HUE_2_SPEED_FASTEST; + Alternating.colors_min = 1; + Alternating.colors_max = 2; + Alternating.speed = HUE_2_SPEED_NORMAL; + Alternating.direction = MODE_DIRECTION_RIGHT; + Alternating.color_mode = MODE_COLORS_MODE_SPECIFIC; Alternating.colors.resize(1); modes.push_back(Alternating); mode Pulsing; - Pulsing.name = "Pulsing"; - Pulsing.value = HUE_2_MODE_PULSING; - Pulsing.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Pulsing.speed_min = HUE_2_SPEED_SLOWEST; - Pulsing.speed_max = HUE_2_SPEED_FASTEST; - Pulsing.colors_min = 1; - Pulsing.colors_max = 8; - Pulsing.speed = HUE_2_SPEED_NORMAL; - Pulsing.color_mode = MODE_COLORS_MODE_SPECIFIC; - Pulsing.colors.resize(1); + Pulsing.name = "Pulsing"; + Pulsing.value = HUE_2_MODE_PULSING; + Pulsing.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Pulsing.speed_min = HUE_2_SPEED_SLOWEST; + Pulsing.speed_max = HUE_2_SPEED_FASTEST; + Pulsing.colors_min = 1; + Pulsing.colors_max = 8; + Pulsing.speed = HUE_2_SPEED_NORMAL; + Pulsing.color_mode = MODE_COLORS_MODE_SPECIFIC; + Pulsing.colors.resize(1) ; modes.push_back(Pulsing); mode Breathing; - Breathing.name = "Breathing"; - Breathing.value = HUE_2_MODE_BREATHING; - Breathing.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR | MODE_FLAG_HAS_PER_LED_COLOR; - Breathing.speed_min = HUE_2_SPEED_SLOWEST; - Breathing.speed_max = HUE_2_SPEED_FASTEST; - Breathing.colors_min = 1; - Breathing.colors_max = 8; - Breathing.speed = HUE_2_SPEED_NORMAL; - Breathing.color_mode = MODE_COLORS_MODE_SPECIFIC; - Breathing.colors.resize(1); + Breathing.name = "Breathing"; + Breathing.value = HUE_2_MODE_BREATHING; + Breathing.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR | MODE_FLAG_HAS_PER_LED_COLOR; + Breathing.speed_min = HUE_2_SPEED_SLOWEST; + Breathing.speed_max = HUE_2_SPEED_FASTEST; + Breathing.colors_min = 1; + Breathing.colors_max = 8; + Breathing.speed = HUE_2_SPEED_NORMAL; + Breathing.color_mode = MODE_COLORS_MODE_SPECIFIC; + Breathing.colors.resize( 1); modes.push_back(Breathing); + + mode Candle; + Candle.name = "Candle"; + Candle.value = HUE_2_MODE_CANDLE; + Candle.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Candle.speed_min = HUE_2_SPEED_SLOWEST; + Candle.speed_max = HUE_2_SPEED_FASTEST; + Candle.colors_min = 1; + Candle.colors_max = 8; + Candle.speed = HUE_2_SPEED_NORMAL; + Candle.color_mode = MODE_COLORS_MODE_SPECIFIC; + Candle.colors.resize(1) ; + modes.push_back(Candle); + + mode StarryNight; + StarryNight.name = "Starry Night"; + StarryNight.value = HUE_2_MODE_STARRY_NIGHT; + StarryNight.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + StarryNight.speed_min = HUE_2_SPEED_SLOWEST; + StarryNight.speed_max = HUE_2_SPEED_FASTEST; + StarryNight.colors_min = 1; + StarryNight.colors_max = 1; + StarryNight.speed = HUE_2_SPEED_NORMAL; + StarryNight.color_mode = MODE_COLORS_MODE_SPECIFIC; + StarryNight.colors.resize(1); + modes.push_back(StarryNight); + + mode SuperRainbow; + SuperRainbow.name = "Super Rainbow"; + SuperRainbow.value = HUE_2_MODE_SUPER_RAINBOW; + SuperRainbow.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; + SuperRainbow.speed_min = HUE_2_SPEED_SLOWEST; + SuperRainbow.speed_max = HUE_2_SPEED_FASTEST; + SuperRainbow.speed = HUE_2_SPEED_NORMAL; + SuperRainbow.direction = MODE_DIRECTION_RIGHT; + SuperRainbow.color_mode = MODE_COLORS_NONE; + modes.push_back(SuperRainbow); + + mode RainbowPulse; + RainbowPulse.name = "Rainbow Pulse"; + RainbowPulse.value = HUE_2_MODE_RAINBOW_PULSE; + RainbowPulse.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; + RainbowPulse.speed_min = HUE_2_SPEED_SLOWEST; + RainbowPulse.speed_max = HUE_2_SPEED_FASTEST; + RainbowPulse.speed = HUE_2_SPEED_NORMAL; + RainbowPulse.direction = MODE_DIRECTION_RIGHT; + RainbowPulse.color_mode = MODE_COLORS_NONE; + modes.push_back(RainbowPulse); + + mode RainbowFlow; + RainbowFlow.name = "Rainbow Flow"; + RainbowFlow.value = HUE_2_MODE_RAINBOW_FLOW; + RainbowFlow.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; + RainbowFlow.speed_min = HUE_2_SPEED_SLOWEST; + RainbowFlow.speed_max = HUE_2_SPEED_FASTEST; + RainbowFlow.speed = HUE_2_SPEED_NORMAL; + RainbowFlow.direction = MODE_DIRECTION_RIGHT; + RainbowFlow.color_mode = MODE_COLORS_NONE; + modes.push_back(RainbowFlow); SetupZones(); }