-
|
I've had a few requests to add Sparkplug decoding to MQTT Viewer. As someone who has never used Sparkplug and has just done some googling, I'd like to sanity check the following with someone who knows more: What's Sparkplug?A standardised schema for messages with an associated protobuf descriptor and client libraries. How it worksSparkplug B has a single protobuf file: https://github.com/Cirrus-Link/Sparkplug/blob/main/sparkplug_b/sparkplug_b.proto Client libraries exist that encode/decode message data using the protobuf descriptor as an additional layer in front of MQTT. What I can doI can embed all Sparkplug protobuf descriptors into MQTT Viewer, and then allow a user to mark a connection as 'Sparkplug'. Questions
BonusConsidering Sparkplug gives us more metadata than the standard MQTT message, there might be cool and interesting ways to display/organise Sparkplug data beyond the standard tree view. If you have any ideas, I'm all ears! |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 11 replies
-
|
Sparkplug B is basically two key things over MQTT with a standardised topic structure:
For the state management side, I'd suggest ignoring that bit for now (something to worry about in the future?). By ignoring the state management it means you can sit there as a listener and, assuming that the setup already has the necessary components set up to trigger the data flow, just be a tap onto the data being transferred. That aligns with how I think your software could find a real use and how I plan to use it myself. Not as the actual tool to do the publish and/or subscribe on a normal basis, but as a tool to support other components and see what is going on and if something is wrong. Which leaves looking at the DATA packets and decoding them as what I believe is a more useful function. You might just need to process some of the state information to be able to show the data you get in a reasonable way. I'm not aware of anyone using Sparkplug A. |
Beta Was this translation helpful? Give feedback.
-
|
Copy paste my reddit reply here as this is the better place to talk about sparkplug. Regarding addressing my pain points in the other reddit post, no, I don't see this app being any different from the others I have used. |
Beta Was this translation helpful? Give feedback.
-
|
Sparkplug support with automatic decoding / encoding has been added in v0.6.0 |
Beta Was this translation helpful? Give feedback.
Sparkplug support with automatic decoding / encoding has been added in v0.6.0