Wireless MQTT Sensors from NCD for Ignition Tutorial

I just finished this tutorial on how to setup a wireless MQTT based sensor network using hardware from NCD.io and the Cirrus Link MQTT modules for Ignition. You can check it out here. The file was to large to upload in this forum even after compressing. :frowning:

1 Like










How well has this been working from a reliability standpoint? Are they still in production?

Still working :). The Cirrus Link MQTT modules are pretty pricey, they work very well though. If you are familiar with tcp/ip sockets, you can use a NCD tcp gateway instead of the mqtt one. It would be much cheaper than the mqtt modules. The one qualm with NCD sensors is the programming interface. They have a separate gateway module used to program your sensors. It is around $200. They do have OTA programming but it was still in beta last I used it. It worked, but wasn’t the easiest thing to do. I’m not sure if they have it perfected yet or not. Also, the wireless penetration (900MHz) works very well. Hope that helps.

Have you setup any logic to alarm if the MQTT gateway or if a sensor reporting to the MQTT gateway has gone offline? We have not seen any tag in the broker that could be used to signal a loss of connection because if there is no change in value, no value is sent to broker.

No, we haven't. The machines that these sensors were on are now out of service. I suggest looking into MQTT last will and testament messages, keep alive parameters, and maybe even using an expression tag monitoring time diff between last value timestamp and now() to determine when a value is stale

We'll have to check the gateway and sensor again, but we did not find anything for keep alive in the NCD devices on our first pass. In my experience, you cannot trust the timestamp because if there is no update, the timestamp will never update. For example, I have a gateway that I know is working properly, but all 7 tags that are available in the MQTT engine (ip, mac, network_id, preamble, tx_power, xbee_address, xbee_ready) have timestamps from over a week ago, which is the last time that we power cycled the gateway.