
By Xavier Mesrobian
Sparkplug is an MQTT specification that enhances MQTT. It provides a standard for how data is sent and received, which ordinary MQTT does not offer.
This means that any Sparkplug-enabled device or sensor at the edge of a network can communicate with any Sparkplug-enabled application like a SCADA system, historian, or analytics program.
But that’s just the beginning. You can get even more from Sparkplug by using a smart MQTT broker to respond to errors, synchronize applications, resolve failed writes to devices, and even add data quality information. Here’s how.

Respond to Errors
A smart, Sparkplug-enabled MQTT broker can identify out-of-order or lost messages from a device. When that occurs, the broker disconnects the device and allows it to reconnect. This causes the device to re-send its startup (BIRTH) message, which will resynchronize all receiving applications, maintaining a single version of the truth.
Keep all Sparkplug 2.2 Applications Synchronized
Whenever a new Sparkplug 2.2 application connects, a smart MQTT broker can synthesize a BIRTH message for each connected device, allowing the application to receive and process DATA messages for those devices. This can work even for non-primary applications and eliminate startup order issues between devices and applications.
Resolve Failed Writes to Devices
A smart Sparkplug MQTT broker can use a timer to check all write requests to devices, to see whether the data value actually changed on the device.
If not, the broker can force the device to disconnect, causing it to retransmit its BIRTH message. This will resynchronize all applications listening to that device, maintaining a single version of the truth.
Add Data Quality Information
When converting MQTT Sparkplug to other protocols, a smart broker can add quality information.
For example, such a broker may have data conversion capabilities. If so, when it converts Sparkplug data to, say OPC, the broker could add OPC data quality. Or it could set the data quality to Good for BIRTH or DATA messages and to Not Connected for DEATH (shutdown) messages.
These are a few ways that a smart MQTT broker can help you get the most out of Sparkplug. If you are using the Sparkplug specification for MQTT, and if consistent data is important to you, consider using a smart MQTT broker like the DataHub Smart MQTT Broker from Skkynet.
Xavier Mesrobian is on the board of directors at Skkynet Cloud Systems.
This content is sponsored by Skkynet.
*Featured Image courtesy of Skkynet