I have recently been playing around with a side project that uses the ESP32 SOC/microcontroller, the Adafruit Huzzah32 flavor specifically. I am controlling a motor with it and use a ULN2003 to drive it. I noticed that when I connected the driver, I couldn’t upload a new firmware to it. After doing some troubleshooting and research, I learned that my pins were the issue.
Specifically, GPIO PIN #12 was the issue for me. It’s one of the strapping pins used for the different boot modes. I am sure there are ways to address this, but I ended up switching to a different and now I can upload firmware as needed.
Here is a link to the ESP32 datasheet for anyone interested in seeing more details.