# smart-oil-heating-control-system ## Software ### Design ```mermaid classDiagram Inputs <|-- Control Outputs <|-- Control Inputs <|-- Safety Outputs <|--|> Safety Inputs <|-- HTTP_Metrics Outputs <|-- HTTP_Metrics Control <|-- HTTP_Metrics Safety <|-- HTTP_Metrics class Inputs{ +initInputs() -taskInput() +getChamberTemperature() +getOutdoorTemperature() +getInletFlowTemperature() +getReturnFlowTemperature() +getBurnerError() } class Outputs{ +initOutputs() +getCirculationPumpState() +setCirculationPumpState() +getBurnerState() +setBurnerState() } class Control{ +taskControl() -timetable } class Safety{ +taskSafety() +setSafeState() -checkSensorSanity() +getSafetyState() } class Metrics{ +initMetrics() -taskMetrics() -metrics +event_handler() +connect_wifi() +setMetrics() } ``` ### Hardware | Function| ESP32 | ES32C14 | |-----------------------|-------|---------------------------| | CirculationPump | IO27 | Relay 1 NO1 | | Burner | IO14 | Relay 1 NC2 | | Burner Fault | IO19 | Digital Input IN1 | | Temperature DS10B20 | IO04 | 1-Wire |