Looking for upload port ( Serial port not found) Win 10

Persistently not uploading to ESP Prog on any of the COM ports.
I’ve specified the com ports.
They exist in Device manager AND Seen in ‘PIO.Devices.’

When the ESPProg is changed for a simple Serial USB adapter device on COM[7] it works. (wch.cn driver).

I have tried several ESP Prog devices and they all register with windows device manager on different COM ports.
I’ve tried with a simple ESP openframe programmer with Silicon Labs chip and driver. This comes up as com20 . Still fails to upload.

Nothing seems to make PIO upload to one of these ESPProg devices. (FTDI driver) nor the Open frame programmer on silicon labs driver.

I’ve removed and reinstalled FTDI drivers. Didn’t fix it.

CURRENT: upload_protocol = esptool
Looking for upload port...
Error: Please specify `upload_port` for environment or use global `--upload-port` option.

This is despite the devices being seen in PIO. devices AND being specified in the .PIO config.

Core 6.1.9 Home 3.4.4

I’m pulling my hair out now.

platform = espressif32
board = esp32doit-devkit-v1
framework = arduino
lib_deps =
sparkfun/SparkFun AS3935 Lightning Detector Arduino Library@^1.4.3
adafruit/Adafruit SSD1306@^2.5.7
r89m/r89m PushButton@^1.0.1
monitor_speed = 115200
board_build.partitions = default_8MB.csv
upload_port = COM[20]
monitor_port = COM[20]

If I connect a terminal program to the ESPProg and plug in to the ESP (Port 10) . I see the ESP sending data…
If I try to use the ESP tool to interrogate the chip I get :heavy_minus_sign:

esptool.py v4.6.2
Serial port COM10
Detecting chip type... Unsupported detection protocol, switching and trying again...
Detecting chip type... ESP32
Chip is ESP32-D0WD-V3 (revision v3.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: c4:dd:57:67:0d:d4
Uploading stub...
Running stub...
Stub running...
Manufacturer: c8
Device: 4018
Detected flash size: 16MB
Hard resetting via RTS pin...

Further update.
Using Arduino with the same ESPPROG and same target device - works fine!

Platform IO still will not send the code because it refuses to acknowledge the serial port exists.

Don’t use a regex expression, you want COM20, write COM20.

This here then shows COM10 being used?

Which esptool.py version is that using?

Thanks for the advice.