diff --git a/boards.txt b/boards.txt index f1256a1ed28..c9f42be0146 100644 --- a/boards.txt +++ b/boards.txt @@ -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 diff --git a/variants/esp32s3box3/pins_arduino.h b/variants/esp32s3box3/pins_arduino.h new file mode 100644 index 00000000000..17055991e3c --- /dev/null +++ b/variants/esp32s3box3/pins_arduino.h @@ -0,0 +1,88 @@ +#ifndef Pins_Arduino_h +#define Pins_Arduino_h + +#include + +#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 */