MTConnect, OPC UA and Modbus compared
MTConnect reads machine tools, OPC UA models and secures plant data, and Modbus moves bare registers. See how each one works and when your machines need it.
Mahmoud Parto, Co-founder and CEO
10 min read
Updated : Rewritten with corrected OPC UA transports, MTConnect security and Modbus facts.
MTConnect, OPC UA and Modbus are three standards for reading data from a machine’s control, and each one does a different job. MTConnect gives machine tools a shared, read-only vocabulary; OPC UA models, reads, writes and secures data from almost any industrial device; Modbus moves bare 16-bit registers whose meaning lives in the device’s manual. You need one only when the data you want lives inside the control.
This guide is for engineers and plant managers deciding how to get data off a mixed fleet. It explains how each protocol works, where machine connections stall, and how to choose.
Key takeaways
- MTConnect gives machine tools a shared, read-only vocabulary that an agent serves over HTTP, so a client cannot change the machine.
- OPC UA models, reads and writes industrial data, with certificates, signing and encryption built into the protocol.
- Modbus moves bare 16-bit registers, so every device needs its maker’s register map before the numbers mean anything.
- Plain Modbus TCP carries no authentication; the Modbus/TCP Security variant wraps the same messages in TLS on port 802.
- Run state, uptime and part counts need no protocol at all, because a sensor can read them from outside the machine.
What a machine protocol defines#
A protocol for machine data answers three questions: how bytes move between two devices, what each value means, and who may read or change it. The three standards in this guide answer them differently, which is why one can’t stand in for another.
| Layer | Question it answers | Example |
|---|---|---|
| Transport | How do the bytes move? | TCP port 502, HTTP, RS-485 serial |
| Data model | What does a value mean? | “Spindle speed in rpm” or register 201 |
| Access | Who can read or write? | Read-only agent, or permissions per user |
For example, a spindle turning at 1,200 rpm reaches your software as the number 1200 in all three. Modbus sends only the number. MTConnect and OPC UA send the number with its name and unit, so the software knows what it is looking at.
Each protocol talks to the machine’s controller: the PLC or CNC control that runs it. That makes it the right tool for data only the control holds, and more than you need for data a sensor can see from outside.
How MTConnect works#
Definition
MTConnect is an open, royalty-free standard from the MTConnect Institute that defines a shared vocabulary for machine tool and other manufacturing equipment data, such as execution state, spindle speed and part count, and serves that data read-only over HTTP from software called an agent.
The specification describes MTConnect as a data and information exchange standard built on a dictionary of terms for manufacturing operations, open and royalty-free for anyone to implement.[1] The dictionary is the point.
A measured spindle speed is a RotaryVelocity sample with the subtype ACTUAL, in REVOLUTION/MINUTE.[2] Software written against the standard reads that item the same way on any builder’s control that implements it.
Adapter, agent and client#
Three pieces of software sit between the machine and your dashboard:
- An adapter is optional hardware or software that turns what the equipment provides into a form the agent can receive.[1] A control that doesn’t speak MTConnect natively needs one.
- An agent collects data from one or more machines, organizes it, and answers requests from client software.[1]
- A client is your monitoring or analytics software, which asks the agent for data.
An agent must answer four requests: probe for the machine’s structure, current for the latest value of every data item, sample for buffered history, and asset for the assets the agent tracks.[1] The Institute’s reference agent also takes input over MQTT and can publish to an MQTT broker.[3]
Read-only by design#
The MTConnect REST API is read-only and produces no side effects on the agent or the equipment.[1] A client can’t start a program, change an offset or clear an alarm through MTConnect. If you need to write back to a machine tool, MTConnect isn’t the path.
Security in MTConnect#
MTConnect defines what the data means and how to request it. Protecting the connection falls to the transport and the network. The reference agent supports TLS, so it can serve its data over HTTPS with certificates.[3]
The OPC UA companion specification for MTConnect, released in September 2019, expresses the MTConnect model in OPC UA and brings OPC UA’s end-to-end security to it.[4] The two standards cooperate rather than compete.
How OPC UA works#
Definition
OPC UA (Open Platform Communications Unified Architecture) is a platform-independent framework from the OPC Foundation, released in 2008, for modeling industrial data and exchanging it securely between clients and servers, with reads and writes governed by access permissions.
OPC UA runs on anything from a microcontroller to a cloud server, PLCs included.[5] A device or gateway runs an OPC UA server. Your software connects as a client, browses what the server offers, and reads, writes or subscribes to values based on the permissions it holds.[5]
Information models#
Where Modbus has registers, OPC UA has a typed model that a client can browse. For example, a press might expose a node for its main motor, a variable for motor current with a data type and an engineering unit, and a method that resets a counter.
The modeling framework is extensible, so industry groups publish companion specifications that fix the model for one kind of machine.[5] The MTConnect companion specification is one of them.[4]
Transports#
OPC UA is often described as an HTTP or MQTT protocol, but that isn’t accurate. Its main client and server transport is OPC UA TCP, which runs directly on TCP/IP and whose endpoints use the opc.tcp URL scheme.[6] IANA registers port 4840 for it, and port 4843 for OPC UA over TLS.[8]
HTTPS, WebSockets and SOAP over HTTP are alternative mappings in the same specification.[6] The separate publish-subscribe model, PubSub, defines mappings for UDP, raw Ethernet and MQTT.[7]
PubSub is built for many-to-many traffic.[5] Choose it when one device feeds many consumers, and choose client and server when your software asks for data on demand.
Security in OPC UA#
Security is part of the OPC UA protocol. Each client and server is identified by an X.509 certificate, messages can be signed and encrypted, users authenticate, and activity is logged as an audit trail.[5]
Because OPC UA can write as well as read, the permissions a client receives are a decision for the plant. Connecting software to a controller is a security concern for many plants, and IT usually reviews it first.
How Modbus works#
Definition
Modbus is a request-and-reply messaging protocol, published by the Modbus Organization, in which a client reads or writes numbered bits and 16-bit registers on a server device over Ethernet or a serial line.
The specification calls it an application layer messaging protocol for client and server communication across different buses and networks, run over TCP/IP on Ethernet or over serial links such as EIA/TIA-485.[9] Older documents call the client a master and the server a slave.
Four tables of numbers#
Modbus organizes a device’s data in four primary tables.[9]
| Table | Size of each item | Access |
|---|---|---|
| Discrete inputs | 1 bit | Read-only |
| Coils | 1 bit | Read and write |
| Input registers | 16-bit word | Read-only |
| Holding registers | 16-bit word | Read and write |
Each table addresses up to 65,536 items, and function code 03 reads 1 to 125 holding registers in one request.[9] Nothing in Modbus says what register 108 holds. The device maker’s register map does, so every new device model means a new map to load and check.
Read a temperature and a counter#
Worked example
Reading a barrel temperature and a cycle counter over Modbus TCP
A hypothetical injection molding machine publishes this register map in its manual:
- Register 108: barrel zone 1 temperature, in tenths of a degree Celsius.
- Register 109: active alarm code, 0 for none.
- Registers 110 and 111: cycle counter as one 32-bit value, high word first.
Your client sends function 03, starting address 107 (hex 006B), quantity 4. The device answers 03 08 08 FC 00 00 00 01 86 A0: the function code, a byte count of 8, then four registers of two bytes each, high byte first.
- Register 108 is hex 08FC = 2,300, so the barrel reads 230.0 °C.
- Register 109 is 0, so no alarm is active.
- Registers 110 and 111 are 1 and hex 86A0 = 34,464, so the counter is 1 × 65,536 + 34,464.
The specification defines only 16-bit registers, so how two registers combine into a 32-bit value is the device maker’s choice. Read the same counter with the words swapped and you get 34,464 × 65,536 + 1 = 2,258,632,705 cycles. The register map, not the protocol, tells you which word comes first.
Security and current use#
Plain Modbus TCP, on port 502, has no authentication or encryption.[10] The Modbus/TCP Security protocol carries the same messages inside TLS on port 802, adding encryption, integrity checks, certificate-based authentication and roles for authorization.[10] Where a device supports only plain Modbus, protect it with the network: keep it on a segment that only the systems that need it can reach.
Modbus is old, but it isn’t retired. HMS Networks’ 2026 analysis of newly installed nodes in factory automation puts Modbus TCP at 5% and Modbus RTU at 3%.[11]
The Modbus Organization describes Modbus/TCP as widely deployed in industrial control systems.[10] Meters, drives, temperature controllers and older PLCs are where you meet it most.
Compare MTConnect, OPC UA and Modbus#
The biggest practical difference is direction. MTConnect only reads, while OPC UA and Modbus clients can also write to the device.
| MTConnect | OPC UA | Modbus | |
|---|---|---|---|
| Maintained by | MTConnect Institute | OPC Foundation | Modbus Organization |
| Built for | Machine tools and other shop equipment | Any industrial device | Any device with registers |
| What a value carries | Name, unit and timestamp | Name, data type and unit | A bare bit or 16-bit number |
| Read or write | Read-only | Read and write | Read and write |
| Security in the protocol | None; relies on the transport | Certificates, signing, encryption | None; TLS variant on port 802 |
| Main transport | HTTP from the agent | OPC UA TCP, port 4840 | TCP port 502, or serial |
Why machine connections stall#
A protocol on the spec sheet doesn’t mean the data reaches your dashboard. Connection projects stall at five points, and each one has a fix you can plan for.
- A mixed fleet. A 2005 lathe, a 2019 machining center and a hydraulic press can speak three different protocols, or none. Each protocol is a separate connector to build, test and keep running, so list every machine’s protocol before you budget the project.
- No data path. A control with no network port, or with no MTConnect support, needs an adapter before an agent can read it. Budget the adapter per machine, not per plant.
- No meaning. Modbus values arrive without names. For example, 40 meters and drives across six models means six register maps to load and verify against a hand reading.
- The security review. A controller connection puts a new device on the machine and on the plant network. That is a security concern for many plants, so IT usually reviews it first. Bring IT in before the project starts, not after the hardware arrives.
- More data than you need. Reading 30 values a second from each of 20 machines is 600 values a second, or 51.8 million a day. Decide which values answer a question before you poll them all, and use a data collection plan to rank them.
Get machine data with or without a protocol#
IoTFlows reads machines both ways. SenseAi mounts on the outside of any machine and reads vibration and sound, so it reports running, stopped, part counts and cycle times with no connection to the control. The sensors never connect to your PLC.
On Enterprise, the IoTFlows edge device reads PLCs and controls over MTConnect, OPC UA, Modbus TCP, EtherNet/IP, Profinet and MQTT, and it reads only the controls you choose to connect. Its signals feed the same dashboards and alerts as the sensors, so a controller alarm can open a Maintain work order.
IoTFlows engineers scope, build and validate each custom integration, and it goes live in one week to a month, depending on the machines. Stanley Black & Decker used the edge device to pull every welding data point from the robotic welding machines on a major automotive customer’s production lines.
Which protocol do you need?#
Start from the data you need, not from the protocol. The first two rows need no connection to the control at all.
| Data you need | What reads it |
|---|---|
| Running or stopped, uptime, downtime | A sensor on the machine |
| Part counts and cycle times | A sensor, or the control’s counter |
| Program name, alarms, feed override | The control, over MTConnect or OPC UA |
| Process values from a PLC | OPC UA, or Modbus TCP if that’s all it has |
| Meters, drives, temperature controllers | Modbus TCP or Modbus RTU |
| Setpoints written back to a machine | OPC UA, with write permissions agreed |
Use that table with these rules:
- Choose MTConnect when your machines are CNC machine tools whose controls support it and you only need to read. It gives every builder’s control the same names, which suits CNC machine monitoring across brands.
- Choose OPC UA when you connect PLCs, robots or mixed equipment, need a typed model, need security in the protocol, or need to write back.
- Use Modbus when a device offers nothing else. Load and verify its register map, and keep it on a protected network segment.
- You don’t need any of them if your questions are about run time, stops and counts. A sensor answers those from outside the machine, and the sensor vs PLC comparison sets out what each path sees. For a whole line, see production line monitoring without PLCs.
Questions#
Is MTConnect the same as OPC UA?#
No. MTConnect is a vocabulary for machine tool data with a read-only HTTP interface. OPC UA is a general framework that models, reads and writes data from any industrial device and secures the connection itself. The two organizations released a companion specification in 2019 that carries the MTConnect model over OPC UA, so one machine can offer both.
Can MTConnect change settings on a machine?#
No. The MTConnect specification defines a read-only interface with no side effects on the agent or the equipment. A client can request the machine’s structure, its current values and buffered history, but it cannot start a program, change an offset or clear an alarm through MTConnect.
Which ports do MTConnect, OPC UA and Modbus use?#
Modbus TCP uses port 502, and its TLS variant uses port 802. OPC UA TCP uses port 4840, and IANA also registers 4843 for OPC UA over TLS. An MTConnect agent serves HTTP on the port set in its own configuration, so read the agent’s settings before a firewall review.
What is the difference between Modbus RTU and Modbus TCP?#
Both carry the same function codes and the same four data tables. Modbus RTU runs over serial lines such as RS-485, and Modbus TCP runs over Ethernet on port 502 with an extra header in front of each message. A gateway can translate between the two, so a serial device can still answer a TCP client.
Do I need a protocol to monitor machine uptime?#
No. Uptime, downtime, part counts and cycle times can be read from outside the machine with a vibration or current sensor, with no connection to the control. A protocol adds what only the control knows, such as program names, alarm codes and feed overrides, so connect one when you need that data.
Written by
Mahmoud Parto, Co-founder and CEO
Sources#
- MTConnect Standard Part 1.0: Fundamentals, Version 2.5.0, MTConnect Institute. Accessed Oct 16, 2026
docs.mtconnect.org/MBSD_MTConnect_Part_1_2-5-0.pdf - RotaryVelocity.Actual, MTConnect SysML Model V2.5, MTConnect Institute. Accessed Oct 16, 2026
model.mtconnect.org/Version2.5/ObservationInformationModel/ObservationTypes/SampleTypes/RotaryVelocityActual - MTConnect C++ Agent (cppagent) README, MTConnect Institute. Accessed Oct 16, 2026
github.com/mtconnect/cppagent - OPC Foundation and MTConnect Institute announce release of the OPC UA Companion Specification for MTConnect, OPC Foundation. Accessed Oct 16, 2026
opcfoundation.org/news/press-releases/opc-foundation-and-mtconnect-institute-announce-release-of-the-opc-ua-companion-specification-for-mtconnect - Unified Architecture, OPC Foundation. Accessed Oct 16, 2026
opcfoundation.org/about/opc-technologies/opc-ua - OPC 10000-6 UA Part 6: Mappings, section 7 TransportProtocols, OPC Foundation. Accessed Oct 16, 2026
reference.opcfoundation.org/Core/Part6/v105/docs/7 - OPC 10000-14 UA Part 14: PubSub, section 7 PubSub mappings, OPC Foundation. Accessed Oct 16, 2026
reference.opcfoundation.org/Core/Part14/v105/docs/7 - Service Name and Transport Protocol Port Number Registry, Internet Assigned Numbers Authority (IANA). Accessed Oct 16, 2026
iana.org/assignments/service-names-port-numbers/service-names-port-numbers.csv - MODBUS Application Protocol Specification V1.1b3, Modbus Organization. Accessed Oct 16, 2026
modbus.org/file/secure/modbusprotocolspecification.pdf - MODBUS/TCP Security Protocol Specification, Modbus Organization. Accessed Oct 16, 2026
modbus.org/file/secure/modbussecurityprotocol.pdf - Annual HMS report 2026: Industrial network market shares, HMS Networks. Accessed Oct 16, 2026
hms-networks.com/news/news-details/15-06-2026-annual-hms-report-2026
