19#ifndef SRC_SUPLA_DEVICE_STATUS_LED_H_
20#define SRC_SUPLA_DEVICE_STATUS_LED_H_
22#include <supla/control/blinking_led.h>
30enum LedMode : uint8_t {
31 LED_ON_WHEN_CONNECTED ,
32 LED_OFF_WHEN_CONNECTED,
34 LED_IN_CONFIG_MODE_ONLY
43enum LedSequence : uint8_t {
46 REGISTERED_AND_READY ,
49 PACZKOW_WE_HAVE_A_PROBLEM ,
60 explicit StatusLed(
Supla::Io::Base *io, uint8_t outPin,
bool invert =
false);
61 explicit StatusLed(uint8_t outPin,
bool invert =
false);
69 void setCustomSequence(uint32_t onDurationMs,
70 uint32_t offDurationMs,
71 uint32_t pauseDurrationMs = 0,
73 uint8_t repeatLimit = 0,
74 bool startWithOff =
true)
override;
76 enum LedSequence getCurrentSequence()
const;
81 void setAutoSequence();
84 void setMode(LedMode newMode);
85 LedMode getMode()
const;
86 void storeModeToConfig();
87 void setDefaultMode(
enum LedMode newMode);
88 void setUseDeviceConfig(
bool value);
92 LedSequence currentSequence = NETWORK_CONNECTING;
93 LedMode ledMode = LED_ON_WHEN_CONNECTED;
94 int8_t defaultMode = 0;
95 bool useDeviceConfig =
true;
Definition SuplaDevice.h:153
Definition blinking_led.h:34
void onLoadConfig(SuplaDeviceClass *) override
First method called on element in SuplaDevice.begin().
Definition status_led.cpp:44
void onDeviceConfigChange(uint64_t fieldBit) override
Method called when device config is changed.
Definition status_led.cpp:352
void iterateAlways() override
Method called on each SuplaDevice iteration.
Definition status_led.cpp:112