More M5Stack Goodness

M5StickC-Plus from M5Stack

My last M5Stack gadgets came from the company iself but this week I received a tiny M5StickC Plus (no, that’s not a spelling error) from Banggood. The full description says “ESP32-PICO-D4 Mini IOT Development Board”, anyway .

I know I’m a little late joining the party with this device but as I was writing about M5Stack products anyway, I thought I’d better include this one. Enclosed in a tiny red plastic box, the “M5StickC Plus” includes a battery and is charged by USB-C (claimed capacity is 120maH). I’ve not had it long enough to go into in-depth here but this is cute. Driven by an ESP32-Pico running at 240Mhz, it not only does it have a built-in (USB-C-chargeable) battery but also an ST7789v2 colour display, BM8563 RTC, 6-axis MPU6886, PMU AXP192, IO includes G32 and G33, G0, G25 and G36 (the last two share the same connector – set G25 as floating to use G36 as an A/D in) – oh and there’s an SPM 1423 microphone not to mention a bright LED at the top next to the IR emitter.

The pictures include a shot of an audio spectrum display (accidentally put to the test with a sneeze 😂 ), the clock running (I’ve not set it yet), the 6-axis device running in real-time (3D rotation) and IR transmission. What’s not shown is the Bluetooth 4.2 demo but the device paired with my phone immediately. Full spec on the M5Stack site.

The demos themselves aren’t of much use but they do serve to prove that everything including the display, is working and maybe give potential users some ideas. I will soon find a use for this board but it almost seems a shame to remove that spectral display. There’s a big button on the front (which you can see) and two smaller side buttons (the left button is 2 seconds for ON, 6 seconds for OFF).

Unlike the larger and of course more expensive M5 Tough and M5 Core2 devices which use an ILI9342 (not YET supported by ESPHOME), I imagine it should be easy to use the latter with this little ST7789 135×240 display. I’ll test that soon. For those who like using the Arduino environment, a simple example for setting up G25 and G36 follows:

setup()
{
   M5.begin();
   pinMode(36, INPUT);
   gpio_pulldown_dis(GPIO_NUM_25);
   gpio_pullup_dis(GPIO_NUM_25);
}

If you’re more inclined to have a go at visual programming, M5Stack have UIFlow setup for the M5StickC Plus – here’s the UIFlow link full of useful information.

Why am I attracted to M5Stack products like this? Well, for one thing, when experimenting it is nice to have a powerful little unit pre-boxed and with all the spec you need printed on the side. These are cheap – I’ll not put pricing here are this will all depend on where you are in the world and when you read this article (particularly given shortages due to Covid and maybe Brexit).

I’m particularly partial to the 5V in and out options as well as 3v3 out for peripherals along the top (not yet figured out what the battery pin is for) – and don’t forget along te bottom, as well as USB-C for charging and programming, there’s a 4 way Grove-type connector connector for I2C and other uses.

The M5Stack site has a shed-load of peripherals you can add to the M5StickC-Plus.

I could not tell you how many ESP8266 and eSP32-based ideas I’ve played with over the years and more than one or two have ended up in the bin when the birds-next of wires I’ve erected around the chip has caused a short – not so with the MStck products and the likes of the M5StickC-Plus isn’t much more expensive than the sum of it’s parts – even cheaper depending where you buy your components.

What has NOT impressed me so far is that when running the spectral viewer (on battery), the unit gets quite warm, I’ll be surprised if I get the full 2 hours out of that. Time will tell.

More later.