Esp32 (family device) BIG frustration am desperate

I uploading a (blink) sketch after I went tools selected Arduino nano esp32, but under >tools>port> board, was labeled com8 (esp32 family device)
and then selected it obviously, then after uploaded it gave this

Sketch uses 286157 bytes (9%) of program storage space. Maximum is 3145728 bytes.
Global variables use 30552 bytes (9%) of dynamic memory, leaving 297128 bytes for local variables. Maximum is 327680 bytes.
dfu-util 0.11-arduino4

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2021 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util / Tickets

No DFU capable USB device available
Failed uploading: uploading error: exit status 74

Ive been attempting to use this damn thing with no luck, I originally purchased of Arduino website.

Hi @duino_neeewb. Please try this experiment and then report back with the results:

  1. Connect the Nano ESP32 board to your computer with the USB cable.
  2. Press and release the button on the board marked "RST".
  3. Wait for the RGB LED near the "RST" button to turn on.
    β“˜ It does this almost immediately, but you do need to wait for it.
  4. While the RGB LED is still on (it only stays on for a second so you need to be somewhat quick), press and release the "RST" button again.
    The green LED of the RGB LED should now start pulsing. If not, repeat the process in case you didn't get the timing quite right.

Now please reply here on the forum thread to tell us whether the LED went into the pulsing state described above when you performed the instructions.

Hi,

a short comment from me.

This handling is a big problem and very annoying in the long run. The XIAO boards, for example, prove that there is another way. They behave exactly like an Uno R3, Mega2560 and others. The problem with the Nano ESP32 is also that the serial output on the USB does not work and you are forced to reflash. Only because of the serial output.
I use a second USART USB adapter so that I don't have to reflash all the time. It always works after reset, flashing and generally after plugging in the USB cable.

The handling should be considered for future Arduino products. If I hadn't bought a XIAO, I would have gone mad with the Nano ESP32.

Are you saying that

void setup()
{
    Serial.begin(115200);
}

void loop()
{
    static byte x = 0;
    Serial.println(x++);
    delay(1000);
}

Produces no output ?

I assume that you are aware that the serial interface on pins 0 and 1 of the board is Serial0 and that Serial1 can be assigned to any free GPIO pins

After flashing, the serial output always works. However, if you reset the Nano afterwards or reconnect the USB cable, the program on the ESP works but nothing is output on the serial. The port is also not present in the IDE. You have to put the ESP into flash mode again, flash the sketch and then the USART with USB will work again.

I have just tried exactly what you describe using the sketch that I posted

Uploading the code starts the sketch and the count is output to the Serial monitor as expected

Pressing the reset button on the board starts the count again and it is output to the Serial monitor as expected

Unplugging the board from the USB connection and plugging it back in again starts the count again and it is output to the Serial monitor as expected

The COM port remains selectable from the IDE

That doesn't work for me. TO also has the same problem.

Which version of the board files do you have installed ?

I have 2.0.18-arduino.5 Arduino ESP32 and 3.1.1 Espressif ESP32 Core.
I almost only use the Espressif Core.

Presumably not with the Nano ESP32 though

Why should I not use the Espressif Core with the Arduino Nano ESP32? I have been using the Espressif Core with the Arduino Nano ESP32 for many weeks. I don't understand your answer.

I am now testing this again with the Arduino Core. I would be surprised if it works without any problems ...

When you use the Espressif Core which board type do you select in the IDE ?

I'm getting stupid. :thinking: With the Arduino Core 2.x. there are no problems. I can reset and reconnect the cable, the serial works without COM port problems.

With the Espressif Core I always have to change the COM port for this problem and always reflash it so that I can change it.

What does the Espressif Core do differently in this respect? :thinking:

I need C++20, which is why I use the Espressif Core. Will there be an update for the Arduino Core soon?

When you use the Espressif Core which board type do you select in the IDE ?

Arduino Nano ESP32.

After resetting or reconnecting the cable, something is recognized incorrectly. The com port is not correct and no other port can be selected.

Only in flash mode does the com port change to the correct one and you can flash.

I am probably misunderstanding something, but how do you use the Espressif Core and still have the option to choose the Arduino Nano 32 as the board ?

The Arduino Nano ESP32 is provided at the bottom of the list for selection when using the Espressif Core. None of this is a problem.

How are you going about using the Espressif Core ?

IDE 2.x
Boards Manager
search field β€œesp32”
Install esp32 from Espressif (3.1.1)
Tools > Boards > ESP32 > go down ... Arduino Nano ESP32

You can use my boards.local.txt so that you don't always have to scroll down the long list. Copy .txt it into this path.
C:\Users\xyz\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.1.1

boards.local.zip (4,5 KB)

Hi,

have you been able to test it in the meantime?
Here is a current boards.local.txt for Espressif Core 3.2.0
The board selection is limited to the Arduino Nano ESP32. The '#' is placed in front of it in line 576. If you want to have more boards in the selection you have to put another '#' in front of the corresponding line with hide=true.
C:\Users\xyz\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.2.0
boards.local.zip (4,6 KB)

My project started on the UNO then ported to the Nano Every and now the ESP32. The sketch uses WIFI, BLE, drives SK6812 LEDs, rotary encoder, uses async webserver for a web page and uploading via OTA.
So many libraries.

I tried the next idea to install the ESP32 core 3.2.0 bootloader after selecting board with ESP32 core 3.2.0
I followed:
https://support.arduino.cc/hc/en-us/articles/9810414060188-Reset-the-Arduino-bootloader-on-the-Nano-ESP32

My sketch uploads and starts. But after a WIFI connection the MCU restarts. The combination with WIFI and the use of older libraries may cause a problem. (Another problem to solve)

But will all my changes in my sketch and a dozen uploads the COM-port did not disappear.
My sketch still compiles and runs fine with board ESP32 core 2.0.18 and does not restart.
The 3.2.0 bootloader seems not causing problems.

My conclusion so far:
When using ESP32 core 3; replace the bootloader

Hi,

Why did you install a new bootloader? That is not necessary. A bootloader has nothing to do with the program. It also has nothing to do with which toolchain the program was compiled with.