Modbus 2 History

Modification history of Modbus2 driver

Modifications of the version 2.3.001

This version is supported by PG5 1.2

Modifications up to 2.3.011

Various bug fixing. Please do not use intermediate versions from 2.3.002 to 2.3.10.

Modifications for the version 2.3.012

New function Slave mapping which allows to re-map Modbus function and address ranges, can lock the access to specific variables and select the values format in some address ranges.

Support TCP+UDP at the same time in Modbus Slave.

Accept Master+Slave in same CPU.

New Modbus address option 'External' for runtime adjustable address and 'S-Bus' to use the S-Bus configured address.

Modifications for the version 2.3.015

Function 6 removed in FBox Send Float.

Slave :  Wrong words swapping in Fp and Int32. Fixed.
            Rx 32 bits and Fp wrong walue stored (16 bits lost). Fixed.

Map Slave did corrupt address display in Link Fbox. Fixed.

Assembler error in FBox Send Int/Float with address 20'000. Fixed.

Modifications for the version 2.4.001

The versions can only be used with PG5 versions 1.2 and 1.3.

New : Link RS Master now available.

New : Link NG-Web now available.

Modifications for the version 2.4.003

New option RS485 Short timing in Master and Slave RS Link. Needed for fast Master like PCD2.M480

Channel 6 supported in Master and Slave RS Link.

Assembler error with FBox Virtual Slave. Fixed.

Modifications for the version 2.4.100

Slave Link RS : Option RS/TCP removed. Option ASCII added.

CRC calculation restored with old code (faster if DB < 3000). Code expanded in macro (no more FB).

Master and Slave can now be used in the same Fupla file.

The Modbus Slave function now supports several serial lines in the same PCD (not yet OK for Master).

Modifications for the version 2.4.101

Link error : invalid FB parameters. Fixed.

Modifications for the version 2.4.102

FW problem with Modbus TCP. New FW use 8 flags instead of 5. The Modbus Drive has been adapeted to solve this problem.

Do not use former versions with Modbus/TCP !

Modifications for the version 2.4.106

Send Integer, F6 : a Warning is now issued if more than 1 register is specified. Only 1 register is sent with function F6.

Assembler errors with FBox S-Bus Gateway. Fixed.

Assembler errors with FBox SLink-IP and option Station=External or S-Bus config. Fixed.

Assembler errors with FBox Map Slave and port other than 1. Fixed.

Assembler errors with RCV/SND Binary functions.. Fixed.

Modifications for the version 2.4.109

New SEND, RCV and Slave Station Indirect FBoxes. Please read carefully all recommendations in the Help file before to use these FBoxes.

Master : New Error code 36 for invalid function (instead of <91>) or if Bin FBox passes a function code for numeric data or vice-versa.

New FBoxes Master and Slave RS Adjustable (runtime adjustable baudrate and bits settings). New FBox to define baudrate and bits from inputs.

Error with Link IP on PG5 1.3 (IPSlot changed to IPChannel). Fixed.

Slave Link FBox : The option Station = External did not work. Fixed.

Modifications for the version 2.4.112

The use of the Gateway S-Bus with the Slave function had several errors with floating point and 32 bits values. Fixed.

Modifications for the version 2.4.113

New FBox Slave Link IP with adjustable Idle disconnect time. This version is necessary if you encounter the problem of dead-locked IP module (it is actually a problem of the FW on the IP-Module).
To avoid this problem, use new the Slave Link IP Fbox of this version and set the Idle disconnect time to a higher value (e.g. 60 sec instead of 10 sec).

Modifications for the version 2.4.114

Bit settings with 2 stop bits added in Master and Slave RSxxx.

Modifications for the version 2.4.115

Correction in Virtual Slave : 
- The Write function 6 and 16 did not work correctly.
- Assembler error if channel was not = 1.

Modifications for the version 2.4.200

In Master TCP the Station can now be an IP address (no need to create a node for external systems).
Allows to place several Master Driver in the same PCD.
Channel is now a virtual channel in range 1..10 (not anymore related to the channel of the HW configuration).
Support high baudrates 57600 and 115200 also as indirect settings.

Station indirect
- New FBox with Stn output for better synchronization.
- Station change now abort all pending com's on TX/Rx FBoxes.
- Station change is now made at cycle begin (at station FBox)

Modifications for the version 2.4.300

New Fbox Multicast with priority on Multicast add (add 0).
New option in Master and Slave RSxxx : RTU Fast. Uses CSF for faster CRC calculation. Need new FW !

Modifications for the version 2.5.002

Minimum version for PG5 1.4
The version 2.5.001 must be replaced by 2.5.002

Modifications for the version 2.5.008

Assembler error with FBox 'Master-Link RS Adj' and 'Slave Link RS Adj' on PG5 1.3 and 1.4. Fixed.

Assembler error with FBox Send/RCV indirect. Fixed.

Master and Slave Link RSxxx : New option Channel 0 PGU with auto recovering after used with PGU cable.

New Map Slave FBox with Station option (Intern/Extern/S-Bus Config). So the Map Slave FBox follows the Slave Application Fbox when changed in runtime.

The Slave Application now supports registers up to 16383 when running in PCD2.M480 or PCD3.

The support of registers above 4095 needs at least PG5 1.3.

Access to registers above 8191 needs at least the following firmwares :

 - PCD2.M480   $16

 - PCD3              $03

Problem with TCP Master and several slaves :

On PCD3, it is not possible to make successive connections to several Slaves. It is a FW restriction and no new FW are currently available. It may works if the activation of the successive slaves is made slowly, one by one (e.g. one each 10 sec).

On all systems, when a Slave is not responding, the following connection to another slave may fail.

This last point is now fixed with the Modbus library 2.5.008 except for PCD3.

Modifications for the version 2.5.009

The access of 32 bits and floating point values did not anymore works in the version 2.5.008. This error is now fixed.
When register and Timer/Counter addresses are checked and converted, the priority is now changed as follow :

1)      Floating point offset

2)      32 bits offset

3)      Normal register range (was checked first in former version)

This allows to use offset below 16’535 (for systems which disallow Addresses > 10’000) even when the valid registers range is up to 16’535.


In some rare cases this can cause incompatibility with existing program.

Example : Offset 4000 was ignored for register 4000 to 4095. now the offset will apply.


Modifications for the version 2.5.010-011-012

The Function Map Slave now also accepts register addresses up to 16383.
Some assembler errors fixed.

Modifications for the version 2.5.013.
Don't use this version anymore!

Avoid warning at download on PCD4.M17x. The min FW version for Modbus TCP on PCD4.M17x is 010.
Mobus RTU and ASCCI, Master and Slave now support the channels 1xx on modules PCD3.F2xx with the restriction: Baudrates>9600 may not work properly. Minumim FW version is $26.

New input Sasi on function Master and Slave Link RS Adj. It allows you to de-assign and re-assign the port in runtime.

Modifications for the version 2.5.014.
Don't use this version anymore!

Errors fixed:

Diag errors are endless counting on PCD3 systems.

Master+Slave RS Link caused assembler error with baudrates > 9600.

Modifications for the version 2.5.015.
Don't use this version anymore!

Errors fixed:

With Slave Link IP, the channel 9 was not accepted.

Assembler error with Master Link IP on PG5 1.3.

Modifications for the version 2.5.018

The following fatal bug has been found:

With Modbus TCP and UDP, Master and Slave, no communication is working but the driver doesn't show any error. The error exists in version 2.5.013 – 014 – 015 – 016. Do not use these versions anymore. Please update to versions 2.5.200 or up.

Modifications for the version 2.5.019

Slave : Writing to IO did write on Flag after bit 15. Fixed.
Slave : Writing to F and IO did take 16 bits per reg in buffer instead of 32. Fixed.
Slave : F15 write F (or IO) did write 1 more than in request. Fixed.
Do not use these versions anymore. Please update to versions 2.5.200 or up.

Modifications for the version 2.5.020

Avoid wrong warning message on PCD4.M170.

Modifications for the version 2.5.022

Link RS. SASI error was replaced by <4> after clear error. Fixed.
Running Modbus TCP Master+Slave caused error 22-Reception in Master. (Slave response was sent to wrong channel) Fixed.
New installer 1.3.012

Modifications for the version 2.5.023

Master: Avoid CPU Error LED on PCD3 with Connect timeout (problem of CSF disconnect)
New option:Ethernet=Slot1/2 in Master and Slave Link IP.
Master ASCII may show Timeout instead of returning the received values.

Modifications for the version 2.5.024

Virtual slave did not accept the correct addresse range with 32 bits reading.Fixed.

Modifications for the version 2.5.025

Assembler error when using Serial link with Modem. Fixed.

Modifications for the version 2.5.026

NG-Trace implemented for master.

Modifications for the version 2.5.027

Assembler error on Rcv/AutoSnd with address > 16k. Fixed.
Master RSxxx: Default min replay delay acc to baudrates used if Fbox param is set to <=1.
SASI error on PCD3, port 1 not shown but no activity in driver (Tx busy sometimes locked high).
Now diplayed as timeout (with Arg=1 if Tbusy high).
Modbus serial on PCD3, tbusy drops to fast (tele still not sent).
            ->Restart min request timer while waiting slave response.
Flag stop (freez mechanism) implemented (Supported by new PCD3 FW).
Master TCP:
            Problem of locked station on PCD3 solved in FW 1.08.10.
            Do not repete connect and Tx (repetition is made by TCP socket).
            Applyed timeout is now : User Timeout*repete factor.
            When no more Station is enabled, send a active disconnect.
            New paramter : Idle disconnect for Master (usefull in case of connection break)
                        Till now was fix at 10 sec.

Modifications for the version 2.5.028

Master Link RS and IP:
            - now accept timeout from 0.0 to 10.0
            - Timeout 0.0 replaced by 50ms.
            - Removed adding 100ms on timeout, but..
            - ..Add a flag to wait one more cycle after end of Tx.
            Bit settings = 'Default' removed (did not correspond to the default).

Modifications for the version 2.5.029

Assembler error with Fbox Master Link RS Adj.
  Problem to compute Min replay delay.
              Now assums 9600.
              Other bauds must be adjusted manually.
            Slave RSxxx: Def min replay delay acc to baudrates (same as for Master.

Modifications for the version 2.5.030

Master/IP now accept to send read requests with station 0 (not necessarly a broadcast on TCP).
Master: FB calls and some station parameters published as system symbol.

Modifications for the version 2.5.031

Tx/Rx bin direct now accept address > 16k, up to 65k (Integer+Float was OK).
Station indirect with IP did only pass the lower word as node ID.
->Now pass full 32 bits IP address.

Modifications for the version 2.5.034

Slave IP now also supports station 0 as 'normal' slave station if range starts with 0.

Modifications for the version 2.5.035

Master, RCV+SND Fboxes: New format 16US->32 (RCV) et 32->16US (SND).

Modifications for the version 2.5.036

Slave TCP: Internal error 90 if too many data in a request.
            -> Now error = Oveflow (E_over).
            -> New error = Rx data (E_Rx) if unexpected data reception.
Master: Function 7 request was too long. Fixed.
Reported problem server: Impossible to reconnect TCP after server disconnect.
FW problem with V1.08.10..1.08.52, 1.10.06, 1.11.00. Fixed in FW V1.10.08

Modifications for the version 2.5.050

Slave Application : New option Offset=1+2*i (skip each 2nd address)
Master/Slave Link NG-Web removed.

Modifications for the version 2.5.051

Package that can be installed on PG5 1.4 and 2.0 (with Intaller 2.0.005)

Modifications for the version 2.5.054

Problem with 2 Slave functions on different IP modules (Slot B1 and B2). Fixed.
Problem with 2 Master on different IP modules (Slot B1 and B2) Fixed.

Modifications for the version 2.5.058

Master+Slave: Implementation of Shared ODM method PG5 1.4
(can share the IP-Module with EIB/Net Driver)
RCV Integer Indirect supports local indirect address.

Modifications for the version 2.5.059

Assembler error with virtual slave (missing f_sk flag on CFB MOD__BUS.FB_LOADD). Fixed.

Modifications for the version 2.5.200

Shared ODM, method PG 2.0 implemented.

Modifications for the version 2.5.201

Slave: F23 with 0 data bytes to write shows error '26 Len'. Fixed.
Master: F23 can be activated in RCV Fboxes (read only).

Modifications for the version 2.5.202

Assembler error with Slave Link RS (since version 2.5.201). Fixed.

Modifications for the version 2.5.202

Avoid repetitive App timeout error.

Modifications for the version 2.5.203

Master: Wrong internal array definission. Fixed.

Modifications for the version 2.5.204

Map slave: Assembler error with address > 16353. Fixed.
Format Fp*10<->Int 32 implementd In Send and Rcv Fboxes (SnD/Rcv Auto excepted).

Modifications for the version 2.5.205

Communication locked after slave disconnected. Fixed.