How development ESP32-S3-WROOM-2

Hello, I see PIO support ESP32-S3 in Arduino platform with see Espressif ESP32-S3-DevKitC-1 board in New Project window and it use ESP32-WROOM-1 but i use ESP32-S3-WROOM-2. The bootloader and Flah mode is different, In WROOM-1 it use DIO or QIO mode but WROOM-2 is use OPI mode so if select WROOM-1 board but upload to WROOM-2 the firmware any run FAIL.

So, How can i use ESP32-S3-WROOM-2 ? Now, for ESP32-S3-WROOM-2 i can use in Arduino IDE only because in Flash Mode menu i can select OPI 80MHz and in PSRAM menu i can select OPI PSRAM.

Can you show a screenshot of the Arduino IDE → Tools menu with which it works for your board?

This, Thank you !

1 Like

Can you try the following: Create a new folder called boards in the project directory. Fill it with the file esp32s3dev.json with content

{
    "build": {
      "arduino":{
        "ldscript": "esp32s3_out.ld",
        "memory_type": "opi_opi"
      },
      "core": "esp32",
      "extra_flags": [
        "-DARDUINO_RUNNING_CORE=1",
        "-DARDUINO_EVENT_RUNNING_CORE=1",
        "-DBOARD_HAS_PSRAM",
        "-DESP32S3_DEV",
        "-DARDUINO_USB_MODE=1",
        "-DARDUINO_USB_CDC_ON_BOOT=1"
      ],
      "f_cpu": "240000000L",
      "f_flash": "80000000L",
      "flash_mode": "dout",
      "hwids": [
        [
          "0X303A",
          "0x1001"
        ]
      ],
      "mcu": "esp32s3",
      "variant": "esp32s3"
    },
    "connectivity": [
      "wifi",
      "bluetooth"
    ],
    "debug": {
      "openocd_target": "esp32s3.cfg"
    },
    "frameworks": [
      "arduino"
    ],
    "name": "Espressif ESP32-S3 Dev Module",
    "upload": {
      "flash_size": "4MB",
      "maximum_ram_size": 327680,
      "maximum_size": 4194304,
      "require_upload_port": true,
      "speed": 921600
    },
    "url": "https://www.adafruit.com/product/5290",
    "vendor": "Espressif"
  }

(and yes, dout mode for OPI 80MHz selection shuold be correct per this).

Then use the platformio.ini

[env:esp32s3dev]
platform = espressif32
board = esp32s3dev
framework = arduino

and try to run some basic blinky or serial program.

2 Likes