Jump to content

MQTT on IoX without MQTT Node Server?


Recommended Posts

Posted (edited)

Greetings;

I have been using @xKing's MQTT node server (including the yaml file feature) to control my 100+ Sonoff/Tasmota switches. It is very easy for the BASIC (single relay) and has workarounds for Dual and Quad units. I even managed to get it to control a Wemo D1 Mini with two relays based on it's analog input!

Here is the challenge:

I have a home-grown, Arduino Mega 256 based pool chemistry/filter/level automation system, which measures various parameters and turns on ionization etc. There are about 8 sensors and 4 actuators. Currently this thing is stand-alone and I can monitor it real-time from it's built-in web server (local only). 

I'd like to get this data to my eISY, using MQTT (implementing an MQTT client on an Arduino is easy). And maybe at one point move the automation to the eISY alltogether and leave the Arduino just to gather data and execute commands on the edge.

For that, xKing's MQTT NS won't work (at least as I understand it), as it is limited to one sensor and one relay per id.

I understand that IoX makes extensive use of MQTT. Is this functionality available to the user as well, so as to read several sensors and/or issue several commands? The Cook book only mentions @xKing's MQTT NS (page 572).

Or, you're welcome to suggest another communication method between IoX and Arduino. I have WiFi, ethernet, RS485 and cat6a cable connections possible between the Arduino and the eISY (about 50m apart).

Cheers

 

 

Edited by TriLife
added missing information
Posted

Yes, PG3 does use MQTT for most of it's internal communication between components.  But that is all secured and private, you won't be able to connect random MQTT clients to it's broker.

The MQTT node server actually requires a MQTT broker to be installed somewhere on the network that it can use.  I believe it is now possible to install a generic MQTT broker on the Polisy/eisy for this purpose.

Installing the generic broker would give your Arduino client something to talk to, but that doesn't really help you much as you still need something to translate/redirect that into IoX (like a PG3 node server).

I believe you have two choices:

1) modify xKing's node server to support the incoming messages from the Arduino.

2) create a custom node server just for your Arduino based pool controller. 

For either of those, you'll need to register as a UDI developer and become familiar with node server development.   You may be able to hire an existing developer but since the solution will probably only be useful to you, it may be expensive to do that.

  • Thanks 1
Posted

Thanks Bob,

Yes, the MQTT broker is already up and running on eisy by default. Much easier now than before!

I'm already registered as a developer with UDI, so that part is done too 

I'll have a look at Andrey's NS and see, how to go about it 

Thanks for the guidance!

Cheers.

Guest
This topic is now closed to further replies.

×
×
  • Create New...