streampipes
streampipes copied to clipboard
Create SparkplugB Adapter and DataSink
Description
SparkplugB (SpB) is a MQTT specification aiming primarily at the manufacturing industry to connect network nodes in an IIOT infrastructure. In order to standardize how things communicate in a manufacturing setting via MQTT, SpB defines the following things:
- MQTT topic namespace
- MQTT state management
- MQTT payload structure
The following should be integrated in StreamPipes:
Adapter:
- reading data with StreamPipes that is provided via SpB
- mapping the SpB payload structure to the StreamPipes internal data structure
- acting as a SpB compliant client (e.g. handling NCMD, DCMD, NDEATH payloads)
DataSink:
- building SparkplugB payloads according to the SpB specification
- mapping StreamPipes data to the SpB payloads
- publishing the SpB payloads
Additional information
SpB specification: https://sparkplug.eclipse.org/specification/
SpB on github: https://github.com/eclipse/tahu
Discussed in https://github.com/apache/streampipes/discussions/1531
Originally posted by heinehenning April 29, 2023 SparkplugB is a great standard for SmartFactory use cases, but it can be a pain to build custom SpB gateways by hand. If streampipes would offer SparkplugB connectivity plus data modeling options that would be pretty nice.