M5Stack · ESP32-S3 · 0.85" · 128×128

M5Stack AtomS3 0.85" specifications

The M5Stack AtomS3 is a 24 × 24 mm cube that weighs under 7 g, yet it carries a 0.85-inch 128×128 IPS display (GC9107, SPI) — and the whole screen is a button. Press the display to trigger the programmable key underneath.

Inside is an ESP32-S3FN8 with 8 MB of flash, an MPU6886 6-axis IMU, an infrared transmitter, USB-C for power and programming, a Grove (HY2.0-4P) port and six GPIOs on the bottom header.

The AtomS3 is designed as a smart node for M5Stack's ecosystem of Units, but with LVGL it also makes a neat stand-alone mini display: a tiny remote, a status cube or a tilt-controlled indicator. LCD Ultra Pro's export includes a GC9107 display driver matched to M5Stack's own code, so the screen works without extra setup.

Screen
0.85" · 128×128
Chip
ESP32-S3
Memory
8 MB flash, no PSRAM
Input
no touch

Key features

  • 0.85-inch IPS, 128×128, GC9107
  • Whole screen works as a button
  • ESP32-S3FN8, 8 MB flash
  • MPU6886 6-axis IMU
  • Infrared transmitter
  • Grove port and 6 GPIOs, 24 × 24 mm, 6.9 g

Specifications

M5Stack AtomS3 0.85" technical specifications
ManufacturerM5Stack
Screen size0.85"
Resolution128×128 px
Colour depth16-bit
Display controllerGC9107 (SPI)
Display interfaceSPI
TouchNone — 1 physical button(s) instead
MicrocontrollerESP32-S3
ModuleESP32-S3FN8
CPU clock240 MHz
Internal SRAM512 KB
PSRAMNone
Flash8 MB
Wi-FiYes
BluetoothYes
Display typeIPS LCD, SPI
IMUMPU6886 (I2C 0x68)
IRInfrared transmitter
Button1 programmable button under the screen
ExpansionGrove HY2.0-4P; GPIO 5, 6, 7, 8, 38, 39 on the bottom
Power5 V via USB-C
Dimensions24.0 × 24.0 × 12.9 mm
Weight6.9 g
Development platforms (manufacturer)UiFlow2, Arduino IDE, ESP-IDF, PlatformIO

GPIO pinout

The GPIOs the board itself uses — display, touch and on-board peripherals — as published in the manufacturer’s documentation.

M5Stack AtomS3 0.85" GPIO pinout
GPIOFunction
GPIO 4IR emitter
GPIO 15TFT_CS
GPIO 16Backlight (TFT_BL, 500 Hz PWM recommended)
GPIO 17TFT_SCLK
GPIO 21TFT_MOSI
GPIO 33TFT_DC (RS)
GPIO 34TFT_RST
GPIO 38I2C_SDA (IMU MPU6886) — also on the bottom pins
GPIO 39I2C_SCL (IMU MPU6886) — also on the bottom pins
GPIO 41BUTTON (programmable button)

Source: docs.m5stack.com. Always check against your board revision before wiring.

Free GPIOs and connectors

These GPIOs are not used by the display, touch or on-board peripherals, so you can wire your own sensors, buttons or relays to them.

Free GPIO pins of the M5Stack AtomS3 0.85"
PinCapabilitiesNote
GPIO 1GPIO, PWM, ADCGrove port (HY2.0-4P, white)
GPIO 2GPIO, PWM, ADCGrove port (HY2.0-4P, yellow)
GPIO 5GPIO, PWM, ADCOn the bottom pin header — ADC1
GPIO 6GPIO, PWM, ADCOn the bottom pin header — ADC1
GPIO 7GPIO, PWM, ADCOn the bottom pin header — ADC1
GPIO 8GPIO, PWM, ADCOn the bottom pin header — ADC1
  • Grove port — GPIO 2, 1

    HY2.0-4P — a good I2C port for sensors

  • Bottom pin header — GPIO 5, 6, 7, 8
  • Bottom I2C pins — GPIO 38, 39 (SDA, SCL)

    Same I2C bus as the built-in IMU (MPU6886, 0x68)

Good to know before you start

  • No PSRAM: 128×128 is small enough, but keep images and fonts modest.
  • The Grove port (GPIO 1/2) is a good I2C port for sensors; GPIO 38/39 share the bus with the IMU.
  • GPIO 5–8 on the bottom header are ADC1 pins, so analog readings work with Wi-Fi on.
  • Only 0° orientation is offered in LCD Ultra Pro for this board.

What it is good for

  • •Tiny remotes and smart buttons
  • •Status cubes for home automation
  • •Tilt and motion indicators using the IMU
  • •IR remote controls

LVGL support in LCD Ultra Pro

LVGL and LCD Ultra Pro support for the M5Stack AtomS3 0.85"
Driver statusMatched to the manufacturer’s official demo, compile-tested
Arduino exportComplete LVGL 8.4 project with the display driver
USB Live previewNo
Orientations0°
Brightness controlHardware backlight dimming

Pick this board in the editor and the canvas matches its exact resolution and shape. Build the interface with widgets, add events without code, try it in Live Preview, then export it as a ready-to-compile Arduino project. See the documentation for the workflow.

Frequently asked questions

What display does the AtomS3 have?

A 0.85-inch 128×128 IPS display with a GC9107 controller.

Does the AtomS3 have PSRAM?

No. It uses an ESP32-S3FN8 with 8 MB of flash and no PSRAM.

How do I press the AtomS3's button?

The programmable button sits under the display — press the screen itself.

Which sensors are built in?

An MPU6886 6-axis IMU; the AtomS3 also has an infrared transmitter.

Sources

Specifications cross-checked against the manufacturer’s documentation (last checked 2026-10-27):

Last updated: