I have a project at home that uses a bunch of thermocouples, power controllers, current sensors, etc. I was trying to run them all off a raspberry pi running node red. It started off OK but quickly ran into trouble after the hardware started scaling up (particularly the thermocouples)
I had an esp8266 sitting around, so I flashed it with tasmota, configured it to run four thermocouples, and then tied it back to the raspberry pi via MQTT message bus. It's absolutely fantastic. I put a second one together to run a small portable load cell setup for measuring output rate of the process and pipe all of those measurements through MQTT as well. Plan is to create a flash/configure pipeline so i can swap out the ESP boards and/or easily tack more on over time. Ultimately would like to get all of the hardware off of the PI and have spare ESP8266 boards around so i have a bit of redundancy.
Tons of capability for the money and the process of getting Tasmota up and running with a standard sensor couldn't have been easier. Lots of fun!!!
It might be worth looking at ESPHome (https://esphome.io/), it's very similar to Tasmota but modular and is configured via yaml files. It also supports OTA updates for firmware/config changes (after the initial flash).
I feel ESPHome scales better than Tasmota for these reasons - no need to visit the individual web UI's for each Tasmota device, using ESPHome you can update your configs from a central web UI and then push the changes to your devices via wifi.
TLDR; Tasmota is great for bespoke devices, but IMO ESPHome is better because it's modular and supports OTA updates.
THIS is such a great video! I had just flashed some wifi lightbulbs with Tasmota and was going to go with ESPHome but the lazyman in me just left it along. If I had watched this video first, I would have followed through. Now everything is setup and working I am not going to go through and change it all again.
Second the recommendation for esphome, especially if you are trying to do something a little smarter than just a remotely controlled switch. I started with tasmota for my little wastewater pump controller but I found it hard to get my simple if-this-then-that logic to work in tasmota. ESP home on the other hand allows you to write you own C/++ code if you want.
The lambda functions for actions in ESPHome allowed me to very simply - basically fiddling with a YAML file - send sensor data directly to the domoticz API. Plus ESPHome can send _any_ 433MHz command, unlike Tasmota, which is very limited - binary on/off - in that sense.
Well check this out, thank you! I was going to before but Tasmota was so dead simple and i had all the logic offboard anyway. But I like some of the points you mentioned that would help with automation of building out new ones. Thanks!
BTW I can’t say enough good stuff about node-red for automation. It has been great. I tie it into into influxdb for telemetry and it has a nice little dashboard feature for process monitoring. All with almost zero code.
Node-red is indeed great, and useful even for novice users that can't code, while still being powerful for power users that want to write JS.
I run Home Assistant (on their Hassio OS) on a raspberry pi2, which includes integration for Tasmota, ESPHome, Node-red, MQTT server, influxdb, plex server, presence detection, and more, all through a polished web ui.
I highly recommend it if you're looking to tie together a bunch of IoT devices. For me it has become my central location to manage all my "smart" home devices, and is essentially the glue that holds it all together while providing a pleasant UX for managing it all.
With the integration of Node-red, it provides nodes that represent your Home Assistant based sensors/switches so you can easily read/write their values within your Node-red flow.
I'm personally a great fan of esphome.io. Use simple yaml files to configure a firmware built exactly to your whishes for various esp32 and esp8266 variants. Includes support for a ton of peripherals.
The list of supported hardware is actually a great place to look for which sensors are commonly used for for e.g. air quality, c02, temperature, humidity, power monitoring etc. Almost all supported sensors are available for a few bucks on aliexpress or equivalents.
You can connect the result to home assistant, but you can also move all or some of the logic to the board. So your light still switches on when motion is detected when your WiFi or the server is down. But if motion is detected at certain hours, you'll get a notification via home assistant
This. ESPHome additionally provides a minimal form of "device management" for larger numbers of devices, including OTA updates of firmware. This is an often underestimated aspect of HA; having many devices of different types buried in your home's walls and ceilings will get cumbersome to maintain, update and replace very quickly.
I love ESPhome. I don’t use their web interface or anything for management, instead I have all of my config in a repo as “infrastructure as code” which gets deployed to all of my devices in one command.
I use it for so many things around the house that the WiFi spectrum is probably completely saturated, it's fantastic. It even supports auto-update over HTTP, so all my devices periodically talk to my home server to see if a new firmware is available using a simple server I wrote:
Since I'm very familiar with ESPurna but not with TASMOTA or ESPHome, I can share some of its drawbacks:
* Provisioning is hard. I have tens of devices and I want to deploy firmware on them with specific settings already preloaded, so I can just flash it and have it automatically connect to my Wifi, MQTT server, autoupdate server, etc. Not only do I need to compile my own firmware for this, but I need to compile one version of the firmware per device type. This isn't too much of a hassle, I wrote a simple for loop to do it, but what is a hassle is that my configuration needs to be in the form of #defines in a header file, which makes updating a big pain, as I have to figure out what upstream changes were made and how to merge them with mine.
Actually, that's the only drawback I've found, it's otherwise worked perfectly, the community is great, the maintainer is very responsive and the software does what I need and more. Definitely recommended.
The developer of ESPurna is a lovely person and fantastically responsive to ideas on how to extend the firmware. I personally find the offline scheduling to be a life saver - I can have smart-ish home devices that 'just work' even when I don't have or keep swapping between different smart-home controllers.
Beware that the tasmota rules engine has a bunch of bugs in, and the maintainers aren't interested in fixing (or even documenting) the bugs for fear that users now rely on the bugs. They mostly stem from the fact the engine does no tokenizing, and all parsing is ad-hoc.
That makes implementing anything more complex than "when this sensor goes to this state, do that" very hard, because you'll hit bug after bug.
I'm a bit puzzled by your comment because I just had a look at their closed bugs page on GitHub and it looks these devs really work hard at fixing whatever people throw at them. Could you give an example of a bug they refused to fix/document?
The project owner (Theo Arends) tries to solve any bug in 1-2 days. If you have found a bug please open a issue. It will be solved!!!
I use Tasmota since 3 years. I have found NO other project with so many supported features running so stable with a ESP8266.
I love this project, Tasmota on a Sonoff basic makes the fan in my toilet switch on when my Hue motion detector detects motion (and switches the light on), using Home Assistant for the logic. My proudest and most useful automation!
Once you flash it and turn it on, it becomes a hotspot to help configure it to your own network, so smart, from that day on: OTA updates. Mine is hidden in the ceiling and has been there without problems for over a year now.
A motion detector for bathroom motions is exactly the level of humour I appreciate.
I’ve only just started messing with relays and overcoming the terror of 240V was the biggest hurdle - I made a ventilation system that pushes air from either outside or from above a wood burner. It has a pair of motors that open and close and they are controlled by an ESP32 - this worked better than an ESP8266 as the output voltage was 5v rather than 3v. The lower voltage seemed to crap out for some reason, probably because the relay wanted 5v.
It is a fantastic piece of software. It does exactly what it’s supposed to do, helps you to avoid scammy default firmware of IoT devices and has a great community. I’m a huge fan and have two dozen of Tasmota devices scattered around my place (mostly Shelly and Sonoff). This (for me) is the most promising Smart Home ecosystem.
Good stuff, my dad showed this to me as he was working on some home automation and now I'm using it to control the vent fan in my van. I love the ESP8266, it's such a fun little platform and it's very easy to find accessories for them. The little relay board I have was essentially plug and play.
I love Tasmota! I have a large cooker hood that I built into an alcove. Works fine, except my wife and children can't reach the buttons. I soldered wires to the button circuit board and connected a Sonoff 4CH Pro (basically 4 wifi connected relays) and a Sonoff remote control.
Not only can I operate the cooker hood with the remote control, through Home Assistant I also made an automation where I just shout 'Hey Google let's cook', which turns on all the lights in the kitchen and dining room and turns on the fan.
Can you flash Tasmota on to devices without using additional hardware (other than a Linux desktop with Wifi, for example)? Last I checked you had to do soldering, etc.
If you use an ESP8266 board, like a NodeMCU or Wemos D1, of course you can - those come with a built-in USB interface.
For many other devices, there's tuya-convert - creates a special hotspot which "captures" the device, then flashes it via OTA for you. But Tuya already changed the firmware once to block this, and although the newest tuya-convert works again, there's no telling they won't do it again.
Lately though Tuya devices have started using a Realtek RTL8710BN instead of the ESP8266 - those are completely incompatible boards, and to my knowledge there's nothing like Tasmota or ESPhome for them.
Also notable is that you can get Tasmota-capable Wifi power sockets for about 10€ if you are willing and able to use some electronics tools. I have three of them with Tasmota. The first took about two hours to flash with some trial and error, the other two about an hour for both.
I just flashed Tasmota on to three Sonoff S26’s without any soldering. I did need a USB to serial adapter to connect to the serial and power pins - I got one that included an ESP-01 so I knew it should work [0]. I also needed some bits of wire and crocodile clips, but that's all. The S20 is easier by all accounts, but I didn't know that until I'd already got the S26's. Having three to flash, I was motivated to figure out a solution that didn't involve soldering.
The ease or difficulty of re-flashing is dependent on the hardware. Some (most?) still need soldering, or at least a steady hand to hold wires in place, but the soldering on some things is far easier than others.
I've managed to flash half a dozen Sonoff light switches, as many power outlet switches, a whole bunch of Wemos D1 Minis, and even my kettle. Its generally straight forward and the first one is always the trickiest.
Initial OTA flashing might be a thing on some devices, but hasn't been on the Sonoff thing I have for a while. Once flashed though, you never need to touch the hardware again.
I had an esp8266 sitting around, so I flashed it with tasmota, configured it to run four thermocouples, and then tied it back to the raspberry pi via MQTT message bus. It's absolutely fantastic. I put a second one together to run a small portable load cell setup for measuring output rate of the process and pipe all of those measurements through MQTT as well. Plan is to create a flash/configure pipeline so i can swap out the ESP boards and/or easily tack more on over time. Ultimately would like to get all of the hardware off of the PI and have spare ESP8266 boards around so i have a bit of redundancy.
Tons of capability for the money and the process of getting Tasmota up and running with a standard sensor couldn't have been easier. Lots of fun!!!