FAQ | Frequently asked questions about PLCcom for MQTT
Welcome to our PLCcom for MQTT FAQ section!
Here you will find answers to the most frequently asked questions about our software. Whether you’re looking for technical details, installation guidance or use cases – we’ve compiled the key information for you to make accessing the MQTT client or MQTT broker with PLCcom as easy as possible.

PLCcom for MQTT is a commercial MQTT SDK for .NET and Java.
It contains an MQTT client and an embeddable MQTT broker, which can be integrated directly into your own applications as a programme library
PLCcom for MQTT includes both client and broker functionality.
The client and broker can be used separately or together within the same application.
PLCcom for MQTT is aimed at manufacturers of commercial industrial software who wish to integrate MQTT functionality directly into their own products. Typical areas of application include HMI/SCADA, edge and gateway applications, data loggers, machine connectivity, service tools and production data acquisition.
PLCcom for MQTT supports MQTT 3.1.1 and MQTT 5.0. The protocol version can be specified for each connection or negotiated with the remote station.
The .NET version supports .NET Framework 4.7.2/4.8, .NET Standard 2.1, as well as .NET 8, .NET 9 and .NET 10. .NET 5 to .NET 7 are also supported via .NET Standard 2.1.
The Java version supports Java 11 through to Java 26. The library is built against Java 11 and tested against the latest Java versions.
No. PLCcom for MQTT is a pure .NET or Java implementation. No native C/C++ libraries or native protocol wrappers are required.
QoS 0, QoS 1 and QoS 2 are supported. The respective acknowledgement processing forms part of the implementation.
Yes. Retained Messages and Last Will are supported on both the client and broker sides. In MQTT 5.0, additional properties such as Will Delay Interval, Message Expiry Interval and Content Type are available for Last Will messages.
Yes, optionally. The reconnection process involves an exponentially increasing wait time. Registered subscriptions are automatically restored following a reconnection. Terms such as ‘uninterrupted’ or ‘guaranteed availability’ should not be used in this context.
Yes. In addition to blocking calls, asynchronous interfaces are available: in .NET, based on Task, unter Java auf Basis von CompletableFuture.
Implementiert sind unter anderem Reason Codes, Session Expiry Interval, Clean Start, Request/Response, Response Topic, Correlation Data, Subscription Identifier, Shared Subscriptions, Enhanced Authentication sowie User Properties an Nachrichten, Request/Response und Last Will.
PLCcom for MQTT supports TLS and Secure WebSocket. Server and client certificates, username/password authentication and MQTT-5 Enhanced Authentication can be used. The specific security logic is configured by the application.
Certificate management is carried out via a file-based PKI store with separate sections for self-signed, trusted, issuing and rejected certificates. In addition, a custom certificate validation process can be integrated.
PLCcom for MQTT provides an Access Validator interface for CONNECT, PUBLISH, SUBSCRIBE and UNSUBSCRIBE. This allows the application to integrate its own user, role or permissions system. No predefined role model or fixed ACL file is provided.
The broker manages sessions, retained messages and offline queues. For persistent storage, a custom storage solution can be integrated via a public store interface, such as a file, database or custom storage. A built-in persistent database is not included in the SDK.
No. The broker is intended as a component that can be integrated into your own products, not as a clustered central broker infrastructure. Specialised systems are better suited to high-availability central broker environments.
Yes. PLCcom for MQTT provides diagnostic events via a listener interface. The events are categorised by, amongst other things, network, TLS, authentication, authorisation, protocol, reconnection and lifecycle. There is no specific integration with any particular logging framework.
API references, manuals and workshops are planned for .NET and Java. The examples cover, amongst other things, client and broker scenarios, publish/subscribe, QoS, retained messages, last will, MQTT 5.0, request/response, reconnect, security and diagnostics.
Licensing has been kept as simple as possible. You can purchase individual developer licences (e.g. for freelancers) or corporate licences that cover all of a company’s developer workstations. Any developer working on source code that contains a reference to PLCcom for MQTT requires a licence, regardless of whether they are working on the MQTT-specific parts of the code or not.
Für Firmen empfehlen wir deshalb ausdrücklich die Firmen-Lizenz.
Die Nutzung erfordert einen Lizenzschlüssel, der im Code übergeben wird.
No, there are no further runtime licence costs!
Yes, of course. To do this, you can go to the download page and generate a 14-day trial licence with full functionality.
Updates, upgrades and support are provided in accordance with the relevant maintenance plan purchased. The duration and scope are set out in the order or order confirmation.
Yes. For PLCcom for MQTT, CRA-relevant documentation is provided, including a declaration of conformity, security and integration guides, technical documentation, an SBOM and the results of the vulnerability assessment. The conformity assessment of the end product remains the responsibility of the manufacturer.

