I have a similar problem. When I try to build and upload, I get:
Looking for upload port…
Auto-detected: /dev/cu.usbserial-0232CD6C
Uploading .pio/build/esp32doit-devkit-v1/firmware.bin
esptool.py v3.1
Serial port /dev/cu.usbserial-0232CD6C
Traceback (most recent call last):
File “~/.platformio/penv/lib/python3.7/site-packages/serial/serialposix.py”, line 322, in open
self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK)
OSError: [Errno 16] Resource busy: ‘/dev/cu.usbserial-0232CD6C’
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File “~/.platformio/packages/tool-esptoolpy/esptool.py”, line 4582, in
_main()
File “~/.platformio/packages/tool-esptoolpy/esptool.py”, line 4575, in _main
main()
File “~/.platformio/packages/tool-esptoolpy/esptool.py”, line 4076, in main
before=args.before)
File “~/.platformio/packages/tool-esptoolpy/esptool.py”, line 120, in get_default_connected_device
_esp = chip_class(each_port, initial_baud, trace)
File “~/.platformio/packages/tool-esptoolpy/esptool.py”, line 313, in init
self._port = serial.serial_for_url(port)
File “~/.platformio/penv/lib/python3.7/site-packages/serial/init.py”, line 90, in serial_for_url
instance.open()
File “~/.platformio/penv/lib/python3.7/site-packages/serial/serialposix.py”, line 325, in open
raise SerialException(msg.errno, “could not open port {}: {}”.format(self._port, msg))
serial.serialutil.SerialException: [Errno 16] could not open port /dev/cu.usbserial-0232CD6C: [Errno 16] Resource busy: ‘/dev/cu.usbserial-0232CD6C’
*** [upload] Error 1
The correct serial port, I believe, is /dev/cu.SLAB_USBtoUART
. I have modified my platformio.ini file to be:
[env:esp wrover kit]
platform = espressif32
framework = arduino
board = esp-wrover-kit
monitor_speed = 115200
build_flags =
; https://docs.espressif.com/projects/esp-idf/en/latest/get-started/get-started-wrover-kit.html#rgb-led
-D LED_BUILTIN=2
monitor_port = /dev/cu.SLAB_USBtoUART
[env:esp32doit-devkit-v1]
platform = espressif32
framework = arduino
board = esp32doit-devkit-v1
monitor_speed = 115200
monitor_port = /dev/cu.SLAB_USBtoUART
Yet those ports seem to be ignored. Maybe it is because that is the monitor port and not the upload port. How do I force the upload port?
Those ports I’m using are the ones that Arduino IDE uses to upload. (No, the Arduino IDE is not running at the same time; i thought that might be the problem).
Any clues?