Encoding RFID Tags: 3 Things to Know
Posted by Suzanne Smiley on 24th Mar 2017
All UHF RFID tags are delivered from each manufacturer with a string of characters already encoded to the EPC memory bank. However, just because the EPC memory for each tag is delivered encoded, that doesn’t mean the tag’s memory shouldn’t be rewritten when the tag is being deployed. In fact, in many applications, the EPC memory needs to be rewritten as tags are deployed; the article below explains why.
The Importance of Encoding
Some UHF RFID tags are delivered from the manufacturer with a unique, randomized number on the EPC memory bank; however, many shipments are delivered where each tag has the exact same EPC number.
RFID is used to uniquely identify items; so, when a tag is assigned to an asset, person, or item, each tag ID should be unique. For example, if two identical red cars are on a lot (i.e. only the VINs are different), each must have a tag with unique EPC numbers so they be differentiated from one another. If there is no guarantee that a EPC number is unique from the manufacturer, the tag must be encoded with a unique number before deploying it.
Whether the EPC memory bank is delivered encoded with a unique, or serialized, number depends on the tag’s integrated circuit (IC), or chip.
Tags that ARE encoded with a unique, randomized EPC number can potentially be used without re-encoding them because the chances of repeating that number are slim to none. For example, the EPC number on an Alien tag is created by using a combination of the IC’s wafer ID, wafer position, as well as a portion of the latter 35 bits of the TID number. Together, these elements create a unique 32-bit serialization factor at the end of the EPC number.
Tags that are NOT encoded with a unique, randomized EPC number must be re-encoded before use. Some tags are sold with every tag on the roll having identical EPC numbers; others have purely randomized EPCs that are not guaranteed unique.
- Determine if your tags have a unique, randomized, or serialized EPC number. This can be done by checking the IC specifications of the tag.
What to Encode
Regardless if the tag has a unique EPC or not, there are a few reasons to re-encode the EPC number with unique information. Below are a few common scenarios.
- Encode the EPC number as an item’s serial number or unique product number
Working with an item’s serial number or unique product number helps to cut down the complexity of associating two, seemingly random numbers. This is commonly done in race timing applications by encoding the runner’s bib number as the EPC number, or, in inventory applications, by encoding the item’s unique serial number.
- Generate an EPC number per one of the specifications devised by GS1
GS1 devised specifications called Identification Schemes in order for UHF RFID to be universally compatible for global trade. These schemes explain how to encode the EPC number depending on the item and use of the item. Each scheme defines the number of bits overall, and within a specific section of the string. Different segments that form the EPC number include the Header, Filter Value, the GS1 Company Prefix, Item Reference, Partition, and Serial Number. The most commonly used Identification Scheme is SGTIN-96 which stands for Serialized Global Trade Item Number, 96-bits.
- Encode the EPC incrementing from “…1”
Incorporating header numbers and/or leading zeros and incrementing “from one” (or some beginning number) can be advantageous in many applications where other numbering schemes don’t fit. This encoding scheme is common for applications that don’t require specific numbers or product information available on each RFID tag.
- Determine which of the above encoding styles will best fit your application
Conversions – Bits > Hex > ASCII
Bits are basic units of information and are what is being transmitted between the reader and the tag. Bits are coded in strings of 4, using only ones or zeros. Overall, using strings of bits to communicate data is referred to as Binary Coding. Below is a string of bits.
0010 1101 0100 1001 0100
When a tag’s specifications indicate that its EPC memory bank has 96 available bits, it means that a combination of 96 ones and zeros are backscattered to the reader. Below is an example of a 96-bit string.
0100 1111 0100 0010 0010 0010 0111 0101 0011 0011 0100 1000 0011 0101 0100 0010 0011 11110101 0011 0010 1100 0011 0101
Understanding bits is the first step in learning about the two most common encoding formats for UHF RFID tags – Hexadecimal and ASCII.
Hex – Hex, or hexadecimal coding (also called base 16), is a method that utilizes only 16 types of characters - letters A-F and numbers 0-9. Each hexadecimal character represents a string of four bits. Below is the same string of 96-bits above, represented in hex.
0100 1111 0100 0010 0010 0010 0111 0101 0011 0011 0100 1000 0011 0101 0100 0010 0011 1111
4 F 4 2 2 2 7 5 3 3 4 8 3 5 4 2 3 F
0101 0011 0010 1100 0011 0101
5 3 2 C 3 5
The entire string in Hex: “4F422275334835423F532C35”
- A 32-bit memory bank can hold 8 hexadecimal characters.
- A 64-bit memory bank can hold 16 hexadecimal characters.
- A 96-bit memory bank can hold 24 hexadecimal characters.
- A 128-bit memory bank can hold 32 hexadecimal characters.
- A 256-bit memory bank can hold 64 hexadecimal characters.
ASCII – ASCII, or American Standard Code for Information Interchange, is an encoding method that uses 128 specific characters, each represented by two strings of four bits. ASCII can represent the entire alphabet (lower case and upper case), numbers 0-9, as well as some special characters, such as asterisks, question marks, and parenthesis. Below is the same string of 96-bits above, represented in ASCII.
0100 1111 0100 0010 0010 0010 0111 0101 0011 0011 0100 1000 0011 0101
O B “ u 3 H 5
0100 0010 0011 1111 0101 0011 0010 1100 0011 0101
B ? S , 5
The entire string in ASCII: “OB”u3H5B?S,5”
- A 32-bit memory bank can hold 4 ASCII characters.
- A 64-bit memory bank can hold 8 ASCII characters.
- A 96-bit memory bank can hold 12 ASCII characters.
- A 128-bit memory bank can hold 16 ASCII characters.
- A 256-bit memory bank can hold 32 ASCII characters.*
*Of note, a tag's EPC memory is ALWAYS encoded using hexadecimal format. So, if ASCII characters are desired, an ASCII - hex conversion formula must be used when encoding to and reading back from the RFID tag.
- Determine which encoding format is best for your application - hexadecimal or ASCII.
*Note - this table only includes Hex and Binary to ASCII characters
For more information on encoding UHF RFID tags and common encoding methods, contact us or comment below.
For more information on all things RFID, check out our RFID resources page and our YouTube channel.
To learn more about RFID tags, check out the links below!