diff --git a/components/logger/CMakeLists.txt b/components/logger/CMakeLists.txt index 38b158bf5..124c2b2cc 100644 --- a/components/logger/CMakeLists.txt +++ b/components/logger/CMakeLists.txt @@ -1,6 +1,6 @@ if (ESP_PLATFORM) # set component requirements for ESP32 - set(COMPONENT_REQUIRES "format esp_timer") + set(COMPONENT_REQUIRES "format esp_timer log") else() # set component requirements for generic set(COMPONENT_REQUIRES "format") diff --git a/components/logger/example/CMakeLists.txt b/components/logger/example/CMakeLists.txt index 6e185082c..02b5e6cde 100644 --- a/components/logger/example/CMakeLists.txt +++ b/components/logger/example/CMakeLists.txt @@ -12,7 +12,9 @@ set(EXTRA_COMPONENT_DIRS set( COMPONENTS - "main esptool_py logger" + # NOTE: we add esp_vfs_console to be able to see the log output on the console + # if we are running on ESP32-S2 and have enabled USB-CDC console output + "main esptool_py logger esp_vfs_console" CACHE STRING "List of components to include" ) diff --git a/components/logger/include/logger.hpp b/components/logger/include/logger.hpp index 0b3ed48e7..05a338f00 100644 --- a/components/logger/include/logger.hpp +++ b/components/logger/include/logger.hpp @@ -7,8 +7,12 @@ #include #if defined(ESP_PLATFORM) -#include +// include sdkconfig before the rest #include + +// esp-idf includes +#include +#include #endif #include "format.hpp" @@ -419,10 +423,10 @@ rate limit. @note Only calls that have _rate_limited suffixed will be rate limit */ static std::string get_time() { #if defined(ESP_PLATFORM) - // use esp_timer_get_time to get the time in microseconds - uint64_t time = esp_timer_get_time(); - uint64_t seconds = time / 1e6f; - uint64_t milliseconds = (time % 1000000) / 1e3f; + // use esp_log_timestamp to get the time in milliseconds + uint64_t time = esp_log_timestamp(); + uint64_t seconds = time / 1'000; + uint64_t milliseconds = (time % 1'000); return fmt::format("{}.{:03}", seconds, milliseconds); #else // get the elapsed time since the start of the logging system as floating