#include "system.h"
#include "wifi.h"
#include "web.h"
#include "mqtt.h"
#include "lux.h"

#include <stdio.h>
#include <FreeRTOS.h>
#include <task.h>

#include <espressif/esp_common.h>
#include <esp/uart.h>

void user_init(void)
{
    uart_set_baud(0, 115200);
    printf("SDK version: %s\n", sdk_system_get_sdk_version());

    sdk_wifi_set_sleep_type(WIFI_SLEEP_MODEM);

    system_init_config();

    wifi_available_semaphore = xSemaphoreCreateBinary();

    xTaskCreate(wifi_task, "wifi_task", 1024, NULL, 1, NULL);

    xTaskCreate(&httpd_task, "httpd_task", 1024, NULL, 2, NULL);

    xTaskCreate(&lux_task, "lux_task", 512, NULL, 1, NULL);
}
