diff --git a/Controllers/RGBFusion2USBController/RGBController_RGBFusion2USB.cpp b/Controllers/RGBFusion2USBController/RGBController_RGBFusion2USB.cpp index 82117212c..9ccb387d7 100644 --- a/Controllers/RGBFusion2USBController/RGBController_RGBFusion2USB.cpp +++ b/Controllers/RGBFusion2USBController/RGBController_RGBFusion2USB.cpp @@ -239,7 +239,7 @@ void RGBController_RGBFusion2USB::SetupZones() if (!boolSingleLED) { - controller->SetLedCount(zones[zone_idx].leds_count); + controller->SetLedCount(zl->second.at(0).header, zones[zone_idx].leds_count); controller->DisableBuiltinEffect(0, 0x3); } diff --git a/Controllers/RGBFusion2USBController/RGBFusion2USBController.cpp b/Controllers/RGBFusion2USBController/RGBFusion2USBController.cpp index 524b8cd79..36aba7c94 100644 --- a/Controllers/RGBFusion2USBController/RGBFusion2USBController.cpp +++ b/Controllers/RGBFusion2USBController/RGBFusion2USBController.cpp @@ -111,10 +111,10 @@ void RGBFusion2USBController::SetCalibration() SendPacket(buffer); } -void RGBFusion2USBController::SetLedCount(unsigned int count) +void RGBFusion2USBController::SetLedCount(unsigned int led, unsigned int count) { - LEDCount s0 = LedCountToEnum(count); - SendPacket(0x34, s0 | (s0 << 4)); // D_LED1 | D_LED2 + led == HDR_D_LED1_RGB ? D_LED1_count = LedCountToEnum(count) : D_LED1_count = LedCountToEnum(count); + SendPacket(0x34, D_LED1_count | (D_LED2_count << 4)); } bool RGBFusion2USBController::DisableBuiltinEffect(int enable_bit, int mask) diff --git a/Controllers/RGBFusion2USBController/RGBFusion2USBController.h b/Controllers/RGBFusion2USBController/RGBFusion2USBController.h index eda678f0b..28780d977 100644 --- a/Controllers/RGBFusion2USBController/RGBFusion2USBController.h +++ b/Controllers/RGBFusion2USBController/RGBFusion2USBController.h @@ -169,7 +169,7 @@ public: ); void SetLEDEffect(unsigned int led, int mode, unsigned int speed, bool random, unsigned char red, unsigned char green, unsigned char blue); - void SetLedCount(unsigned int count); + void SetLedCount(unsigned int led, unsigned int count); void SetMode(int mode); bool ApplyEffect(); bool DisableBuiltinEffect(int enable_bit, int mask); @@ -195,4 +195,6 @@ private: std::string chip_id; int effect_disabled = 0; int report_id = 0xCC; + LEDCount D_LED1_count; + LEDCount D_LED2_count; };