Added new mode: Scheduler -- clock based switching of lights
This commit is contained in:
@@ -9,7 +9,6 @@
|
||||
|
||||
static LEDStateEngine theLEDStateEngine;
|
||||
static int ticks = 0;
|
||||
static int brightness = 50;
|
||||
|
||||
int getTicks(void) { return ticks; }
|
||||
|
||||
@@ -27,7 +26,6 @@ void LEDStateEngine_setNumberOfLeds(int numberOfLeds) {
|
||||
void LEDStateEngine_init(int ledPin, int numberOfLeds) {
|
||||
theLEDStateEngine.comment = "";
|
||||
theLEDStateEngine.pin = ledPin;
|
||||
brightness = mgos_sys_config_get_led_brightness();
|
||||
LEDStateEngine_setNumberOfLeds(numberOfLeds);
|
||||
for (int i=0; i<numberOfLeds; ++i) {
|
||||
LEDState_init(i, LEDDefinition_get(i));
|
||||
@@ -61,24 +59,11 @@ void LEDStateEngine_tick() {
|
||||
double LEDStateEngine_getMinTickTime() { return 1000 * minTickTime; }
|
||||
double LEDStateEngine_getMaxTickTime() { return 1000 * maxTickTime; }
|
||||
|
||||
static uint8_t adjustBrightness(uint8_t value) {
|
||||
return (value * brightness)/100;
|
||||
}
|
||||
|
||||
int LEDStateEngine_getBrightness() { return brightness; }
|
||||
void LEDStateEngine_setBrightness(int newBrightness) {
|
||||
if (newBrightness > 0 && newBrightness <= 100) {
|
||||
brightness = newBrightness;
|
||||
} else {
|
||||
LOG(LL_ERROR, ("invalid brightness value %d", newBrightness));
|
||||
}
|
||||
}
|
||||
|
||||
static void updateLedDisplay(LEDState *state) {
|
||||
NeoPixel_set(state->index,
|
||||
adjustBrightness(state->currentColor.red),
|
||||
adjustBrightness(state->currentColor.green),
|
||||
adjustBrightness(state->currentColor.blue));
|
||||
state->currentColor.red,
|
||||
state->currentColor.green,
|
||||
state->currentColor.blue);
|
||||
}
|
||||
|
||||
void LEDState_tick(int ledNum) {
|
||||
|
||||
Reference in New Issue
Block a user