missing sensor detection, delta trigger moisture working
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
#ifndef CONTROLLER_CONFIG_H
|
||||
#define CONTROLLER_CONFIG_H
|
||||
|
||||
#define FIRMWARE_VERSION "1.0.7"
|
||||
#define FIRMWARE_VERSION "1.0.9"
|
||||
|
||||
#define ADC_TO_VOLT(adc) ((adc) * 3.3 ) / 4095)
|
||||
#define ADC_TO_VOLT_WITH_MULTI(adc, multi) (((adc)*3.3 * (multi)) / 4095)
|
||||
@@ -64,7 +64,7 @@
|
||||
#define PANIK_MODE_DEEPSLEEP_US (PANIK_MODE_DEEPSLEEP * 1000 * 1000)
|
||||
|
||||
#define TEMPERATURE_DELTA_TRIGGER_IN_C 1
|
||||
#define MOIST_DELTA_TRIGGER_ADC 1337
|
||||
#define MOIST_DELTA_TRIGGER_ADC 10
|
||||
#define SOLAR_DELTA_VOLT_ADC 3
|
||||
#define LIPO_DELTA_VOLT_ADC 0.2
|
||||
|
||||
|
@@ -37,6 +37,7 @@ HomieNode stayAlive("stay", "alive", "alive");
|
||||
/**
|
||||
*********************************** Settings *******************************
|
||||
*/
|
||||
HomieSetting<long> maxTimeBetweenMQTTUpdates("mqttSleep", "time in seconds to start into mode2");
|
||||
HomieSetting<long> deepSleepTime("deepsleep", "time in seconds to sleep (0 deactivats it)");
|
||||
HomieSetting<long> deepSleepNightTime("nightsleep", "time in seconds to sleep (0 uses same setting: deepsleep at night, too)");
|
||||
HomieSetting<long> wateringDeepSleep("pumpdeepsleep", "time seconds to sleep, while a pump is running");
|
||||
|
@@ -14,6 +14,7 @@
|
||||
#include <Homie.h>
|
||||
|
||||
#define DEACTIVATED_PLANT 5000
|
||||
#define MISSING_SENSOR 5001
|
||||
|
||||
typedef struct PlantSettings_t
|
||||
{
|
||||
|
@@ -48,8 +48,6 @@ public:
|
||||
*/
|
||||
void addSenseValue(void);
|
||||
|
||||
int getSensorValue() { return moistureRaw.getMedian(); }
|
||||
|
||||
void deactivatePump(void);
|
||||
|
||||
void activatePump(void);
|
||||
@@ -73,7 +71,10 @@ public:
|
||||
}
|
||||
|
||||
float getCurrentMoisture()
|
||||
{
|
||||
{
|
||||
if(moistureRaw.getCount()==0){
|
||||
return MISSING_SENSOR;
|
||||
}
|
||||
return this->moistureRaw.getMedian();
|
||||
}
|
||||
long getSettingsMoisture()
|
||||
@@ -108,7 +109,11 @@ public:
|
||||
return false;
|
||||
}
|
||||
|
||||
return (this->mSetting->pPumpCooldownInHours->get() > sinceLastActivation / 3600);
|
||||
return (getCooldownInSeconds() > sinceLastActivation);
|
||||
}
|
||||
|
||||
long getCooldownInSeconds(){
|
||||
return this->mSetting->pPumpCooldownInHours->get()*60*60;
|
||||
}
|
||||
|
||||
bool isAllowedOnlyAtLowLight(void)
|
||||
|
Reference in New Issue
Block a user