Skip to content

Introduction

Version: 1.0.0

The Gurux Client driver is an implementation of the Gurux DLMS library, that allows communication with devices that comply with the DLMS/COSEM protocol, tipically system for electricity consumption meters. The component is based on the github repository of Gurux (https://github.com/Gurux/gurux.dlms.java).

The system implements a server/client paradigm: the device (a current or gas meter, for example) is the server, as it provides data that can be read/written. The driver, on the other hand, plays the role of client, as it requests and manipulates the information on the server: through the ESF framework it is possible to establish a connection with a device, request data for reading and modify them.

The DLMS/COSEM protocol also allows you to implement different levels of security more and more stringent: the differences vary from one device to another, but usually increasing security also increase the resources accessible (for example, the number of user-readable information) and possible operations (writing one or more server fields, for example).

The Gurux team provides both a client and a server example: the latter can be extremely useful to get acquainted with the protocol and the driver, which is able to communicate with this example server.

Prerequisites

  • A device/server able to establish a TCP connection
  • Knowledge of security levels and device/server access keys

General concepts

The driver plays the role of Gurux DLMS/COSEM client, and is able to communicate with those devices/servers that implement that protocol. The user is required to know the connectivity parameters of the device/server in order to communicate. If the connection is successful, it will be possible to perform read and write operations, depending on the security levels implemented by the system that provides the data. It is not necessary for the user to know in advance what resources are available: in case of inconsistencies (lack of required resources, for example) the framework will provide all the information necessary for a successful communication.