Data carrier write protection BIS U-4A7 IO-Link
1. Introduction
The description uses the BIS_VU_IOL_COM function block and the BIS01E4 (BIS U-4A7) to write-protect a transponder in various areas. This can be reversed in certain areas.
2.1. Memory areas
This illustration was taken from the operating instructions. It shows the memory areas and the possible lock functions.

The EPC and USER areas can be locked permanently or by password. Permanent unlocking is also possible. To do this, a bit pattern must be sent which causes the desired lock. This is described in more detail later.
2.2.1. Step 1
The transponder has various memory banks. The password is stored in the RFU. The read/write head is in the USER memory bank in the factory setting and must be set to RFU with the parameter access in the read/write head.
Index: 0x85
Subindex: 0x04
Length: 1 byte
Content: 0


2.2.2. Step 2
Command 2 of the BIS_VU_IOL_COM function block is used to write the kill and user password to the RFU memory (kill password only needs to be set if required)
Command: 2
Length: 8
Byte content: 0-3 byte kill password and 4-7 byte access password

2.2.3. Step 3
Set memory bank back to USER (see images in step 1)
Index: 0x85
Subindex: 0x04
Length: 1 byte
Content: 3
2.2.4. Step 4
The password is not yet in the parameter data of the BIS01E4. This is done by writing the password in the access password area. This means that the password is stored in the read/write head and it can write to the transponders that have been locked with this password.
Index: 0x85
Subindex: 0x02
Length: 4 bytes
Content: Access password from step 2

2.2.5. Step 5
These were all preparations to finally protect the transponder with a password. For this purpose, command 0x57 (length 4 bytes) is used in the BIS_VU_IOL_COM function block for the write protection command. The mask which area is to be password-protected must still be considered.
!!!Attention!!! Permanent lock can no longer be undone
The masks are AND linked and must be set as such in order to lock. An example of the USER area is shown in red. The same applies to the EPC. The TID is locked by default and can only be read.

The next illustration shows an example with the PLC data type of the BIS_VU_IOL_COM function block. To lock the user area, the bits shown in the figure must be ANDed.

As an example of the USER write protection with the DBsend block and not the PLC data type. This has the same effect as the previous example with the PLC data type.

The lock command can also be reset in normal write protection mode (NOT Perm Lock). To do this, set the mask byte 0 and do not set the action and execute the above command 0x57. In our example with PLC data type:

Without PLC data type via the DBsend:

2.2.6. Step 6
The head has stored a password (5678) in the access password parameter. This means that it can only read or write transponders with this password. To be able to read all transponders, the access password must be set to 0. Then it can read and write every transponder again by default. However, it can only write write-protected transponders with the same password.