Is there a way to force PlatformIO to use OTA?
I’m trying to upload code to my ESP32 running Arduino with OTA via hostname, but PlatformIO tries to open a COM port instead. (See below)
Programming works when I set upload_port = ip.ad.dr.ess
but not when I set upload_port = blink
.
If I ping blink
on my machine, it works.
blink.local
is detected as a host and PIO does not try to use a serial port. However I am not using mDNS.
I have tried with blink.mysearchdomain
as well to no avail.
It even fails if I try to fully quality the domain: blink.mysearchdomain.
.
[...]
Configuring upload protocol...
AVAILABLE: esp-prog, esptool, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa
CURRENT: upload_protocol = esptool
Looking for upload port...
Use manually specified: blink
Uploading .pioenvs\esp32doit-devkit-v1\firmware.bin
Serial port blink
Traceback (most recent call last):
File "C:\Users\Cameron\.platformio\packages\tool-esptoolpy\esptool.py", line 2849, in <module>
_main()
File "C:\Users\Cameron\.platformio\packages\tool-esptoolpy\esptool.py", line 2842, in _main
main()
File "C:\Users\Cameron\.platformio\packages\tool-esptoolpy\esptool.py", line 2549, in main
esp = chip_class(each_port, initial_baud, args.trace)
File "C:\Users\Cameron\.platformio\packages\tool-esptoolpy\esptool.py", line 213, in __init__
self._port = serial.serial_for_url(port)
File "c:\users\cameron\.platformio\penv\lib\site-packages\serial\__init__.py", line 88, in serial_for_url
instance.open()
File "c:\users\cameron\.platformio\penv\lib\site-packages\serial\serialwin32.py", line 62, in open
raise SerialException("could not open port {!r}: {!r}".format(self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port 'blink': WindowsError(2, 'The system cannot find the file specified.')
*** [upload] Error 1
platform = espressif32
board = esp32doit-devkit-v1
framework = arduino