4#ifndef SRC_SUPLA_CONTROL_BLINKING_LED_H_
5#define SRC_SUPLA_CONTROL_BLINKING_LED_H_
7#include <supla/element.h>
15enum LedState { NOT_INITIALIZED, ON, OFF };
23 explicit BlinkingLed(uint8_t outPin,
bool invert =
false);
32 void setInvertedLogic(
bool invertedLogic);
36 virtual void setCustomSequence(uint32_t onDurationMs,
37 uint32_t offDurationMs,
38 uint32_t pauseDurrationMs = 0,
40 uint8_t repeatLimit = 0,
41 bool startWithOff =
true);
43 void setAlwaysOffSequence();
44 void setAlwaysOnSequence();
49 void setInvert(
bool newInvert);
57 uint8_t onLimitCounter = 0;
59 uint8_t repeatLimit = 0;
60 uint32_t onDuration = 0;
61 uint32_t offDuration = 100;
62 uint32_t pauseDuration = 0;
63 uint32_t lastUpdate = 0;
64 LedState state = NOT_INITIALIZED;
Definition blinking_led.h:16
void onInit() override
Third method called on element in SuplaDevice.begin()
Definition blinking_led.cpp:35
void onTimer() override
Method called on timer interupt.
Definition blinking_led.cpp:45
Base class for all elements of SuplaDevice.
Definition element.h:27