I made the transition to Visual Studio Code using PlatformIO from Arduino 2.0 and ran into a block wall with uploading. I get the common error that my device is not in download mode. Yet when I use Arduino, the code uploads hands-free without issue. After almost a full day of reading and troubleshooting, I found out that it is the Espressif esptool.py that is to blame. For whatever reason, any version of the tool beyond 3.0.0, and believe me, I tried them all, fails to upload with the same error I get in Platformio. Using 3.0.0 however, with the firmware I compiled in platformio, I was successful uploading from the command line in Powershell. Strange also that this is the same version the latest Arduino version uses. I find it hard to believe that Espressif would release a tool that fails to upload hands-free with all of their devices, so the only entity left to blame is the design of the Maker board I am using. It is the Wemos Lolin ESP32 dual core with included OLED mounted.
The problem is, I bought a number of these a couple of years ago, and want to put them to use. Outside of the esptool issue, the board performs just fine with everything I have thrown at it.
So I can compile my code in Platformio, and upload the firmware via the command line in Powershell using esptool version 3.0.0 as a bandaid fix, but I ask…
Is it possible to replace the version of esptool.py platformio uses with version 3.0.0, OR, make it an option for my specific board? I have searched all day for a platformio.ini setting that allows me to direct the upload to an external tool. Is this possible? If so, is it possible to do this per-board? I have not tried it yet, but I am suspecting that the latest version of esptool will work just fine with a newer ESP32 development board. And I will shop some newer ones, but want to make use of the batch I bought from MakerFocus.
Thank you for your valuable time!! Please let me know if I should include anything extra in my post. Have a great day!
EDIT: I have a ESP-PROG tool on the way and expect it tomorrow. I read that you can flash the target board using the ESP-PROG, so maybe using that will work with the latest version of ESPTOOL. I will attempt that and update this post with the results.