smart-oil-heating-control-s.../main/main.c
2024-12-11 22:03:49 +01:00

108 lines
2.6 KiB
C

#include <stdio.h>
#include "esp_log.h"
#include "driver/i2c.h"
#include <esp_system.h>
#include <bmp280.h>
#include <dht.h>
#include <aht.h>
#include <veml7700.h>
#include <string.h>
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "freertos/timers.h"
#include "nvs_flash.h"
#include "safety.h"
#include "metrics.h"
#include "outputs.h"
#include "inputs.h"
#define I2C_MASTER_SCL 19
#define I2C_MASTER_SDA 18
static const char *TAG = "smart-oil-heater-control-system";
void app_main(void)
{
ESP_LOGI(TAG, "starting ...");
// Initialize NVS
esp_err_t ret = nvs_flash_init();
if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND)
{
ESP_ERROR_CHECK(nvs_flash_erase());
ret = nvs_flash_init();
}
ESP_ERROR_CHECK(ret);
initOutputs();
initInputs();
initSafety();
initMetrics();
/*TODO: will be done by safety on the future*/
setCirculationPumpState(DISABLED);
setBurnerState(DISABLED);
ESP_LOGI(TAG, "running main loop now");
while (1)
{
vTaskDelay(pdMS_TO_TICKS(2048));
/*
if (getBurnerError() == FAULT)
{
ESP_LOGI(TAG, "Burner FAULT");
}
else
{
ESP_LOGI(TAG, "Burner OK");
}
setCirculationPumpState(ENABLED);
setBurnerState(ENABLED);
if (getBurnerState() == ENABLED)
{
ESP_LOGI(TAG, "Burner ENABLED");
}
else
{
ESP_LOGI(TAG, "Burner DISABLED");
}
if (getCirculationPumpState() == ENABLED)
{
ESP_LOGI(TAG, "CirculationPump ENABLED");
}
else
{
ESP_LOGI(TAG, "CirculationPump DISABLED");
}
ESP_LOGI(TAG,"\n");
vTaskDelay(pdMS_TO_TICKS(2000));
setCirculationPumpState(DISABLED);
setBurnerState(DISABLED);
if (getBurnerState() == ENABLED)
{
ESP_LOGI(TAG, "Burner ENABLED");
}
else
{
ESP_LOGI(TAG, "Burner DISABLED");
}
if (getCirculationPumpState() == ENABLED)
{
ESP_LOGI(TAG, "CirculationPump ENABLED");
}
else
{
ESP_LOGI(TAG, "CirculationPump DISABLED");
}
*/
}
}