HomeReviewThis ESP32 is on FIRE! - M5Stack Core

This ESP32 is on FIRE! – M5Stack Core

It's like an ESP32 but so much better

I have a dedicated drawer for ESP based boards. They come in different forms and shapes but all of them can be summed up by: “here X module attached to ESP and some GPIO for you to play with”. M5Stack takes it a step further with well designed, incredibly polished ESP based development modules that just work on its own as an all-in-one development platform. I’m going to take a closer look at M5Stack Core – a beautify made ESP32 module with a plethora of functions.

When all-in-one means just that

M5Stack Core has all the makings of a learning tool. Don’t be put off by this, one look at M5Stack Instagram page reveals how creative the community is, and how quickly community takes the applied knowledge and uses in very creative projects. The key to that success is a module-based approach.

Looking at the website alone, I wonder if it’s not easier to list things that M5Stack Core doesn’t feature. Instead of a naked PCB, M5Stack offers a fully modular, stackable design that requires no soldering at all. Core modules come in dev kits or as a module paired with one from dozens available modules. From LoRa, RFID to battery packs and even a cooling base, you’ll never find yourself limited by this ecosystem. On top of that, more traditional expansions are available via GPIO or GROVE connectors.

Specs on FIRE

Guys at M5Stack sent me the M5Stack Core FIRE to play with and I have to say that the dev kit sets the expectations high from the moment you open the plastic container. Inside the dev kit I got:

  • M5 Stack Core
  • M5GO CHG Base
  • LEGO-compatible base
  • LEGO connectors

The Core module is well made, from a solid plastic. It will survive drops and various abuse. The module meant to be opened! Secured with 2 screws (there are 4 screws but only 2 keep the base attached) base latches on to the Core revealing ESP32 based PCB:

  • ESP32 – 240MHz dual-core, 600 DMIPS, 520KB SRAM, Wi-Fi, dual-mode Bluetooth, with 16MB Flash and 4MB RAM
  • SCREEN – 2 inch, 320×240 Colorful TFT LCD, ILI9342C, max brightness 853nit
  • 3 buttons
  • Speaker 1W-0928
  • 2 pin battery connector
  • microSD card reader
  • Port – GROVE(I2C+I/0+UART) x 1
  • USB-C
  • 30 GPIO pin header

The modular base comes with extra features and uses the GPIO header to latch on. This is the first option to customise your kit. There are about 30 or so different options. M5 Stack Core FIRE comes with the M5GO CHG Base:

  • GROVE connectors UART, GPIO
  • 2 x LED bars (RGB)
  • LiPo battery 600mAh (reduced to 500mAh)
  • microphone

There is also a LEGO style magnetic base that you can use to mount on LEGO Technics and a pass through USB-C port for charging and data.

Other M5Stack products talked about in detail:

Learn, develop, make…

Right off the bat, M5Stack Core shows what is all about – it’s all about approachable programming. ESP based modules are very popular and there is no shortage of scripts and libraries that you can try, but a lot of them are daunting with little to none documentation or instructions for anyone just starting off. And the general assumption is that if you are going to play with ESP based boards, you are pretty much past the entry-level with Arduino & Arduino IDE.

As I power on the M5Stack Core – a very neat tutorial walks me through features available in the FIRE kit, showcasing it in action. A classic “show and tell” that is as welcoming as informative. Apart from the tutorial, there are a couple of options you can try instantly: rock paper scissors game, WiFi Scanner or Heartbeat display.


Visual programming isn’t something I would instantly associate with ESP boards, but M5Stack comes with a web-based (and downloadable) visual code editor: UI Flow (microPython based) which takes Scratch’s approach to programming. Code blocks are simple to understand, and you can always switch to microPython to learn how visual block is represented by lines of code. It’s a very good way to get you started with Python, or simply refresh your knowledge.

M5Stack core connects over WiFI or USB to the UI Flow which makes the process very simple, and the associated examples introduce you to the concept of programming with blocks. Apart from UI Flow, M5Stack provides firmware burner utility with several baked in choices of firmware showcasing games tools and visualisations.


Once you are familiar with your M5Stack Core module, take a look at an array of matching extensions. From temperature sensors to thermal camera add-ons, and robot platforms. The ecosystem is spoiled for choice and leaves you drooling for the next thing to add to your M5Stack collection.


When your maker’s wings are spread enough and you are ready for another challenge, M5Stack Core is a fully developed ESP32 board. Nothing stops you from using Arduino IDE to develop for it. With the inclusion of GPIO expanders, GROVE ports and even prototyping modules sky is the limit (or ESP32’s processing power).

Community is very creative and one look at the M5Stack Instagram feed tells you how inventive makers get with it.

Final thoughts

I’m not surprised why M5Stack products are so popular. These are very well made modules that fill the learning niche nicely. Picking ESP32 is an awesome choice too as the transition from M5Stack modules onto more sophisticated ESP boards is seamless. If you ever wanted to start programming – M5Stack Core is a true all-in-one module – as long as you don’t require a touch screen (this will change soon) or 5G network. If you were ever looking for a pocket-size dev board to play with – you can not go wrong with M5Stack Core. I have 2 more modules I will be writing about soon. Thoughts? Let me know in this Reddit thread.


Nothing says "Thank you" better than keeping my coffee jar topped up!


Support me on Patreon and get an early access to tutorial files and videos.


Bitcoin (BTC)

Use this QR to keep me caffeinated with BTC: 1FwFqqh71mUTENcRe9q4s9AWFgoc8BA9ZU


Programable, ESP32 based awesome dev platform with 4.7 e-ink display by M5Stack

More HATs


Argon One M.2

Enclose Raspberry Pi 4 inside this great case with custom I/O, cooling and GPIO and M.2 SSD support

More cases on


Best Raspberry Pi Projects

How to use Raspberry PI as WOL (wake on lan) server

While you could wake up your PC from a mobile directly, having a dedicated server capable of doing so is the best solution. The reason is simple. You can hook up as many devices as you wish with a single endpoint. This is why Raspberry Pi is perfect for this.

Slow Internet Warning

From time to time my Internet grinds to a stop. Since Raspberry Pi 4 comes with a 1Gbps Ethernet, I decided to take advantage of it and create a reporting system in NodeRED that will monitor and report when the ISP is not keeping the contractual agreements. Works with Alexa, Google Home, Android and Windows 10.

How fast Raspberry Pi NAS is?

Let's see how fast Raspberry Pi NAS really is?

Argon18: Argon ONE SSD modification

Argon One case just got better - now you can boot it from USB without ruining the design thanks to Argon 18: Argon One SSD modification


It took me 2 months to boot CM4 from NVMe

Complete beginners guide to Compute Module 4 boot from NVMe.

Raspberry Pi Zero 2 W vs other Zero boards

It's time to test the Raspberry Pi Zero 2 W against other Raspberry Pi boards from Zero series: power, WiFi, temperature and core performance

C/C++ and MicroPython SDK for Raspberry Pi Pico on Windows

A guide to SDK toolchain for Raspberry Pi Pico and C/C++ , Micropython on Windows.

A comprehensive guide to Grafana & InfluxDB

How to use Grafana and InfluxDB on Raspberry Pi for IoT sensors in home automation

How to boot Raspberry Pi 4 from USB

How to set up and boot Raspberry Pi 4 from USB drive - headless guide.