Solutions

LE Sparkplug Edge Node

5min

Introduction

The LE Sparkplug Edge Node is a software application designed to run on Litmus Edge. It enables the Litmus Edge instance to act as a compliant Sparkplug Edge of Network (EoN) Node, bridging data between connected industrial devices and Sparkplug-aware host applications (like SCADA or IIoT platforms).

LE Sparkplug Edge Node Overview
LE Sparkplug Edge Node Overview


What is the Sparkplug Specification?

The Sparkplug specification is an open-source messaging protocol built upon MQTT, specifically tailored for Industrial IoT (IIoT) systems. Its primary goals are:

  • Efficient Data Exchange: Provides standardized topic namespaces and payload formats (using Protocol Buffers) for optimized data transmission.
  • Real-time Communication: Leverages MQTT's publish/subscribe model for timely data updates.
  • State Management: Defines clear mechanisms for devices (Edge Nodes) to report their status (online/offline) and data, ensuring host applications always know the state of the network.
  • Standardized Data Modeling: Offers a structured way to represent device data and metrics.
  • Auto-Discovery: Allows Edge Nodes and their connected devices/metrics to be automatically discovered by host applications.
  • Secure Communication: Inherits MQTT's security features (like TLS) for encrypted data transport.

By standardizing these aspects, Sparkplug simplifies the integration and interoperability of diverse devices and applications within an IIoT environment.

How the LE Sparkplug Edge Node Works

The LE Sparkplug Edge Node application integrates seamlessly with Litmus Edge's underlying services:

  1. Connects to Litmus Edge: It utilizes the Litmus Edge API to access configured devices, tags, and data streams.
  2. Transforms Data: It automatically transforms the data from Litmus Edge tags into the standardized Sparkplug payload format.
  3. Manages State: It handles Sparkplug birth, death, and data messages according to the specification, ensuring proper state representation to the MQTT broker and connected host applications.
  4. Communicates via MQTT: It connects to one or more configured MQTT brokers, publishing Sparkplug messages under the defined topic structure (spBv1.0/<group_id>/<message_type>/<node_id>/[device_id]).

This allows upstream applications that understand the Sparkplug specification to easily consume data from devices connected to Litmus Edge, discover new devices and metrics automatically, and monitor the online/offline status of the Edge Node.

IIoT Architecture with Sparkplug
IIoT Architecture with Sparkplug


Key Features

  • Sparkplug B Compliant: Implements the Sparkplug B specification for Edge of Network (EoN) nodes.
  • Litmus Edge Integration: Automatically discovers and utilizes tags configured within Litmus Edge.
  • MQTT Connectivity: Connects securely to MQTT brokers (versions 3.1.0 and 3.1.1 supported) with TLS options.
  • Store and Forward: Optional capability to buffer data locally if the MQTT connection is temporarily lost (requires configuration).
  • Primary Host Support: Can optionally wait for a designated Primary Host application to be online before publishing data.
  • Dockerized Deployment: Runs as a containerized application within Litmus Edge.

Next Steps

To deploy and configure the application, please refer to the Deploying The Solution guide.