Why you keep hearing all three
On any real Industrial IoT project these three acronyms come up, and they're often presented as an either/or choice. They're not. They sit at different points in the journey data takes from a machine to your dashboard: reading the device, structuring the data, and transporting it. Understanding which does what makes integration decisions obvious instead of confusing.
The mental model: Modbus and OPC-UA are mainly about reading the equipment (south-bound, at the edge). MQTT is mainly about moving the data onward (north-bound, to the platform/cloud). Most deployments use one of the first two and MQTT together.
Modbus — the universal workhorse
Modbus is decades old, dead simple, and supported by almost everything — PLCs, meters, drives, sensors. It reads and writes numeric registers over serial (RTU) or Ethernet (TCP). Its strengths are exactly that ubiquity and simplicity: if a device is older or basic, it almost certainly speaks Modbus. Its limits are that it carries raw numbers with no description (you need to know register 40001 means "tank level"), and it has no built-in security or modern data model. For getting numbers off legacy and simple equipment, though, it's unbeatable — and a big reason you rarely need to replace old kit to connect it.
OPC-UA — the modern industrial standard
OPC-UA (Unified Architecture) is the modern, vendor-neutral standard for industrial interoperability. Unlike Modbus, its data is structured and self-describing — a value comes with its name, units, type and context — and it has security built in (authentication, encryption). It's the right choice for pulling rich, meaningful data out of modern PLCs and for system-to-system integration (e.g. into MES/SCADA). It's heavier than Modbus, so it suits capable modern equipment rather than the smallest sensors.
MQTT — built for moving data
MQTT is a lightweight publish/subscribe messaging protocol. Devices "publish" data to a broker and systems "subscribe" to what they need. It was designed for constrained, unreliable networks — exactly the remote-site, low-bandwidth, intermittent-connectivity reality of South African deployments — and it's very efficient on data and battery. It excels at transporting data from many edge devices to a platform or cloud, and it pairs naturally with edge buffering. It isn't how you read a PLC's registers; it's how you ship what you read.
Side by side
| Modbus | OPC-UA | MQTT | |
|---|---|---|---|
| Main job | Read registers off devices | Structured device/system data | Transport data to a platform |
| Data model | Raw numbers, no context | Self-describing, rich | Any payload (often JSON) |
| Security | None built in | Built in (auth, encryption) | TLS + auth (transport-level) |
| Best for | Legacy & simple equipment | Modern PLCs, system integration | Remote / low-bandwidth / many devices |
| Where it sits | Edge (south-bound) | Edge / system (south-bound) | Edge → platform (north-bound) |
How they work together
A typical deployment looks like this: an edge gateway reads your equipment using Modbus (for older meters and PLCs) and OPC-UA (for modern controllers), normalises and buffers the data locally, then publishes it onward over MQTT to the platform — surviving load shedding and flaky links because the edge holds data until the network returns. So the "vs" framing dissolves: you read with Modbus/OPC-UA and transport with MQTT. The job of a good platform is to speak all of them so it fits whatever you already own.
That's exactly what the in-house addaNet platform does — vendor- and PLC-agnostic, reading Modbus and OPC-UA at the edge and moving data over MQTT with edge buffering for South African connectivity. It's why connecting your plant rarely means replacing it. For the wider picture see our guide to Industrial IoT in South Africa, and on the control-vs-visibility question, SCADA vs IoT platform.
Frequently asked questions
Is OPC-UA better than Modbus?
Not better — different. OPC-UA offers structured, self-describing data and built-in security, ideal for modern PLCs and system integration. Modbus is simpler and near-universal, ideal for legacy and basic equipment. Many sites use both: OPC-UA where the controller supports it, Modbus to reach everything else.
Do I have to choose between Modbus, OPC-UA and MQTT?
No — they do different jobs and are usually combined. Modbus and OPC-UA read data off your equipment at the edge; MQTT transports that data onward to the platform or cloud. A typical deployment reads with Modbus/OPC-UA and ships with MQTT.
Why is MQTT good for South African sites?
MQTT is lightweight and built for unreliable, low-bandwidth networks. Its publish/subscribe model and small overhead suit remote sites, cellular or LoRaWAN links and battery devices, and it pairs naturally with edge buffering — so data survives load shedding and patchy connectivity and syncs when the link returns.
Can these protocols connect to my old equipment?
Usually yes. Most older PLCs, meters and drives speak Modbus, so an edge gateway can read them without replacement, and modern controllers add OPC-UA. That's why connecting a plant rarely needs a rip-and-replace — see our guide to measuring an old line without a new PLC.
Which is most secure?
OPC-UA has security (authentication and encryption) built into the standard, while Modbus has none natively and must be protected at the network level. MQTT secures the transport with TLS and authentication. A well-designed deployment keeps device protocols on a protected network and never exposes PLC ports directly — see our note on industrial IoT security.