PLCcom MQTT SDK für .NET (C#, VB.NET) und Java
MQTT SDK for .NET and Java – Client and Broker Library
PLCcom für MQTT ist ein professionell gepflegtes MQTT SDK — eine native Client- und Broker-Bibliothek für .NET (C#, VB.NET) und Java zur direkten Integration von MQTT-Kommunikation in eigene Anwendungen.
Je nach Produktvariante können Anwendungen als MQTT Client, als eingebetteter MQTT Broker oder in beiden Rollen arbeiten.
Das SDK unterstützt MQTT 3.1.1 und MQTT 5.0 über TCP, TLS, WebSocket und Secure WebSocket. Die Protokollversion kann fest vorgegeben oder automatisch ausgewählt werden. Publish und Subscribe, QoS 0, 1 und 2, Retained Messages, Last Will sowie umfangreiche MQTT-5-Funktionen stehen über eine klar strukturierte API zur Verfügung.
Der Broker wird direkt in die eigene Anwendung eingebunden. Ein separater Brokerdienst oder die Anbindung an ein Cloud- beziehungsweise SaaS-Angebot ist dafür nicht erforderlich.
MQTT Client, Broker oder beides
PLCcom für MQTT steht als Client SDK, als Broker SDK oder als kombinierte Client-und Broker-Lösung zur Verfügung. Beide Komponenten werden direkt in die eigene .NET- oder Java-Anwendung integriert.
Mit dem Client können Anwendungen Nachrichten veröffentlichen, Topics abonnieren und mit bestehenden MQTT Brokern kommunizieren. Der Broker nimmt MQTT-Verbindungen entgegen, verwaltet Sessions und Subscriptions und verteilt Nachrichten an die verbundenen Clients.
Der Broker läuft dabei innerhalb der eigenen Anwendung. Konfiguration, Lifecycle, Authentifizierung und Datenverarbeitung bleiben unter Kontrolle der entwickelten Software. Ein separater Brokerdienst oder eine Cloud- beziehungsweise SaaS-Plattform ist dafür nicht erforderlich.
100 % nativer .NET- oder Java-Code – kein Wrapper
Bei PLCcom für MQTT handelt es sich je nach Version um .NET Assemblies oder um 100 % Java Libraries. Die Komponenten werden direkt in das eigene Projekt eingebunden – bei .NET über NuGet oder als Verweis auf die Assemblies, bei Java über Maven Central oder als Java Libraries.
Die MQTT-Implementierung ist vollständig in .NET beziehungsweise Java umgesetzt. Es wird keine C- oder C++-Komponente über Wrapper angesprochen. Entwickler arbeiten in ihrer Zielumgebung direkt mit den Klassen, Datentypen und Funktionen des SDKs.
PLCcom für MQTT kann in 32- und 64-Bit-Umgebungen eingesetzt werden und unterstützt plattformübergreifende Anwendungen.
Innerhalb einer Anwendung können mehrere MQTT-Client-Instanzen, mehrere Broker-Instanzen und mehrere Broker-Listener betrieben werden. Auch kombinierte Client-und Broker-Szenarien sind möglich.

MQTT Client und Broker im Überblick
MQTT Client
- Publish und Subscribe
- QoS 0, 1 und 2
- Retained Messages und Last Will
- automatische Wiederverbindung
- Shared Subscriptions
- MQTT-5-Request/Response
MQTT Broker
- MQTT 3.1.1 und MQTT 5.0
- Sessions und Subscriptions
- Retained und Offline Messages
- mehrere Listener
- optionale externe Persistenz
- Publish und Listen direkt aus der Anwendung
Beide Komponenten können einzeln oder gemeinsam eingesetzt und über ihre jeweiligen Optionen an die Anforderungen der Anwendung angepasst werden.
TLS, Zertifikate und Zugriffskontrolle
PLCcom für MQTT unterstützt verschlüsselte Verbindungen über TLS und Secure WebSocket. Client und Broker können mit Server- und Client-Zertifikaten, Mutual TLS sowie Benutzername und Passwort betrieben werden.
Für spezielle Anwendungen stehen MQTT-5-Enhanced-Authentication, eigene Prüfungen für Verbindungszugriffe und eine Topic-bezogene Autorisierung im Broker zur Verfügung. Dadurch lässt sich die Sicherheitslogik in die Benutzer- und Rechteverwaltung der eigenen Anwendung einbinden.
Unterstützte Zielplattformen
PLCcom für MQTT steht als .NET-Version und als Java-Version zur Verfügung.
- .NET-Version: Unterstützt .NET Framework 4.7.2/4.8, .NET Standard 2.1 sowie .NET 8, .NET 9 und .NET 10. Die Einbindung erfolgt je nach benötigter Funktion über die NuGet-Pakete PLCcom.Mqtt.Client, PLCcom.Mqtt.Broker oder über den offiziellen Indi.An-Download. Das gemeinsam verwendete Paket PLCcom.Mqtt.Core wird automatisch als Abhängigkeit eingebunden.
- Java-Version: Unterstützt Java ab Version 11 und ist bis Java 26 getestet. Die Einbindung erfolgt je nach benötigter Funktion über die Maven-Central-Artefakte com.indi-an.plccom:plccom-mqtt-client, com.indi-an.plccom:plccom-mqtt-broker oder über den offiziellen Indi.An-Download. Das gemeinsam verwendete Artefakt com.indi-an.plccom:plccom-mqtt-core wird automatisch als Abhängigkeit eingebunden.
Lizenzierung, Maintenance und Herstellersupport
PLCcom für MQTT ist als Client-Lizenz, Broker-Lizenz oder als kombinierte Client-und-Broker-Lizenz erhältlich. Dabei kann zwischen einer Einzelentwicklerlizenz für Freelancer und einer Firmenlizenz für alle Entwickler eines Unternehmens gewählt werden.
Für Anwendungen, die mit dem SDK erstellt und ausgeliefert werden, fallen keine zusätzlichen Runtime-Lizenzkosten an. Die Anzahl der Installationen oder ausgelieferten Anwendungen verursacht damit keine weiteren Lizenzgebühren.
Für die Planung stehen transparente Preise sowie eine 14-Tage-Testversion zur Verfügung. Ein Maintenance Plan mit mindestens einjähriger Laufzeit ist bei jedem Lizenzkauf enthalten.
Support erfolgt direkt durch den Hersteller – bei technischen Fragen zur Integration, Lizenzierung und zum Einsatz von Client und Broker in eigenen Anwendungen.
Für gewerbliche Softwareprodukte entwickelt
Für MQTT stehen zahlreiche freie Bibliotheken und Brokerlösungen zur Verfügung. In gewerblich vertriebenen Softwareprodukten reicht der reine Funktionsumfang einer Komponente jedoch oft nicht aus. Hersteller müssen auch Pflege, Schwachstellenmanagement, Dokumentation und langfristige Verfügbarkeit berücksichtigen.
PLCcom für MQTT wird als professionell betreute Softwarekomponente angeboten. Dazu gehören direkter Herstellersupport, ein Maintenance Plan, nachvollziehbare Releases sowie CRA-relevante Unterlagen für die Integration in eigene Softwareprodukte.
Das SDK richtet sich damit insbesondere an Softwarehersteller und Entwickler, die für ihre eingesetzten Komponenten einen verantwortlichen Ansprechpartner und eine planbare Produktpflege benötigen.
CRA-relevante Unterlagen und Security Lifecycle
Für PLCcom für MQTT stehen eine EU-Konformitätserklärung, eine vereinfachte EU-Konformitätserklärung und ein Security & Integration Guide für .NET und Java zur Verfügung.
Zu den Release-Unterlagen gehören außerdem eine Software Bill of Materials (SBOM) und die Ergebnisse der Schwachstellenprüfung. Damit erhalten Hersteller die Informationen, die sie für die Bewertung und Dokumentation der Komponente im eigenen Produkt benötigen.
Teil der QuickHMI-Technologie
PLCcom für MQTT wird in QuickHMI sowohl als MQTT Client als auch als eingebetteter MQTT Broker eingesetzt. Die Komponenten werden damit nicht nur als eigenständiges SDK angeboten, sondern auch in unserem eigenen professionellen Softwareprodukt verwendet.
Erkenntnisse aus Integration, Wartung und Support fließen direkt in die Pflege und Weiterentwicklung von PLCcom für MQTT ein.
Kostenlose MQTT-Test-Apps
Für Verbindungstests, Inbetriebnahme und Fehlersuche stellen wir zwei kostenlose Standalone-Test-Apps bereit. Beide Anwendungen basieren auf PLCcom für MQTT.
Mit dem MQTT Client Tool können Verbindungen zu MQTT Brokern aufgebaut, Nachrichten veröffentlicht und Topics abonniert werden. Das MQTT Broker Tool stellt einen direkt nutzbaren MQTT Broker bereit, mit dem sich externe Clients und typische Kommunikationsabläufe testen lassen.
Die Test-Apps finden Sie im Download-Bereich.
SDK – Informationen
EU-Konformität (CRA)
Cyber Resilience Act (EU 2024/2847)

