Sparkplug B Source Node
Quick Reference
Broker URL
The MQTT broker to connect to.
ex: tcp://broker:1883 or ssl://broker:8883
Group ID
The Sparkplug group this source subscribes to.
ex: plant1
Client ID (optional) MQTT client ID. A random client ID is generated if left blank.
Username / Password (optional) MQTT authentication credentials.
Enable TLS
Use ssl:// for the broker connection. Default: off.
Advanced settings (queue capacity, rebirth cooldown, session expiry, offer timeout, shutdown grace, STATE pass-through, clean start) tune buffering and the MQTT/Sparkplug session — the defaults suit most deployments.
Overview
The Sparkplug B Source node consumes MQTT messages that follow the Eclipse Sparkplug B specification, commonly used for industrial IoT telemetry. It acts as the starting point of your workflow: it connects to an MQTT broker, subscribes to a single Sparkplug group, decodes the binary Sparkplug B payloads, and passes each message downstream as a structured record.
The node handles the Sparkplug session lifecycle for you — it caches the metric names, aliases, and datatypes announced when a node or device is born (NBIRTH/DBIRTH), resolves compact data messages (NDATA/DDATA) back to named, typed values, and automatically requests a rebirth when it detects a missed message so the device re-announces its metadata.
Configuration
| Field | Description | Required | Default |
|---|---|---|---|
| Broker URL | The MQTT broker URL. Use tcp:// for plaintext or ssl:// for TLS (e.g. tcp://broker:1883, ssl://broker:8883). | Yes | — |
| Group ID | The Sparkplug group ID this source subscribes to. Each node handles a single group. | Yes | — |
| Client ID | MQTT client ID. Leave blank to generate a random one. | No | — |
| Username | MQTT authentication username. | No | — |
| Password | MQTT authentication password. | No | — |
| Enable TLS | Use TLS (ssl://) for the broker connection. | No | false |
| Queue Capacity | Size of the bounded inbound buffer between the MQTT callback and the workflow loop. | No | 10000 |
| Rebirth Cooldown (ms) | Per-node cooldown window that suppresses repeat rebirth requests. | No | 5000 |
| Session Expiry (seconds) | MQTT session expiry interval. 0 expires the session on disconnect. | No | 0 |
| Offer Timeout (ms) | Maximum time to wait offering a message to a full inbound queue before dropping it. | No | 1000 |
| Shutdown Grace (ms) | On shutdown, how long to wait for the queue to drain before forcing exit. | No | 5000 |
| Pass-through STATE messages | Emit host-application online/offline STATE messages downstream. | No | true |
| Clean Start | Set the MQTT clean-start flag on connect. | No | true |
Related Nodes
- Kafka Source: Consume streaming data from Kafka
- SQS Source: Read messages from an Amazon SQS queue