How to Transmit Quality Value Tag Alongside Sensor Tag Value to MQTT Transmitter in Ignition Edge

Topic: How to Transmit Quality Value Tag Alongside Sensor Tag Value to MQTT Transmitter in Ignition Edge


Hello everyone,

I'm currently working on a project where we're using Ignition Edge to forward sensor tag values to an MQTT Transmitter. However, I've noticed that the transmitter only sends the following values:

{
  "timestamp": 1689424923448,
  "metrics": [
    {
      "name": "GX2821/PV",
      "timestamp": 1689424906900,
      "dataType": "Double",
      "value": 3.1400001286754105
    }
  ],
  "seq": 111
}

As you can see, the transmitted data includes the tag name, value, and timestamp, but it's missing the quality value. I'm looking for a way to include the quality value tag in the data payload sent to the MQTT Transmitter.

Has anyone else encountered this issue or found a solution? Any insights or suggestions would be greatly appreciated!

Thanks in advance for your help!

Hello everyone,

I'm currently working on a project where we're using Ignition Edge to forward sensor tag values to an MQTT Transmitter. However, I've noticed that the transmitter only sends the following values:

{
  "timestamp": 1689424923448,
  "metrics": [
    {
      "name": "GX2821/PV",
      "timestamp": 1689424906900,
      "dataType": "Double",
      "value": 3.1400001286754105
    }
  ],
  "seq": 111
}

As you can see, the transmitted data includes the tag name, value, and timestamp, but it's missing the quality value. I'm looking for a way to include the quality value tag in the data payload sent to the MQTT Transmitter.

Expected:

{

  "timestamp": 1689424923448,

  "metrics": [

    {

      "name": "GX2821/PV",

      "timestamp": 1689424906900,

      "dataType": "Double",

      "value": 3.1400001286754105,

      "dataQuality": "Good/Bad/Uncertain", // To be Added while transmitting

      "dataQualityCode": "0x00000000" // To be Added while transmitting

    }

  ],

  "seq": 111

}

Has anyone else encountered this issue or found a solution? Any insights or suggestions would be greatly appreciated!

I just realized you duplicated this question over here:

You've received guidance there that you seem to be ignoring. Only Cirrus Link will be able to answer this if no-one here knows. (And I suspect the answer is "not possible".)

Double posting questions is against this forum's rules. Bumping an unanswered topic after a few days (as you've done here) is acceptable.

If the quality is omitted from the metric definition, it means the quality is good. Transmission is based on the Sparkplug Specification. The following is from page 71 of the v3.0.0 specification:

There is one specific property key in Sparkplug called Quality. This defines the quality of the value associated with the metric. This property is optional and is only required if the quality of the metric is not GOOD.

1 Like

We require the Quality value in all cases when it is Good, Bad, or Uncertain, along with the corresponding Quality Code.

This setup will enable us to implement forward filling logic, where data will only be forward filled if the Quality of the tag is Good.

No forward filling will occur when the Quality is Bad or Uncertain.

This approach will provide a more accurate and reliable representation in the GUI and improve the quality of data reporting.

And you have it. Wes just told you that if quality is not in the payload, the value is Good. Per the Sparkplug specification. :man_shrugging: