Question
If the MQTT driver in Geo SCADA loses connection to the MQTT broker or data point for a period of time (I.E. 30 minutes), upon reconnection, MQTT will send a backfill payload along with the current value. Geo SCADA handles this well, but in history, all data is reflected as ‘Current Data’. Is it possible to change the reason code for the backfill data so that a user may discern between current vs backfill data?
Answer
The reason for logging is different for each MQTT driver (see below):
JSON Schema A: Reason is 'Report' except if the message type is an alarm (I.E. has "status") in which case it is 'Value Change' for analog/counter points, and 'State Change' for digital points.
Text: Reason is always 'Current'
Sparkplug: Reason is 'Value Change' for analog/string/time points and 'State Change' for digital points
At the MQTT level, Geo SCADA just receives payloads from a broker. Geo SCADA does not know when they were sent or whether they were queued up in the broker. A device that is publishing data may publish multiple payloads, one after the other. This would look the same to Geo SCADA as receiving multiple payloads when Geo SCADA connects.
The device that is publishing the data does not know if Geo SCADA is connected or not. As the payload typically does not have a means of indicating whether the data should be considered historical or not, Geo SCADA has no recourse to categorize it any differently to data that is collected via a typical connection.
Released for: Schneider Electric Saudi Arabia
Need help?
Product Selector
Quickly and easily find the right products and accessories for your applications.
Get a Quote
Start your sales enquiry online and an expert will connect with you.
Where to buy?
Easily find the nearest Schneider Electric distributor in your location.
Help Centre
Find support resources for all your needs, in one place.