Driver Revision History

<< Click to Display Table of Contents >>

 

Driver Revision History

Version

Date

Author

Comments

4.0.58

09/02/2025

M. Ludwig

Driver updated to IOKit library version 3.0 and Visual Studio 2022 (Case 37954).

4.0.57

10/12/2024

M. Salvador

Created a Stop Listen After Accept option, which is used if the Listen for connections on port option is enabled on the Ethernet tab. Then, this Driver no longer remains in Listen mode after receiving a connection (Case 36661).

This Driver now interrupts the waiting for responses if it is being stopped (Case 36477).

4.0.53

20/03/2024

M. Salvador

String readings (objects 110 and 111) now work correctly (Case 34740).

Class 0 was not being performed sporadically after a device restart (Case 33970).

Added a protection in case this Driver receives a message with a size smaller than expected (Case 33840).

Resolved a GPF (General Protection Failure) that could occur when adding and removing events very quickly (Case 35489).

4.0.45

29/03/2022

M. Salvador

Implemented variations or objects 3006, 3206, and 3208 (64 bits) (Case 32404).

Now, when a polling Tag or event request (class 1, 2, and 3) cannot access the communication channel because it is occupied with another communication, in case of an unsolicited one, this is not considered as a communication error. Furthermore, this Driver now waits for the completion of fragment reception before allowing new messages to be sent, always prioritizing the handling and confirmation of unsolicited ones, which was already performed before, only a new collision protection was added (Case 31112).

Link Status request can now be correctly disabled (Case 30482).

Implemented support for object 5201 (Time Delay Coarse) (Case 30148).

Fixed overlapping texts in the configuration dialog box (Case 29115).

4.0.40

27/11/2019

M. Salvador

Fixed the handling and attempts to clear Device Restart - IIN1 Bit 7 bit (Case 27925).

C. Mello

Driver ported to Visual Studio 2017 (Case 27493).

4.0.39

04/23/2019

M. Salvador

Added the Accept Msgs After Timeout and Accept Msgs Out of Order options on the Other tab (Case 26541).

Adjustments to the quality value after receiving an integrity (Case 26525).

Adjustments to the quality value after changing the IP address of a redundant Slave (Case 25830).

4.0.36

08/08/2018

M. Salvador

Added the Command Max Age (s) option to the Other tab (Case 24231).

Adjustments in the sequence of Select and Operate messages (Case 24230).

Fixed the handling of Data Link messages initiated by a Slave (Case 22797).

Added the Block Unknown Slaves option to prevent sending messages to undeclared devices (Case 22581).

Added support for requesting integrity and changes in alphabetical order from multiple Slaves (Case 22401).

Added the Scan After Cmd option to scan events after sending commands (Case 22219).

Improved the accuracy of the minimum interval of -6 and -7 sync Tags (Case 22105).

Added the Min Delay between Messages option for communication (Case 21534).

Improvements in handling messages coming from a Slave as primary (Case 21813).

Adjustments in handling Class 0 to prevent conflicts with unsolicited messages (Case 21627).

Added support for object 41 variation 4 (Case 21184).

Fixed the operation of object 100 variation 1 (Case 20963).

Improvements in the process of physically reconnecting communication (Case 20962).

Improvements in event processing (Case 20883).

Adjustments in updates of status Tags for the Offline mode (Case 19395).

Added a writing command via Tag with the N2 parameter equal to -15 for asynchronous requests for a Status Link message to Slaves (Case 19155).

Improved control of time-out interval and integrity request for Class 0 (Case 18956).

Added a minimum time parameter between scans of pending events (Case 18070).

Adjustments to the Link Status Tag, N2 parameter equal to -10, for asynchronous requests of a Status Link message to Slaves (Case 17926).

4.0.21

10/27/2014

M. Salvador

Added an option for syncing via Ethernet in a Tag with the N2 parameter equal to -7 (Case 17569).

Adjustments in the processing of Tags with multiple Slaves (Case 17518).

Added support for String-type objects 110 and 111 (Case 16920).

Fixed problems with the addressing of Slaves for event Tags (Case 16919).

Fixed a vulnerability from ICS-CERT VU-028282 notification, according to tests with an emulator for formatting errors in DNP Aegis Fuzzer messages (Case 16590).

4.0.17

05/29/2014

M. Salvador

Added support for objects 4003 and 4103 (Case 15232).

Migration to Visual Studio 2013 (Case 16392).

Migration to IOKit library version 2.0 (Case 13516).

Allowed negative values in the Extra Sync Offset option on the DNP tab.

Fixed timers for checking events and Class 0 when computer's time moves back in time, that is, does not use the etGetTimeDouble method anymore.

Generation of syncing files of the last timestamp (Case 13528).

Performance improvements when using thousands of simultaneous Drivers (Case 13117).

Fixed the behavior when this Driver only contains event Tags with their callback option enabled (Cases 14040 and 16088).

Bypass Reset of Remote Link on the first unsolicited communication from a Slave (Case 15233).

3.2.1

05/31/2012

M. Salvador

Beta 1: Fixed Single Block Events.

Beta 2: Added support for reading object 50 variation 01. Fixed qualifiers 7 (seven) and 8 (eight). When connecting, event request is performed before Class 0 (zero).

Beta 3: Fixed a check for out-of-order events.

Beta 4: Delay time for unsolicited messages, in milliseconds.

Beta 5: Checking out-of-order events is individual by Tag.

Beta 6: Fixed a log message when there is a CRC error.

Beta 7: Fixed the quality information of Single Block Events.

Betas 8 and 9: Fixed the expected sequence number on the application layer.

Beta 10: Fixed double points on objects 3 (three) and 4 (four).

Beta 11: Tag indicating the number of frames received.

Beta 12: Writing command on object 10 variation 1.

Beta 13: Decreasing on the delay time of transmission when not connected.

Beta 14: Tag with the N2 parameter equal to -21 only informs Active after receiving a response from a Slave's Reset of Remote Link.

Beta 15: Handling a duplicated 05 at the beginning of a frame, such as 05 05 64.

Beta 16: Separated processes for sending, receiving, and checking.

Beta 17: Sending process now is synchronous with application layer.

Beta 18: Option to apply a Local Time Zone to events and syncing.

Beta 19: Option to discard out-of-order events was always applied.

Beta 20: Statistics of bytes sent and received.

Beta 21: Performance improvements when using many Tags with callbacks.

Beta 22: Fixed the handling of object 10 variation 1.

Beta 23: Released confirmation of application messages even without a Reset of Remote Link, to allow processing unsolicited messages received right after a connection.

Beta 24: Added a Tag for IIN indication (-22).

3.1.1

12/14/2009

M. Salvador

Fixed case 11020, in which a connection was considered inactive as soon as it entered an active state, due to an internal error.

Changed the library name to DNPMaster.dll.

3.0.1

11/30/2009

M. Salvador

Implemented the Read from Cache and Read Events options, which turns this Driver's behavior similar to IEC 60870-101/104 Driver.

Revised documentation.

2.29.1

11/30/2008

M. Salvador

Fixed syncing for more than one Slave on the same link.

Fixed a re-validation of points after shutting down a connection.

Fixed Block readings with a Float data type.

Fixed the message for checking events, in which the same class requested more than once in the same message.

Fixed a race condition among processes when in Select.

Option to start on Device Restart.

File collecting.

2.28.1

10/29/2006

M. Salvador

Independent reading and writing retries.

Single Block Events.

Enabled unsolicited messages when starting.

2.20.1

12/20/2005

M. Salvador

On or Off control for each address.

Active or Inactive control for each address.

Automatic Demotion control.

2.19.1

10/11/2005

M. Salvador

Improvements on the database update process.

Event reading based on class requests instead of a clock-reading command.

2.18.1

09/30/2005

M. Salvador

Internal integrity and polling system.

Fixed a freezing on values.

2.17.1

06/24/2005

M. Salvador

Added support for Toshiba Regulator devices (Case 5768).

1.0.1

08/03/2004

M. Salvador

All publications previous to revision control.