Just before Covid hit I embarked on a project to finally automate many things around our house and property. Back then I discovered Tasmota and thought that’s the way to go. Due to Covid supply chain problems I couldn’t get the Athom preflashed AU smart plugs that I wanted. So I went to my local Kmart and bought a bunch of smart plugs that I was going to reflash myself with Tasmota firmware. However, when I got them apart they didn’t have the requisite Espressif 8266 or ESP32, but instead a Winner Micro W600.
So I bit the bullet, decided to learn MicroPython and managed to get an old W600 firmware image loaded. From there I embraced MicroPython, never looked back at Tasmota, and now have a large ecosystem built on many different platforms and based around MQTT and all programmed in MicroPython. I didn’t really use any frameworks and just built up a part at a time. As it all got bigger it got harder to maintain, and to my horror failures started occurring at an increasing rate.
I then recalled Tasmota. I found preflashed Athom smart plus on eBay at a great price. My first batch used the ESP8266 and the second the ESP32 MCU.
There was a steep learning curve, and there still is for me. As it’s become more developed there is a real mix of old and new. Old style rules and timers to Berry scripts and LVGL capabilities. There is built in support for so many different components, modules, sensors and actuators. It’s simple to get something running with almost no code. And once you get something right it just keeps going, a lot more reliable than the stuff I wrote.
No need to worry about all the small details, they are already there. Whether it’s Wi-Fi fallback, MQTT, clocks and timing, logging, web UI, HTTP, networking or serial it works and works well without much effort.
The framework has so many ways to get code, commands, firmware, telemetry and so on communicated using serial, web based, MQTT and a ton of other ways. With their universal display driver and a new system (to me anyway) called Haspmota it has become dead easy to get great GUI’s going on cheap commodity touch screens.
I’ve been trying to get a Waveshare ESP32-S3-Touch-LCD-7 working under Tasmota. The support and help I get from Tasmota’s Discord and GitHub forums has been nothing short of fantastic. Not what I was expecting from such an open source development. There is a lot of documentation, but sometimes it is hard to find exactly what you are looking for.
As you can tell I’ve really embraced this platform. It’s perfect for my IoT home automation non-cloud setup and I’m mainly writing this piece to make others aware of Tasmota. I’m sure that many out there may also find Tasmota the ideal framework for your projects, but I haven’t seen too much mention in these forums. Do yourself a favour and check it out.
Just yesterday I wired a Monk Makes Plant Monitor to an ESP32 dev board running Tasmota. Only 16 lines of code and a few parameters and it’s now sending json packets via MQTT. And another couple of lines to get the charting looking good.
Anyway, this is what I’ve managed to get the graphics looking like on a 4 inch TFT 480 x 320 with touch with only 160 lines of Berry code and 85 json lines for 6 pages of content & controls.