Skip to content

Conversation

LusimiCollado
Copy link
Contributor

Description of Change

Adds support for the KodeDot (ESP32-S3) board and aligns it with current OPI memory options.

Highlights

  • New variant: variants/kodedot/ with Pins_Arduino.h.
  • boards.txt entry for KodeDot with menu option Flash Mode: OPI 80 MHz.
    Mirrors S3 Dev Module behavior: set build.flash_mode=dio and pass --spi-connection opi to esptool (avoids elf2image rejecting --flash-mode opi).
  • Default memory: Flash 32 MB OPI @ 80 MHz, PSRAM 8 MB OPI.
  • SD card moved to SDMMC (1-bit); pins: CMD=GPIO5, CLK=GPIO6, D0=GPIO7.
  • LCD on SPI3/QSPI (ST7789, 410×502, 40 MHz); pins: SCK=17, IO0/MOSI=15, IO1=14, IO2=16, IO3=10, CS=9, RST=8, DC=-1, BL=4.
  • NeoPixel now on GPIO4 (shared with backlight enable).
  • Bottom button via I/O expander → no direct GPIO in the variant.
  • No changes to existing boards.

Impact

  • Adds a new kode dot pinout configuration; no breaking changes for existing users.

Tests scenarios

Hardware

  • KodeDot board (ESP32-S3, 32 MB OPI flash @ 80 MHz, 8 MB OPI PSRAM)
  • microSD via SDMMC (1-bit), ST7789 QSPI display, TCA9555 I/O expander

Software / Tooling

  • Arduino-ESP32 core v2.3.6
  • esptool v5.4
  • Partition scheme custom

Functional checks

  • Bootloader + sketch upload OK with menu Flash Mode: OPI 80 MHz
  • ESP.getFlashChipSize()33554432 (32 MB)
  • ESP.getPsramSize()8388608 (8 MB)
  • SD_MMC mounts and R/W files on 1-bit SDMMC
  • USB CDC on boot validated
  • Display over SPI3/QSPI exercised in app (out of scope for core libs)

@lucasssvaz lucasssvaz added the Type: 3rd party Boards Related to third-party/non-Espressif hardware boards. label Aug 12, 2025
@P-R-O-C-H-Y P-R-O-C-H-Y added the Status: Pending Merge Pull Request is ready to be merged label Aug 21, 2025
@P-R-O-C-H-Y
Copy link
Member

@LusimiCollado Please fix the precommit errors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Pending Merge Pull Request is ready to be merged Type: 3rd party Boards Related to third-party/non-Espressif hardware boards.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants