diff --git a/main/control.c b/main/control.c index f8c9eb0..f540b80 100644 --- a/main/control.c +++ b/main/control.c @@ -13,10 +13,10 @@ // Temperature thresholds #define RETURN_FLOW_TEMPERATURE_LOWER_LIMIT_DAY 30.0f #define RETURN_FLOW_TEMPERATURE_LOWER_LIMIT_NIGHT 25.0f -#define CHAMBER_TEMPERATURE_TARGET 80.0f // Max cutoff temperature -#define CHAMBER_TEMPERATURE_THRESHOLD 45.0f // Min threshold for burner enable -#define OUTDOOR_TEMPERATURE_THRESHOLD 15.0f // Min threshold for burner enable -#define BURNER_FAULT_DETECTION_THRESHOLD (60U * 15U) // Burner fault detection after 15 minutes +#define CHAMBER_TEMPERATURE_TARGET 80.0f // Max cutoff temperature +#define CHAMBER_TEMPERATURE_THRESHOLD 45.0f // Min threshold for burner enable +#define OUTDOOR_TEMPERATURE_THRESHOLD 15.0f // Min threshold for burner enable +#define BURNER_FAULT_DETECTION_THRESHOLD (60U * 4U) // Burner fault detection after 4 minutes static const char *TAG = "smart-oil-heater-control-system-control"; static eControlState sControlState = CONTROL_STARTING; @@ -127,7 +127,7 @@ void taskControl(void *pvParameters) { if (getBurnerError() == FAULT) { - ESP_LOGW(TAG, "Burner fault detected after timeout!"); + ESP_LOGW(TAG, "Burner fault detected after threshold!"); bHeatingInAction = false; eBurnerState = BURNER_FAULT; sControlState = CONTROL_FAULT_BURNER; @@ -137,6 +137,7 @@ void taskControl(void *pvParameters) } else { + ESP_LOGW(TAG, "No Burner fault detected after threshold!"); eBurnerState = BURNER_FIRED; } } @@ -157,6 +158,7 @@ void taskControl(void *pvParameters) (getChamberTemperature().fCurrentValue <= CHAMBER_TEMPERATURE_THRESHOLD)) { ESP_LOGI(TAG, "Enabling burner: Return flow temperature target reached"); + eBurnerState = BURNER_UNKNOWN; bHeatingInAction = true; setCirculationPumpState(ENABLED); setBurnerState(ENABLED);