This service is supposed to maintain connections to a PLC device, within its configured boundaries. It also offers a common interface towards the compatible processors, to initiate a connection, and to discover the device's basic capabilities. This Connection Pool variant includes no drivers.


PLC4X has a dedicated Authentication API, which enables easy configuration, and secure usage of credentials. This requires explicit support from the Device Driver, and by the time of writing, only a handful of them support it. Please check the Driver Documentation about authentication options. There are cases, when the driver requires credentials provided as connection parameters, in which case "No Authentication" should be chosen from the menu, and the credentials must be specified as dynamic properties.

Protocol Name and Transport Name

You need to enter here the name of a loaded driver, which is defined by the driver itself. There is no conventional naming, so you need to refer to the Driver Documentation, to find out what value is correct. If there is only one driver loaded, these values do not need to be specified, because the system can pick it up automatically.

Alternatively, you can run validation with some random name specified, and you'll find all valid names listed in the validation error message.

Transport Location

You must specify the location of the device. This can vary by Transport Driver, so it can be anything from a simple IP:port, through a serial device, to a filesystem path. Please check the Driver Documentation.

Connection Parameters

Connection Parameters are essentially key-value pairs, added in a form of query string, to the connection URI.

You can specify any number of parameters, by adding them as dynamic properties on the configuration panel. These parameter names must be prefixed with 'driver.', otherwise they will be ignored. For sensitive values, like credentials, the respective option should be chosen, to avoid unexpected leak of these information.

Obtaining Drivers

To use this service, you need to supply your own drivers. You can either write one, based on the PLC4X Developer Documentation, to which you can find the link on the bottom of this page; or if the device vendor has supplied drivers, you can load those too.

If you need a standard driver to be loaded, you can obtain them from the PLC4X Maven repository, to which you can find links below. These drivers may have dependencies, please be sure to load them too. Please note that, it is not sufficient to supply the Device driver itself, you most probably also need a Transport driver too. Refer to Driver documentation, to find out what Transport Protocol it is compatible with. In most of the cases, you might need to load a standard Transport driver, with its dependencies.

PLC4X Standard Drivers

PLC4X Documentation

PLC4X Support