Smol ESP32 issue

Hi Ceal,

I don’t have a Mac, so I can’t replicate the issue you are seeing. But the following might help:

Installing Windows might help? But I’m not sure - and have no way of testing it…

To put the ESP32 into bootloader mode, you hold the RESET pin low, then hold the BOOT (D0) pin low, then release RESET so it goes high. The ESP32 goes into bootloader mode if the BOOT (D0) pin is low when it comes out of reset.

esptool uses the USB interface DTR and RTS signals to control RESET and BOOT. There are a pair of transistors on the board which allow DTR and RTS to control RESET and BOOT.

If DTR is high, and RTS is low, RESET is pulled low. Meanwhile BOOT is pulled high by an internal pull-up.

If RTS is high, and DTR is low, BOOT is pulled low. Meanwhile RESET is pulled high by the 10K resistor on the circuit board.

I think what’s happening is that the change from the RESET-low state to the BOOT-low state is slower using the Mac driver than on Windows. I.e. BOOT isn’t (yet) low when RESET goes high, meaning it doesn’t go into bootloader mode.

Adding a capacitor on the RESET pin will slow the RESET rise time, allowing more time for BOOT to be pulled low.

If you do want to have a go at adding a capacitor, please have a look at this picture:

https://forum.sparkfun.com/download/file.php?id=7049

It shows the BOOT test pad and a GND pad (the small square pad next to the “T” of “TXD”). The RESET test pad is on the left side of the board, across from the GND pad. It is labelled. It’s up to you whether you use a small surface-mount capacitor and a length of thin wire, or use a conventional capacitor with wire legs. Conventional might be easiest to work with. Carefully solder the capacitor legs to those two pads. Be quick about it. Don’t leave the iron in contact for more than a couple of seconds, otherwise there’s a risk you’ll lift the pads off the board as the glue under the copper softens… (Sorry!)

The other thing that might work is to manually put the ESP32 into bootloader mode: hold the BOOT test pad low by connecting it to GND; briefly pull RESET low by connecting its test pad to GND. The trick is to make sure BOOT is low as RESET goes high. You can then tell esptool not to try to put the chip into bootloader mode using the “–before no_reset no_sync” option:

https://docs.espressif.com/projects/esp … tions.html

Apologies again for the inconvenience,

Paul

Hi Paul,

I now use an older Mac with Bootcamp and Windows for this purpose.

Thanks again for looking into this!

Best,

Ceal