more contro fault states

This commit is contained in:
Hendrik Schutter 2024-12-25 17:26:26 +01:00
parent 92caebd4c5
commit 2717f4a8e6
3 changed files with 14 additions and 12 deletions

View File

@ -131,14 +131,15 @@ wifi_rssi -63
##### Control Loop ##### Control Loop
- control_state - control_state
| Enum eControlState in [control.h](main/control.h) | Value | Description | | Enum eControlState in [control.h](main/control.h) | Value | Description |
|---------------------------------------------------|-------|-----------------------| |---------------------------------------------------|-------|------------------------------------|
| CONTROL_STARTING | 0 | | | CONTROL_STARTING | 0 | |
| CONTROL_HEATING | 1 | Burner running | | CONTROL_HEATING | 1 | Burner running |
| CONTROL_OUTDOOR_TOO_WARM | 2 | Heating not needed | | CONTROL_OUTDOOR_TOO_WARM | 2 | Heating not needed |
| CONTROL_RETURN_FLOW_TOO_WARM | 3 | Heating not needed | | CONTROL_RETURN_FLOW_TOO_WARM | 3 | Heating not needed |
| CONTROL_BURNER_FAULT | 4 | Burner reported fault | | CONTROL_BURNER_FAULT | 4 | Burner reported fault |
| CONTROL_FAULT | 5 | Unable to control | | CONTROL_FAULT_SAFETY | 5 | Unable to control due safety fault |
| CONTROL_FAULT_SNTP | 6 | Unable to control due SNTP fault |
##### SNTP Client ##### SNTP Client
- sntp_state - sntp_state

View File

@ -61,19 +61,19 @@ void taskControl(void *pvParameters)
if (getSafetyState() != SAFETY_NO_ERROR) if (getSafetyState() != SAFETY_NO_ERROR)
{ {
ESP_LOGW(TAG, "Control not possible due to safety fault!"); ESP_LOGW(TAG, "Control not possible due to safety fault!");
sControlState = CONTROL_FAULT; sControlState = CONTROL_FAULT_SAFETY;
continue; continue;
} }
if (getSntpState() != SYNC_SUCCESSFUL) if (getSntpState() != SYNC_SUCCESSFUL)
{ {
ESP_LOGW(TAG, "Control not possible due to sntp fault!"); ESP_LOGW(TAG, "Control not possible due to sntp fault!");
sControlState = CONTROL_FAULT; sControlState = CONTROL_FAULT_SNTP;
continue; continue;
} }
sControlTemperatureEntry currentControlEntry = getCurrentTemperatureEntry(); sControlTemperatureEntry currentControlEntry = getCurrentTemperatureEntry();
ESP_LOGI(TAG, "Control Entry Hour: %i Minute: %i ChamberTemp: %lf ReturnFlowTemp: %lf", currentControlEntry.timestamp.hour, currentControlEntry.timestamp.minute, currentControlEntry.fChamberTemperature, currentControlEntry.fReturnFlowTemperature); // ESP_LOGI(TAG, "Control Entry Hour: %i Minute: %i ChamberTemp: %lf ReturnFlowTemp: %lf", currentControlEntry.timestamp.hour, currentControlEntry.timestamp.minute, currentControlEntry.fChamberTemperature, currentControlEntry.fReturnFlowTemperature);
if (bHeatingInAction == true) if (bHeatingInAction == true)
{ {

View File

@ -10,7 +10,8 @@ typedef enum _ControlState
CONTROL_OUTDOOR_TOO_WARM, CONTROL_OUTDOOR_TOO_WARM,
CONTROL_RETURN_FLOW_TOO_WARM, CONTROL_RETURN_FLOW_TOO_WARM,
CONTROL_BURNER_FAULT, CONTROL_BURNER_FAULT,
CONTROL_FAULT, CONTROL_FAULT_SAFETY,
CONTROL_FAULT_SNTP,
} eControlState; } eControlState;
typedef enum _ControlWeekday typedef enum _ControlWeekday