No. 5 is alive! Latest release of D2000 SCADA has many improvements

Veronika Dubovcová

September 19 2019, 5 min read

We are back after the short summer break with the brand new release of D2000 V12.0.61.u5. This version is available online for Windows, Raspberry Pi and Linux (exclusive version on demand). What are the most valuable changes? Instead of fixing few bugs, our developers made a lot of improvements and new features. Work easily and faster with our latest release of D2000 SCADA!

Download D2000 SCADA V12.0.61.u5

List of improvements and new features is quite long! Let's see what is new.


The opening of a configuration dialogue for the configuration of structured variables took too long. Currently, the time for opening is not dependant on the size of the structured variable.

Object information had been extended by UUID of the object and time of the last modification of the object.

Adding an atribute for detecting a "blocking alarm" which defines if object is blocked.

After saving an object in CNF, if unknown objects were used, the user was informed only of the first one. The others were not displayed. Correction extends the number of displayed unknown objects to a maximum of ten.


In the Johnson Controls N2-Bus protocol, support for TCP-IP/TCP line has been added. Multiple names/IP addresses separated by a semicolon or comma can be entered for support of redundant configurations with multiple PLCs or multiple Moxa NPort serial servers in TCP mode.


In Modbus Server protocol, support for 32-bit signed/unsigned values (little/big endian) has been added. The configuration of these types is identical to that of the Modbus Client protocol, i.e.
L - Unsigned long (4 bytes = 2 registers) - two registers with Address and Address+1 are read, unsigned and transmitted as big-endian
Ll - Unsigned long (4 bytes = 2 registers) - two registers with Address and Address+1 are read and transmitted as little-endian, unsigned
S - Signed long (4 bytes = 2 registers) - two registers with Address and Address+1 are read, signed and transmitted as big-endian
Sl - Signed long (4 bytes = 2 registers) - two registers with Address and Address+1 are read and transmitted as little-endian, signed

In IEC101 (Master, Client, Balanced) protocols, the "System Redundancy: Manages A Status Address" link parameter was added to allow to ignore values from an inactive control system (SystemA or SystemB) on a system-redundant line (SerialOverUDP System&Line Redundant). This parameter copies the behavior of the Telegyr 809 Server protocol parameter with the same name.

In the KOM process, a modification was made for the OPC UA protocol - after changing the I/O tag configuration, a request for reading the current value is generated.


It is able to access the current values of objects that are loaded within the current page by the actions LST_CREATE, LST_GO_NEXT, ... The action ON CHANGE reacts to changes in object values. When the list is closed, or when page number is changed, only the most recent values are accessible and the ON CHANGE action stops responding to value changes.


In the D2000 Archiv process, protection of write actions in the script has been improved (UPDATEARCHVAL, INSERTARCHARR). Correct handling of a case where a user tried to write to a structured archive as if it were unstructured (column and row equal to 0) was implemented. When unhandled, this operation could cause the archive to end with an error.

A new configuration parameter OldValIgnoreAge lets you ignore values older than the specified time (in hours). The parameter can be set at runtime with the SET_OPTION command. If the debugging category DBG.ARCHIV.IGNORED_VALUES.OLD is enabled, the information about discarded value is logged in the file.


In the arcsynchro utility, support for the /STPG parameter was implemented. This parameter allows you to read data from PostgreSQL depositories. The parameter can be used e.g. when migrating PostgreSQL depositories.

A new parameter /UX was implemented in arcsynchro utility.
This parameter enables to synchronize data from older D2000 applications (e.g. pre-UTF8 D2000 version 8.0) without need to upgrade the old archive database. This is convenient e.g. when preparing a migration to a new D2000 version using a different database platform for D2000 Archiv.


We did a speed optimization of opening display palettes.


It wasn't possible to recognize normal and critical alarm. New attribute was added to allow this.


In the D2000 DBManager process, experimental support was added for PostgreSQL column with binary data (BYTEA type) that stores strings in UTF-8 encoding. Such data can be read into a text column (with a maximum data size of 4000 characters by default, which can be set with an existing DBManager parameter to set the maximum string size - /DBD).
A string in UTF-8 encoding must begin with three bytes 0xef 0xbb 0xbf (so called Byte order mark - BOM)


In the gateway client process (gtwcli), the /NOINV start parameter has been added, affecting behavior in transparent mode.
This parameter disables invalidating values of objects that are not found on the side of gateway server.

We also fixed some bugs, it can help you in your work with D2000. If you met any of these problems, they are solved now!


Popup menu opened after right-clicking was wrongly located. The setting of the scheme segment (when enlarging it) was happening in a different place as was the mouse location.

Correction of an error when the value of the connected variable was set to MyValue (internal identifier of a graphic object) by moving a mouse above the graphic object. The setting is allowed only by clicking on the object.


In the OPC UA protocol, the KOM process crashed when browsing if there were different CNF/KOM architectures (32-bit CNF and 64-bit KOM or vice versa). Patches for both CNF and KOM process must be applied.

An issue was corrected in the Onesoft Devices protocol for SoftControl devices. The error was in processing of the default values of parameters "Begin of Write Block" and "End of Write Block".
Workaround was possible - to change the default parameters 157 resp. 284 to 156 resp. 285.


In process D2000 KOM, a bug that caused memory leaks when saving lines and stations was fixed.


The values in the rows of the structured variable defined in the context of the schema to which the SET BIND action was applied had bad values.


In the cfgsynchro and cfgsynchroauto utilities, a bug was fixed that caused a synchronization error on PostgreSQL platform, if there was a line with "Local Port" greater than 32767.


Fixed D2SD.insertRows for an empty structure.


The error occurred after switching redundancy so. Periodic calculated points have not been recalculated. The error occurred randomly.


Vectors, scenarios, and groups used in EDA-L script might have been wrongly cached as non-existent if there was no database connection during script compilation.


The interface randomly crashed according to the intensity of usage. The error appeared in the interface on 24th of May, 2018 when functions PrintCurrAllocations and EnableMemDebug were implemented. The error is in R39, R60, R61 versions for objapi.dll after 24th of May, 2018 (including).

Subscription was successful

Thank you for submitting form.

Image Description

Your message was successfully sent.

Thank you for submitting the form.

Image Description

Your message was successfully sent.

Thank you for submitting the form.

Image Description

Your message was successfully sent.

Thank you for submitting the form.

Image Description