Skip to content

Adds ESP32-BOX-3 #8989

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 5 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
99 changes: 99 additions & 0 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1900,6 +1900,105 @@ esp32s3-octal.menu.EraseFlash.none.upload.erase_cmd=
esp32s3-octal.menu.EraseFlash.all=Enabled
esp32s3-octal.menu.EraseFlash.all.upload.erase_cmd=-e


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

esp32s3box3.name=ESP32-S3-Box-3
esp32s3box3.vid.0=0x303a
esp32s3box3.pid.0=0x1001

esp32s3box3.bootloader.tool=esptool_py
esp32s3box3.bootloader.tool.default=esptool_py

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

esp32s3box3.upload.maximum_size=3145728
esp32s3box3.upload.maximum_data_size=327680
esp32s3box3.upload.speed=921600
esp32s3box3.upload.flags=
esp32s3box3.upload.extra_flags=
esp32s3box3.upload.use_1200bps_touch=false
esp32s3box3.upload.wait_for_upload_port=false

esp32s3box3.serial.disableDTR=false
esp32s3box3.serial.disableRTS=false

esp32s3box3.build.tarch=xtensa
esp32s3box3.build.bootloader_addr=0x0
esp32s3box3.build.target=esp32s3
esp32s3box3.build.mcu=esp32s3
esp32s3box3.build.core=esp32
esp32s3box3.build.variant=esp32s3box3
esp32s3box3.build.board=ESP32_S3_BOX_3

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

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

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

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

esp32s3box3.menu.PartitionScheme.app3M_fat9M_16MB=16M Flash (3MB APP/9.9MB FATFS)
esp32s3box3.menu.PartitionScheme.app3M_fat9M_16MB.build.partitions=app3M_fat9M_16MB
esp32s3box3.menu.PartitionScheme.app3M_fat9M_16MB.upload.maximum_size=3145728
esp32s3box3.menu.PartitionScheme.rainmaker=RainMaker
esp32s3box3.menu.PartitionScheme.rainmaker.build.partitions=rainmaker
esp32s3box3.menu.PartitionScheme.rainmaker.upload.maximum_size=3145728
esp32s3box3.menu.PartitionScheme.esp_sr_16=ESP SR 16M (3MB APP/7MB SPIFFS/2.9MB MODEL)
esp32s3box3.menu.PartitionScheme.esp_sr_16.upload.maximum_size=3145728
esp32s3box3.menu.PartitionScheme.esp_sr_16.upload.extra_flags=0xD10000 {build.path}/srmodels.bin
esp32s3box3.menu.PartitionScheme.esp_sr_16.build.partitions=esp_sr_16
esp32s3box3.menu.PartitionScheme.custom=Custom
esp32s3box3.menu.PartitionScheme.custom.build.partitions=
esp32s3box3.menu.PartitionScheme.custom.upload.maximum_size=16777216

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

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

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

esp32s3box.name=ESP32-S3-Box
Expand Down
88 changes: 88 additions & 0 deletions variants/esp32s3box3/pins_arduino.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
#ifndef Pins_Arduino_h
#define Pins_Arduino_h

#include <stdint.h>

#define USB_VID 0x303a
#define USB_PID 0x1001

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

static const uint8_t SDA = 41;
static const uint8_t SCL = 40;

static const uint8_t SS = 10;
static const uint8_t MOSI = 11;
static const uint8_t MISO = 13;
static const uint8_t SCK = 12;

static const uint8_t A8 = 9;
static const uint8_t A9 = 10;
static const uint8_t A10 = 11;
static const uint8_t A11 = 12;
static const uint8_t A12 = 13;
static const uint8_t A13 = 14;

static const uint8_t T9 = 9;
static const uint8_t T10 = 10;
static const uint8_t T11 = 11;
static const uint8_t T12 = 12;
static const uint8_t T13 = 13;
static const uint8_t T14 = 14;

// Wire1 for ES7210 MIC ADC, ES8311 I2S DAC, ICM-42607-P IMU and TT21100 + ST7789 or GT911 + ILI9341 (Display + Touch Panel)
#define I2C_SDA 8
#define I2C_SCL 18

#define ES7210_ADDR 0x40 //MIC ADC
#define ES8311_ADDR 0x18 //I2S DAC
#define TT21100_ADDR 0x24 //Touch Panel option 1
#define GT911_ADDR 0x5D //Touch Panel option 2
#define GT911_ADDR_2 0x14 // Backup Address for GT911

// Display Driver ILI9341 or ST7789
#define TFT_DC 4
#define TFT_CS 5
#define TFT_MOSI 6
#define TFT_CLK 7
#define TFT_MISO -1
#define TFT_BL 47
#define TFT_RST 48

#define I2S_LRCK 45
#define I2S_MCLK 2
#define I2S_SCLK 17
#define I2S_SDIN 16
#define I2S_DOUT 15

#define PA_PIN 46 //Audio Amp Power
#define MUTE_PIN 1 //MUTE Button
#define TS_IRQ 3 //Touch Screen IRQ

// SDCARD Slot
#define BOARD_HAS_SDMMC
#define SDMMC_D0 9 // SDMMC Data0 / SDCard SPI MISO
#define SDMMC_D1 13 // SDMMC Data1
#define SDMMC_D2 42 // SDMMC Data2
#define SDMMC_D3 12 // SDMMC Data3 / SDCard SPI CS
#define SDMMC_CMD 14 // SDMMC CMD / SDCard SPI MOSI
#define SDMMC_CLK 11 // SDMMC CLK / SDCard SPI SCK
#define SDMMC_POWER 43 // Controls SDMMC Power
#define BOARD_MAX_SDMMC_FREQ SDMMC_FREQ_DEFAULT

// 320x240 LCD
#define BOARD_HAS_SPI_LCD
#define LCD_MODEL ST7789
#define LCD_WIDTH 240
#define LCD_HEIGHT 320 // *RAM height is actually 320!
#define LCD_MISO -1 // LCD Does not use MISO.
#define LCD_DC 4 // Used to switch data and command status.
#define LCD_CS 5 // used to enable LCD, low level to enable.
#define LCD_MOSI 6 // LCD SPI MOSI.
#define LCD_CLK 7 // LCD SPI Clock.
#define LCD_RST 48 // used to reset LCD, low level to reset.
#define LCD_BL 47 // LCD backlight control.


#endif /* Pins_Arduino_h */