I am running the MQTT client on the HP23 and all is working well. Does anyone know if it’s possible to run multiple instances of the app so I can have my Homey connect to 2 different MQTT servers at the same time? This app only allows one configuration.
The only way to do that is to download the app source, change the app id in app.json
, and basically run it as a new/different app. But this sounds like solving an XY problem.
When your mqtt broker is reachable from all systems, Homey should have access to all mqtt topics?
What do you like to achieve?
You can bridge one MQTT broker to another such that they keep each other in synch for selected topics. I don’t know whether the Homey broker supports this though, certainly external brokers like mosquitto do and you only need to set this up on one of participating brokers.
If you must use the internal broker then an external broker should be able to be bridged to it or at least update topics there, or you could maybe just use one external broker?
I am trying to extract data from several different MQTT servers. One of them is running locally (so this one I have full control). Others are not managed by me and running externally offering open data that I would like to integrate into my homey scripts.
Try configuring your external broker as the one Homey uses and then bridge your external brokers to it too. Basically it will automatically subscribe to the external topics. It uses a permanently connected client for this. Probably you can subscribe fully wildcarded as I’m guessing the external brokers restrict your access based on user access. This will give you one broker that has everything. Check there are no topic overlaps but you can remap topic names if so.
You may be able to treat the Homey MQTT broker in the same fashion as a bridged broker although this would need some trial validation.
I use four bridged brokers in my setup…. It was fiddly to setup but works well.