All drivers ship in every installation; there is nothing to buy or enable. Each driver has an Address hints panel in the tag editor and a help page inside the application.
| Driver | Transport | Highlights | Detail page |
|---|---|---|---|
| Modbus | TCP, UDP, RTU/ASCII serial, Ethernet encapsulation | FC01–04 reads, FC05/06/15/16/22 writes, zero/one-based addressing, Modicon 5/6-digit, word/bit order, per-area max block size, one socket per channel | Modbus |
| Siemens S7 | ISO-on-TCP (102) | S7-300/400/1200/1500, DB/M/I/Q/T/C areas, optimised PDU packing, 64-bit types | Siemens S7 |
| OMRON | FINS/TCP, EtherNet/IP CIP | CS/CJ/CP FINS memory areas, NJ/NX symbolic tags (CIP), bit and word access | OMRON |
| DNP3 | TCP | Integrity/event polls, unsolicited, SBO/Direct Operate, Secure Authentication, time sync, file control, redundancy | DNP3 |
| IEC 60870-5-104 | TCP | General interrogation, single/double commands, setpoints, time sync, redundancy, RTU compatibility modes | IEC 104 |
| IEC 61850 | MMS | SCL/ICD import, LN-level reads, control model (SBO/direct), reports, VMD addresses | IEC 61850 |
| MQTT | TCP/TLS | Broker per channel, topic devices, JSON/XML/CSV/key-value payload parsing, discovery, arrival watchdog liveness | MQTT |
| OPC UA client | opc.tcp | Connect to other UA servers (PLC, gateway, another MergenHub); channel = session, device = subscription, browse for tags | — |
| Simulator | — | Ramp, sine, random, static functions for testing screens, alarms and logging without hardware | — |
Channel and device limits
Every driver limits the number of channels it can open and the number of devices in one channel. The values match the limits documented by the industry-standard OPC server for each driver, with channels additionally capped at 1024. The limit is per driver, not per project — channels of different drivers add up beyond it.
| Driver | Max channels | Max devices per channel |
|---|---|---|
| Modbus TCP/IP Ethernet | 1024 | 8192 |
| Modbus RTU Serial | 1024 | 255 |
| Modbus ASCII Serial | 100 | 247 |
| DNP3 Client Ethernet | 1024 | 1024 |
| IEC 60870-5-104 Client | 1024 | 1024 |
| IEC 61850 MMS Client | 256 | 256 |
| MQTT Client | 60 | 1024 |
| OMRON FINS Ethernet | 512 | 32 |
| OMRON NJ Ethernet | 256 | 1024 |
| Siemens S7 TCP/IP | 1024 | 1024 |
| OPC UA client | 256 | 256 |
| Simulator | 1024 | 999 |
- Limits are checked only when adding (UI, REST API, AI assistant, copy, import). When a limit is reached the operation is rejected and the project is left unchanged; an import is rejected as a whole, never partially applied.
- A saved project is never rejected or trimmed when it loads.
- Every value was exercised at the limit itself against a running MergenHub with protocol simulators, including all drivers at their limits at the same time (7,584 channels): every tag stayed Good and kept updating.
- A channel polls its devices one after another, so a crowded channel has a longer cycle (in testing, 8,192 Modbus TCP devices in one channel refreshed about every 40 s). Split devices that need fast updates across several channels — channels run in parallel.
Choosing timeouts and scan rates
- Start with the driver defaults and the device's documented response time. A scan rate lower than the device round-trip only creates back-pressure.
- Serial and GSM/radio links: longer request timeout (2–5 s), fewer retries, and demand-driven scanning so idle devices do not keep the link busy.
- Large Modbus devices: keep max block size below what the device supports (many RTUs reset above 64 registers).
Writes
Writes are executed immediately, ahead of the scan queue, and are verified: the driver checks the device acknowledged the write (Modbus exception codes, S7 return codes, DNP3/104 command responses). Failed writes are reported to the caller (OPC UA StatusCode / REST error) and logged in the audit log with user and value.
Redundancy and recovery
Every channel runs under a supervisor. Broken sockets are reopened, dead workers are recreated, and quarantine/back-off prevents a flapping device from flooding the log. DNP3 and IEC 104 support dual-address redundancy.
Diagnostics
Select a device › Diagnostics to see the raw frames (TX/RX hex), byte counters and last error. For cache-based protocols (DNP3, 104, 61850) the packet tap shows the real link traffic, not the cached values. See Troubleshooting.
MergenHub