RFID voided because BarTender is encoding to User Space memory when the chip doesn't have any (EPC Gen 2 RFID only)
Symptom
When printing to an RFID tag, the RFID is actually voided because BarTender is attempting to print to a user space where the chip itself does not have one. A Monza R6 EPC2 chip is an example of this.
Fix/Answer
Background information
EPC Gen 2 chips typically write to memory spaces. These are blocks of hex characters designated within the RFID chip itself to hold specific types of information.
- EPC Memory holds the actual encoded data. Generally this is 96 or 128 bits. You can think of it as the license plate on a car. It holds the identifying information for the RFID chip.
- User space can hold other information including custom user data (like a date or ID) or a security password that will encode the object or completely kill the chip.
- There is also TID memory, but generally we can leave that one alone.
If you are looking at the printer code, you may see more than one line of RFID encoding. Here is an example in ZPL:
^RFW,H,1,2,1^FD2C00^FS
^RFW,H,2,10,1^FD47303030303033376A79^FS
The first line encodes 2 blocks of hexidecimal characters and is considered the User Space
The second line encodes the EPC Memory.
How to check if the chip has User Space or not
All RFID chips have a spec sheet. These can generally be found in the paperwork with the cards or online. This spec sheet will tell you what the size requirements are for the EPC memory space as well as if the chip allows for User Space. Here is an example from a Mona R6 tag chip:
Highlighted in yellow, the spec sheet specifically says there is no User Space available, so we need to tell BarTender not to send encoding data for this memory space.
How to alter the encoding in BarTender to skip User Space encoding
Fortunately this fix is relatively easy. In the RFID Properties dialog, select the RFID menu header then click on the [Encoder Options] button. On the "EPC Gen 2" tab, uncheck the "Write Protocol Control" checkbox.
BarTender will no longer encode to User Space memory