Product description: Audio module with ES8388 codec - STM32G030 - for M5Core development modules - M5Stack M144
The M5Stack audio module, based on the ES8388 codec, is an extension that adds audio support to the M5Stack Core series. Equipped with two 3.5mm connectors —one TRS (microphone only) and the other TRRS (microphone + headphones)—it enables simultaneous stereo audio recording and playback. The built-in STM32G030F6P6 microcontroller manages TRRS plug detection and controls the WS2812C RGB LEDs . Support for CTIA and OMTP standards, the module ensures broad compatibility with headsets from various manufacturers. It is suitable for applications such as smart voice, interactive art, education, and mobile recording.

Automatic switching between CTIA and OMTP cabling standards ensures compatibility with most headsets with integrated microphones.
Main features of the audio module
- ES8388 audio codec : high-quality stereo sound, I2S support
- Dual 3.5mm connectors : TRS (microphone) + TRRS (microphone + headphones)
- CTIA/OMTP support : automatic switching of handset standards
- STM32G030F6P6 controller : RGB control and TRRS connector detection
- WS2812C LED : status information backlight
- M5Stack Compatibility : Fully integrated with M-Bus
Pinouts and compatibility
The audio module uses a 30-pin M-Bus connector and is compatible with many M5Stack devices, such as CoreS3 , Core2 , Fire , Tough , and Basic . For full compatibility, please select the appropriate I2S pin configuration:
- Configuration A : for Core2 / Basic - default I2S pins
- Configuration B : for CoreS3 - different I2S pins to avoid conflicts with ES7210
The module uses the I2C bus (addresses: STM32 - 0x33, ES8388 - 0x10) and I2S to transmit audio data. Detailed pin mapping is available in the technical documentation.
The module offers two sockets - one TRS socket for microphone input only and one socket TRRS for microphone input and headphone output.
Programming the audio module
The audio module can be programmed using popular environments such as the Arduino IDE , where a dedicated library and sample code are available. UiFlow 1 and UiFlow 2 platforms are also supported, enabling block-based programming directly from a browser. For more advanced users, full support is available in MicroPython , including support for both the ES8388 codec and the STM32 microcontroller via the I2C bus. The technical documentation includes detailed descriptions of the commands, registers, and data structures necessary to integrate the module into your project.
Technical specifications of the audio module
- Microcontroller: STM32G030F6P6 (I2C address: 0x33)
- Audio codec: ES8388 (I2C address: 0x10)
- Audio inputs: 2-channel microphone
- Audio output: stereo headphone
- Connector types: 1 x TRS (microphone), 1 x TRRS (microphone + headphones)
- RGB diode: 3 x WS2812C
- Headphone Standards: CTIA / OMTP
- Current consumption: 23.53 mA (operation), 8.58 mA (standby)
- Supply voltage: 3.3 V DC
- Operating temperature: 0°C to 40°C
- Dimensions: 54 x 54 x 13.1 mm
- Weight: 12.8 g
Contents of the set
- 1x Audio module with ES8388 chip



