IO-Link Master1.09.02
Data Storage

State Machine

The Data Storage state machine is implemented according to 11.3 in IO-Link Specification v1.1.2.

This module interacts especially with the application layer and the ISDU channel. During active Data Storage there are no other On-request Data requests allowed. The application layer checks the current state of the Data Storage before it accepts a request from the user application.

Content

The structure of the Data Storage content is defined by IOLM_SDSContent. This structure consists of a header with some Device information and the parameter content with up to 2048 bytes. This structure is held in memory for fast access if a new Device is connected.

User Interface

The Data Storage is controlled by IOLM_API_DS_eSet(). With this function the actual mode is set. Depending on the current activation state (IOLM_EDSActivationState) and mode (IOLM_EDSMode), the interaction between Device and Master is done.

With the function IOLM_API_DS_eDelete() it is possible to clear the Data Storage if it is enabled. This is only possible if no upload or download is running.

Non Volatile Storage

It is possible to store the Data Storage content in a non volatile memory. The user application has to provide a non volatile memory access with enough memory for the structure IOLM_SDSContent on each port.

During startup the content is loaded by IOLM_Port_DS_u16LoadData and stored in the internal RAM.

Every time the content has changed, the function IOLM_Port_DS_vStoreData is called by this module. The application should not be blocked for longer times and can handle this store request out of this function. If the storage is completed, the function IOLM_API_DS_vStoreComplete with the actual written size has to be called. This module requests only one store request for all ports. If there is data on multiple ports available, the requests are queued and executed if the last store is acknowledged.