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 Platform
    • UiFlow2
    • Arduino IDE
    • ESP-IDF
    • PlatformIO

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

LCD Resolution: 320x240

ESP32-S3 GPIO37 GPIO36 GPIO3 GPIO35
ILI9342C MOSI SCK CS DC
AW9523B P1_1
ILI9342C RST
AXP2101 DLDO LX1
ILI9342C BL PWR

TF Card

TF Card supports up to 16GB

ESP32-S3 GPIO35 GPIO37 GPIO36 GPIO4
TF Card MISO MOSI SCK CS

Camera & Proximity Sensor LTR-553ALS-WA

ESP32-S3 GPIO12 GPIO11 GPIO45 GPIO46 GPIO38
GC0308 I2C_SYS_SDA I2C_SYS_SCL CAM_PCLK CAM_VSYNC CAM_HREF
LTR-553ALS-WA I2C_SYS_SDA I2C_SYS_SCL
AW9523B P1_0
GC0308 CAM_RST

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)

ESP32-S3 GPIO12 GPIO11
FT6336U I2C_SYS_SDA I2C_SYS_SCL
AW9523B P0_0 P1_2
FT6336U TOUCH_RST TOUCH_INT

Microphone & Amplifier

ESP32-S3 GPIO12 GPIO11 GPIO34 GPIO33 GPIO13 GPIO14 GPIO0
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
AW9523B P0_2 P1_3
AW88298 AW_RST AW_INT

AXP Power Indicator

AXP2101 AXP_CHG_LED
Red LED RTC_VDD

RTC

ESP32-S3 GPIO12 GPIO11
BM8563 I2C_SYS_SDA I2C_SYS_SCL
AXP2101 IRQ
BM8563 AXP_WAKEUP

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

ESP32-S3 GPIO12 GPIO11
BMI270 I2C_SYS_SDA I2C_SYS_SCL

Internal I2C Connections

ESP32-S3 GPIO12 GPIO11
BMI270 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

BMM150

BMI270 BMI270_ASDx BMI270_ASCx
BMM150 BMM_SDA BMM_SCL
BMM150 Mounted on BMI270
Integrating BMM150 via BMI270’s Sensor Hub auxiliary I²C interface for unified 9‑axis sensor data collection

HY2.0-4P

HY2.0-4P Black Red Yellow White
PORT.A GND 5V G2 G1
PORT.B GND 5V G9 G8
PORT.C GND 5V G18 G17

M-BUS

Model Size

module size

3D

Datasheets

Softwares

Quick Start

Arduino

UiFlow2

PlatformIO

[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