Since the lastest update i can not upload to the Espressif ESP32-S3-DevKitC-1 with automatically detection of com port.
i get this error
CURRENT: upload_protocol = esptool
Looking for upload port...
TimeoutError: Could not automatically find serial port for the `Espressif ESP32-S3-DevKitC-1` board based on the declared HWIDs=[['0X303A', '0x1001']]
Error: Please specify `upload_port` for environment or use global `--upload-port` option.
For some development platforms it can be a USB flash drive (i.e. /media/<user>/<device name>)
*** [upload] Explicit exit, status 1
Before it just took a random com port (and 99% of the time it was the wrong one even out of two present) but now i have to specify the COM port in platformio.ini. That is very time consuming as i swag between boards and chips quite often. Every change to platformio.ini causes a complete recompile. this takes over 5min with the project I’m working on
The best solution would be to look wor the hardware id thing. if no match was found just fallback to the version from before where just the first/random com port was selected. this means i just have to unplug other boards not do a complete recompile
EDIT: I have an original Espressif ESP32-S3-DevKitC-1 board from Espressif bought from Mouser. Im using Windows 10
i often use board configs for other self developed boards.
Does the WHID come from the Wroom/Wrover part or from the UART to USB chip used on almost all ESP board?
What happens if i want to upload using a FTDI breakout board / port ?
I’m not currently sure what happens when you use an official board that has HWIDs registered but want to upload to it using a different serial adapter or port… Probably won’t work.
i’m tyring to flash a LILYGO® TTGO T-SIM7000G (link to official store) Board using the Wrover Kit board config and I’m getting
Looking for upload port...
TimeoutError: Could not automatically find serial port for the `Espressif ESP-WROVER-KIT` board based on the declared HWIDs=[['0x0403', '0x6010']]
Error: Please specify `upload_port` for environment or use global `--upload-port` option.
For some development platforms it can be a USB flash drive (i.e. /media/<user>/<device name>)
*** [upload] Explicit exit, status 1
What should i do? as far as i know there is no specific board config for this board
also some board do not get the same com port number after re-plug. that also kind of breaks the upload_port = COMXX solution
Hardware ID: USB VID:PID=10C4:EA60 SER=CA5626245619EC11B5F73ABFF95A09B1 LOCATION=1-1.1.3
Description: Silicon Labs CP210x USB to UART Bridge (COM28)
ESP32 TTGO SIM7000G:
Hardware ID: USB VID:PID=1A86:55D4 SER=533D003390 LOCATION=1-1.1.2
Description: USB-Enhanced-SERIAL CH9102 (COM20)
ESP32-C3 NodeMCU
Hardware ID: USB VID:PID=1A86:7523 SER= LOCATION=1-1.1.3
Description: USB-SERIAL CH340 (COM7)
ESP32-C3 auto detection works but upload still failes with
Auto-detected: COM7
Uploading .pio\build\BOARDS_ESP32_C3\firmware.bin
esptool.py v3.3
Serial port COM7
Connecting....
Chip is ESP32-C3 (revision 3)
Traceback (most recent call last):
Features: Wi-Fi
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 5387, in <module>
Crystal is 40MHz
MAC: 84:f7:03:39:d2:98
_main()
Uploading stub...
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 5380, in _main
Running stub...
Stub running...
main()
Changing baud rate to 921000
Changed.
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 4802, in main
Configuring flash size...
esp.flash_set_parameters(flash_size_bytes(args.flash_size))
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 1056, in flash_set_parameters
self.check_command("set SPI params", ESP32ROM.ESP_SPI_SET_PARAMS,
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 495, in check_command
val, data = self.command(op, data, chk, timeout=timeout)
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 468, in command
p = self.read()
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 413, in read
return next(self._slip_reader)
StopIteration
Okay i found the Erase Flash button but didn’t help. still getting error while upload
Looking for upload port...
Auto-detected: COM7
Uploading .pio\build\BOARDS_ESP32_C3\firmware.bin
esptool.py v3.3
Serial port COM7
Connecting....
Chip is ESP32-C3 (revision 3)
Traceback (most recent call last):
Features: Wi-Fi
Crystal is 40MHz
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 5387, in <module>
MAC: 84:f7:03:39:d2:98
Uploading stub...
_main()
Running stub...
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 5380, in _main
Stub running...
main()
Changing baud rate to 921000
Changed.
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 4802, in main
Configuring flash size...
esp.flash_set_parameters(flash_size_bytes(args.flash_size))
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 1056, in flash_set_parameters
self.check_command("set SPI params", ESP32ROM.ESP_SPI_SET_PARAMS,
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 495, in check_command
val, data = self.command(op, data, chk, timeout=timeout)
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 468, in command
p = self.read()
File "C:\Users\Save_\.platformio\packages\tool-esptoolpy\esptool.py", line 413, in read
return next(self._slip_reader)
StopIteration
*** [upload] Error 1
======================================================================= [FAILED] Took 283.33 seconds =======================================================================
Hi @savejeff ! The topic title says you are using an ESP32-S3 and I see Chip is ESP32-C3 (revision 3) in the logs. What’s the correct board in your case? Could please disconnect unused boards, for the sake of debugging the issue? Also, have you tried lower upload baud rates? Any chance you could upload a minimal sketch using the Arduino IDE?
Sorry what this got a little bit confusing.
At first i just posted this because of upload problems with the ESP32-S3.
I then got the same error with com port detection using an ESP32 (No S3/C3)
i then also tested this with ESP32-C3 and got correct COM port detection but a new error i to this point had not encountered.
The C3 upload problem is thus off-topic but might have started with the same update that has the new HWID check.
on every test i had only the board under test connected with no addition board.
About the C3 issue. to this point every upload worked without a single error. i have not changed settings like baud rate or flash memory size. I can test further tomorrow
I tested it with the ESP32 S3 Dev Kit again and now I’m getting this
CURRENT: upload_protocol = esptool
Looking for upload port...
Error: Please specify `upload_port` for environment or use global `--upload-port` option.
For some development platforms it can be a USB flash drive (i.e. /media/<user>/<device name>)
*** [upload] Explicit exit, status 1
@maxgerhardt Would it be possible to add a Dialog like in the serial monitor to select a port manually if auto detect failed? the upload command takes quite long with the whole dependency graph and other stuff
esptool.py v3.3
Serial port COM24
Connecting....
Chip is ESP32-C3 (revision 3)
Features: Wi-Fi
Crystal is 40MHz
MAC: 84:f7:03:39:d2:98
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Flash will be erased from 0x00000000 to 0x00003fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x00040fff...
Flash params set to 0x022f
Compressed 12528 bytes to 9002...
Writing at 0x00000000... (100 %)
Wrote 12528 bytes (9002 compressed) at 0x00000000 in 0.3 seconds (effective 295.2 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 128...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (128 compressed) at 0x00008000 in 0.1 seconds (effective 403.9 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 591.9 kbit/s)...
Hash of data verified.
Compressed 200128 bytes to 112443...
Writing at 0x00010000... (14 %)
Writing at 0x0001a8f3... (28 %)
Writing at 0x0002090b... (42 %)
Writing at 0x00026b94... (57 %)
Writing at 0x0002cd6e... (71 %)
Writing at 0x000330f8... (85 %)
Writing at 0x0003b92f... (100 %)
Wrote 200128 bytes (112443 compressed) at 0x00010000 in 3.2 seconds (effective 506.1 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
here the console output when i try to upload to a ESP32 Wrover Module. Same thing happens when i try to upload to an ESP32-S3 (with the correct board config ofcourse)
Could you provide a remote session to debug this issue? I don’t understand how it is possible. Please get in touch with me@ikravets.com for further details.