I was aware of this delay and it's not so much about the boot messages per se. It's more about printf, ESP_ERROR_CHECK, ESP_LOGI, etc. So everything that would go to the console/stdout.
I found this issue:
https://github.com/espressif/arduino-esp32/issues/8080
But that didn't work. I do have USB CDC On Boot enabled and using ESP32S2 Dev Module in the IDE with the following code:
[Codebox]
#include "esp_log.h"
static const char *TAG = "Test Tag";
void setup() {
Serial.begin(115200);
Serial.setDebugOutput(true);
delay(500);
}
void loop() {
Serial.println("serial print");
printf("printf\n");
ESP_LOGI(TAG, "esp_log");
log_i("log_i");
delay(500);
}
[/Codebox]
But still (with this setDebugOutput(true)) it only prints:
serial print
serial print
...
Here
https://docs.espressif.com/projects/ard ... t-printing it says:
If you use the USB connector, you should have that enabled (-D ARDUINO_USB_CDC_ON_BOOT=1) and set USB Mode to “Hardware CDC and JTAG” (-D ARDUINO_USB_MODE=0).
I remember using these -D flags from when I used PIO but I don't know how to set them directly using the Arduino IDE. The "USB CDC On Boot" I can set (and that turns on the Serial.print() statements. But the "USB Mode" isn't there.
Later I learned that this is because of the "boards.txt" and the definition there of ESP32S2 Dev Module (which I am using for being close to the actual S2-mini-2 module I'm using). I also learned that the CLI can use flags. But both, editing the boards.txt or figuring out how to compile using the CLI would take me days to learn I think.
I just wonder if there isn't a more simple way to get the console output going or at least where in code this is set. The Serial.setDebugOutput(true) working would be nice. Here (
https://github.com/espressif/arduino-es ... sions/7639) it says it should work. But nomm.
Thnx