I Stopped Fighting Modbus and Built a Platform Around It
A few years ago I was commissioned to put together a remote monitoring solution for a small water treatment facility. Nothing exotic — just…
I Stopped Fighting Modbus and Built a Platform Around It
A few years ago I was commissioned to put together a remote monitoring solution for a small water treatment facility. Nothing exotic — just read a handful of holding registers from three PLCs every few minutes and surface the data somewhere visible.
Six weeks in, I had spent most of that time fighting tooling. The free Modbus scanners were too basic. The industrial SCADA options required expensive licenses and still needed a Windows machine on-site. The open-source libraries were great but I was essentially building an application from scratch on top of them. And none of it had any cloud access without a custom VPN setup.
The devices were simple. Modbus TCP. It’s a 40-year-old protocol with an 80-page spec. The problem was everything around it.
That frustration turned into ModPackQT — a web-based Modbus Master/Slave platform that treats Modbus as the stable foundation it is and builds modern tooling on top of it. This article covers what it can do right now, today, as a launched product.
The architecture in one paragraph
You use ModPackQT from a browser. A small Gateway app runs on your local machine or a machine on your device network — it’s the thing that actually speaks Modbus TCP and RTU to your PLCs and sensors. The Gateway stays connected to the cloud to save your device profiles and configuration . You never expose your device network directly. The Gateway auto-updates itself. It runs on Windows, macOS, and Linux.
That’s it. No VPN. No port forwarding. No jump server.
What you can do with it
Read and write any Modbus TCP device
The Master panel is where you spend most of your time. You create a connection profile — IP, port, unit ID — and start reading. Holding registers, coils, discrete inputs, input registers. All the standard function codes are there, plus FC8 (diagnostics), FC23 (read/write in a single request), and FC43/MEI 14 (device identification).
Register reads show up as live values. You name them, set data types (16-bit unsigned, 32-bit float, BCD, and others), apply scaling factors, and save them to your profile. The saved registers chart in real time. You can overlay multiple values on the same chart, set time windows, and export to CSV.
Writing is just as straightforward. Pick FC5, FC6, FC15, or FC16, set a value, click Write. Or automate it with a bot (more on that below).
Modbus RTU works too — directly in the browser via the WebSerial API. Plug in a USB-to-RS485 adapter, select the port, set the baud rate and parity. No driver installation, no virtual COM port software.
Probe your network
Not sure what’s out there? The Probe feature sweeps a range of unit IDs and function codes, reporting which combinations get a valid Modbus response. Results come back in real time with a progress indicator. When it’s done you export the results to CSV.
This is the first thing I run on an unfamiliar installation. Five minutes of probing tells you more about what’s on the network than an hour of guessing from incomplete documentation.
Simulate a Modbus device
The Slave Simulator is the feature I wish I’d had during every integration project I’ve ever worked on.
You create a virtual Modbus TCP slave — a real, listening Modbus TCP server on your network. Any master — a SCADA system, an HMI, a third-party Modbus client — can connect to it on its port and read its registers as if it were a physical device. You control exactly what values those registers hold.
The use cases are obvious once you’ve needed it:
- Testing SCADA screens and HMIs without needing hardware on the desk. Set register 40001 to 234 and confirm your screen shows 23.4°C.
- Integration testing before the real hardware arrives. Define your register map, build your software against predictable data, swap in the real device when it shows up.
AI Quick Setup
Commissioning a new device means finding the register map, figuring out data types, setting up scaling. For well-documented devices that’s straightforward. For everything else it’s an hour of digging through PDFs.
The AI Quick Setup feature takes a device datasheet — pasted text or an uploaded document — and uses Google Gemini to generate the connection profile, slave configuration, and register groups. It also auto-detects whether the device is RTU or TCP from the document. For common devices (energy meters, VFDs, temperature controllers) it gets the register map right. For less common devices it gives you a solid starting point.
The output is not a suggestion. It creates actual configuration objects in the platform — ready to open, adjust, and deploy.
Plans
The free tier covers Modbus master read/write, the probe tool, and one gateway. Paid plans add the Slave Simulator, bots, Node-RED slave nodes and higher limits on connections, registers, and slaves.
A 30-day free trial of all paid features is available with no credit card required.
If you work with Modbus
Start with the free tier. Download the Gateway, point it at a device, and read some registers. The whole first-run flow takes about five minutes.
If you hit a real use case — commissioning, integration testing, remote monitoring, edge automation — the paid trial gives you full access for 30 days to see whether it fits.
메타데이터
- post_id
- 082f56efac0d
- slug
- i-stopped-fighting-modbus-and-built-a-platform-around-it-082f56efac0d
- url
- https://medium.com/@modpackqt/i-stopped-fighting-modbus-and-built-a-platform-around-it-082f56efac0d
- canonical_url
- https://medium.com/@modpackqt/i-stopped-fighting-modbus-and-built-a-platform-around-it-082f56efac0d
- author_url
- https://medium.com/@modpackqt
- status
- ok
- fetched_at
- 2026-06-24 04:09:36