emqx / MQTTX

A Powerful and All-in-One MQTT 5.0 client toolbox for Desktop, CLI and WebSocket.
https://mqttx.app
Apache License 2.0
3.92k stars 448 forks source link

[Feature] Support for Decoding Sparkplug-B Payload #996

Open yuxiaoli opened 2 years ago

yuxiaoli commented 2 years ago

MQTTX currently support to decode the following 4 types for the payload:

  1. Plain text
  2. Base64
  3. JSON
  4. Hex

Sparkplug-B specification is a widely used MQTT protocol for many industrial control devices. So this request is to add Sparkplug-B as one of the decoding options.

ysfscream commented 2 years ago

Thanks for your feedback. This feature is always on our product roadmap, so stay tuned!

image
dgg commented 10 months ago

Any updates on this? A rough estimate when we can expect this feature?

It would be a very useful feature for our team as we have implemented Sparkplug communication for several of our devices and a feature like this would make all the difference when diagnosing problems in such scenarios.

ysfscream commented 10 months ago

@dgg I appreciate your patience. Currently, we have implemented support for Protobuf messages in MQTTX. However, we still need to provide a specific type of support for Sparkplug B. In the meantime, you might find the Schema feature at MQTTX Schema Documentation and the usage guide proper for some basic encoding and decoding tasks with different message types. We apologize for any inconvenience and appreciate your understanding.

guiklimek commented 9 months ago

Hello,

We also needed that and I created SparkpluGUI: https://github.com/Ambre-io/sparkplugui.

This is a mix between MQTTX and Ignition, super light and specialized for Sparkplug.

You can track the decoded messages in a tree created on the fly, representing the equipment architecture.

Give it a try and tell me if you like or not, thank you!