Back
The newest ESP32 runs Linux and is creeping closer to a Raspberry Pi
SiTech AI Team3 წთ. საკითხავი

The newest ESP32 runs Linux and is creeping closer to a Raspberry Pi

Espressif's new ESP32-S31 packs gigabit Ethernet, a USB host, camera and display interfaces and a real MMU — a microcontroller whose Linux support is inching toward single-board computer territory.

Espressif's new ESP32-S31 looks less like a microcontroller than like a Linux single-board computer: gigabit Ethernet, a USB host controller, two SD card slots, a camera input and a parallel LCD controller. XDA Developers took a close look at what the chip can do.

Peripherals closer to an SBC

Networking is the headline: a 1000 Mbps Ethernet MAC with an RJ45 connector and a PHY on the chip's RGMII interface — the part that makes gigabit possible. The older ESP32-P4 has only a 100 Mbps MAC. USB is a High-Speed OTG controller with a full-size Type-A socket.

Alongside sit an SDIO controller with two slots, a DVP camera interface, a parallel LCD controller for up to 24-bit RGB, two I2S controllers with hardware Bluetooth audio sync and a CAN FD controller. The radios cover 2.4 GHz Wi-Fi 6, Bluetooth 5.4 and 802.15.4 for Thread and Zigbee.

Block diagram of the ESP32-S31's interfaces

A real MMU, and Linux that boots

The CPU has two 32-bit RISC-V cores at up to 320 MHz, each with a floating-point unit and one with a 128-bit SIMD path, plus a 40 MHz low-power core. The bigger change is the MMU: earlier ESP32 chips used the word for a block that only mapped flash and PSRAM, while the S31 implements Sv32 two-level page tables and Machine, Supervisor and User privilege modes.

That lets a normal kernel run in supervisor mode over firmware in machine mode. Espressif released a Linux BSP built on Buildroot and U-Boot in August, calling it "not yet recommended for production use." Community ports go further: one runs Linux 6.18 with drivers for nearly all the hardware, another drives an 800x480 LCD console on Linux 7.1.

Memory is the ceiling

Memory is the limit. The chip carries 512 KB of SRAM, and the two variants ship with 16 MB or 32 MB of in-package PSRAM; 64 MB is the maximum, with no DRAM controller — a Milk-V Duo S has 512 MB of RAM. These Linux builds keep the kernel in flash to spare PSRAM, and with no GPU or NPU a full desktop is out of reach.

Early days, confusing name

The "S31" name is confusing, suggesting an S3 revision it has little to do with. Jeroen Domburg, Technical Marketing Manager at Espressif, wrote in a Hackaday comment that "We actually never intended the CPU architecture to be part of the name."

The S31 is not a single-board computer, and Linux on it is still a toy. But it is the first ESP32 whose peripherals, bandwidth and privilege model come close to a modern SBC — enough for a Linux terminal, if not a desktop.

SSiTech

SiTech — AI-powered web development

We build fast, modern websites and bring AI into real business workflows. Have a project or a question? We'd love to help.