streampipes icon indicating copy to clipboard operation
streampipes copied to clipboard

Create SparkplugB Adapter and DataSink

Open bossenti opened this issue 1 year ago • 0 comments

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.

bossenti avatar May 28 '23 15:05 bossenti