/* SPDX-License-Identifier: GPL-3.0-or-later * Copyright 2022 King Kévin */ #include #include #include #include "esp_log.h" #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include "tinyusb.h" #include "tusb_cdc_acm.h" #include "tusb_dfu_rt.h" #include "tusb_console.h" #include "sdkconfig.h" static const char *TAG = "main"; void app_main(void) { // setup USB CDC ACM for printing ESP_LOGI(TAG, "USB initialization"); tinyusb_config_t tusb_cfg = { 0 }; // the configuration uses default values ESP_ERROR_CHECK( tinyusb_driver_install(&tusb_cfg) ); // configure USB tinyusb_config_cdcacm_t amc_cfg = { 0 }; // the configuration uses default values ESP_ERROR_CHECK( tusb_cdc_acm_init(&amc_cfg) ); // configure CDC ACM ESP_ERROR_CHECK( tusb_dfu_rf_init() ); // configure DFU runtime (ensures we can use it) esp_tusb_init_console(TINYUSB_CDC_ACM_0); // log to USB ESP_LOGI(TAG, "USB initialized"); ESP_LOGI(TAG, "application ready"); while (1) { vTaskDelay(1000 / portTICK_PERIOD_MS); } }