Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. MQTT
  3. CODESYS-MQTT

CODESYS-MQTT

MITstable

MQTT client library for CODESYS PLC programming environment supporting all QoS levels with high performance.

GitHubGitHub
142 stars26 forks0 contributors

What is CODESYS-MQTT?

CODESYS-MQTT is an MQTT client library built for the CODESYS PLC development environment, enabling programmable logic controllers to communicate using the MQTT publish-subscribe protocol. It solves the problem of integrating industrial automation systems with modern IoT architectures by providing reliable, QoS-aware messaging directly from PLC code. The library supports all MQTT quality-of-service levels, TLS encryption, and multi-broker connections.

Target Audience

Industrial automation engineers and PLC programmers using CODESYS who need to connect their controllers to MQTT-based IoT systems, SCADA platforms, or cloud services.

Value Proposition

Developers choose CODESYS-MQTT for its high-performance architecture that delivers packets within the same PLC cycle, comprehensive MQTT feature support including all QoS levels, and seamless integration with CODESYS through callback-driven function blocks that eliminate manual topic string handling in programs.

Overview

MQTT client library for CODESYS, supporting all QoS

Use Cases

Best For

  • Connecting CODESYS-based PLCs to MQTT brokers for IoT data collection
  • Implementing industrial IoT (IIoT) communication in automation projects
  • Bridging operational technology (OT) systems with IT infrastructure via MQTT
  • Building real-time monitoring systems for industrial equipment using MQTT
  • Creating CODESYS applications that publish sensor data to cloud platforms
  • Developing PLC programs that subscribe to MQTT topics for remote control

Not Ideal For

  • Projects not using the CODESYS PLC programming environment, such as those with generic C++ or Python applications
  • Applications requiring thread-safe MQTT client operations in multi-threaded or concurrent systems
  • Teams prioritizing extensive official documentation and broad community support over raw performance optimization
  • Simple IoT prototypes where a lightweight, standalone MQTT client with cross-language support suffices

Pros & Cons

Pros

High-Performance Architecture

Delivers received packets within the same PLC cycle and handles 50 QoS 0 packets per cycle in default configuration, ensuring real-time communication for industrial applications.

Event-Driven Integration

Uses callbacks for subscription handling, enabling dynamic instance creation and eliminating manual topic string entry in programs, as shown in the MyProperty example.

Comprehensive MQTT Features

Supports all QoS levels, TLS encryption without certificates, will topics, retain options, and multi-broker connections, covering essential protocol needs.

Easy Value Publishing

Provides dedicated function blocks for transmitting values and states with minimal configuration, reducing setup overhead for common tasks.

Cons

Not Thread-Safe

The library explicitly states the client is not thread-safe, limiting its use in multi-threaded CODESYS applications or when integrating with concurrent systems.

Sparse Documentation

The README is brief and relies on external integration guides, which may hinder onboarding and troubleshooting for developers new to MQTT or CODESYS.

Author-Centric Dependencies

All required libraries are hosted on the same GitHub account, creating a potential single point of failure and limiting community-driven enhancements.

Frequently Asked Questions

Quick Stats

Stars142
Forks26
Contributors0
Open Issues4
Last commit2 years ago
CreatedSince 2018

Tags

#industrial-automation#embedded-systems#message-queue#mqtt#tls#mqtt-client#real-time-communication#qos#iot-protocols

Included in

MQTT2.3k
Auto-fetched 14 hours ago

Related Projects

mqtt2opcuamqtt2opcua

MQTT to OPCUA protocol converter/gateway

Stars89
Forks27
Last commit4 years ago
spicierModbus2mqttspicierModbus2mqtt

Modbus master which publishes via MQTT

Stars68
Forks33
Last commit1 year ago
OPC RouterOPC Router

MQTT Gateway (publisher/subscriber) with various plug-ins (OPC UA Bridge, SQL Bridge, REST Bridge, SAP Bridge)

Stars0
Forks0
Last commit
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub