How to tune your CS108 Handheld
The Problem
The CS108 is fantastic. Day one, you open the box, squeeze the trigger, and read tags from 30 feet or more! Joy -- it'll be a breeze to take inventory.
The problem with RFID is getting to 100%. When you read 100 tags in a second, it all seems so easy. But, when you need to read precisely 103 tags consistently, it's not.
You're excited and start building your application to manage your inventory. But, once you get a few hundred tags and start analyzing the tag reads, you notice you're missing tags. It's a struggle.
Maybe you try some other handhelds. It takes a lot of time to try another handheld because analyzing data and doing a use case of scanning 1,000 tags and checking for missed reads is time-consuming. Optimizing each handheld requires expertise you can't accomplish in a few hours.
Well, guess what -- you're not crazy.
The problem with RFID is getting to 100%. When you read 100 tags in a second, it all seems so easy. But, when you need to read precisely 103 tags consistently, it's not.
The issue is tag collision.
RFID works like this:
- The RFID reader sends out a command "Pick a number between 1 and 100."
- The tags that can hear the reader all randomly pick a number
- The RFID reader then says "Based on your number start transmitting your ID to me."
- If two tags picked the same number, they will broadcast simultaneously and collide with each other. The reader will miss the tag because it can't hear two tag ID's at once.
- The tags then go to sleep, thinking they sent their ID to the reader.
That's a simplification, but basically, it's what happens. It's why you miss tag reads.
The Solution
You need to tune your CS108 to work in your environment. The latest CSL libraries (June 2020) offer some great new features: Tag Focus and Gain.
Tag Focus
Tag Focus isn't supported as part of the basic RAIN RFID standard. If you are using Impinj IC's, you can use Tag Focus to increase your read speed and dramatically reduce collisions.
Our suggested settings:
- Target A
- Tag Focus on
- Session 1 (has to use this as tag focus requires Ses 1)
- Dynamic Q
- Start tag population 50
- Dense Reader
- LNA Compression 1 / on
- RF-LNA 13db
- IF-LNA 24db
- AGC Gain -6db
For non-Impinj IC's
- Toggle A/B
- Tag Focus off
- Session 0
- Dynamic Q
- Start tag population 50
- Dense Reader
- LNA Compression 1 / on
- RF-LNA 13db
- IF-LNA 24db
- AGC Gain -6db
We found these settings work well in every environment.
Toggle A/B
The reason we suggest this is tags 'go to sleep' once they transmit. The issue of collision must be overcome.
So, what happens:
- Tag Transmits its ID.
- Tag moves to state B.
- Tag waits for some random time before returning to State A.
Toggle A/B tells the reader 'Read the tags in state A then B then A.' Essentially it forces the tags to keep waking up.
Now, this could be terrible if you had 5,000 tags 'in view' of the reader. Because the idea with 5,000 tags would be you would want the tags to stay quiet until you finish the entire inventory.
The reality is that there are so many collisions that you need to keep toggling and working your way down the list.
Frankly, if you are going to have 5,000 tags in-view, you probably want to use Impinj and Tag Focus. Focus is a much more deterministic way of taking inventory.
If all that is too much info -- take a look at Wave. We take care of all of that and deliver an easy-to-use RFID solution.
Special thanks to CSL
The team at CSL is great, and we thank them for working with us over the years to make the world's greatest RFID systems.