CODESYS stands for Controller Development System and can be used for simple, or very complex, automation projects. As your project grows in complexity, CODESYS is capable of accomplishing many of those more sophisticated tasks, all within the CODESYS software platform instead of requiring multiple 3rd party applications or custom code that your engineers may spend weeks perfecting.

Features and Benefits

  • Everything is integrated in a single user interface
  • Complete IEC 61131-3 programming system – from classic PLC programming to object-oriented controller programming
  • Extensive features for convenient project engineering and commissioning of automation applications, such as data monitoring, scanning for application errors (debugging), and changing the application during operation (online change)
  • Optional add-on modules for methodical application development: UML®, version management, static code analysis, profiling, and test automation
  • Configuration and commissioning of the most important industrial fieldbus systems or manufacturer-specific I/O systems
  • Seamless integration of optional add-on components for project engineering: Visualization, motion control / CNC / robotics, safety modules
  • Installation, maintenance, and training required only for a single user interface: Minimization of engineering effort
  • Extendable function range through additional products available in the online store and with on-board tools (programming of function or communication libraries in the IEC 61131-3 languages, for example)
  • Easy connection to a convenient Industry 4.0 platform for managing control landscapes per cloud

IEC 61131.3 Overview

IEC 61131-3 is a section of an International Electro-Technical Committee (IEC) standard that provides a definition for implementing PLC programming software. The standard was first introduced in 1993 as the result of an effort to standardize the myriad PLC logic editors in the automation market place. The goal of the standard is to give automation professionals a familiar environment and set of tools to create PLC programs across vendor platforms. CODESYS has standard IEC instructions and function blocks with editors implemented for all five programming languages defined by the standard:

Ladder Diagram (LD) Editor

The Ladder Diagram editor uses the same programming paradigm as the Native Ladder editor. It is a graphic editor in which instructions are placed in a pseudo electro mechanical circuit. Instructions are activated by connecting them to the power rail of the circuit. Boolean operators are modeled as relay contacts and coils. Contacts can be arranged to block or allow power to flow from the power rail to downstream instructions based on the needs of the application. Coil instructions are activated when the circuit is on a logical state that allows power to flow to them.

Structured Text (ST) Editor

The Structured Text editor is a text based editor similar to text based programming languages such as C/C++ or Visual Basic. Logical operations are created by combining variable names with operators to create logical statements. The PLC executes the statements from top to bottom as the program is executed. The Structured Text editor provides a great deal of flexibility to the programmer.

Function Block Diagram (FBD) Editor

Function Block Diagram is another graphical logic editor which is based upon logic diagrams. The program is constructed out of individual blocks that represent some operation, which will have one or more inputs and produce one or more outputs. Complicated logical operations can be constructed by interconnecting multiple blocks together.

Sequential Function Chart (SFC) Editor

The Sequential Function Chart is a state diagram that allows complex algorithms to be executed using a series of “steps” and “transitions”. Graphical steps are used to represent stable states, and transitions describe the conditions and events that lead to a change of state. Using SFC highly simplifies the programming of sequential operations as it removes the need to create multiple variables and tests just for maintaining the program context. However, SFC should not be used to create a decision diagram.

Instruction List (IL) Editor

Instruction List (IL) programming is the most basic of the five IEC 61131-3 programming languages. The format consists of a series of simple text statements. Each statement performs only one function. When creating an IL logic block, you must put all IL commands in between the BEGIN_IL and END_IL sections. Above and below this block, you are allowed to use ST instructions.

All IEC language editors include instructions and function blocks for:

  • Scaling
  • Data Transfers
  • Mathematical Operations
  • Comparisons
  • Data Conversions
  • Timers
  • Counters
  • PID
  • Strings
  • and more

User Defined Function Blocks (UDFB)

User Defined Function Blocks are a way of making the logic in a PLC program re-usable. The UDFB associates a set of inputs, outputs, and internal data with a logic sequence. Multiple instances of the UDFB can then be created and used throughout a program. Each instance of the UDFB will have its own set of data registers to work with. By using multiple instances of the same logic sequence, it is possible to make a change throughout a project by changing a single logic sequence in one place. UDFBs can also be used across different projects.

Getting Started

Combine the power of CODESYS with one of our CODESYS capable HMIs and Modular IO to create an innovative control solution that can tackle the most demanding applications. This unique architecture saves time, hardware cost, communication cabling, and valuable control cabinet real estate, without compromising on the CPU resources real time applications require. See our project example below and get started building your solution today!

Select Controller or your HMI

Choose either a stand-alone Controller or one of the qualifying HMI models with an innovative multi-core CPU architecture. 2 cores are dedicated to running the CODESYS runtime while the other 2 can run a full EasyBuilder Pro HMI application. Add up to 16 IO modules.

Select Your Communication Coupler

iR Communication Couplers have three interface protocols to choose from: Modbus TCP, CANopen and EtherCAT all of which seamlessly integrate into your EasyBuilder Pro and CODESYS Projects.

Select Your I/O Modules

Easy to use reliable IO modules complete the connection to your field equipment. Attach up to 16 IO modules to a coupler. Select from analog, digital, temperature or motion control i/o modules.

Get Your CODESYS Activation Card

A CODESYS license turns any of the qualifying cMT HMI models into a powerful HMI + I/O controller by allowing the HMI to run IEC 61131-3 programming logic, and handle all the data processing, and reading/writing to applicable I/O modules.

Activate Your CODESYS Activation Card

This guide walks through the required activation steps. For programming CODESYS project or installation, please refer to cMT+CODESYS and Remote I/O Quick Start Guide.

Download EasyBuilder Pro HMI Configuration Software

Free, powerful HMI configuration software for our HMIs provides the flexibility to create and deploy custom control applications suited to your unique industrial process.

Download CODESYS Development Software

A complete PLC software package backed by a large userbase and development team, CODESYS fully implements the IEC 61131-3 specification.

Download our CODESYS Quick Start Guide

Follow this guide for step-by-step instruction on how to set up one of our CODESYS-supported HMIs and our Remote I/O.

Download 2 Support Packages

Weintek CODESYS Package

This package should be installed as an add-in after you install the CODESYS development software.

EasyRemote IO Software

Easy Remote IO allows users to scan their network for iR couplers and modules and establish communication with them so they can be used in a CODESYS project. Used to generate tag files that can be imported into CODESYS and EBPro for easy addressing.

Visit our CODESYS Software page to learn more.

Example Setup:

As an example consider creating a control system for a high temperature gas kiln. The system requirements might include:

  1. Large touchscreen display, remotely mounted.
  2. Several digital inputs to monitor safety interlocks and manual switches.
  3. Digital outputs to control warning lights valves and an ignitor.
  4. Analog inputs used to monitor gas flow.
  5. Temperature inputs to monitor several thermocouples.

This system could be implemented with the following equipment:

  1. cMT3092X – a 9.7″ touchscreen HMI that will run the HMI project and the CODESYS control logic.
  2. CODESYS activation card enables the CODESYS runtime on the cMT3092X.
  3. iR-ETN coupler to create a remote IO block connected to CODESYS using Modbus TCP.
  4. The following IO modules to connect to field devices:
    • iR-DM16-P – 8 digital inputs and 8 sourcing digital outputs
    • iR-AM06-VI – 4 analog input channels and 2 analog outputs
    • iR-AI04-TR – 4 RTD / Thermocouple inputs


Here’s the list of documents that support our CODESYS / cMT products:

Other Resources

Weintek CODESYS package – This package should be installed as an add-in after you install the CODESYS development software.

Need additional support?

Additional Resources

We’ve compiled all of our most useful How-To’s, Troubleshooting, Webinar videos into convenient playlists.

Intro to EBPro

Learn how to create your first project in EBPro HMI programming software. Get a quick tour of the User Interface, Window Editing Pane, Sidebars, Menus, and more! Watch as our Product Trainer, Adam, creates a Tag and adds a Numeric Display to show a value on the HMI.

Smart HMI Series Overview

Maple’s Smart series is designed to meet the expanding need for new ways to connect to equipment, while preserving the core functions of a fixed operator terminal. Learn more about how our Smart HMIs make it easy to monitor/control industrial processes from remote devices.

More Information about the CODESYS / cMT Series – Smart IIoT Solutions

What is cMT?

Weintek’s innovative cMT solutions are IIoT-ready HMIs that enable easy monitoring of your industrial plant from a remote device. Install the free cMT Viewer software on your device to enable control and monitoring on any Windows PC, Apple/Android phone or tablet. The cMT Series offers many different models with and without built-in screens to maximize your options when selecting the correct HMI for your system.

cMT HMIs all come with built-in server functionality that allows your remote device running the cMT Viewer application to view and control screens from anywhere on your local network. The cMT Viewer application is available from the software section of our website for the Windows PC version, from the Apple App Store for iOS devices, and the Google Play Store for Android devices. This means that organizations can implement a flexible combination of cMT products with different display devices according to their unique application and user needs.

cMT HMIs can be broken into two categories – DIN rail mounted cMT Servers with no built-in touchscreen that can be hidden away in control cabinets, and panel-mounted touchscreen cMT HMIs that offer the standard stationary HMI interface that operators are used to. Both Server and Touchscreen models support external connection via cMT Viewer – up to ten different display devices can be connected to each single cMT HMI at one time. All models also support common IIoT features such as MQTT cloud support, OPC UA for SCADA and ERP support, SQL database integration, and secure remote access via EasyAccess 2.0. Learn more about these IIoT features in the IIoT section of our website.

In addition to cMT HMIs, Maple also offers cMT Communication Gateways for applications where standard HMI display functionality isn’t required, but the data extraction features are. cMT Gateways offer all the same communications drivers and IIoT features that cMT HMIs do, which allows them to be used to modernize legacy equipment.

I need an HMI in my system for local monitoring and control. Is there an advantage to using the cMT-SVR instead of a “standard” HMI?

Most HMIs have a built-in touchscreen to provide feedback and allow input from on-site personnel. If that is all that’s required, a standard HMI may be sufficient. On the other hand, if you want the convenience of monitoring and accessing your system without having to walk to where the HMI is physically located, the cMT-SVR is a great option. Utilize your Apple smart phone or tablet to “Wi-Fi” into the cMT-SVR remotely. In addition, you can still connect a cMT-iV6 display or a cMT-iM21 touchscreen monitor to the cMT-SVR for local access.

Can I use my smart phone to communicate with a cMT HMI?

Yes! The free cMT Viewer app is available for both Android and Apple smart devices. Simply download the app and connect to the same local network as your cMT HMI. You will then be able to browse to your HMI in the app, download the project, and then control your system from your phone.

Can I control the operation of the system through the cMT HMI from a remote location?

The cMT Viewer app allows you to monitor conditions and interact with your system remotely. The free cMT Viewer app is available for PCs, Android, and Apple devices. This feature must be programmed by you and can be entirely disabled, so the decision is entirely yours. Maple Systems strongly recommends that you never program a cMT HMI to allow a remote device to send any command which may endanger personnel safety or cause damage to equipment. When utilizing Wi-Fi, always assume the real possibility that communication between your wireless device and the cMT HMI may be lost or delayed at any given moment.

What security features prevent unauthorized access to a cMT HMI?

There are several layers of security protection available when configuring the cMT HMI. A System Level password is required to log into the cMT device. You can also create user accounts in your EBPro project to limit access to specific screens and objects according to the security level assigned to each person.

Is Wi-Fi built into cMT HMIs?

The cMT-SVR-200 Servers and cMT-G02 Gateway all feature built-in Wi-Fi, and can connect directly to any Wireless Network. All other models must be connected to a wireless router via an Ethernet cable before they can be accessed from another device on a Wireless Network.

Can I use my Wi-Fi connection to talk to more than one cMT HMI?

cMT Viewer allows you to connect to any target cMT device in your network. You can operate any one CMT device at a time this way. cMT Viewer also allows users to monitor up to 50 cMT devices simultaneously using ‘Monitor Mode’.

What if I don’t have a Tablet or Smartphone – can I still connect to the cMT device over Wi-Fi?

Yes. Our cMT Viewer app allows you to connect and control any cMT device from a Windows PC, as well as from a Smartphone or Tablet. cMT Viewer can be downloaded for free from our Software Downloads page.

What is cMT-Viewer?

cMT Viewer is a client application that enables users to view and control cMT devices, quickly and easily. cMT Viewer runs the HMI project on the client device. Only application data is exchanged between the cMT hardware, acting as a server, and the client device – your smart phone or tablet. Monitor and control up to 50 cMT HMIs with one device! Note: cMT Viewer is only compatible with cMT HMIs.

cMT Viewer will run on the following client platforms:

  • Windows®
  • Android Smartphones and Tablets
  • Apple iPhone/iPad
  • cMT-iV6

This means that a single cMT unit can be controlled by up to three client devices, running any of these platforms, at one time. Conversely, the same client device can be used to connect to any number of cMT servers. The cMT Viewer application in the client device will maintain a history of all cMT servers previously connected to. To switch to a new cMT server, simply select the project from the history list, and the project for that cMT server will start to run.

Where do I get cMT Viewer?

cMT Viewer is installed with EZwarePlus. It can be launched from the Maintenance Menu in Utility Manager after selecting cMT Series in the top left corner:

  • You may also create a desktop shortcut that points to cMT Viewer.exe in the EBPro installation directory.
  • Apple or Android Device
    The cMT Viewer application is available in the Google Play store and iTunes. Simply search for cMT Viewer and follow the installation instructions for your device.

What is Monitor Mode?

Monitor Mode is a feature exclusive to the Windows version of the cMT Viewer application. It allows real time data to be displayed from up to 50 cMT servers simultaneously. Each cMT server is displayed as a tile in a grid as seen below. This special overview screen is configured on window 3 of the cMT server’s EBPro project. As the cMT responds to data read from the PLC, the tile view will update on the cMT Viewer client. A user can simply click any of the tiles to immediately jump to the full project for that cMT server.

Alarm Notification using Monitor Mode

Monitor Mode is a feature exclusive to the Windows version of the cMT Viewer application. It allows real time data to be displayed from up to 50 cMT servers simultaneously. Each cMT server is displayed as a tile in a grid as seen below. This special overview screen is configured on window 3 of the cMT server’s EBPro project. As the cMT responds to data read from the PLC, the tile view will update on the cMT Viewer client. A user can simply click any of the tiles to immediately jump to the full project for that cMT server.

Solution 1: Local Machine Control

New technologies bring new ways of interacting and controlling systems, but the need for a static HMI that is always ready and available will not go away. While cMT Series HMIs enable new and exciting features, the cMT Series also does not compromise on fulfilling this vital role.

The cMT Series uses EBPro, the next iteration of configuration software that Maple Systems customers use in our Advanced and Basic models. This software platform allows interface designers to select from over 300 protocol drivers and connect to nearly every PLC available in the automation market place today. With data from these devices, automation engineers can quickly construct state-of-the-art interface screens that present data to the operator in intuitive ways, so they’ll know exactly what’s going on within their machine. All of the standard display and data entry objects are available: buttons, meters, trends, alarms, and much more.

Once the project is designed, choose from one of our 4 Touchscreen cMT model sizes (7″, 9.7″, 10.1″, or 15″). These units can be mounted in a control panel like any traditional HMI. cMT Servers, which do not have a built-in display, can be paired with a cMT-iV6, a 9.7″ touchscreen display or a cMT-iM-21, a 21″ touchscreen monitor. Each can be a mounted in a traditional control panel. These screens provide a permanent fixed terminal that operators expect to find in any system. These screens provide a permanent fixed terminal that operators expect to find in any system.

Solution 2: Adding Remote and Mobile System Displays

A static, panel-mounted display is great for many applications but can be limiting in others.

For example, a machine may be quite large and the operators want to be able to stand directly in front of the section of the machine they are working on. Previously, the only way to accommodate this need would be to install a separate control panel at every point of interest along the assembly line. Or, a plant manager may want the ability to quickly log into any plant floor machine in order to respond to issues and monitor production rates. cMT Series HMIs allow you have it either or both ways.

Wireless Access to Remote Displays

The cMT Viewer application enables operators to use wireless Android, Apple, or Windows® tablets as their HMI. They are untethered from the control panel. The operator can move freely to any part of the assembly line or processing plant, taking their HMI with them. This eliminates the need for running back and forth to the panel while troubleshooting, or tying up two operators; one at the control panel pushing buttons, and the other at the machine troubleshooting equipment.

The cMT Viewer application can also be run on any Windows® PC – any computer on the same network as a cMT HMI can easily view and control the system. A plant manager can connect to any cMT HMI in their plant to get a real-time view of exactly what is occurring with that machine. The connection is password protected so only authorized users can have access. The Monitor Mode feature in cMT Viewer allows plant managers to view live data from up to 50 connected cMT devices simultaneously.

An alarm condition from any device would immediately alert the operator, enabling quicker response rates and resolution to the issue. The cMT Viewer application can run on a traditional Windows desktop or on panel PC to provide a supervisory control station with access to many subordinate machines.
Explore cMT Viewer.

Solution 3: Data Management

The HMI view of an operator interface terminal, whether on a local display, mobile tablet, supervisory panel PC, or remote workstation, is only one view of the important data in an automation system. There are also; alarm and data logging, database integration, recipe management, protocol translation and more. cMT Series Products prove to be a flexible tool in these areas as well. Let’s tour a few features available to manage your data on the cMT products:

Modbus Gateway

In an ideal world, every machine vendor and systems integrator would use the same protocol and all equipment would seamlessly communicate with everything else on a plant floor. More often than not, this is far from the case. As a plant grows over time and different systems are added, little thought is given to the process as a whole. You’ll often find different systems, from different manufacturers, speaking different protocols, on different serial busses. Fortunately, cMT products speak many languages. cMT Series Products can use over 300 protocols on any of the available com ports, and translate them to the default industrial standard protocol: Modbus TCP/IP. The cMT device becomes a transparent protocol translator, allowing upstream SCADA systems to connect to PLCs as if they were all using the same protocol on the same bus.

Modbus Communication Gateway

Database Object Increasingly, data that machines produce needs to be recorded and preserved. The data may be useful in process improvement or may be required by regulatory agencies. The cMT products have an object which allows them to log a data sampling object or an alarm log directly to an SQL database server over an Ethernet LAN.

This eliminates the need for manually retrieving and entering log files from each machine independently. Data from many different sources can be aggregated and stored in one central safe and secure location, automatically.

Databases and Recipes Recipes are a collection of parameters stored in the HMI that can be transferred to a machine with one press of a button. Different parts may require different amounts of material, different cook times and temperatures, or different processing steps. This data often needs to be shared across multiple machines that may be at different steps in the process, or may be redundant production lines working on producing the same or similar products.

SQL databases can act as a storage tank for all machines sharing a particular recipe database. cMT HMIs can query the database for current recipe data before sending those parameters to the PLC. This way, changes only need to be made to this central database, instead of manually changed in each HMI.

This feature saves time in systems that have many machines sharing many recipes. The changes, additions, and deletions to the database only need to be made in one place and are then automatically updated throughout the system. This ensures production uniformity throughout the system. A single machine will not get stuck using an outdated recipe simply because someone forgot to update it.

Solution 4: IIoT Gateway

So far we have seen how the cMT series of products work as a local display, a mobile HMI server, and a data manager within the factory. But the cMT series packs even more features that enable yet another level of access and control. The IIoT, or Industry 4.0, is a growing area of interest in the automation market. The cMT series provides a capable, ready, and secure solution for the IIoT.

Learn more about Maple Systems IIoT Solutions .


Open Platform Communications (OPC) Unified Architecture (UA) is a tried and tested communication protocol supported by many SCADA, MES, and ERP software providers. The protocol has built-in security with signed and encrypted data transfer using state-of-the-art encryption algorithms. Data is organized into browsable objects, making it easy to both access data and quickly understand how to use what the data represents.

Any data accessible to the cMT can be added to the OPC UA server to be accessed by upstream devices. The configuration interface required to add data to the OPC UA server is very simple and straightforward to use. The user can organize data into multi-level objects with descriptive names. An OPC UA client device connecting to the cMT will see data organized in the same intuitive way.

Learn more about OPC UA .


MQTT is a powerful and efficient IoT protocol that is lightweight, highly scalable, and has excellent support on many client devices and programs. MQTT integrates well with Amazon AWS, IBM Bluemix, and Microsoft Azure cloud hosting services for next level data collection and processing.

The cMT Series Smart HMIs offer a full featured MQTT implementation. An easy to use configuration interface allows the user to select data from any of the supported PLC drivers, add it to an MQTT topic, and publish it periodically or whenever values change. The cMT Series can also subscribe to MQTT topics and write the received data to internal HMI memory or to PLC memory addresses. And as well, cMT Series HMIs can host an MQTT broker internally, coordinating connections from other Maple Systems HMIs or any other MQTT enabled device.

cMT HMIs offer advanced integration with Amazon AWS’s Device Shadow service which creates a virtual representation of the actual device in the cloud. And EBPro supports the Sparkplug B MQTT payload specification for integration with Ignition SCADA software and other Sparkplug B compatible software programs.

The MQTT protocol is data agnostic, meaning that any data can be sent through the protocol, including plain text messages. This raises security concerns since anyone with access to the network can view the data in transit. However, the MQTT feature on Maple Systems products includes the ability to encrypt messages from publisher to subscriber. This ensures that messages are only read by the people and programs authorized to receive the messages.

Learn more about MQTT .

Maple Systems ‐ Weintek Strategic Alliance ‐ 2018

Maple Systems has been the #1 authority for Weintek products in the North American market for nearly two decades. We have evolved together over the last several years to provide powerful controllers designed to implement and maintain specific fundamentals, which are recognized today as industry standards.

Given that Maple Systems knows Weintek products inside and out, Maple is able to precisely administer in-house repairs and provide FREE, superior, local technical support to our customers. Our team is well-versed in the complexities of what makes these products outperform the competition in both capability and cost.

Maple Systems and Weintek Labs equally pride ourselves on not only having mastered the basics in our controls offerings but are also passionate about remaining at the forefront of technological changes in our market. Weintek Labs sets a precedent in keeping products relevant, compatible, easy-to-use, and above all, reliable ‑ is why Maple Systems is proud to be Weintek’s #1 provider in the US.

We invite you to explore the variety of HMIs, remote and smart devices available on our website today. Our 30+ years in the industrial automation field, our commitment to offering up-front affordable pricing and never charging for technical support are all reasons why Maple Systems remains an established name in an abundance of competition throughout the automation market.

For questions on any of our products or services, please don’t hesitate to call. You can also email sales or technical support directly at:

See also: Weintek Strategic Alliance

Supported Products

Powerful hardware running powerful software

Flexible solutions that work perfectly for every application or any environment.

IIoT edge-device HMIs

Choose from one of the qualifying HMI models with an innovative multi-core CPU architecture. One processor is dedicated to running the CODESYS runtime while the other can run a full EasyBuilder Pro HMI application ensuring lightning quick graphics experience and real time PLC logic execution in a single platform.

Couplers & iR Modules

iR Remote IO modules. Easy to use reliable IO modules complete the connection to your field equipment. iR modules have three interface protocols to choose from: Modbus TCP, CANopen and EtherCAT all of which seamlessly integrate into your EasyBuilder Pro and CODESYS Projects. To these you can attach up to 16 IO modules.

Case Studies

Read real-world applications. These case studies and success stories illustrate how our customers use our products to reduce costs, provide features, increase functionality, and solve problems.

Get started with CODESYS today

A battle tested and complete PLC software package backed by a large userbase and development team, CODESYS fully implements the IEC 61131-3 specification. Implement your application in the programming language / editor of your choice. Use advanced object-oriented concepts to manage complex systems, and much more.

Early on, these types of systems were built using proprietary hardware and software, operating in isolation without connections to other networks. operators had to reside in a centralized control room or command center because human-machine interfaces (HMIs) did not support remote access. Any information provided to personnel other than operators was delivered via reports, which often had a significant time lag. Once devices were connected to much larger networks, they became more complex and gained broad capabilities.

To learn more about how our products work together to create scalable SCADA solutions, visit our SCADA solutions page
Scroll to Top