Design MQTT topics and message flow for industrial telemetry using the Sparkplug B specification

domain: sparkplug.eclipse.org · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Structure every topic as spBv1.0/<Group ID>/<Message Type>/<Edge Node ID>/[Device ID], e.g. spBv1.0/FactoryA/DDATA/Line3/Machine7
  2. On edge node startup, publish an NBIRTH declaring every metric name with an assigned numeric alias, then a DBIRTH for each attached device
  3. For ongoing updates, publish NDATA or DDATA referencing metrics by their numeric alias instead of the full name, per the sparkplug_b.proto payload schema
  4. Register the edge node's MQTT Will as the NDEATH topic at connect time so the broker publishes it automatically on ungraceful disconnect
  5. Subscribe to spBv1.0/STATE/<host application id> to track whether the primary host application is online before trusting data messages
  6. Publish all Sparkplug message types at QoS 0 as required by the spec

Known gotchas

Related routes

Structure Sparkplug B MQTT topics and publish birth/death certificate messages for edge nodes and devices
sparkplug.eclipse.org · 6 steps · unrated
Forward MQTT messages to a Kafka topic using the EMQX rule engine and Kafka Producer sink
docs.emqx.com · 6 steps · unrated
Stand up an Eclipse Mosquitto MQTT broker and design pub/sub topics for industrial telemetry
mosquitto.org · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans