Repository navigation
Releases: otfabric/sparkplugbctl
Releases · otfabric/sparkplugbctl
Release list
sparkplugbctl v0.1.1
Date: 2026-10-27
Previous release: v0.1.0
Summary
Built on go-sparkplugb v0.1.3:
host and app keep a device whose DBIRTH a broker delivers before its
node's NBIRTH after a restart (NanoMQ and HiveMQ CE do in some runs).
Changes
hostandappcommands: go-sparkplugb v0.1.3 holds a message behind the expectedseqfor the node's next session and applies it after the NBIRTH; before, the device stayed offline unless a rebirth came.- Dependencies:
spf13/pflagv1.0.10,golang.org/x/netv0.61.0,golang.org/x/syncv0.24.0.
sparkplugbctl v0.1.0
Date: 2026-10-27
Previous release: none
Summary
The first release: a Sparkplug B 3.0.0 command-line tool for monitoring,
publishing, simulating and debugging MQTT infrastructure, built on
go-sparkplugb v0.1.2. That
library is qualified against six independent Sparkplug stacks on four
MQTT brokers through the
sparkplugb-interop v0.1.0
images.
Highlights
listen: Subscribes tospBv1.0/#and decodes every Sparkplug message live, a primary host's STATE (JSON) included; filters by group, node and device.publish: Publishes one Sparkplug B payload with typed metrics (name:Type=value).edge: Simulates an edge node: NBIRTH and DBIRTH, periodic data, the NCMD and DCMD it receives, rebirth on request. With--primary-hostit waits for the host's STATE online before its births, and when the host goes offline publishes NDEATH, reconnects and waits again.host: Runs a primary host application: STATE, and the births, data and deaths of every edge node.app: Runs an application that tracks the edge nodes without publishing STATE.decodeandencode: Convert between typed metrics and the binary Sparkplug B protobuf, on stdin and stdout or with--file.- Datatypes:
--metrictakes the integer, float, Boolean, string, UUID and bytes scalars;listenanddecodeshow every datatype,DateTime, arrays,DataSetandTemplateincluded. - Connection:
--brokerURL, username and password, TLS client certificate and CA (--tls-cert,--tls-key,--tls-ca); every global flag also as aSPARKPLUGBCTL_*variable (SPARKPLUGBCTL_BROKER,SPARKPLUGBCTL_TLS_CA, …), the command line taking precedence. - Output: Text, or JSON with
--json; shell completion for bash, zsh, fish and PowerShell. version: Prints the go-sparkplugb version the binary is built with.
Limitations
- MQTT 3.1.1 only, as go-sparkplugb.
--metricdoes not takeDateTime, arrays,DataSetorTemplate.