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
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.
Specification
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.
M5Stack Core2 specification Inside M5Stack Core 2
- ESP32-D0WDQ6-V3
- Flash 16MB
- PSRAM 8MB
- 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.
Software
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:
- M5Stack Core
- M5Stack Core 2
- M5Stack UnitV2
- M5Dial
- M5Stack Atom Matrix (pending)
Where it shines
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.