

The M5Stamp-s3 is a compact, low-power microcontroller module developed by M5. It is based on the ESP32-S3 chip, which features dual-core Xtensa LX7 processors, integrated Wi-Fi, and Bluetooth 5.0 connectivity. This module is designed for Internet of Things (IoT) applications, offering a versatile platform for prototyping and deploying smart devices. Its small form factor and GPIO pins make it ideal for interfacing with a wide range of sensors, actuators, and other peripherals.








| Parameter | Specification |
|---|---|
| Microcontroller | ESP32-S3 (Xtensa LX7 dual-core, 240 MHz) |
| Wireless Connectivity | Wi-Fi 802.11 b/g/n (2.4 GHz), Bluetooth 5.0 |
| Flash Memory | 8 MB (default) |
| PSRAM | 2 MB |
| GPIO Pins | 8 (configurable for digital I/O, ADC, PWM, etc.) |
| Operating Voltage | 3.3V |
| Power Supply Input | 5V (via USB-C) |
| Current Consumption | ~10 µA (deep sleep), ~80 mA (active) |
| Dimensions | 24 x 24 mm |
| Operating Temperature | -40°C to 85°C |
The M5Stamp-s3 features a total of 8 GPIO pins, which can be configured for various functions such as digital I/O, ADC, PWM, I2C, SPI, and UART. Below is the pinout description:
| Pin Number | Pin Name | Functionality |
|---|---|---|
| 1 | GND | Ground |
| 2 | 3V3 | 3.3V Power Output |
| 3 | GPIO0 | General Purpose I/O, ADC, PWM |
| 4 | GPIO1 | General Purpose I/O, ADC, PWM |
| 5 | GPIO2 | General Purpose I/O, ADC, PWM |
| 6 | GPIO3 | General Purpose I/O, ADC, PWM |
| 7 | GPIO4 | General Purpose I/O, ADC, PWM |
| 8 | GPIO5 | General Purpose I/O, ADC, PWM |
Powering the Module:
Connecting Peripherals:
Programming the Module:
Uploading Code:
Below is an example of how to use the M5Stamp-s3 to read data from a temperature sensor and send it to a serial monitor:
#include <Wire.h>
// Define the GPIO pin connected to the temperature sensor
#define TEMP_SENSOR_PIN 3
void setup() {
Serial.begin(115200); // Initialize serial communication at 115200 baud
pinMode(TEMP_SENSOR_PIN, INPUT); // Set the sensor pin as input
}
void loop() {
int sensorValue = analogRead(TEMP_SENSOR_PIN); // Read the sensor value
float temperature = (sensorValue / 1024.0) * 100.0; // Convert to temperature
// Print the temperature to the serial monitor
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" °C");
delay(1000); // Wait for 1 second before the next reading
}
Module Not Detected by Computer:
Code Upload Fails:
Wi-Fi Connection Issues:
High Power Consumption:
Q: Can the M5Stamp-s3 be powered by a battery?
A: Yes, the module can be powered by a 3.7V LiPo battery connected to a suitable power management circuit.
Q: Does the M5Stamp-s3 support OTA updates?
A: Yes, the ESP32-S3 chip supports over-the-air (OTA) firmware updates.
Q: Can I use the M5Stamp-s3 with MicroPython?
A: Absolutely! The module is compatible with MicroPython, and you can upload MicroPython firmware to get started.
Q: What is the maximum range of the Wi-Fi connection?
A: The Wi-Fi range depends on environmental factors but typically extends up to 50 meters indoors and 200 meters outdoors.
This concludes the documentation for the M5Stamp-s3. For further assistance, refer to the official M5 documentation or community forums.