Skip to content

Add board: ESP32-S3-EYE #8278

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
119 changes: 119 additions & 0 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2234,6 +2234,125 @@ esp32s3camlcd.menu.EraseFlash.all.upload.erase_cmd=-e

##############################################################

esp32s3eye.name=ESP32-S3-EYE
esp32s3eye.vid.0=0x303a
esp32s3eye.pid.0=0x1001

esp32s3eye.bootloader.tool=esptool_py
esp32s3eye.bootloader.tool.default=esptool_py

esp32s3eye.upload.tool=esptool_py
esp32s3eye.upload.tool.default=esptool_py
esp32s3eye.upload.tool.network=esp_ota

esp32s3eye.upload.maximum_size=1310720
esp32s3eye.upload.maximum_data_size=327680
esp32s3eye.upload.speed=921600
esp32s3eye.upload.flags=
esp32s3eye.upload.extra_flags=
esp32s3eye.upload.use_1200bps_touch=false
esp32s3eye.upload.wait_for_upload_port=false

esp32s3eye.serial.disableDTR=false
esp32s3eye.serial.disableRTS=false

esp32s3eye.build.tarch=xtensa
esp32s3eye.build.bootloader_addr=0x0
esp32s3eye.build.target=esp32s3
esp32s3eye.build.mcu=esp32s3
esp32s3eye.build.core=esp32
esp32s3eye.build.variant=esp32s3eye
esp32s3eye.build.board=ESP32_S3_EYE

esp32s3eye.build.usb_mode=1
esp32s3eye.build.cdc_on_boot=1
esp32s3eye.build.msc_on_boot=0
esp32s3eye.build.dfu_on_boot=0
esp32s3eye.build.f_cpu=240000000L
esp32s3eye.build.flash_size=8MB
esp32s3eye.build.flash_freq=80m
esp32s3eye.build.flash_mode=dio
esp32s3eye.build.boot=qio
esp32s3eye.build.partitions=default
esp32s3eye.build.defines=-DBOARD_HAS_PSRAM
esp32s3eye.build.memory_type=qio_opi
esp32s3eye.build.loop_core=-DARDUINO_RUNNING_CORE=1
esp32s3eye.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1

esp32s3eye.menu.USBMode.hwcdc=Hardware CDC and JTAG
esp32s3eye.menu.USBMode.hwcdc.build.usb_mode=1
esp32s3eye.menu.USBMode.hwcdc.upload.use_1200bps_touch=false
esp32s3eye.menu.USBMode.hwcdc.upload.wait_for_upload_port=false
esp32s3eye.menu.USBMode.default=USB-OTG
esp32s3eye.menu.USBMode.default.build.usb_mode=0
esp32s3eye.menu.USBMode.default.upload.use_1200bps_touch=true
esp32s3eye.menu.USBMode.default.upload.wait_for_upload_port=true

esp32s3eye.menu.MSCOnBoot.default=Disabled
esp32s3eye.menu.MSCOnBoot.default.build.msc_on_boot=0
esp32s3eye.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode)
esp32s3eye.menu.MSCOnBoot.msc.build.msc_on_boot=1

esp32s3eye.menu.DFUOnBoot.default=Disabled
esp32s3eye.menu.DFUOnBoot.default.build.dfu_on_boot=0
esp32s3eye.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode)
esp32s3eye.menu.DFUOnBoot.dfu.build.dfu_on_boot=1

esp32s3eye.menu.PartitionScheme.default=Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)
esp32s3eye.menu.PartitionScheme.default.build.partitions=default
esp32s3eye.menu.PartitionScheme.defaultffat=Default 4MB with ffat (1.2MB APP/1.5MB FATFS)
esp32s3eye.menu.PartitionScheme.defaultffat.build.partitions=default_ffat
esp32s3eye.menu.PartitionScheme.default_8MB=8M with spiffs (3MB APP/1.5MB SPIFFS)
esp32s3eye.menu.PartitionScheme.default_8MB.build.partitions=default_8MB
esp32s3eye.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336
esp32s3eye.menu.PartitionScheme.no_ota=No OTA (2MB APP/2MB SPIFFS)
esp32s3eye.menu.PartitionScheme.no_ota.build.partitions=no_ota
esp32s3eye.menu.PartitionScheme.no_ota.upload.maximum_size=2097152
esp32s3eye.menu.PartitionScheme.noota_3g=No OTA (1MB APP/3MB SPIFFS)
esp32s3eye.menu.PartitionScheme.noota_3g.build.partitions=noota_3g
esp32s3eye.menu.PartitionScheme.noota_3g.upload.maximum_size=1048576
esp32s3eye.menu.PartitionScheme.noota_ffat=No OTA (2MB APP/2MB FATFS)
esp32s3eye.menu.PartitionScheme.noota_ffat.build.partitions=noota_ffat
esp32s3eye.menu.PartitionScheme.noota_ffat.upload.maximum_size=2097152
esp32s3eye.menu.PartitionScheme.noota_3gffat=No OTA (1MB APP/3MB FATFS)
esp32s3eye.menu.PartitionScheme.noota_3gffat.build.partitions=noota_3gffat
esp32s3eye.menu.PartitionScheme.noota_3gffat.upload.maximum_size=1048576
esp32s3eye.menu.PartitionScheme.huge_app=Huge APP (3MB No OTA/1MB SPIFFS)
esp32s3eye.menu.PartitionScheme.huge_app.build.partitions=huge_app
esp32s3eye.menu.PartitionScheme.huge_app.upload.maximum_size=3145728
esp32s3eye.menu.PartitionScheme.min_spiffs=Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS)
esp32s3eye.menu.PartitionScheme.min_spiffs.build.partitions=min_spiffs
esp32s3eye.menu.PartitionScheme.min_spiffs.upload.maximum_size=1966080
esp32s3eye.menu.PartitionScheme.fatflash=16M Flash (2MB APP/12.5MB FATFS)
esp32s3eye.menu.PartitionScheme.fatflash.build.partitions=ffat
esp32s3eye.menu.PartitionScheme.fatflash.upload.maximum_size=2097152
esp32s3eye.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS)
esp32s3eye.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB
esp32s3eye.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728
esp32s3eye.menu.PartitionScheme.rainmaker=RainMaker
esp32s3eye.menu.PartitionScheme.rainmaker.build.partitions=rainmaker
esp32s3eye.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728

esp32s3eye.menu.DebugLevel.none=None
esp32s3eye.menu.DebugLevel.none.build.code_debug=0
esp32s3eye.menu.DebugLevel.error=Error
esp32s3eye.menu.DebugLevel.error.build.code_debug=1
esp32s3eye.menu.DebugLevel.warn=Warn
esp32s3eye.menu.DebugLevel.warn.build.code_debug=2
esp32s3eye.menu.DebugLevel.info=Info
esp32s3eye.menu.DebugLevel.info.build.code_debug=3
esp32s3eye.menu.DebugLevel.debug=Debug
esp32s3eye.menu.DebugLevel.debug.build.code_debug=4
esp32s3eye.menu.DebugLevel.verbose=Verbose
esp32s3eye.menu.DebugLevel.verbose.build.code_debug=5

esp32s3eye.menu.EraseFlash.none=Disabled
esp32s3eye.menu.EraseFlash.none.upload.erase_cmd=
esp32s3eye.menu.EraseFlash.all=Enabled
esp32s3eye.menu.EraseFlash.all.upload.erase_cmd=-e

##############################################################

esp32s2usb.name=ESP32S2 Native USB
esp32s2usb.vid.0=0x303a
esp32s2usb.pid.0=0x0003
Expand Down
63 changes: 63 additions & 0 deletions variants/esp32s3eye/pins_arduino.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
#ifndef Pins_Arduino_h
#define Pins_Arduino_h

#include <stdint.h>
#include "soc/soc_caps.h"

#define USB_VID 0x303a
#define USB_PID 0x1001

#define EXTERNAL_NUM_INTERRUPTS 46
#define NUM_DIGITAL_PINS 48
#define NUM_ANALOG_INPUTS 20

static const uint8_t LED_BUILTIN = 3;
#define BUILTIN_LED LED_BUILTIN // backward compatibility
#define LED_BUILTIN LED_BUILTIN

#define analogInputToDigitalPin(p) (((p)<20)?(analogChannelToDigitalPin(p)):-1)
#define digitalPinToInterrupt(p) (((p)<48)?(p):-1)
#define digitalPinHasPWM(p) (p < 46)

#define QMA7981_ADDR 0x12

static const uint8_t TX = 43;
static const uint8_t RX = 44;

static const uint8_t SDA = 4;
static const uint8_t SCL = 5;

static const uint8_t BAT_LV = 14;

static const uint8_t TFT_CLK = 21;
static const uint8_t TFT_CS = 44;
static const uint8_t TFT_DC = 43;
static const uint8_t TFT_MOSI = 47;
static const uint8_t TFT_MISO = -1;
static const uint8_t TFT_RST = -1;
static const uint8_t TFT_BL = 48;

static const uint8_t SD_CMD = 38;
static const uint8_t SD_CLK = 39;
static const uint8_t SD_SDA = 40;

static const uint8_t I2S_SCK = 41;
static const uint8_t I2S_WS = 42;
static const uint8_t I2S_SDO = 2;

static const uint8_t ADC = 1;

static const uint8_t DVP_VSYNC = 6;
static const uint8_t DVP_HREF = 7;
static const uint8_t XMCLK = 15;
static const uint8_t DVP_PCLK = 13;
static const uint8_t DVP_Y9 = 16;
static const uint8_t DVP_Y8 = 17;
static const uint8_t DVP_Y7 = 18;
static const uint8_t DVP_Y6 = 12;
static const uint8_t DVP_Y2 = 11;
static const uint8_t DVP_Y5 = 10;
static const uint8_t DVP_Y3 = 9;
static const uint8_t DVP_Y4 = 8;

#endif /* Pins_Arduino_h */