SSCP protocol driver


SSCP (Shark Slave Communication Protocol) is a native communication protocol of Idekit Runtime. It is used for configuration, programming and data transfer. Idekit Studio in debugging mode, mobile application use SSCP communication protocol for connection with process station. It is also used for horizontal communication between process stations.

Platforms supported

All process station with Idekit Runtime: full support client and server.

PLC interface


Restrictions and notes

The process stations with operating system FreeRTOS have maximum number of connected SSCP clients at a time restricted to 5.
The process stations with operating system Linux have maximum number of connected SSCP clients at a time restricted to 20.
It is recommended to leave one unused connection for Idekit Studio because of service access. If it is required to connect more process stations and maximum number of connection seems to be reached, it is recommended to concentrate data to a single process station, or use ring topology. 

If integration of SSCP protocol into third party control system is required, contact technical support please. It will provide you with the SSCP protocol specification and SDK (Software Developement Kit) for C# or C++.

Communication parameters

For SSCP communication it is necessary to know the device address and access information (see below). For reading and writing of particular variable, a CommID, data offset and length are used. These parameters of each variable is exported by the editor (Idekit Studio)  to the configuration file. Please note that after variable definition change or changes in function blocks, the variable CommID is changed. The new data from the current project (.exs folder) must be imported in the editors (HMI / RcWare Vision).

Idekit Studio configuration:

Configuration Parameters - SSCP Parameters

SSCP Address - SSCP slave device address, it is preparation for SSCP communication over serial, used also for TCP communication
Number of Registrable Groups - parameter for number of registrable groups 
Number of Variables in Group - parameter for number of variables in registrable groups 
Enable TCP Server - if enabled, the device listens as a SSCP server on the Ethernet interface
TCP Server Port - TCP port number used for communication 

Enable Serial Server -  if enabled,  the device listens as a SSCP server on the selected serial interface 
Serial Server Port -  serial port number used for SSCP serial communication (function is not supported in versions to 2.2.0.X) 
Serial Port Baudrate - communication baudrate over the serial interface 
Enable SSL Server - activation of server for encrypted communication  
SSL Server Port -  encrypted communication port  

See also Controller properties

Client communication channel

It is possible to set:

Link protocol Max. Telegram Duration - how long the client is waiting for response
Pause between telegrams - time without activity between telegrams


In device properties there are communication parameters to connect another PLC:  

Device Address  -  SSCP slave device address, preparation for SSCP communication on serial bus, used also for TCP communication
Device IP address - slave IP address 
Device Port - TCP port used for communication (default: 12346) 
User Name  - user name for PLC (there are three user levels Engineering - full rights incl. configuration - "admin", Full Control - read/write - "user", Read Only  - "readonly")
Password - user password (default: rw)

End Point:

HwConfiguration - IP address which is set in Configuration -> Networking of a particular PLC 
Deploy - IP address which is set in PLC connection parameters 
Custom - IP address which is set in device properties of this device

Communication group

Creating and editing is done in the device editor. A communication group defines variables which are communicated together. In Idekit Studio   maximum 20 variables in one group are supported.  The number of groups is not restricted. It is possible to define groups for reading or writing. There is also possibility to set Write Only On Change and  Read Changes Only. Property Logical OR over Overlapped is used if values from two datapoints have to be merged into one variable. Example: OR, two bool data points, one of value 1 and second of 0. The set value of the variable will be 1.)
In the properties there is also preparation for registrable groups function.

Data point

Creating and editing is done in the device editor. Principles are the same as for other common device types, see Defining of HW variables for a communication channel.

For more information about communication between PLCs, see Access to variables from another PLC.