Modbus application with delphi


Thread Starter


I'm trying to develop a simple program using delphi to send receive data between PC and a device which is using modbus RTU protocol.

The device is connected to my COM1 port. What should i send to device to read registers? Is there anyone who skilled about MODBUS RTU and delphi? Any comment will be helpful. thanks in advance.

You may want to take a look at ModLink, a set of native Delphi VCL components which was designed specifically for this purpose. It can be found here:

It's a ready to use solution with a very short learning curve. With ModLink you can simply create both the Modbus client and the server side as well (you asked only for a client side though). It supports both RTU and ASCII serial transmission modes and a plenty of other useful features (for a full feature list please refer to the home page).

Please visit the home page mentioned above where you can download the fully functional evaluation version and also the precompiled demo application that comes with full source code to be explored in order to get familiar with ModLink.

Should you have any questions, feel free to contact me directly by email ([email protected]).

Best regards,
Ivo Bauer

Jeroen Plaisier


Have a look at Async Pro (Apro) serial communications package for Delphi. It gives you full read/write control over the serial com port, event driven. Should not be a problem to implement RTU modbus using the package.

The components are now under open source at

Jeroen Plaisier