pdf-icon

CoreS3

SKU: K128

Description

CoreS3 is the third-generation main unit of the M5Stack development kit series. Its core controller uses the ESP32-S3 solution, featuring a dual-core Xtensa LX7 processor with a main frequency of 240MHz. It comes with WiFi functionality, onboard 16M FLASH and 8M-PSRAM, and supports program downloading via the TYPE-C interface. It also supports OTG and CDC functions, making it easy to connect USB devices and flash firmware. The front side is equipped with a 2.0-inch capacitive touch IPS screen, with the panel made of high-strength glass. Below the screen is a built-in 300,000-pixel camera GC0308, along with a proximity sensor LTR-553ALS-WA. The power section uses the AXP2101 power management chip and a 4-way power flow control circuit, designed with low power consumption in mind. The board includes a six-axis motion sensor BMI270 and a magnetometer BMM150, a TF-card (microSD) slot, and a BM8563 RTC chip, providing precise timing and sleep-timer wake-up functions. For sound output, it uses a high-fidelity 16-bit I2S amplifier chip AW88298, with a built-in 1W speaker. For sound input, it uses the ES7210 audio decoding chip with dual microphone input. On the side of the device, there are independent power and reset (RST) buttons, with a built-in delay circuit. Holding the reset button for a long time will enter the program download mode. The CoreS3 kit comes with a DinBase base by default, making it easy to mount on DIN rails, walls, or screw-fixed installations. It can be powered by an external DC 12V (supports 9-24V) or an internal 500mAh lithium battery. The DinBase has multiple proto positions reserved for user DIY. This product is suitable for IoT development, various DIY projects, smart home control systems, and industrial automation control systems.

Tutorial

This tutorial will introduce you to how to program and control the CoreS3 device using Arduino IDE
This tutorial will introduce you to how to control the CoreS3 device using the UiFlow2 graphical programming platform
This tutorial will introduce you to how to connect CoreS3 to Home Assistant

Features

  • Based on ESP32 development, supports WiFi @16M Flash, 8M PSRAM
  • Built-in camera, proximity sensor, speaker, power indicator, RTC, I2S amplifier, dual microphones, capacitive touch screen, power button, reset button, gyroscope
  • TF card slot
  • High-strength glass material
  • Supports OTG and CDC functions
  • Uses AXP2101 power management, low power consumption design
  • Development platforms
    • UiFlow2
    • Arduino IDE

Includes

  • 1 × CoreS3
  • 1 × DinBase
  • 1 × M3 hex wrench
  • 1 × Large hanger
  • 4 × Small hangers

Applications

  • IoT development
  • Various DIY projects
  • Smart home control systems
  • Industrial automation control systems

Specifications

Specification Parameters
SoC ESP32-S3@Xtensa LX7, 16M FLASH and 8M PSRAM, WiFi, OTG CDC functions
Touch IPS LCD Screen 2.0"@320 x 240 ILI9342C
Camera GC0308@300,000 pixels
Proximity Sensor LTR-553ALS-WA
Power Management Chip AXP2101
Six-Axis Motion Sensor BMI270
Three-Axis Magnetometer BMM150
RTC BM8563
Speaker 16-bit I2S amplifier chip AW88298@1W
Audio Decoding Chip ES7210, dual microphone input
Product Dimensions Full kit (CoreS3 + DinBase): 69.0 x 54.0 x 31.5mm
Main unit (CoreS3): 54.0 x 54.0 x 15.5mm
Product Weight 72.7g
Packaging Dimensions 105.6 x 66.0 x 35.3mm
Packaging Weight 101.8g

Learn

Download Mode
Before downloading the program, hold the reset button for 3 seconds (green light on) to enter download mode.
Power On/Off Operation
Power On/Off Operation:
Power On: Click the power button on the left
Power Off: Hold the power button on the left for 6 seconds
Reset: Click the RST button on the bottom
Download Mode: Hold the reset button for 3 seconds (green light on)
Power Management Mode
CoreS3 uses the AXP2101 power management chip. Users can set the power input and output direction according to the diagram below. For specific setup code, refer to M5Unified

Certifications

  • CE/MIC/FCC/SAR

Schematics

PinMap

LCD Screen & TF Card

LCD Resolution: 320x240 TF Card supports up to 16GB

ESP32S3 Chip GPIO37 GPIO36 GPIO3 GPIO35 GPIO4
AW9523B AW9523B_P1_1
AXP2101 AXP2101_DLDO1 AXP2101_LX1
ILI9342C MOSI SCK CS DC RST BL PWR
TF Card SPI_MOSI SPI_SCK SPI_MISO TF_CS

Camera & Proximity Sensor LTR-553ALS-WA

ESP32S3 Chip GPIO12 GPIO11 AW9523B_P1_0 GPIO45 GPIO46 GPIO38
GC0308 I2C_SYS_SDA I2C_SYS_SCL CAM_RST CAM_PCLK CAM_VSYNC CAM_HREF
LTR-553ALS-WA I2C_SYS_SDA I2C_SYS_SCL

The LTR-553ALS-WA proximity sensor and camera are integrated on a single cable, using I2C for communication. For detailed communication addresses, refer to the table above.

CAP.TOUCH (I2C Addr: 0x38)

ESP32S3 chip GPIO12 GPIO11 AW9523B_P1_2 AW9523B_P0_0
FT6336U I2C_SYS_SDA I2C_SYS_SCL TOUCH_INT TOUCH_RST

Microphone & Amplifier

ESP32S3 Chip GPIO12 GPIO11 GPIO34 GPIO33 GPIO13 GPIO14 GPIO0 AW9523B_P1_3 AW9523B_P0_2
ES7210(0x40) I2C_SYS_SDA I2C_SYS_SCL I2S_BCK I2S_WCK I2S_DATO I2S_MCLK
AW88298(0x36) I2C_SYS_SDA I2C_SYS_SCL I2S_BCK I2S_WCK I2S_DAT1 AW_INT AW_RST

AXP Power Indicator

AXP2101 AXP_CHG_LED
Red LED RTC_VDD

RTC

ESP32S3 Chip GPIO12 GPIO11 AXP2101_IRQ
BM8563 I2C_SYS_SDA I2C_SYS_SCL AXP_WAKEUP

IMU (3-Axis Gyroscope + 3-Axis Accelerometer + 3-Axis Magnetometer)

ESP32S3 Chip GPIO12 GPIO11
BMI270&BMM150 I2C_SYS_SDA I2C_SYS_SCL

Internal I2C Connections

ESP32S3 Chip GPIO12 GPIO11
BMI270&BMM150 I2C_SYS_SDA I2C_SYS_SCL
AXP2101 I2C_SYS_SDA I2C_SYS_SCL
BM8563 I2C_SYS_SDA I2C_SYS_SCL
ES7210 I2C_SYS_SDA I2C_SYS_SCL
AW88298 I2C_SYS_SDA I2C_SYS_SCL

PORT

Port Pin Remarks
PORT-A (Red) G2/G1 I2C
PORT-B (Black) G9/G8 GPIO
PORT-C (Blue) G18/G17 UART (RX/TX)

M-BUS

Model Size

module size

3D

Datasheets

Softwares

Quick Start

Arduino

UiFlow2

Platform.IO

[env:m5stack-cores3]
platform = espressif32@6.3.2
board = esp32-s3-devkitc-1
framework = arduino
upload_speed = 1500000
monitor_speed = 115200
build_flags =
    -DESP32S3
    -DBOARD_HAS_PSRAM
    -mfix-esp32-psram-cache-issue
    -DCORE_DEBUG_LEVEL=5
    -DARDUINO_USB_CDC_ON_BOOT=1
    -DARDUINO_USB_MODE=1
lib_deps =
    M5Unified=https://github.com/m5stack/M5Unified

ESP-IDF

Easyloader

Easyloader Download Link Notes
CoreS3 Touchscreen Repair Firmware Easyloader download /
CoreS3 Factory Firmware Easyloader download /

Others

  • I2C Address
Chip ADDRESS
GC0308 ADDR 0X21
LTR553 ADDR 0x23
AXP2101 ADDR 0x34
AW88298 ADDR 0x36
FT6336 ADDR 0x38
ES7210 ADDR 0x40
BM8563 ADDR 0x51
AW9523 ADDR 0x58
BMI270 ADDR 0x69
BMM150 ADDR 0x10

Video

  • How to use USB port execute code on UiFlow2

  • Burning UIFLow2 to CoreS3

FAQ

  • Q: After the sensor is connected, what is the case that the sensor does not work or does not exist?
  • A: The CoreS3 uses the AXP2101 power management chip, and the Port port and the M5-Bus power supply need to be configured for normal output voltage. Add M5.config() to the setup function; Will automatically configure the Unit and M5BUS output to 5V(excluding USB 5V), the sensor and base will work properly;
    If you need 9-24V of the base as a power input, you need to configure cfg.output_power = false; This means that the MBUS can work properly only if it is set to the input state.
module size