Placeholder

Search

Modbus Comparison

Why are there two Engiby Modbus drivers (Modbus1 and Modbus2)?

There is an historical reason. Modbus is one of the first communication driver developed at Engiby. Despite, this package is still available and supported with the latest PG5 programming tool (PG5 2.1). This performance is also due to the excellent compatibility ensured by Saia Burgess Controls for their Saia PCD® systems and the programming tools.

However, to be able to respond to new requirements and to include new features it becomes necessary to start on a new basis and redefine the driver structure. The decision to start with a new Modbus 2 package has been taken with the implementation of Modbus/TCP.

The new structure of the Modbus 2 package opens possibilities for adding new features in future versions. Consequently, Modbus 2 includes all former protocols like RTU, ASCII and adds new ones like Modbus/TCP and UDP.

The structure of the Modbus 1 Master driver is simply based on a Master Driver function and a set of Send and Receive functions.

In Modbus 2, the Driver is divided in a Link function, a Station management function and a set of Send and Rcv functions. The Send and Rcv functions refer to a Station while the Stations refer to the Link function. A big advantage is for instance that one can change the Link function from Serial to TCP and keep the rest of the application unchanged.

Why do Engiby and SBC offer different Modbus packages?

There is also an historical reason for that. Modbus is one of the first communication driver developed at Engiby. Later on, in 2009 Saia Burgess Controls has implemented the Modbus protocol in the firmware and a new library, using the FW function has been developed. The main reason to use the Saia library is to have better performance when the PCD is slave (the master function will not be faster).
Engiby continues to distribute and maintain its Modbus package to ensure support of existing application. One main reason to use the Engiby library is for the old Saia PCD® systems that do not support Modbus Saia. Further advanced features are implemented as shown in the list below. Because no specific FW features are used, the Engiby library can be extended faster to suite particular needs.
One main difference exists in the implementation of the Slave function. In the Saia fimreware implementation all defined units (including mappings) are accessible from all open channels (serial and TCP). In the Engiby version, each slave application (a unit) is directly bound to one channel. This allows you to activate different slave functions for each master (standard slave, virtual slave, gateway).

Features comparison

Feature

Modbus 1

Modbus 2

Modbus Saia

RTU+ASCII

OK

OK

OK

TCP+UDP

-

OK

OK

Master+Slave

OK

OK

OK

Multiple Master+Slave

OK
(different files)

OK
(same file)

OK
(same file)

Maximum number of Master drivers

One per serial line

One per serial line+
20 TCP/UDP

Total 4
(serial lines or TCP)

Maximum number of simultaneously open TCP connections as Master

-

1 per driver
Total 20

10 per driver
Total 26

Maximum number of Slave drivers

One per serial line

One per serial line+
20 TCP/UDP ports

Total 4
(serial lines or TCP)

Maximum number of Unit ID of slave drivers

One per serial line

254 per slave driver

10 total

Runs on "non NT-systems"
PCD1, PCD2, PCD4, PCD6

YES

YES

NO!

Support of PCD3.F2xx modules

OK
(up to 9600bds)

OK
(up to 9600bds)

OK
(check FW version)

Support of high baud rates 57,6 and 115,2 kbds

-

OK

OK

Change of baud rates and bit settings in runtime (Serial)

-

OK

IL only

Management of disconnected slaves

-

OK

-

Multicast function
(particular address used like broadcast)

-

OK

-

Remap addresses and functions
(for Slave)

-

Unlimited

10 mapping per UID

Lock access to some variables ranges (for Slave)

-

Unlimited

10 mapping per UID

Read+Auto Send on change function

-

OK

-

Avoid inter-character gaps (problem with web server)

-

OK

OK

Indirect Modbus function, number of elements, source and destination address
(change in runtime)

-

OK

OK

Virtual Slave with up to 16k registers (for DB access)

-

OK

-

Functions 20 / 21 / 23

20/21 OK
23 as slave only

20 / 21 OK
23 as slave only

-

Gateway Modbus to Modbus
(e.g. TCP->Serial)

-

On request

-

What will happen with updates and future compatibility?

New features (as shown below) are only implemented on Modbus 2. Modbus 1 must be considered as obsolete. Update for Modbus 1 or upgrade to Modbus 2 cannot anymore be ordered. Users with old Modbus 1 licenses must order a new Modbus 2 license. For PG5 2.0 and PG5 2.1 a Modbus package version 1.83 is available on request. This package uses the same license key as Modbus 2. Therefore, you can install and register Modbus 2 and keep your application with Modbus 1 unchanged. No extra license must be installed.

Read more about the Modbus 2 driver here : Modbus 2 Driver FAQ
Read more about the obsolete Modbus 1 driver here : Modbus 1 Driver FAQ

Prices of licenses and update : Modbus main page

Subject to change without notification.