Industrial IoT messaging using the Eclipse Sparkplug B specification with full device lifecycle management. Implements the complete Sparkplug B pattern with NBIRTH, DBIRTH, NDEATH, and DDEATH messages for industrial applications.
open_in_new
Sparkplug B Specification
eclipse.org/sparkplug
Configuration Parameters
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
| GroupId | No | string | ProxusGroup | Sparkplug Group ID for logical grouping. |
| EdgeNodeId | No | string | Edge_{random_guid} | Edge node identifier within the group. |
| BrokerHost | No | string | localhost | MQTT broker hostname for Sparkplug B messages. |
| BrokerPort | No | int | 1883 | MQTT broker port (use 8883 for TLS). |
| Username | No | string | (empty) | MQTT authentication username. |
| Password | No | string | (empty) | MQTT authentication password. |
| ScadaHostIdentifier | No | string | scada1 | SCADA host identifier for the deployment. |
| Protocol | No | string | V311 | MQTT protocol version. |
| UseWebSocket | No | bool | false | Use WebSocket transport instead of TCP. |
| ReconnectInterval | No | int | 5 | Reconnection interval in seconds. |
| UseTls | No | bool | false | Enable TLS encryption. |
| TlsVersion | No | string | Tls12 | TLS protocol version. |
| PfxCertificate | No | string | (empty) | Base64-encoded PFX certificate for TLS. |
Internal Behavior
Device Lifecycle Management
- NBIRTH Messages: Edge node birth messages sent on connection establishment
- DBIRTH Messages: Device birth messages sent for new devices
- NDATA/DDATA Messages: Data update messages for existing metrics
- NDEATH/DDEATH Messages: Graceful death messages sent during shutdown
Performance Features
- Metric Mapping: Automatic mapping of Proxus data types to Sparkplug B metric types
- Value Conversion: Intelligent type conversion for numeric, boolean, and string values
- Connection Resilience: Automatic reconnection with exponential backoff
- Batch Optimization: Efficient batch processing of device metrics