Seems like i cant upload because force reset does not seem to work?

Hi, I cant seem to upload to my esp32-s3. It does work when I force it into boot mode by holding and pressing the boot and reset buttons on the board.
Log:

*  Executing task: platformio run --target upload 

Processing adafruit_feather_esp32s3_nopsram (platform: espressif32; board: adafruit_feather_esp32s3_nopsram; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/adafruit_feather_esp32s3_nopsram.html
PLATFORM: Espressif 32 (6.9.0) > Adafruit Feather ESP32-S3 No PSRAM
HARDWARE: ESP32S3 240MHz, 320KB RAM, 8MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES: 
 - framework-arduinoespressif32 @ 3.20017.0 (2.0.17) 
 - tool-esptoolpy @ 1.40501.0 (4.5.1) 
 - tool-mkfatfs @ 2.0.1 
 - tool-mklittlefs @ 1.203.210628 (2.3) 
 - tool-mkspiffs @ 2.230.0 (2.30) 
 - toolchain-riscv32-esp @ 8.4.0+2021r2-patch5 
 - toolchain-xtensa-esp32s3 @ 8.4.0+2021r2-patch5
Warning! An extra UF2 bootloader image is already added!
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 33 compatible libraries
Scanning dependencies...
No dependencies
Building in release mode
Compiling .pio/build/adafruit_feather_esp32s3_nopsram/src/main.cpp.o
Linking .pio/build/adafruit_feather_esp32s3_nopsram/firmware.elf
Retrieving maximum program size .pio/build/adafruit_feather_esp32s3_nopsram/firmware.elf
Checking size .pio/build/adafruit_feather_esp32s3_nopsram/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [=         ]   9.3% (used 30580 bytes from 327680 bytes)
Flash: [=         ]  13.8% (used 290117 bytes from 2097152 bytes)
Building .pio/build/adafruit_feather_esp32s3_nopsram/firmware.bin
esptool.py v4.5.1
Creating esp32s3 image...
Merged 2 ELF sections
Successfully created esp32s3 image.
Configuring upload protocol...
AVAILABLE: cmsis-dap, esp-bridge, esp-builtin, esp-prog, espota, 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...
Auto-detected: /dev/ttyACM0
Forcing reset using 1200bps open/close on port /dev/ttyACM0
Waiting for the new upload port...
Uploading .pio/build/adafruit_feather_esp32s3_nopsram/firmware.bin
esptool.py v4.5.1
Serial port /dev/ttyACM0
Connecting...
Traceback (most recent call last):
  File "/home/vinzroosen/.platformio/packages/tool-esptoolpy/esptool.py", line 34, in <module>
    esptool._main()
  File "/home/vinzroosen/.platformio/packages/tool-esptoolpy/esptool/__init__.py", line 1032, in _main
    main()
  File "/home/vinzroosen/.platformio/packages/tool-esptoolpy/esptool/__init__.py", line 674, in main
    esp = esp or get_default_connected_device(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/vinzroosen/.platformio/packages/tool-esptoolpy/esptool/__init__.py", line 921, in get_default_connected_device
    _esp.connect(before, connect_attempts)
  File "/home/vinzroosen/.platformio/packages/tool-esptoolpy/esptool/loader.py", line 640, in connect
    last_error = self._connect_attempt(reset_strategy, mode)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/vinzroosen/.platformio/packages/tool-esptoolpy/esptool/loader.py", line 525, in _connect_attempt
    reset_strategy()  # Reset the chip to bootloader (download mode)
    ^^^^^^^^^^^^^^^^
  File "/home/vinzroosen/.platformio/packages/tool-esptoolpy/esptool/reset.py", line 83, in __call__
    self._setDTRandRTS(False, False)
  File "/home/vinzroosen/.platformio/packages/tool-esptoolpy/esptool/reset.py", line 58, in _setDTRandRTS
    fcntl.ioctl(self.port.fileno(), TIOCMSET, struct.pack("I", status))
OSError: [Errno 71] Protocol error
*** [upload] Error 1
======================================================================== [FAILED] Took 12.07 seconds ========================================================================

 *  The terminal process "platformio 'run', '--target', 'upload'" terminated with exit code: 1. 
 *  Terminal will be reused by tasks, press any key to close it.

It is a known bug. There is a workaround solution in latest esptool.py which is not available from Platformio. You can switch to the pioarduino fork.