// // Protofusion ESP32S3 Template // #include #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include "freertos/event_groups.h" #include "esp_system.h" #include "esp_event.h" #include "esp_log.h" #include "nvs_flash.h" #include "sdkconfig.h" #include "osc_control.h" #include "wifi.h" // #include "usb_cdc.h" #include "can.h" #include "display.h" #include "squeeze.h" #include "ledstrip.h" #include "display_gui.h" // Private variables static const char *TAG = "main"; // Application entry point void app_main(void) { // Initialize usb-cdc interface // usb_cdc_init(); // 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); // Initialize display display_init(); display_gui_homescreen(); // Connect to wifi wifi_init(); ledstrip_init(); // Initialize OSC osc_init(); squeeze_init(); // Initialize canbus //can_init(); // Start tasks xTaskCreatePinnedToCore(ledstrip_refresh, "ledstrip_refresh", 4096, NULL, 10, NULL, 1); xTaskCreatePinnedToCore(display_gui_process, "display_gui_process", 4096, NULL, 10, NULL, 1); while(1) { vTaskDelay(pdMS_TO_TICKS(100)); } }