Rapid Toolkit for Sparkplug
Sparkplug is a trademark of Eclipse Foundation, Inc. "MQTT" is a trademark of the OASIS Open standards consortium. Other related terms are trademarks of their respective owners. Any use of these terms on this site is for descriptive purposes only and does not imply any sponsorship, endorsement or affiliation.
Rapid Toolkit for Sparkplug allows fast Sparkplug host application and edge node development. It allows you to create Sparkplug software with minimal boilerplate code and programming effort. With Rapid Toolkit for Sparkplug, you do not have to deal with the underlying MQTT protocol and intricacies of the Sparkplug encoding and messaging rules.
The toolkit provides system integrators, OEMs and software developers with ability to create their own Sparkplug components without having to write the code that accurately implements the Sparkplug specification.
Download fully functional free trial.
Why Rapid Toolkit for Sparkplug?
- Low-ceremony toolkit. No unnecessary boilerplate code.
- Extensive conceptual and reference documentation, including rich IntelliSense support.
- Tons of examples available.
- Allows authenticated MQTT communication, TLS with certificates, TCP and WebSocket connections to the broker.
- Supports Sparkplug A and B, and MQTT 3 and 5.
- You can develop in multiple programming languages. C# and VB.NET are the most common ones.
- You can use .NET Framework or the new .NET.
- Host your program in a console application, desktop application with user interface, Windows service, or otherwise.
- Interoperability tested with common MQTT brokers and Sparkplug components.
- Technical support available in case you encounter any issues.
- Runtime-free licenses (no royalties for distribution).
Show me the code!
Following C# code uses Rapid Toolkit for Sparkplug to implement a fully functional Sparkplug edge node with a metric that provides random integer values.
var edgeNode = new EasySparkplugEdgeNode("mqtt://localhost", "easyGroup", "easySparkplugDemo"); var random = new Random(); edgeNode.Metrics.Add(new SparkplugMetric("MyMetric").ReadValueFunction(() => random.Next())); edgeNode.Start();
And, following C# code uses Rapid Toolkit for Sparkplug to subscribe to all metrics on a given edge node, and display the incoming data.
var consumer = new EasySparkplugConsumer(); consumer.SubscribeEdgeNodeMetric(new SparkplugHostDescriptor("mqtt://localhost"), "easyGroup", "easySparkplugDemo", "#", (sender, args) => Console.WriteLine(args));
Key features
- Constructs the payload from your code.
- Ability to subscribe without knowing the list of metrics upfront.
- No artifical limit to the number of edge nodes, devices, or metrics.
- Takes care of generating and interpretaing the Birth and Death messages.
- Offers multiple data consumption and production models.
- Support of 32- and 64-bit applications.
- Operation monitoring services for easier troubleshooting.
- Can be used from a range of development tools and IDEs. Integration with Visual Studio development environment.
- Comes with a set of accompanying tools such as test clients.