HomeHome AutomationCan touch this: M5Stack Core2

Can touch this: M5Stack Core2

This thermostat mockup took 2 min of my time without wires or writing a single line of code

In my M5Stack Core Fire Development kit review, I praised how well designed the board is, and how M5Stack succeeds in bringing a “consumer” feel to their development boards. M5Stack Core2 (M5Store, Banggood, AliExpress, Amazon) iterates on that idea, bringing the most requested upgrades while keeping an almost identical footprint to its predecessor. After all, why change the formula, if it sells well? Is it enough to capture your imagination?

M5Stack Core 2

M5Stack Core2
M5Stack Core2 with thermostat

It took me a while to play properly with M5Stack Core2, not because the device isn’t fun, but after owning other M5Stack boards I struggle to come up with a new and interesting presentation. The most striking change in M5Stack Core2 is the inclusion of the touch interface, which now covers the 2″ LCD display and 3 user-configurable buttons we are familiar with from Core devices.

But the changes are not just on the surface, despite Core (Fire edition) and M5Stack Core2 sharing the same microcontroller at heart: ESP32-D0WDQ6-V3 and share the same design principle: stackable modules that expand the base functions of the development board. It’s what makes the Core devices so attractive – the ability to add a virtually unlimited combination of compatible stacks, add-ons and modules in seconds. Thanks to built-in magnets, the unit can be attached to the metallic surface.


Under the hood, M5Stack Core2 brings only superficial changes to the familiar module from the Fire kit. Even though some components were superseded by new part numbers, the feature list is almost alike (apart from the touch interface).

The screen seemed a bit brighter and looking up the specification I discovered that M5Stack Core2 comes with a 2″ ISP LCD 320*240 panel. Looking at both units side by side, it does stand out a little, and the image and course appear to be brighter.

  • ESP32-D0WDQ6-V3
  • Flash 16MB
  • 2.0″ISP LCD 320*240
  • TypeC x 1, GROVE(I2C+I/0+UART) x 1
  • Power, RST, Virtual screen button x 3
  • 390mAh battery
  • 1W speaker
  • 6-axis MPU6886
  • RTC BM8563
  • PMU AXP192
  • Vibration motor

For your disposal, you still get the USB-C port alongside the universal GROVE connector for external modules and accessories, microSD card reader and 30-pin GPIO header. M5Stack Core2 is slightly taller than the Core series, but the footprint remains the same, and the board is cross-compatible with older stacks. In fact, adding the Fire’s base to the new Core2 took only a moment, and I was able to enjoy expanded I/O and extra LED bars.


UIFlow – it’s less scary than you think!

Nothing brings me more pleasure than programming M5Stack Core2 wirelessly. Thanks to the built-in battery and UIFlow support, all you need is to open the browser, write some code and push it magically to the device without wires.

UIFlow is a visual IDE that uses Micropython to program your M5Stack devices. In case the visual programming isn’t sophisticated enough, you can switch instantly to a more traditional text editor for your code without losing the “wireless programming” ability. You can watch a 1.5h online session with UIFlow making the thermostat here.

Hardcore fans can program M5Stack Core2 like any other ESP32 board with Arduino IDE or VSC and PlatformIO. M5Stack provides libraries for their devices, so you can take the advantage of the onboard sensors without reading datasheets.

In practice, programming M5Stack Core2 can be a great learning experience thanks to visual blocks and bridge into a more traditional way – using designated IDEs. As a learning platform, I can strongly recommend these boards. If you want to just try things out, M5Stack also provides you with an M5Burner – a tool to flash baked firmware onto your device. This could be UIFlow firmware, or community made images that showcase the power of this board. From simple weather widgets to Sonic game!

Other M5Stack products talked about in detail:

Where it shines

My thermostat mockup interface took 2 min

Thanks to the thoughtful design, adding a touch interface to an existing project is almost effortless (you are still responsible for software changes). M5Stack Core2 is a compatible touch upgrade that can be simply added to previous M5Stack based projects. The internet is filled with M5Stack driven robotic toys, widgets and creative ideas.

With RTC on board, battery backup power and handsome looks, it would make a perfect thermostat that you can move between dock stations (Fire kit has magnetic charge capabilities). ESP32 is capable of almost all IoT automation, so your creativity is the limit here.

Within minutes, I was able to prototype a thermostat display in UIFlow with dynamic colours of the slider, setpoint display and temperature readouts. As UFlow comes with libraries supporting WiFi & MQTT, it’s extremely easy to connect it to my $5 Smart Heating and deploy it as a secondary thermostat that you can move anywhere. All this was done without using wires or a single line of code.

As M5Stack Core2 comes with RTC, you can keep it powered and respond to interrupts to extend its battery life when not docked to a charging pad or USB-C cable. The beauty of this is the speed at which even a beginner can put together a simple interface to try things out without spending days learning how to code.

If you are interested in the thermostat, I will work on the idea a bit further and share the code and more information in my next article. It’s a perfect opportunity to follow me if you want a notification when this is ready!

Final thoughts

The improvement is very much iterative, but M5Stack Core2 brings a much-appreciated touch screen option. If a 2″ display isn’t enough, check out M5Paper which combines a responsive touch interface with the power-saving features of an e-ink display. And if Edge computing is your thing, UnitV2 brings the power of AI vision to a device barely bigger than your thumb. Either way, M5Stack Core2 (M5Store, Banggood, AliExpress, Amazon) deserves attention as it’s a fantastic development board with a degree of polish associated only with M5Stack devices. You can get one for roughly $45. Let me know your thoughts in this Reddit thread.

🆓📈 – See the transparency note for details.


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.