#Advice on ESPHome vs MQTT

9 messages · Page 1 of 1 (latest)

halcyon drum
#

Hi Team,

Im looking for some advice on choosing the best option for a scalable and uniform automation for indoor agriculture, Looking at examples of what people have already done I can see a lot of ESPHome configs that are being used to compile into custom firmware and flash to the controllers which seems like a low barrier of entry for the automation enthusiast.

While this seems like a great option to get something 'up and running as quickly as possible' I am wondering about the limitations and potential pitfalls of this approach.

I am also exploring using MQTT broker to manage all my devices which seems like a more scalable way of building things however this approach relies on a fair understanding of MQTT Protocol and how to manage the auto-discovery configs, I have managed to implement this using C++ with Arduino IDE as well as created discovery configs for micropython to use with M5Stack devices and controllers, This feels far more flexible in the sense that all my devices and sensors will operate on a common backbone as well as allowing direct code level adjustments for sensor calibration, management and apply custom calculations and offsets where needed in a more direct way.

I admit I am really new to home assistant and ESPHome however i do have experience in software development and enterprise I.T systems so I am confident working with code level approach.

Any advice here would be greatly appreciated.

formal mirage
#

ESPHome and MQTT are for completely different things, there's no "vs" that makes sense

#

Maybe you're asking if it makes sense to use ESPHome vs rolling your own solution (or using Tasmota)?

halcyon drum
#

Well I have currently got some devices working using basic MQTT messaging implementation with auto-discovery configs for home assistant meaning that the MQTT broker is my backbone and handles all signals and commands to and from devices, While there is a degree of additional complexity to ensure the devices are handling listening to the command queues correctly etc... It seems like a more customizable and uniform approach given i have been able to implement the discovery configs in both c++ and micropython giving me the flexibility to fully program my devices as i see fit, the ESPHome approach seems to load a lot of functionality under the hood with the firmware it generates from a YAML config

At a basic level my understanding says ESPHome is for home automation hobbiests while MQTT is designed for industrial IoT

Admittedly im a real greenhorn with this tech so would love to hear in more detail what you mean by for completely different things 🙏

formal mirage
#

Well, ESPHome is firmware for ESPs, much like Tasmota

#

MQTT is a message protocol, used by IoT and more

#

You're mixing up firmware with messages

halcyon drum
#

ok no i think im with you and on a similar page sorry my explanation may have been mis-leading

formal mirage
#

My take when it comes to firmware is that ESPHome and Tasmota (Tasmota uses MQTT and handles auto-discovery for you) make it easy to work with Home Assistant. If you want something easy to get going with then those make a lot of sense.

If you're using weird hardware those don't support, or wanting to do things they don't handle, then sure, roll your own firmware.