Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MQTT broker and client on the same RPI

So I'm building a system where I scan a RFID tag with a reader connected to a Raspberry Pi, the RFID tag ID should then be sent to another "central" RPI, where a database is checked for some info, and if it matches the central Pi sends a message to a lamp (also connected to a Pi) which will then turn on. This is just the start of a larger home-automation system.

I read about MQTT making it very easy to make more RPIs communicate and act on events like this. The only thing I am wondering about, but can't find documented on the internet, is whether the central Pi in my case can act like the broker, but also be subscribed to the topic for the RFID tag ID, check the database and then publish to another topic for the light.

Purely based on logical thinking I'd say yes, since the broker is running in the background. Thus I would still be able to run a python script that subscribes/publishes to, I'm guessing, localhost instead of the central Pi's IPaddress and port.

Can anyone confirm this? I can't test it myself yet because I have just ordered the equipment, and am doing lots of preparation-research.

like image 750
Guinn Avatar asked Mar 17 '23 02:03

Guinn


1 Answers

You can run as many clients as you like on the same machine as the broker (You could even run multiple brokers as long as they listen on different ports). The only thing you need to do is ensure that each client has different client id

like image 159
hardillb Avatar answered Mar 23 '23 05:03

hardillb