Driver

Universal Device Driver (UDD)

Pricing Options: Contact Us
Contact us to learn more about pricing options. Contact Us
Pricing Options: One-year Term

Product Overview

The Universal Device Driver accelerates creating user-defined custom driver profiles using Javascript enabling greater visibility to Tier 2 and Tier 3 niche manufacturing devices including barcode readers, weigh scales, various sensors and RTUs. The introduction of a self-describing and generic development framework and scripting engine gives the writer flexible control over managing driver aspects like basic communication types as well as build and parse messaging.

Users need a basic knowledge of Javascript, Ethernet based protocols, the protocol manual, and the device to get started. OPC and other proprietary client interface technologies are handled within Kepware, simplifying client-side communications.

  • Support for solicited (request-response) TCP Profiles
  • 1024 total channels - one device per channel
  • English

6.13.250

1/26/2023

  • Fixed an issue where data was not being handled for larger tag counts using unsolicited communications.

6.12.325

6/23/2022

  • Added support for UDP protocol in client mode. See help documentation for more information on how to develop UDP profiles.
  • Added support for UDP server mode. See help documentation for more information on how to develop UDP profiles.
  • Fixed an issue that could cause data loss in rare cases.
  • Fixed a timing issue that could cause the user profile to receive an empty tag request when adjusting the Scan Rate of an active tag.
  • Removed a redundant network adapter setting from the configuration. The network adapter selection is now available only in channel settings.
  • Updated third-party components.

6.11.764.0

5/16/2022

  • Updated third-party components.

6.11.718.0

12/21/2021

  • Updated profile version to 2.0.
  • Deprecated support for profile version 1.0.
  • Made timing settings user configurable for connection timeout, request timeout, and retries.
  • Added support for auto-demotion.
  • Added the required functions “onTagsRequest” and “onData” to enable new protocol types, including unsolicited and pub/sub. See help documentation and template scripts for more guidance on implementing profiles with advanced functionality.
  • Renamed the profile function “GetDriverInfo” to “onProfileLoad” to more accurately reflect the event that causes it to be executed.
  • Added support for inbound socket connections from remote clients, configured via the “onProfileLoad” function.
  • Renamed the profile function “ValidateAddress” to “onValidateTag” to more accurately reflect the event that causes it to be executed.
  • Removed the “BuildMessage” required function to support new profile functionality.
    NOTE: Existing profiles using “BuildMessage” should leverage the new “onTagsRequest” function instead.
  • Removed the “ParseMessage” required function to support new profile functionality.
    NOTE: Existing profiles using “ParseMessage” should leverage the new “onData” function instead.
  • Added the internal functions “initializeCache”, “readFromCache”, and “writeToCache” to facilitate tag cache management. See help documentation and template scripts for more guidance on leveraging this functionality.
  • Updated example scripts to reflect the change to profile version 2.0.
  • Added profile templates that describe the events a profile writer should handle to implement support for several communication models.
  • Added event log messages to provide more context in the event of a failure.

6.10.623

2/23/2021

  • Initial release of this driver supports customer-defined device protocols using TCP/IP solicited communications to allow data collection from diverse devices.
  • Added the Profile Library Plug-In to support the Universal Device driver. 

Protocol Requirements

In order to create a profile, you must first obtain protocol documentation from the device manufacturer. Many hardware vendors will provide the protocol documentation with the device or will post it as a PDF on their website.

Installing UDD adds three new components to the Kepware server: Profile Library Plugin, Universal Device Driver and the Script Engine Service.

UDD Profile Example Repository

Disclaimer

Universal Device Driver installations contain sample profiles (js files) for the user to access and are included in the Kepware install directory.

All example code is provided by Kepware and contributors “AS IS” and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall Kepware or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage. Kepware disclaims responsibility for any errors or omissions arising in connection with engineering in which its software, information, or assistance is used. Questions with regard to example code or application development fall under the category of application assistance and not product support. By downloading and using the example code, you are stating that you have read, understand, and agree with the terms and conditions outlined in this disclaimer.