Struggling to setup my first Tasmota device and MQTT
-
Hi
Trying to create my first Tasmota device on an ESP board. I flashed it OK setup the GPIO pins and pointed it to an new MQTT broker running on the same Linux Debian box as MSR. I followed these instructions here to install a MQTT Controller in MSR, which I can now see under Entities. My topic on the Tasmota setup I called "fan_controller" I don't see any new device coming into MSR however.
My ESP has an DHT22 Temp sensor attached and a Single Channel Relay to control a Fan and I also have a local touch button connected to the ESP board.
If I run this command in terminal on the Debian box I do see some data from the ESP / Tasmota device.
mosquitto_sub -h localhost -t "#" -vtele/fan_controller/LWT Online tasmota/discovery/7C87CE2F4CE0/config {"ip":"192.168.0.46","dn":"Tasmota","fn":["Tasmota",null,null,null,null,null,null,null],"hn":"fan-controller-3296","mac":"7C87CE2F4CE0","md":"ESP32-DevKit","ty":0,"if":0,"cam":0,"ofln":"Offline","onln":"Online","state":["OFF","ON","TOGGLE","HOLD"],"sw":"15.2.0","t":"fan_controller","ft":"%prefix%/%topic%/","tp":["cmnd","stat","tele"],"rl":[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"swc":[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],"swn":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"btn":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"so":{"4":0,"11":0,"13":0,"17":0,"20":0,"30":0,"68":0,"73":0,"82":0,"114":0,"117":0},"lk":0,"lt_st":0,"bat":0,"dslp":0,"sho":[],"sht":[],"ver":1} tasmota/discovery/7C87CE2F4CE0/sensors {"sn":{"Time":"2026-02-14T17:25:50","AM2301":{"Temperature":14.2,"Humidity":56.7,"DewPoint":5.7},"TempUnit":"C"},"ver":1} reactor/mqtt/LWT onlineIn my Reactor.yaml file I added this:
- id: mqtt name: MQTT enabled: true implementation: MQTTController config: source: "mqtt://127.0.0.1:1883" tasmota_discovery: true192.168.0.4 is the MSR / MQTT Broker Debian box.
Probably a bad idea but I then asked A.I. what the problem might be and it was telling me I needed to change my reactor.yaml file and change
implementation: MQTTControllertoclass: MQTTControllerand it also told me to add these two lines at the top of the reactor.yaml filesystem: extension_path: /home/stuart/reactor/extI don't know if it made that up or read it somewhere, I could not see any reference to it. Anyway MSR didn't want to load the MQTT Controller into Entities when I changed it to "class" instead of "implementation".
In my file system it looks like this:
I am not sure what I am missing?
Thanks.
EDIT: The A.I. also told me to run a command to change the IP from 127.0.0.1 to 0.0.0.0 perhaps that was a mistake.
Here is what IP and port it seems to be listening on:
sudo ss -tlnp | grep mosquitto LISTEN 0 100 0.0.0.0:1883 0.0.0.0:* users:(("mosquitto",pid=23713,fd=5))Here is what the A.I. said when I asked it why we changed it from 127.0.0.1 to 0.0.0.0
"1. The Broker (Mosquitto) at 0.0.0.0
Think of 0.0.0.0 as "Listen to everyone."Because Mosquitto is set to 0.0.0.0, it is listening for messages from both the internal system (the HP Thin Client itself) and external devices (your ESP32 fan controller).
If it were set to 127.0.0.1, it would be "deaf" to your ESP32.
- Reactor at 127.0.0.1
Think of 127.0.0.1 as "Talking to myself."
Since Multi-System Reactor and Mosquitto are both living on the same HP Thin Client, Reactor doesn't need to go out onto the Wi-Fi to find the broker. It just looks internally.
Using 127.0.0.1 (localhost) is faster and more secure because that traffic never even leaves the computer's CPU.
So, no, it is not a problem! Reactor talks to the broker internally (127.0.0.1), and the ESP32 talks to the broker externally (192.168.0.4). They meet in the middle inside the Mosquitto database.""
- Reactor at 127.0.0.1








