Moisture Hot Fix: Added Status for WET/DRY, if status sudden change between not IDLED status, will change led color.

This commit is contained in:
Yohan Boujon 2023-12-18 19:39:47 +01:00
parent f268f00f50
commit d58f0ec9b4
2 changed files with 6 additions and 5 deletions

View file

@ -6,9 +6,9 @@ void plantLedLoop(float soilHumidity)
{ {
auto& led = MainComponent::GetInstance().getLed(); auto& led = MainComponent::GetInstance().getLed();
if ((soilHumidity < MoistureLevel::DRY) && (moisture_status == LedMoistureStatus::IDLE)) if ((soilHumidity < MoistureLevel::DRY) && (moisture_status != LedMoistureStatus::DRY))
{ {
moisture_status = LedMoistureStatus::WARNING; moisture_status = LedMoistureStatus::DRY;
led.setColor(LedNumber::LED_PLANT,LedColors::TOO_DRY,200); led.setColor(LedNumber::LED_PLANT,LedColors::TOO_DRY,200);
} }
else if (soilHumidity >= MoistureLevel::DRY && soilHumidity < MoistureLevel::HUMID) else if (soilHumidity >= MoistureLevel::DRY && soilHumidity < MoistureLevel::HUMID)
@ -16,9 +16,9 @@ void plantLedLoop(float soilHumidity)
led.setColor(LedNumber::LED_PLANT,LedColors::LED_OFF); led.setColor(LedNumber::LED_PLANT,LedColors::LED_OFF);
moisture_status = LedMoistureStatus::IDLE; moisture_status = LedMoistureStatus::IDLE;
} }
else if (moisture_status == LedMoistureStatus::IDLE) else if ((soilHumidity >= MoistureLevel::HUMID) && (moisture_status != LedMoistureStatus::WET))
{ {
moisture_status = LedMoistureStatus::WARNING; moisture_status = LedMoistureStatus::WET;
led.setColor(LedNumber::LED_PLANT,LedColors::TOO_WET,200); led.setColor(LedNumber::LED_PLANT,LedColors::TOO_WET,200);
} }
} }

View file

@ -16,7 +16,8 @@ namespace MoistureLevel {
enum class LedMoistureStatus { enum class LedMoistureStatus {
IDLE, IDLE,
WARNING, DRY,
WET
}; };
void plantLedLoop(float soilHumidity); void plantLedLoop(float soilHumidity);