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_state
| Enum eControlState in [control.h](main/control.h) | Value | Description |
|---------------------------------------------------|-------|-----------------------|
| CONTROL_STARTING | 0 | |
| CONTROL_HEATING | 1 | Burner running |
| CONTROL_OUTDOOR_TOO_WARM | 2 | Heating not needed |
| CONTROL_RETURN_FLOW_TOO_WARM | 3 | Heating not needed |
| CONTROL_BURNER_FAULT | 4 | Burner reported fault |
| CONTROL_FAULT | 5 | Unable to control |
| Enum eControlState in [control.h](main/control.h) | Value | Description |
|---------------------------------------------------|-------|------------------------------------|
| CONTROL_STARTING | 0 | |
| CONTROL_HEATING | 1 | Burner running |
| CONTROL_OUTDOOR_TOO_WARM | 2 | Heating not needed |
| CONTROL_RETURN_FLOW_TOO_WARM | 3 | Heating not needed |
| CONTROL_BURNER_FAULT | 4 | Burner reported fault |
| CONTROL_FAULT_SAFETY | 5 | Unable to control due safety fault |
| CONTROL_FAULT_SNTP | 6 | Unable to control due SNTP fault |
##### SNTP Client
- sntp_state

View File

@ -61,19 +61,19 @@ void taskControl(void *pvParameters)
if (getSafetyState() != SAFETY_NO_ERROR)
{
ESP_LOGW(TAG, "Control not possible due to safety fault!");
sControlState = CONTROL_FAULT;
sControlState = CONTROL_FAULT_SAFETY;
continue;
}
if (getSntpState() != SYNC_SUCCESSFUL)
{
ESP_LOGW(TAG, "Control not possible due to sntp fault!");
sControlState = CONTROL_FAULT;
sControlState = CONTROL_FAULT_SNTP;
continue;
}
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)
{

View File

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