No output from ESP_LOGD

I switched from arduino

framework = Arduino
platform = espressif32

to espidf+arduino:

framework = Arduino, espidf
platform = espressif32

And after this, I no longer get any output from my ESP_LOGD statements. ESP_LOGE, ESP_LOGW, and ESP_LOGI still work.

I assume I have to turn on some debug flag but I have tried everything I can find and nothing works. I have tried:

  1. build flags:
build_flags = 
  1. sdkconfig settings

  1. local headers


  1. code wildcards

esp_log_level_set("*", ESP_LOG_DEBUG);

None of this works. I must be missing some really obvious setting but I cannot find it and none of the threads I can find have the solution either.

The weird thing is, I am getting some debug [D] messages from internal libraries such as:

[ 6796][D][WiFiGeneric.cpp:1039] _eventCallback(): Arduino Event: 0 - WIFI_READY

I found that adding this will display the debug items for my program, but also all the debug items for all other libraries which rapidly overwhelms all of the terminal buffer.


I added these to main() make that manageable:

  // Default everything to WARN except my APP logs
  esp_log_level_set("*", ESP_LOG_WARN);
  esp_log_level_set("MyApp", ESP_LOG_DEBUG);

  // show what levels are supported
  ESP_LOGE("MyApp, "Error Reporting On");
  ESP_LOGW("MyApp, "Warning Reporting On");
  ESP_LOGI("MyApp, "Information Reporting On");
  ESP_LOGD("MyApp, "Debug Reporting On");
  ESP_LOGV("MyApp, "Verbose Reporting On");

I don’t feel this is the right solution. I would prefer a flag exists that enabled my code’s ESP_LOGD output without displaying the debug output for every other included library.