So here is what I think I need to be doing?
struct CreeXMLWhite {
static constexpr float MaxAmps = 1.0;
static constexpr float MaxVolts = 3.7;
static constexpr float P2Amps = 0.7;
static constexpr float P2Volts = 3.1;
static constexpr float R = 0.0;
static const int Red = 255;
static const int Green = 255;
static const int Blue = 255;
};
struct CreeXMLRed {
static constexpr float MaxAmps = 1.0;
static constexpr float MaxVolts = 2.6;
static constexpr float P2Amps = 0.7;
static constexpr float P2Volts = 2.25;
static constexpr float R = 0.0;
static const int Red = 255;
static const int Green = 0;
static const int Blue = 0;
};
struct CreeXMLBlue {
static constexpr float MaxAmps = 1.0;
static constexpr float MaxVolts = 3.7;
static constexpr float P2Amps = 0.7;
static constexpr float P2Volts = 3.1;
static constexpr float R = 0.0;
static const int Red = 0;
static const int Green = 0;
static const int Blue = 255;
};
struct CreeXMLGreen {
static constexpr float MaxAmps = 1.0;
static constexpr float MaxVolts = 3.9;
static constexpr float P2Amps = 0.7;
static constexpr float P2Volts = 3.3;
static constexpr float R = 0.0;
static const int Red = 0;
static const int Green = 255;
static const int Blue = 0;
};
};
Would this be right, and then I have to make a preset that uses all 4 values, as this is an RGBW led?
Then the Blade config that has all 4 leds.
BladeConfig blades[] = {
{ 0, SimpleBladePtr<CreeXMLRed, CreeXMLGreen, CreeXMLBlue, CreeXMLWhite>(), CONFIGARRAY(presets) },
};
#endif
now the presets are going to difficult. Maybe it might be easier to set the White LED as a second blade and alster it with the presets?
I may have to define some led setups that are RGBW instead of RGB?
EDIT: So I found the color class. Debating if I should fuss with it, so that I can control the level of White light.