CSL CS101-2 User Manual

www.tuv.com
Report No.14018170 001
Appendix 9:
FCCID: UB4CS101C1GEN2
(Total: 213 pages, include this page)
CSL CS101-2 EPC Class 1 Gen 2 RFID Handheld Reader User’s Manual
Version 1.0
CSL: The One-Stop-Shop for RFID Solutions
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
2
1 Content
1 CONTENT .......................................................................................................................... 2
2 FCC STATEMENT ............................................................................................................ 6
3 INTRODUCTION..............................................................................................................7
3.1 CS101-2 HANDHELD RFID READER............................................................................. 7
3.2 HOW TO USE THIS MANUAL ..........................................................................................7
3.3 PRODUCT PACKAGE.......................................................................................................8
3.3.1 Basic Package Content.........................................................................................8
3.3.2 Unpacking Instructions........................................................................................8
3.4 PRODUCT SPECIFICATION .............................................................................................. 9
4 INSTALLATION.............................................................................................................. 11
4.1 DEVICES......................................................................................................................11
4.1.1 Reader ................................................................................................................ 11
4.1.2 Charger .............................................................................................................. 14
4.2 POWER UP SEQUENCE .................................................................................................15
4.3 USAGE RECOMMENDATION .........................................................................................17
4.3.1 Strap: Wrist Strap and Shoulder Strap...............................................................17
4.3.2 IO Connection....................................................................................................17
4.4 VERIFICA TION AND VALIDATION..................................................................................18
4.5 C
AUTIONS ................................................................................................................... 20
5 QUICK START ................................................................................................................ 21
5.1 READER LOGIN ...........................................................................................................21
5.2 SYSTEM CONFIGURATION............................................................................................22
5.3 S
ETUP RFID CONFIGURATION.....................................................................................23
5.4 READ TAGS .................................................................................................................24
6 DEMO APPLICATION ...................................................................................................25
6.1 INTRODUCTION............................................................................................................ 25
6.2 SPLASH SCREEN ..........................................................................................................26
6.3 ID AND PASSWORD PAGE.............................................................................................27
6.4 APPLICATIONS SELECTOR SCREEN ..............................................................................28
6.4.1 Tag Read.............................................................................................................30
6.4.2 Tag Write ............................................................................................................ 31
6.4.3 Tag Inventory......................................................................................................34
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
3
6.4.4 Tag Ranging ....................................................................................................... 35
6.4.5 Tag Search.......................................................................................................... 36
6.4.6 Tag Commissioning............................................................................................ 37
6.4.7 Tag Authentication .............................................................................................38
6.4.8 Database Management.......................................................................................39
6.4.9 RFID Configuration........................................................................................... 40
6.4.10 Scan Barcode......................................................................................................46
6.4.11 Tag Security........................................................................................................ 47
6.4.12 System Configuration......................................................................................... 49
6.4.13 Factory Defaults.................................................................................................54
7 SOFTWARE DEVELOPMENT KIT............................................................................. 55
7.1 SOFTWARE SPECIFICATIONS.........................................................................................56
7.1.1 CS101-2 RFID Libraries....................................................................................56
7.1.2 CS101-2 Demonstration Application.................................................................56
7.1.3 CS101-2 Keep Alive Monitor ............................................................................. 57
7.1.4 CS101-2 Server Side Application.......................................................................57
7.2 BLOCK DIAGRAMS ...................................................................................................... 58
7.3 APPLICATION PROGRAMMING INTERFACE (API) DEFINITIONS .................................... 63
7.4 APPLICATION SCENARIOS WITH PROGRAM SOURCE CODES....................................... 155
7.5 UNIT TESTS............................................................................................................... 156
7.6 BUILD ENVIRONMENT ...............................................................................................157
7.7 DEBUG METHODS ..................................................................................................... 158
7.7.1 Log File
............................................................................................................158
7.7.2 Error Message List........................................................................................... 158
8 PC SIDE DEMO PROGRAMS .................................................................................... 159
8.1 INTRODUCTION.......................................................................................................... 159
8.2 DATABASE FILES MANIPULATION DEMO ...................................................................159
8.2.1 Installing D
emo Program.................................................................................159
8.2.2 Using Demo Program ...................................................................................... 159
9 USAGE TIPS FOR CS101-2 .........................................................................................160
9.1 INTRODUCTION.......................................................................................................... 160
9.2 GENERAL TIPS...........................................................................................................160
9.3 SYSTEM TIPS............................................................................................................. 160
9.4 WRITE TAG TIPS........................................................................................................160
10 RFID COOKBOOK................................................................................................... 161
10.1 INTRODUCTION.......................................................................................................... 161
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
4
10.2 APPLICATION DETAILS ..............................................................................................164
10.2.1 Business Process Analysis................................................................................164
10.2.2 Technology Selection........................................................................................ 167
10.2.3 Customer Expectation Management ................................................................ 168
10.2.4 Hardware Configuration.................................................................................. 169
10.2.5 Software Configuration....................................................................................170
10.2.6 System Integration............................................................................................ 172
10.2.7 Pilot Test........................................................................................................... 173
10.2.8 Optimization.....................................................................................................175
10.2.9 Customization................................................................................................... 176
10.2.10 Training........................................................................................................177
10.2.11 Test & Commissioning......................................................................................178
10.2.12 Maintenance & Statistics..............................................................................179
10.3 READERS FOR DIFFERENT BUSINESS APPLICATIONS..................................................180
10.4 ANTENNAS FOR DIFFERENT BUSINESS APPLICATIONS ...............................................181
11 RFID BEST PRACTICES............................................................................................. 182
11.1 INTRODUCTION..........................................................................................................182
11.2 INTEGRATION PROCESS DETAILS ...............................................................................184
11.2.1 Familiarization Process...................................................................................184
11.2.1.1 Familiarizing with Browser Interface..........................................................184
11.2.1.2 Familiarizing with Programming Interface................................................. 184
11.2.1.3 Full Scale Programming and Integration.................................................... 185
11.2.1.4 Reader Capability Envelope Discovery
.......................................................185
11.2.2 Integration Process..........................................................................................187
11.2.2.1 Use Cases and Requirements Gathering......................................................187
11.2.2.2 Draft Solution and In-House Testing............................................................187
11.2.2.3 API Programming........................................................................................ 187
11.2.2.4 Pilot Testing..................................................................................................187
11.2.2.5 Middlewar
e Testing ......................................................................................188
11.2.2.6 Finalizing Solution....................................................................................... 188
11.2.2.7 Scaling..........................................................................................................188
12 RFID USE CASES ..................................................................................................... 190
12.1 WAREHOUSE REAL TIME INVENTORY TRACKING ...................................................... 190
12.2 HIGH TRAFFIC HUMAN ACCESS CONTROL ................................................................ 191
12.3 REUSABLE PALLET TRACKING................................................................................... 192
12.4 WORK-IN-PROGRESS MONITORING........................................................................... 193
12.5 HUMAN ACCESS CONTROL BY AUT ONOMOUS TAG GROUPS IN READER.................... 194
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
5
12.6 PALLET/CARTON TAGGING VERIFICATION .................................................................195
12.7 BLOOD BAG TRACKING............................................................................................. 196
12.8 PHARMACEUTICAL BOTTLES TRACKING AND ANTI-COUNTERFEIT............................197
12.9 VEHICLE TRACKING IN MAINTENANCE DEPOT..........................................................198
12.10 VEHICLE INFORMATION SYSTEM ...........................................................................199
12.11 DOCUMENT TRACKING..........................................................................................200
APPENDIX A. RFID BASICS......................................................................................... 201
APPENDIX B. GLOSSARY............................................................................................ 202
APPENDIX C.FEDERAL COMMUNICATION COMMISSIONS COMPLIANCE..... 208
APPENDIX D. MAXIMUM PERMISSIBLE EXPOSURE ......................................... 209
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
6
2 FCC Statement
FCC NOTICE: To comply with FCC part 15 rules in the United States, the system must be professionally installed to ensure compliance with the Part 15 certification. It is the responsibility of the operator and professional installer to ensure that only certified systems are deployed in the United States. The use of the system in any other combination (such as co-located antennas transmitting the same information) is expressly forbidden.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
7
3 Introduction
3.1 CS101-2 Handheld RFID Reader
The CS101-2 handheld RFID reader is a ruggedized reader designed from the drawing board to have extremely long read range and high read rate – in that it is designed to replace fixed reader in many applications where fixed reader is a non-portable and therefore non-viable option. In fact it is nicknamed “Fixed Reader in Your Hand”. CS101-2 is a product that arises out of popular requests for applications such as:
1. Dock Door applications where the handheld reader is used to complement fixed reader
when tags are not 100% read by the fixed reader.
2. Loading Bay applications where the fixed reader is not allowed because there is no place
to put a permanent reader stand.
3. Warehouse applications where the handheld is used to do long read range inventory of all
the shelves – apparently not a good idea to use a fixed reader and move it around up and down.
4. Special applications where long read range is a MUST because the operator does not
want to go near the tagged item, example police inspecting the electronic license plate of a suspect vehicle with a suspicious driver inside.
5. Retail shop inventory applications where high read rate is most useful – workers can go
home earlier!!
3.2 How to Use this Manual
This manual provides a comprehensive introduction to the CSL CS101-2 EPC Class1 Gen 2 handheld RFID reader (chapter 1), Installation Guide (chapter 2), Quick Start Guide (chapter 3), Applications Interface (chapter 4), CSL Demo Programs (chapter 5), Software Development Environment (chapter 6), Usage Tips for CS101-2(chapter 7), and Troubleshooting Guide (chapter 11). Some other information such as RFID Cook Book (chapter 8), RFID Best Practices (chapter 9) and RFID Use Cases (chapter 10) are also provided for reference.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
8
3.3 Product Package
3.3.1 Basic Package Content
The reader package contains:
Handheld reader
Charger with power adapter and country specific power cord
Batteries – 2 pieces
Wrist strap
Shoulder strap
Sample tags
User Manual (in CD format)
3.3.2 Unpacking Instructions
Unpacking of the reader is very simple. Just open up the box and take out the content to a table. The charger should be connected and the 2 batteries charged for a
minimum of 10 hours before first use.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
9
3.4 Product Specification
Figure 3-1 CS101-2Reader
Features:
ISO 18000-6C and EPCglobal Class 1 Gen 2 UHF RFID protocol compliant including
dense reader mode
Ultra long read range – peak at 5 to 7 meters for Banjole tag Ultra high read rate – peak at 200 tags per second Sophisticated data handling for efficient management of large streams of tag data. Highly configurable buffering and tag filtering modes to eliminate the redundant tag data
so as to reduce wireless LAN traffic and server loading
400 kbps tag-to-reader data rate profile Robust performance in dense-reader environments Excellent in transmit and receive mode – generates a different combination of unique
reader-to-tag command rate, tag-to-reader backscatter rate, modulation format, and backscatter type
Configurable parameters offer maximum throughput and optimal performance Supports all Gen 2 commands, including write, lock and kill
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
10
Specifications:
Physical Characteristics:
Length: 20 cm; Width: 12.5 cm; Height: 22.5 cm; Weight: 1.2 Kg
Environment:
Operating Temp: 00C to 500C Storage Temp: -400C to 850C Humidity: 5% to 95% non-condensing Enclosure: IP-63
Antenna:
Linear with excellent polarization diversity
Power:
14.8 Volt 1400 mAh Lithium Polymer battery
RFID Frequency Ranges:
902-928 MHz band
Interfaces
Wi Fi 802.11b/g with WPA Configurable to use fixed IP address or DHCP USB RS-232 Maximum 2GB SD card storage
Operating System:
WinCE Profession 5.0
Maximum Tag Read Rate:
200 tag/sec.
Maximum Speed of Tag:
660 ft/min
Accessories:
Charger, batteries, wrist strap, shoulder strap
Order Code:
CS101-2
Restrictions on Use:
Approvals, features and parameters may vary depending on country legislation and may change without notice
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
11
4 Installation
4.1 Devices
4.1.1 Reader
The CSL CS101-2 handheld RFID Reader is an EPCglobal Class 1 Gen 2 handheld reader product.
Figure 1-2 CS101-2Reader front view
Status
LED
LCD Touch
Screen
Programmable
LED
58 Keys
Keyboard
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
12
Figure 1-3 CS101-2Reader side view
Figure 1-4 CS101-2Reader plan view
Barcode
Reader
RFID Antenna
Inside
Handle and
Battery
SD Card Slot
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
13
The reader is connected to the network via Wi Fi. The reader can have a static IP address or can obtain an IP address using DHCP. Normally, a static IP address is more convenient to use because it does not change when the reader reboots, but the user has to make sure there is no collision with other network devices in the network. If the reader is configured to be DHCP, then a separate discovery program that runs on the PC side can help the user find all readers in the same local area network.
READER
USB
PC
(Running Active Syn -
Explore)
READER
RS232
PC
(Running Active Syn -
Explore)
READER
Wi Fi
READER
Static IP Address
READER
DHCP Granted IP Address
OR
Any Server/PC in the network
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
14
4.1.2 Charger
Figure 4-1 CS101-2Charger with AC Adaptor
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
15
4.2 Power Up Sequence
The reader can be turned on to run RFID operation in a most simple manner:
1. Insert battery into the handle of the handheld reader with the metal contact inward. Also,
make sure it is in the correct direction in terms of front and back. If the front-back direction is reversed, the battery cannot go in – in that case do not force it in, just reverse the battery and it should slide in effortlessly.
2. Press the power button on the upper right corner of the keypad continuously until LCD
screen display appears.
3. Wait till WinCE screen shows up.
4. On the WinCE screen, there is an application called CS101. Double click it to start the
application.
5. A screen will show up asking for ID and password. For ID, input root, for password,
input root. (You can change that later, either setting it to NO ID/PASSWORD mode so that the software will not ask for ID and password, or change to ID and password to whatever name you want)
Figure 4-2 User Login
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
16
6. After that, the screen will enter the application selection page and you can start reading and
writing tags, inventory of tags, search of tags, etc.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
17
4.3 Usage Recommendation
4.3.1 Strap: Wrist Strap and Shoulder Strap
The wrist strap and shoulder strap should be attached to the handheld reader to allow additional weight support during use.
4.3.2 IO Connection
The IO connector consists of one USB connector (mini-USB) and an RS232 Serial connector (Firewire) with dedicated cables that come with the reader.
Figure 4-3 IO Interface
RS232
(Firewire
connector)
Reset
USB
(Mini USB
connector)
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
18
4.4 Verification and Validation
The reader comes with standard demo application to read tag and write tag:
Figure 4-4 WinCE Screen
Double click the application CS101:
Figure 4-5 Main Menu page 1
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
19
Figure 4-6 Main Menu page 2
Take the sample tags and put them in front of the handheld reader:
Figure 4-7 Tag Inventory
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
20
4.5 Cautions
The reader default IP address is printed on the reader label. To change this IP address,
please go to System Configuration page of the demo application to do that:
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
21
5 Quick Start
5.1 Reader Login
Press the power button to power up the reader.
To login, input the “User Name” and “Password”, then click the “Login” button. The
default administrator login name and password are as follows:
Login: root Password: root
Figure 5-1 Login Screen
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
22
5.2 System Configuration
System configuration allows user to set basic properties of the overall system, such as identity of the reader (reader name), authentication requirement of the application (ID and password), etc.
Figure 5-2 System Configuration Screen
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
23
5.3 Setup RFID Configuration
One can set up operation profile of the RFID reading and writing operation by going to the RFID Configuration screen.
Please set above parameters to default operation profile.
Please open page “Link Profile” as shown in Figure 5-3. You can reach the page by
clicking “RFID Config -> Link Profile”.
Select correct values and then click “Apply” button.
Figure 5-3 Reader Configuration Screen
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
24
5.4 Read Tags
To read tags one can use the Tag Read demo application. Firstly, select “Tag Read” in the main menu, then select “Scan First”, all Tag’s EPC ID within the readable range can be read into the handheld reader.
Figure 5-4 Tag Read Operation
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
25
6 Demo Application
6.1 Introduction
The WinCE screen contains a short cut called CSL 101 Demo App, as shown in Figure 4-1. Please double click that short cut to start the application.
Figure 6-1 WinCE Screen
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
26
6.2 Splash Screen
The splash screen will display, wait until the application start up.
Figure 6-2 Splash Screen
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
27
6.3 ID and Password Page
The ID and Password page, as shown in Figure 4-3, allows controlled access to this application.
Figure 6-3 ID and Password Page
Figure 6-4 ID and Password Page
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
28
6.4 Applications Selector Screen
The Applications Selector Screen contains buttons that carry out different CS101-2functions. This is a multiple screen interface, where user can navigate to the next screen using the “More…” button.
Figure 6-5 Applications Selector Screen 1
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
29
Figure 6-6 Applications Selector Screen 2
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
30
6.4.1 Tag Read
To read tags one can use the Tag Read demo application. Firstly, select “Tag Read” in the main menu, then select “Scan First”, all tag’s EPC ID within the readable range will be read into the handheld reader. If one want to read further information from the desirable tag, such as access password or kill tag password, select the tag EPC ID from the EPC list, then press “Read Selected”. If the tag memory banks are locked, access password is required to provide.
Figure 6-7 Tag Read
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
31
6.4.2 Tag Write
To write tag by using the Tag Write de mo application, firstly, select “Tag Write” in the main menu, then select “Scan First” to read all tags IDs into the reader, now, you can read further tag information by selecting any tag EPC ID from the EPC list and then clicking the button of “Read Selected”. Different memory band can be selected to be written by highlighting the memory bank and then keying in a new value, click “Write Selected” to start write tag at once.
Figure 6-8 Tag Write
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
32
You can also rewrite any tag’s EPC ID regardless of its original EPC ID. Configure the reader settings by entering the new ID in “EPC Value” and then click “Write Any” button. If your just want to write one tag only, tick the option of “Stop at first tag”, or tick the “Auto-increment” box to write more than one tag with the EPC value is automatically increment.
Figure 6-9 Tag Write – Auto-Increment
We can check the original ID on the left column and the corresponding written ID on the right column.
Figure 6-10 Tag Write – Result
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
33
Enter the masking value in the “Tag Group Mask” so that the tag EPC ID will not be written when the prefix of tag EPC ID is same as the masking value.
Figure 6-11 Tag Write – Masking
Figure 6-12 Tag Write – Result
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
34
6.4.3 Tag Inventory
You can read all tags at a time by using the function of tag inventory. Besides the EPC ID, you can also read the ambient temperature and internal temperature of the handheld reader.
Figure 6-13 Inventory Main
Figure 6-14 Inventory Result
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
35
6.4.4 Tag Ranging
The Tag Ranging provides the function for the user to read the tags with RSSI (RF Signal Strength Indicator) in a list, so that RSSI value will keep changing when the handheld move to and from the tags.
Figure 6-15 Tag Ranging Main
Figure 6-16 Tag Ranging Result
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
36
6.4.5 Tag Search
The Tag Search application allows user to zero in onto tag using a Geiger like buzzer pattern.
Figure 6-17 Tag Search
Figure 6-18 Tag Search
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
37
6.4.6 Tag Commissioning
The Tag Commissioning allows the user to associate the Bar Code ID and Tag ID and then save it into a file in CSV format
Figure 6-19 Tag Commissioning – tag read
Figure 6-20 Tag Commissioning – association
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
38
6.4.7 T ag Authentication
The Tag Authentication allows the user to compare the Barcode/EPC ID based on a CSV file saved in the handheld reader with the Barcode/EPC ID that can be read currently.
Figure 6-21 Tag Authentication – Main
Figure 6-22 Tag Authentication – Result
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
39
6.4.8 Database Management
Figure 6-23 Database Management
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
40
6.4.9 RFID Configuration
The RFID Configuration allows the user to set parameters for the Inventory, Tag Memory, Frequency, Link Profile, Antenna and Overheat Protection.
Inventory Setup: Session: Session number must be different from reader to reader if they are pointing into the same zone. Est. Tag Population Size: it is the estimated population of tags to be read at a time. Tag Filter Mask: Set the filter to select the tags that you want to read/write in the tag inventory submenu.
Figure 6-24 RFID Configuration – Inventory Setup
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
41
Tag Memory: Vendors: Select the vendor type to determine the size of the memory bank Tag Bank Sizes: Beside the predefine memory size from different vendors, you can also change the size depending on the tag type.
Figure 6-25 RFID Configuration – Tag Memory
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
42
Link Profile: Different modulation profile can be selected by the user for different situation
Figure 6-26 RFID Configuration – Link Profile
Figure 6-27 RFID Configuration – Link Profile Details
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
43
Antenna: Depending on the read range and the tag type, you can adjust the antenna power range from 0 to 30dBm
Figure 6-28 RFID Configuration – Antenna
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
44
OverHeat Protection: The function in this page lets the user to set the Antenna on/off duty cycle and transceiver temperature to protect the handheld reader to avoid overheat
Duty Cycle: The function of duty cycle prevents the user to read/write for a long time. When tag read/write is working over the predefined period, it will stop to do the tag read/write and then start it again for another predefined period. Overheat Protection: Set a temperature value here so that the reader will show an overheat warning when the handheld internal temperature is reached to this value.
Figure 6-29 RFID Configuration – OverHeat Protection
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
45
Temperature: when the handheld reader temperature reaches the predefine temperature value on this page, it will display the warning message and stop tag read/write function.
Figure 6-30 RFID Configuration – Temperature
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
46
6.4.10 Scan Barcode
The Scan Barcode allows the user to scan barcode and then save it into a file in CSV format
Figure 6-31 Scan Barcode - Main
Figure 6-32 Scan Barcode - Scanning
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
47
6.4.11 Tag Security
Tag Security: You can use the tag security to set the protection feature of the tag. Firstly, click “Choose another Tag” to scan the available tag that is within the coverage of the handheld reader, then select the tag from the tag list. The handheld reader can let the user to set the protection of kill password, access password, EPC ID, TID and user bank depending on the tag type.
Figure 6-33 Tag Permission
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
48
Allow: allow read/write the memory bank Always Allow: Tag can never be locked Password Protect: need password when access the tag memory bank Always Deny: tag cannot be read even correct password is provided No Change: keep previous status
Figure 6-34 Tag Permission
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
49
6.4.12 System Configuration
The System Configuration contains the submenu for Identity the reader, user login in/out, beep sound for different user function.
Identity: Set the unique name/ID for the reader
Figure 6-35 System Configuration - Identity
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
50
User: Set login name and password can restrict the unauthorized user to run the demo program in this handheld reader.
Figure 6-36 System Configuration - User
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
51
Sounds: Different sound melody can assign to different usage to the handheld reader.
Figure 6-37 System Configuration - Sounds
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
52
Diagnostics: The Diagnostics submenu allows the user to check the version of current RFID driver and MAC, user can also set the trace log for debugging.
Figure 6-38 System Configuration - Diagnostics
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
53
Time Synchronization: This page allows you to set the NTP server so that the system time can synchronize with NTP server when you press the “Sync. Now” button.
Figure 6-39 System Configuration – Time Synchronization
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
54
6.4.13 Factory Defaults
Factory Defaults: User can use the factory defaults to reset the RFID Config, System Config and data Folders into the default settings.
Figure 6-40 Factory Defaults
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
55
7 Software Development Kit
The CSL CS101-2handheld reader software development kit provides the following components for quick and easy application development:
1. Software specifications
2. Block diagrams
3. Application Programming Interface (API) definitions
4. Application scenarios with program source codes
5. Unit test plan and results
6. Build environment
7. Debug methods
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
56
7.1 Software Specifications
The overall software architecture consists of CS101-2 RFID Libraries on the WinCE OS inside the handheld reader, CS101-2 Demonstration Application (which consists of a whole series of applications, such as tag read, tag write, tag inventory, tag search, tag authentication, tag commissioning, barcode scanning, RFID configuration, system configuration, database file manipulation, network database file transfer, etc.), CS101-2 Keep Alive Monitor, all of the above inside the handheld device; and then also CS101-2 Server Side Database Administration Application, which resides on the WinXP server side.
7.1.1 CS101-2 RFID Libraries
The CS101-2 RFID Libraries consists of 3 parts:
1. RfidSp
2. PosSp
3. ClsSys Util
These calls are designed to be called by C# applications with the PInvoke (Platform Invoke) method.
7.1.2 CS101-2 Demonstration Application
The CS101-2 Demonstration Application is a comprehensive C# demonstration program that demonstrates how to write an application on the CS101-2platform. It offers all possible RFID related and barcode related functionalities. The functions include:
1. Tag Read
2. T ag Write
3. Tag Inventory
4. Tag Ranging
5. Tag Search
6. Tag Commissioning
7. T ag Authentication
8. Database Management
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
57
9. RFID Configuration
10. Scan Barcode
11. Tag Security
12. System Configuration
13. Factory Defaults
7.1.3 CS101-2 Keep Alive Monitor
CS101-2 Keep Alive Monitor is an independent application that is turned on during WinCE boot up to monitor health situations, including:
1. Battery Monitoring and Alert
2. Memory (RAM) Monitoring and Alert
3. Disk Space (Internal Flash) Monitoring and Alert
4. Disk Space (SD Card) Monitoring and Alert
5. SD Card Physical Action Monitoring and Alert (insertion and ejection)
6. Network Condition Monitoring and Alert
7. Automatic Files Backup
7.1.4 CS101-2 Server Side Application
The CS101-2 Server Side Application handles collection of tag data and converting them to typical formats.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
58
7.2 Block Diagrams
The software architecture is illustrated by the following block diagram:
WinCE 5.0 on CS101-2 Handheld Reader
PInvoke Function Call & Message Response
Mfc RfidSp dll
LED
WinXP
C# Ref App
Sqlce
Sqlce
CSL RFID Module
Buzzer
C# Ref App
Web Server
Web Service Proxy
Main Progra
m
Web Service
Intel
Rfid Lib
LED &
Buzzer Lib
RfidSp Access
LED & Buzzer
Rfid User Interface
Db Access
Notification Monitor
Battery Sensing
Battery
Low
Indication
soap http protocol
with post & push
over WiFi
Db Manager
Interactive
User Input
Database Replication
Db Replicator
Datalogger
Datalog Files
Datalogge
r
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
59
On the WinCE machine: The PDA is connected to the intranet through the WiFi Access Point. The PDA has a DHCP IP-address. It has a local SqlCe database storing all the known information (e.g. Known Inventory, TagGroup to Lock). It should never goto the suspend state.
A) The Db Replicator is a standalone program that replicates the database data between the WinCE & WinXP machine. B)C# RefApp on WinCE is a reference application. It provides 2 user interfaces, 1 database interface, 3 sub-system interfaces:
1) The Web Service: This provides the network communication services to the Web Service on the WinXP.
2) The Rfid User Interface: This provides the GUI (Window-Forms) on the LCD
3) The Db Access: This connects to the local SqlCe Database (Microsoft SqlCe3.1). It has access to the data using sql commands.
4) The RfidSp Access: This setup the RfidSp.dll. This controls the Rfid Reader & get back raw data from the reader &/ the post-processed data from the Rfid Middleware.
5) The LED & Buzzer Control: This controls the 7-color LED & the buzzer (volume & frequency).
6) The Notification Monitor: This alert the main program that the “battery-low” notification is signaled, & the main program should alert the user to exit the Rfid application immediately (in order to terminate the connections gracefully & has the latest data stored locally).
7) The Datalogger: This, when enabled, writes the datalog text to the logfiles.
8) The Main Program: This is the central unit of the application. It controls the calling sequence to all the modules described above. On the WinXP machine: The PC has a fixed IP & it is in the intranet. C) C# RefApp on WinXP provides 2 features, namely the web services & the database management:
1) The Web Services: This provides Soap (xml-text & binary) data over the HTTP GET, HTTP POST, or SOAP
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
60
protocol to the client upon request or web-push.
2) The Database Manager: This allows the user to edit/import/export/review the Master Database, & setup the Sql Data (by stored procedures) for each WinCE Rfid Reader to get. To Probe Further:
1) If there is only 1 WinCE & WinXP machine, the database file (\Program Files\Rfid\Db.sdf) can also be copied between WinCE & WinXP through ActiveSync or ftp. In general, the database Replication between the SqlCe server on WinCE & WinXP is done by the RDASync ( the Remote Data Access Synchronization) technique from Microsoft. Synchronization between Sql2005 & SqlCe on WinXP is not included in the reference solution.
2) The required 802.11 a/b/g WiFi Access Point provides intranet connection & assign DHCP IP address for the WinCE devices. WEP/ WPA/WPA2 Encryption is recommended.
3) Encryption (using Microsoft Windows CE Enhanced Cryptographic Provider) can be added to the C# programs for the WinXP-to-WinCE Soap data stream, if the additional loading is acceptable.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
61
C# App
Client Mgr
WinXP Pro, .NET2.0
Msmqdb lib
Sql 2005 Express
Msmq Msg Handling
Db access
WinCE Db Client
DlgSetup_M
Main App
Dataset
WinXP Admin
Datagrid View
Msmqdb lib
DlgSetup_M
msmq service
Atomic msg
RxThd
RxThd
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
62
Wireless Router
WinXP SP 2
WinCE5.0 Pro Data Acquisition App
Sqlce Db (=sdf file)
usb1.1 ActiveSyn
IIS web http1.1 client
ActiveSync
Card Reader Card Reader 2GB SDCard
Db File (.sdf)
Session based data update
Periodically Backup Data
Update Data to Server at the End Of Day
GUI for Sqlce Db export
(.xsd)
Existing Backend System
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
63
7.3 Application Programming Interface (API) Definitions
Interface Definition for CSL C# libraries RfidSp: Overview: RfidSp is a C# class in the that provide a C# managed interface of the Rfid Reader Threads. RfidSp dll is designed to be used by our reference applications, which provides a wrapper class for function calls & a Message Window class to receive messages. C# namespace: ClslibRfidSp . Dependencies: Program Files\W_RfidSp.dll;
Type Definitions:
HRESULT_RFID_STATUS Prototype: using HRESULT_RFID_STATUS = ClslibRfidSp.HRESULT_RFID; //= System.Int32; Description: This enumerates the status in the response messages.
RFID_RADIO_HANDLE Prototype: using RFID_RADIO_HANDLE = System.UInt32; Description: This is the handle to the RFID radio object. A zero or negative is an invalid value. e.g. A valid value is 0x00010000.
Constants: ( member variables in class RfidSp ) RFID_PACKET_18K6C_TAG_ACCESS__DATA_MAXSIZ Prototype: public const int RFID_PACKET_18K6C_TAG_ACCESS__DATA_MAXSIZ = 32;. Description: This is the maximum number of UINT32 in tag_access a message defined in the Rfid library.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
64
RFID_PACKET_18K6C_INVENTORY__DATA_MAXSIZ Prototype: public const int RFID_PACKET_18K6C_INVENTORY__DATA_MAXSIZ = 24; Description: This is the maximum number of UINT32 in a tag_inventory message defined in the Rfid library.
WM_USER Prototype: public const int WM_USER = 0x0400; Description: This is the starting index for user-defined message on WinCE.
RFID_INVALID_RADIO_HANDLE Prototype: public const RFID_RADIO_HANDLE RFID_INVALID_RADIO_HANDLE = ((RFID_RADIO_HANDLE)0);. Description: This is the invalid radio handle.
SELECTCRITERIA_COUNT Prototype: public const int SELECTCRITERIA_COUNT = 4;. Description: This is the number of selectcriteria to set.
POSTMATCHCRITERIA_COUNT Prototype: public const int POSTMATCHCRITERIA_COUNT = 4; Description: This is the number of postmatchcriteria to set.
RFID_18K6C_SELECT_MASK_BYTE_LEN Prototype: public const int RFID_18K6C_SELECT_MASK_BYTE_LEN = 32; Description: This is the size(in byte) of the select mask for partitioning a tag population.
RFID_18K6C_SINGULATION_MASK_BYTE_LEN
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
65
Prototype: public const int RFID_18K6C_SINGULATION_MASK_BYTE_LEN = 62; Description: This is the size(in byte) of the single post-singulation match mask.
USHORTSEQNUMINVALID
Prototype: public const int USHORTSEQNUMINVALID = 0xffff; Description: This is the value of the invalid RfidMw sequence number.
Enumerations: HRESULT_RFID Prototype: public enum HRESULT_RFID : uint {
S_OK = 0x00000000, // Success E_ABORT = 0x80004004, // Operation aborted E_ACCESSDENIED = 0x80070005, // General access denied error E_FAIL = 0x80004005, // Unspecified failure E_HANDLE = 0x80070006, // Handle that is not valid E_INVALIDARG = 0x80070057, // One or more arguments are not valid E_NOINTERFACE = 0x80004002, // No such interface supported E_NOTIMPL = 0x80004001, // Not implemented E_OUTOFMEMORY = 0x8007000E, // Failed to allocate necessary memory E_POINTER = 0x80004003, // Pointer that is not valid E_UNEXPECTED = 0x8000FFFF, // Unexpected failure S_RFID_STATUS_OK = 0x00040000, // RFID Success E_RFID_ERROR_ALREADY_OPEN = 0x8004D8F1, // Attempted to open a radio that is already open E_RFID_ERROR_BUFFER_TOO_SMALL = 0x8004d8f2, //Buffer supplied is too small E_RFID_ERROR_FAILURE = 0x8004d8f3, //General failure E_RFID_ERROR_DRIVER_LOAD = 0x8004d8f4, //Failed to load radio bus driver E_RFID_ERROR_DRIVER_MISMATCH = 0x8004d8f5, //Library cannot use version of radio bus driver E_RFID_ERROR_EMULATION_MODE = 0x8004d8f6, //Operation cannot be performed in emulation mode E_RFID_ERROR_INVALID_ANTENNA = 0x8004d8f7, //Antenna number is invalid E_RFID_ERROR_INVALID_HANDLE = 0x8004d8f8 , //Radio handle provided is invalid E_RFID_ERROR_INVALID_PARAMETER = 0x8004d8f9, //One of the parameters is invalid E_RFID_ERROR_NO_SUCH_RADIO = 0x8004d8fa, //Attempted to open a non-existent radio
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
66
E_RFID_ERROR_NOT_INITIALIZED = 0x8004d8fb, //Library has not been successfully initialized E_RFID_ERROR_NOT_SUPPORTED = 0x8004d8fc, //Function not supported E_RFID_ERROR_OPERATION_CANCELLED = 0x8004d8fd, //Operation was cancelled by call to cancel operation, close radio, or shut down the library E_RFID_ERROR_OUT_OF_MEMORY = 0x8004d8fe, //Library encountered an error allocating memory E_RFID_ERROR_RADIO_BUSY = 0x8004d8ff, //The operation cannot be performed, radio is busy E_RFID_ERROR_RADIO_FAILURE = 0x8004d900, //The underlying radio module encountered an error E_RFID_ERROR_RADIO_NOT_PRESENT = 0x8004d901, //The radio has been detached from the system E_RFID_ERROR_CURRENTLY_NOT_ALLOWED = 0x8004d902, //library function is not allowed at this time. E_RFID_ERROR_RADIO_NOT_RESPONDING = 0x8004d903 //The radio module's MAC firmware is not responding to requests.
}; . Description: This enumerates the Success / Error status.
RFID_PACKET_TYPE Prototype: public enum RFID_PACKET_TYPE:uint{ RFID_PACKET_TYPE_COMMAND_BEGIN = 0x0000, RFID_PACKET_TYPE_COMMAND_END , RFID_PACKET_TYPE_ANTENNA_CYCLE_BEGIN , RFID_PACKET_TYPE_ANTENNA_BEGIN , RFID_PACKET_TYPE_18K6C_INVENTORY_ROUND_BEGIN, RFID_PACKET_TYPE_18K6C_INVENTORY, RFID_PACKET_TYPE_18K6C_TAG_ACCESS, RFID_PACKET_TYPE_ANTENNA_CYCLE_END, RFID_PACKET_TYPE_ANTENNA_END, RFID_PACKET_TYPE_18K6C_INVENTORY_ROUND_END, RFID_PACKET_TYPE_INVENTORY_CYCLE_BEGIN, RFID_PACKET_TYPE_INVENTORY_CYCLE_END, RFID_PACKET_TYPE_CARRIER_INFO, RFID_PACKET_TYPE_NONCRITICAL_FAULT = 0x2000 }; Description: These are message types for the Rfid Packets.
RFID_MSGID
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
67
Prototype: public enum RFID_MSGID : uint { RFID_REQUEST_TYPE_MSGID_Startup = RfidSp.WM_USER +0x0040, //=RFID_REQUEST_TYPE_MSGID_START, RFID_REQUEST_TYPE_MSGID_Shutdown, RFID_REQUEST_TYPE_MSGID_RetrieveAttachedRadiosList, RFID_REQUEST_TYPE_MSGID_RadioOpen, RFID_REQUEST_TYPE_MSGID_RadioClose, RFID_REQUEST_TYPE_MSGID_RadioSetConfigurationParameter, RFID_REQUEST_TYPE_MSGID_RadioGetConfigurationParameter, RFID_REQUEST_TYPE_MSGID_RadioSetOperationMode, RFID_REQUEST_TYPE_MSGID_RadioGetOperationMode, RFID_REQUEST_TYPE_MSGID_RadioSetPowerState, RFID_REQUEST_TYPE_MSGID_RadioGetPowerState, RFID_REQUEST_TYPE_MSGID_RadioSetCurrentLinkProfile, RFID_REQUEST_TYPE_MSGID_RadioGetCurrentLinkProfile, RFID_REQUEST_TYPE_MSGID_RadioGetLinkProfile, RFID_REQUEST_TYPE_MSGID_RadioWriteLinkProfileRegister, RFID_REQUEST_TYPE_MSGID_RadioReadLinkProfileRegister, RFID_REQUEST_TYPE_MSGID_AntennaPortGetStatus, RFID_REQUEST_TYPE_MSGID_AntennaPortSetState, RFID_REQUEST_TYPE_MSGID_AntennaPortSetConfiguration, RFID_REQUEST_TYPE_MSGID_AntennaPortGetConfiguration, RFID_REQUEST_TYPE_MSGID_18K6CSetSelectCriteria, RFID_REQUEST_TYPE_MSGID_18K6CGetSelectCriteria, RFID_REQUEST_TYPE_MSGID_18K6CSetPostMatchCriteria, RFID_REQUEST_TYPE_MSGID_18K6CGetPostMatchCriteria, RFID_REQUEST_TYPE_MSGID_18K6CSetQueryTagGroup, RFID_REQUEST_TYPE_MSGID_18K6CGetQueryTagGroup, RFID_REQUEST_TYPE_MSGID_18K6CSetCurrentSingulationAlgorithm, RFID_REQUEST_TYPE_MSGID_18K6CGetCurrentSingulationAlgorithm, RFID_REQUEST_TYPE_MSGID_18K6CSetQueryParameters, RFID_REQUEST_TYPE_MSGID_18K6CGetQueryParameters, RFID_REQUEST_TYPE_MSGID_18K6CTagInventory, RFID_REQUEST_TYPE_MSGID_18K6CTagRead, RFID_REQUEST_TYPE_MSGID_18K6CTagWrite, RFID_REQUEST_TYPE_MSGID_18K6CTagKill, RFID_REQUEST_TYPE_MSGID_18K6CTagLock,
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
68
RFID_REQUEST_TYPE_MSGID_RadioCancelOperation, RFID_REQUEST_TYPE_MSGID_RadioAbortOperation, RFID_REQUEST_TYPE_MSGID_RadioSetResponseDataMode, RFID_REQUEST_TYPE_MSGID_RadioGetResponseDataMode, RFID_REQUEST_TYPE_MSGID_MacUpdateFirmware, RFID_REQUEST_TYPE_MSGID_MacGetVersion, RFID_REQUEST_TYPE_MSGID_MacReadOemData, RFID_REQUEST_TYPE_MSGID_MacWriteOemData, RFID_REQUEST_TYPE_MSGID_MacReset, RFID_REQUEST_TYPE_MSGID_MacClearError, RFID_REQUEST_TYPE_MSGID_MacBypassWriteRegister, RFID_REQUEST_TYPE_MSGID_MacBypassReadRegister, RFID_REQUEST_TYPE_MSGID_MacSetRegion, RFID_REQUEST_TYPE_MSGID_MacGetRegion, RFID_REQUEST_TYPE_MSGID_RadioSetGpioPinsConfiguration, RFID_REQUEST_TYPE_MSGID_RadioGetGpioPinsConfiguration, RFID_REQUEST_TYPE_MSGID_RadioReadGpioPins, RFID_REQUEST_TYPE_MSGID_RadioWriteGpioPins, RFID_REQUEST_TYPE_MSGID_END = RFID_REQUEST_TYPE_MSGID_RadioWriteGpioPins, //////// 43 Request ACK MsgId RFID_REQEND_TYPE_MSGID_START = RFID_REQUEST_TYPE_MSGID_END + 0x01, RFID_REQEND_TYPE_MSGID_Startup = RFID_REQEND_TYPE_MSGID_START, RFID_REQEND_TYPE_MSGID_Shutdown, RFID_REQEND_TYPE_MSGID_RetrieveAttachedRadiosList, RFID_REQEND_TYPE_MSGID_RadioOpen, RFID_REQEND_TYPE_MSGID_RadioClose, RFID_REQEND_TYPE_MSGID_RadioSetConfigurationParameter, RFID_REQEND_TYPE_MSGID_RadioGetConfigurationParameter, RFID_REQEND_TYPE_MSGID_RadioSetOperationMode, RFID_REQEND_TYPE_MSGID_RadioGetOperationMode, RFID_REQEND_TYPE_MSGID_RadioSetPowerState, RFID_REQEND_TYPE_MSGID_RadioGetPowerState, RFID_REQEND_TYPE_MSGID_RadioSetCurrentLinkProfile, RFID_REQEND_TYPE_MSGID_RadioGetCurrentLinkProfile, RFID_REQEND_TYPE_MSGID_RadioGetLinkProfile, RFID_REQEND_TYPE_MSGID_RadioWriteLinkProfileRegister, RFID_REQEND_TYPE_MSGID_RadioReadLinkProfileRegister, RFID_REQEND_TYPE_MSGID_AntennaPortGetStatus,
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
69
RFID_REQEND_TYPE_MSGID_AntennaPortSetState, RFID_REQEND_TYPE_MSGID_AntennaPortSetConfiguration, RFID_REQEND_TYPE_MSGID_AntennaPortGetConfiguration, RFID_REQEND_TYPE_MSGID_18K6CSetQueryTagGroup, RFID_REQEND_TYPE_MSGID_18K6CGetQueryTagGroup, RFID_REQEND_TYPE_MSGID_18K6CSetCurrentSingulationAlgorithm, RFID_REQEND_TYPE_MSGID_18K6CGetCurrentSingulationAlgorithm, RFID_REQEND_TYPE_MSGID_18K6CSetSelectCriteria, RFID_REQEND_TYPE_MSGID_18K6CGetSelectCriteria, RFID_REQEND_TYPE_MSGID_18K6CSetPostMatchCriteria, RFID_REQEND_TYPE_MSGID_18K6CGetPostMatchCriteria, RFID_REQEND_TYPE_MSGID_18K6CSetQueryParameters, RFID_REQEND_TYPE_MSGID_18K6CGetQueryParameters, RFID_REQEND_TYPE_MSGID_18K6CTagInventory, RFID_REQEND_TYPE_MSGID_18K6CTagRead, RFID_REQEND_TYPE_MSGID_18K6CTagWrite, RFID_REQEND_TYPE_MSGID_18K6CTagKill, RFID_REQEND_TYPE_MSGID_18K6CTagLock, RFID_REQEND_TYPE_MSGID_RadioCancelOperation, RFID_REQEND_TYPE_MSGID_RadioAbortOperation, RFID_REQEND_TYPE_MSGID_RadioSetResponseDataMode, RFID_REQEND_TYPE_MSGID_RadioGetResponseDataMode, RFID_REQEND_TYPE_MSGID_MacUpdateFirmware, RFID_REQEND_TYPE_MSGID_MacGetVersion, RFID_REQEND_TYPE_MSGID_MacReadOemData, RFID_REQEND_TYPE_MSGID_MacWriteOemData, RFID_REQEND_TYPE_MSGID_MacReset, RFID_REQEND_TYPE_MSGID_MacClearError, RFID_REQEND_TYPE_MSGID_MacBypassWriteRegister, RFID_REQEND_TYPE_MSGID_MacBypassReadRegister, RFID_REQEND_TYPE_MSGID_MacSetRegion, RFID_REQEND_TYPE_MSGID_MacGetRegion, RFID_REQEND_TYPE_MSGID_RadioSetGpioPinsConfiguration, RFID_REQEND_TYPE_MSGID_RadioGetGpioPinsConfiguration, RFID_REQEND_TYPE_MSGID_RadioReadGpioPins, RFID_REQEND_TYPE_MSGID_RadioWriteGpioPins, RFID_REQEND_TYPE_MSGID_END = RFID_REQEND_TYPE_MSGID_RadioWriteGpioPins, //////// Packets
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
70
RFID_PACKET_TYPE_MSGID_START = RFID_REQEND_TYPE_MSGID_END + 0x01, /// 12 Pkt MsgId. 0x0000+ MSGID_START RFID_PACKET_TYPE_MSGID_COMMAND_BEGIN = RFID_PACKET_TYPE.RFID_PACKET_TYPE_COMMAND_BEGIN + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_COMMAND_END = RFID_PACKET_TYPE.RFID_PACKET_TYPE_COMMAND_END + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_ANTENNA_CYCLE_BEGIN = RFID_PACKET_TYPE.RFID_PACKET_TYPE_ANTENNA_CYCLE_BEGIN + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_ANTENNA_BEGIN = RFID_PACKET_TYPE.RFID_PACKET_TYPE_ANTENNA_BEGIN + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_18K6C_INVENTORY_ROUND_BEGIN = RFID_PACKET_TYPE.RFID_PACKET_TYPE_18K6C_INVENTORY_ROUND_BEGIN + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_18K6C_INVENTORY = RFID_PACKET_TYPE.RFID_PACKET_TYPE_18K6C_INVENTORY + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_18K6C_TAG_ACCESS = RFID_PACKET_TYPE.RFID_PACKET_TYPE_18K6C_TAG_ACCESS + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_ANTENNA_CYCLE_END = RFID_PACKET_TYPE.RFID_PACKET_TYPE_ANTENNA_CYCLE_END +RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_ANTENNA_END = RFID_PACKET_TYPE.RFID_PACKET_TYPE_ANTENNA_END + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_18K6C_INVENTORY_ROUND_END = RFID_PACKET_TYPE.RFID_PACKET_TYPE_18K6C_INVENTORY_ROUND_END + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_INVENTORY_CYCLE_BEGIN = RFID_PACKET_TYPE.RFID_PACKET_TYPE_INVENTORY_CYCLE_BEGIN + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_INVENTORY_CYCLE_END = RFID_PACKET_TYPE.RFID_PACKET_TYPE_INVENTORY_CYCLE_END + RFID_PACKET_TYPE_MSGID_START,
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
71
RFID_PACKET_TYPE_MSGID_CARRIER_INFO = RFID_PACKET_TYPE.RFID_PACKET_TYPE_CARRIER_INFO + RFID_PACKET_TYPE_MSGID_START, // non for the diagnostics pkt., for the status pkt. 0x2000+ MSGID_START RFID_PACKET_TYPE_MSGID_NONCRITICAL_FAULT = RFID_PACKET_TYPE.RFID_PACKET_TYPE_NONCRITICAL_FAULT + RFID_PACKET_TYPE_MSGID_START, RFID_PACKET_TYPE_MSGID_END = RFID_PACKET_TYPE_MSGID_NONCRITICAL_FAULT,
RFIDMW_REQUEST_TYPE_MSGID_START= RFID_PACKET_TYPE_MSGID_END + 0x01, RFIDMW_REQUEST_TYPE_MSGID_TagInv_SetAllTaglist = RFIDMW_REQUEST_TYPE_MSGID_START, RFIDMW_REQUEST_TYPE_MSGID_TagInv_AddATag, RFIDMW_REQUEST_TYPE_MSGID_TagInv_FindATag, RFIDMW_REQUEST_TYPE_MSGID_TagInv_ClearAllTaglist, RFIDMW_REQUEST_TYPE_MSGID_TagInv_UpdateAllTaglistToFile, RFIDMW_REQUEST_TYPE_MSGID_TagInv_GetUpdateTaglist, RFIDMW_REQUEST_TYPE_MSGID_TagInv_GetAllTaglist, RFIDMW_REQUEST_TYPE_MSGID_END = RFIDMW_REQUEST_TYPE_MSGID_TagInv_GetAllTaglist, RFIDMW_REQEND_TYPE_MSGID_START = RFIDMW_REQUEST_TYPE_MSGID_END + 0x01, RFIDMW_REQEND_TYPE_MSGID_TagInv_SetAllTaglist = RFIDMW_REQEND_TYPE_MSGID_START, RFIDMW_REQEND_TYPE_MSGID_TagInv_AddATag, RFIDMW_REQEND_TYPE_MSGID_TagInv_FindATag, RFIDMW_REQEND_TYPE_MSGID_TagInv_ClearAllTaglist, RFIDMW_REQEND_TYPE_MSGID_TagInv_UpdateAllTaglistToFile , RFIDMW_REQEND_TYPE_MSGID_TagInv_GetUpdateTaglist, RFIDMW_REQEND_TYPE_MSGID_TagInv_GetAllTaglist, RFIDMW_REQEND_TYPE_MSGID_END = RFIDMW_REQEND_TYPE_MSGID_TagInv_GetAllTaglist }; Description: These are message types for the Rfid request, response & packet messages. N.B. Rfid request message is not required by the application, request are done by calling the corresponding functions.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
72
RFID_RADIO_OPERATION_MODE Prototype: public enum RFID_RADIO_OPERATION_MODE : uint { RFID_RADIO_OPERATION_MODE_CONTINUOUS, RFID_RADIO_OPERATION_MODE_NONCONTINUOUS }; Description: This is the operation mode of the radio.
RFID_RADIO_POWER_STATE Prototype: public enum RFID_RADIO_POWER_STATE : uint { RFID_RADIO_POWER_STATE_FULL, RFID_RADIO_POWER_STATE_STANDBY }; Description: This is the power state of the radio.
RFID_ANTENNA_PORT_STATE Prototype: public enum RFID_ANTENNA_PORT_STATE : uint { RFID_ANTENNA_PORT_STATE_DISABLED, RFID_ANTENNA_PORT_STATE_ENABLED }; Description: This gives the state of a logical antenna port.
RFID_18K6C_SELECTED Prototype: public enum RFID_18K6C_SELECTED : uint { RFID_18K6C_SELECTED_ALL = 0, RFID_18K6C_SELECTED_OFF = 2, RFID_18K6C_SELECTED_ON = 3 }; Description: This defines the states for SL flag of a tag.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
73
RFID_18K6C_INVENTORY_SESSION Prototype: public enum RFID_18K6C_INVENTORY_SESSION : uint { RFID_18K6C_INVENTORY_SESSION_S0 = 0, RFID_18K6C_INVENTORY_SESSION_S1 = 1, RFID_18K6C_INVENTORY_SESSION_S2 = 2, RFID_18K6C_INVENTORY_SESSION_S3 = 3 }; Description: This defines the valid states for a tag's ISO 18000-6C inventory flags.
RFID_18K6C_INVENTORY_SESSION_TARGET Prototype: public enum RFID_18K6C_INVENTORY_SESSION_TARGET : uint { RFID_18K6C_INVENTORY_SESSION_TARGET_A = 0, RFID_18K6C_INVENTORY_SESSION_TARGET_B = 1 }; Description: This defines the valid states for a tag's ISO 18000-6C inventory flags.
RFID_18K6C_MODULATION_TYPE Prototype: public enum RFID_18K6C_MODULATION_TYPE : uint { RFID_18K6C_MODULATION_TYPE_DSB_ASK, RFID_18K6C_MODULATION_TYPE_SSB_ASK, RFID_18K6C_MODULATION_TYPE_PR_ASK }; Description: This defines ISO 18000-6C modulation types.
RFID_18K6C_DATA_0_1_DIFFERENCE Prototype: public enum RFID_18K6C_DATA_0_1_DIFFERENCE : uint { RFID_18K6C_DATA_0_1_DIFFERENCE_HALF_TARI, RFID_18K6C_DATA_0_1_DIFFERENCE_ONE_TARI }; Description: This is the Tari between data zero.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
74
RFID_18K6C_DIVIDE_RATIO Prototype: public enum RFID_18K6C_DIVIDE_RATIO : uint { RFID_18K6C_DIVIDE_RATIO_8, RFID_18K6C_DIVIDE_RATIO_64DIV3 }; Description: This is the ISO 18000-6C divide ratios.
RFID_18K6C_MILLER_NUMBER Prototype: public enum RFID_18K6C_MILLER_NUMBER : uint { RFID_18K6C_MILLER_NUMBER_FM0, RFID_18K6C_MILLER_NUMBER_2, RFID_18K6C_MILLER_NUMBER_4, RFID_18K6C_MILLER_NUMBER_8 }; Description: This is the ISO 18000-6C Miller encoding sub-carrier.
RFID_RADIO_PROTOCOL Prototype: public enum RFID_RADIO_PROTOCOL : uint { RFID_RADIO_PROTOCOL_ISO18K6C }; Description: The is the tag protocol.
RFID_18K6C_MEMORY_BANK Prototype: public enum RFID_18K6C_MEMORY_BANK : uint { RFID_18K6C_MEMORY_BANK_RESERVED, RFID_18K6C_MEMORY_BANK_EPC, RFID_18K6C_MEMORY_BANK_TID, RFID_18K6C_MEMORY_BANK_USER }; Description:
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
75
This is the RFID tag's memory bank.
RFID_18K6C_TARGET Prototype: public enum RFID_18K6C_TARGET : uint { RFID_18K6C_TARGET_INVENTORY_S0, RFID_18K6C_TARGET_INVENTORY_S1, RFID_18K6C_TARGET_INVENTORY_S2, RFID_18K6C_TARGET_INVENTORY_S3, RFID_18K6C_TARGET_SELECTED }; Description: This defines the tag's flags that will be modified.
RFID_18K6C_ACTION Prototype: public enum RFID_18K6C_ACTION : uint { RFID_18K6C_ACTION_ASLINVA_DSLINVB, RFID_18K6C_ACTION_ASLINVA_NOTHING, RFID_18K6C_ACTION_NOTHING_DSLINVB, RFID_18K6C_ACTION_NSLINVS_NOTHING, RFID_18K6C_ACTION_DSLINVB_ASLINVA, RFID_18K6C_ACTION_DSLINVB_NOTHING, RFID_18K6C_ACTION_NOTHING_ASLINVA, RFID_18K6C_ACTION_NOTHING_NSLINVS }; Description: This is the action performed upon the tag populations (i.e, matching and non-matching) during the select operation. The constants are named RFID_18K6C_ACTION_xxx_yyy where "xxx" is the action to be applied to matching tags and "yyy" is the action to be applied to non-matching tags. Actions are: ASL - Assert SL INVA - Set inventoried flag to A DSL - Deassert SL INVB - Set inventoried flag to B NSL - Negate SL INVS - Switch inventoried flag (A -> B, B -> A)
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
76
NOTHING - Do nothing.
RFID_18K6C_SELECTED Prototype: public enum RFID_18K6C_SELECTED: uint { RFID_18K6C_SELECTED_ALL = 0, RFID_18K6C_SELECTED_OFF = 2, RFID_18K6C_SELECTED_ON = 3 }; Description: This is the states for a tag's SL flag.
RFID_18K6C_INVENTORY_SESSION Prototype: public enum RFID_18K6C_INVENTORY_SESSION : uint { RFID_18K6C_INVENTORY_SESSION_S0, RFID_18K6C_INVENTORY_SESSION_S1, RFID_18K6C_INVENTORY_SESSION_S2, RFID_18K6C_INVENTORY_SESSION_S3 }; Description: This is the ISO 18000-6C inventory session flags that are available.
RFID_18K6C_INVENTORY_SESSION Prototype: public enum RFID_18K6C_INVENTORY_SESSION_TARGET : uint { RFID_18K6C_INVENTORY_SESSION_TARGET_A, RFID_18K6C_INVENTORY_SESSION_TARGET_B }; Description: This is the valid states for a tag's ISO 18000-6C inventory flags.
RFID_18K6C_SINGULATION_ALGORITHM Prototype: public enum RFID_18K6C_SINGULATION_ALGORITHM : uint{ RFID_18K6C_SINGULATION_ALGORITHM_FIXEDQ = 0, RFID_18K6C_SINGULATION_ALGORITHM_DYNAMICQ = 1, RFID_18K6C_SINGULATION_ALGORITHM_DYNAMICQ_ADJUST = 2,
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
77
RFID_18K6C_SINGULATION_ALGORITHM_DYNAMICQ_THRESH = 3 }; Description: This is the valid singulation algorithms.
RFID_18K6C_WRITE_TYPE Prototype: public enum RFID_18K6C_WRITE_TYPE: uint { RFID_18K6C_WRITE_TYPE_SEQUENTIAL, RFID_18K6C_WRITE_TYPE_RANDOM }; Description: This is the type of tag write operation to be performed..
RFID_18K6C_TAG_PWD_PERM Prototype: public enum RFID_18K6C_TAG_PWD_PERM : uint { RFID_18K6C_TAG_PWD_PERM_ACCESSIBLE, RFID_18K6C_TAG_PWD_ALWAYS_ACCESSIBLE, RFID_18K6C_TAG_PWD_SECURED_ACCESSIBLE, RFID_18K6C_TAG_PWD_ALWAYS_NOT_ACCESSIBLE, RFID_18K6C_TAG_PWD_PERM_NO_CHANGE }; Description: This is the ISO 18000-6C tag password permission values..
RFID_18K6C_TAG_MEM_PERM Prototype: public enum RFID_18K6C_TAG_MEM_PERM : uint { RFID_18K6C_TAG_MEM_PERM_WRITEABLE, RFID_18K6C_TAG_MEM_ALWAYS_WRITEABLE, RFID_18K6C_TAG_MEM_SECURED_WRITEABLE, RFID_18K6C_TAG_MEM_ALWAYS_NOT_WRITEABLE, RFID_18K6C_TAG_MEM_NO_CHANGE }; Description: This is the ISO 18000-6C tag memory bank permission values.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
78
RFID_RESPONSE_TYPE Prototype: public enum RFID_RESPONSE_TYPE: uint { RFID_RESPONSE_TYPE_DATA = 0xFFFFFFFF }; Description: This is the tag-access operation response type.
RFID_RESPONSE_MODE Prototype: public enum RFID_RESPONSE_MODE: uint { RFID_RESPONSE_MODE_COMPACT = 0x00000001, RFID_RESPONSE_MODE_NORMAL = 0x00000003, RFID_RESPONSE_MODE_EXTENDED = 0x00000007 }; Description: This is the tag-access operation data-reporting mode.
RFID_MAC_RESET_TYPE Prototype: public enum RFID_MAC_RESET_TYPE: uint { RFID_MAC_RESET_TYPE_SOFT }; Description: This is the types of resets available on the MAC.
RFID_MAC_REGION Prototype: public enum RFID_MAC_REGION: uint{ RFID_MAC_REGION_FCC_GENERIC, RFID_MAC_REGION_ETSI_GENERIC }; Description: This is the regulatory mode regions.
RFID_RADIO_GPIO_PIN Prototype:
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
79
public enum RFID_RADIO_GPIO_PIN: uint { RFID_RADIO_GPIO_PIN_0 = 0x00000001<< 0, // SET_BIT(0), RFID_RADIO_GPIO_PIN_1 = 0x00000001<< 1, // SET_BIT(1), RFID_RADIO_GPIO_PIN_2 = 0x00000001<< 2, // SET_BIT(2), RFID_RADIO_GPIO_PIN_3 = 0x00000001<< 3, // SET_BIT(3), RFID_RADIO_GPIO_PIN_4 = 0x00000001<< 4, // SET_BIT(4), RFID_RADIO_GPIO_PIN_5 = 0x00000001<< 5, // SET_BIT(5), RFID_RADIO_GPIO_PIN_6 = 0x00000001<< 6, // SET_BIT(6), RFID_RADIO_GPIO_PIN_7 = 0x00000001<< 7, // SET_BIT(7), RFID_RADIO_GPIO_PIN_8 = 0x00000001<< 8, // SET_BIT(8), RFID_RADIO_GPIO_PIN_9 = 0x00000001<< 9, // SET_BIT(9), RFID_RADIO_GPIO_PIN_10 = 0x00000001<<10, // SET_BIT(10), RFID_RADIO_GPIO_PIN_11 = 0x00000001<<11, // SET_BIT(11), RFID_RADIO_GPIO_PIN_12 = 0x00000001<<12, // SET_BIT(12), RFID_RADIO_GPIO_PIN_13 = 0x00000001<<13, // SET_BIT(13), RFID_RADIO_GPIO_PIN_14 = 0x00000001<<14, // SET_BIT(14), RFID_RADIO_GPIO_PIN_15 = 0x00000001<<15, // SET_BIT(15), RFID_RADIO_GPIO_PIN_16 = 0x00000001<<16, // SET_BIT(16), RFID_RADIO_GPIO_PIN_17 = 0x00000001<<17, // SET_BIT(17), RFID_RADIO_GPIO_PIN_18 = 0x00000001<<18, // SET_BIT(18), RFID_RADIO_GPIO_PIN_19 = 0x00000001<<19, // SET_BIT(19), RFID_RADIO_GPIO_PIN_20 = 0x00000001<<20, // SET_BIT(20), RFID_RADIO_GPIO_PIN_21 = 0x00000001<<21, // SET_BIT(21), RFID_RADIO_GPIO_PIN_22 = 0x00000001<<22, // SET_BIT(22), RFID_RADIO_GPIO_PIN_23 = 0x00000001<<23, // SET_BIT(23), RFID_RADIO_GPIO_PIN_24 = 0x00000001<<24, // SET_BIT(24), RFID_RADIO_GPIO_PIN_25 = 0x00000001<<25, // SET_BIT(25), RFID_RADIO_GPIO_PIN_26 = 0x00000001<<26, // SET_BIT(26), RFID_RADIO_GPIO_PIN_27 = 0x00000001<<27, // SET_BIT(27), RFID_RADIO_GPIO_PIN_28 = 0x00000001<<28, // SET_BIT(28), RFID_RADIO_GPIO_PIN_29 = 0x00000001<<29, // SET_BIT(29), RFID_RADIO_GPIO_PIN_30 = 0x00000001<<30, // SET_BIT(30), RFID_RADIO_GPIO_PIN_31 = 0x80000000 //1<<31 // SET_BIT(31) }; Description: This is the bit mask values for the radio module GPIO pins.
RFID_Startup_EMULATION_FLAG
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
80
Prototype: public enum RFID_Startup_EMULATION_FLAG{ RFID_FLAG_LIBRARY_EMULATION = 0x00000001 }; Description: This is the flag for the RFID_Startup function. User can set to system emulation mode during RfidStartup.
RFID_RadioOpen_EMULATION_FLAG Prototype: public enum RFID_RadioOpen_EMULATION_FLAG{ RFID_FLAG_MAC_EMULATION = 0x00000001 }; Description: This is the flag for the RFID_RadioOpen function. In system emulation mode, user can set to MAC emulation mode while calling RadioOpen .
RFID_18K6CTag_FLAG Prototype: public enum RFID_18K6CTag_FLAG{ RFID_FLAG_PERFORM_SELECT = 0x00000001, RFID_FLAG_PERFORM_POST_MATCH = 0x00000002 }; Description: This is the flag for the RFID_18K6CTag* functions.
Structures:
RFID_Startup_T Prototype: public struct RFID_Startup_T{ public RFID_VERSION LibraryVersion; //[out] RFID_VERSION* public UInt32 flags; public HRESULT_RFID_STATUS status; //[ret] }; Fields: [out] LibraryVersion: [in] flags: emulation mode or live.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
81
Description: This is the data structure for f_RfidDev_Startup operation.
RFID_Shutdown_T Prototype: public struct RFID_Shutdown_T{ public HRESULT_RFID_STATUS status; }; Fields:
--
Description: This is the data structure for f_RfidDev_Shutdown operation.
RFID_RetrieveAttachedRadiosList_T Prototype: public struct RFID_RetrieveAttachedRadiosList_T{ public RFID_RADIO_ENUM_T radio_enum; public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] radio_enum: enum of radio object. [in] flags: 0. reserved. Description: This is the data structure for f_RfidDev_RetrieveAttachedRadiosList operation. CS101 only has a single radio object for RFID_RADIO_ENUM, array of objects is not required.
RFID_RadioOpen_T Prototype: public struct RFID_RadioOpen_T{ public UInt32 cookie; public RFID_RADIO_HANDLE handle; //[out] public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] cookie: cookie in radio_enum above. [out] handle: the rfid_handle to be returned.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
82
[in] flags: MAC emulation mode or live. Description: This is the data structure for f_RfidDev_RadioOpen operation.
RFID_RadioClose_T Prototype: public struct RFID_RadioClose_T{ public RFID_RADIO_HANDLE handle; public HRESULT_RFID_STATUS status; }; Fields:
--
Description: This is the data structure for f_RfidDev_RadioClose operation.
RFID_RadioGetSetConfigurationParameter_T Prototype: public struct RFID_RadioGetSetConfigurationParameter_T{ public RFID_RADIO_HANDLE handle; public UInt16 parameter; public UInt32 value; //[out/in] public HRESULT_RFID_STATUS status; }; Fields: [in] parameter: The parameter address to set. [out/in] value: The value content to get/set. Description: This is the data structure for f_RfidDev_RadioGetConfigurationParameter / f_RfidDev_RadioSetConfigurationParameter operation.
RFID_RadioGetSetOperationMode_T Prototype: public struct RFID_RadioGetSetOperationMode_T{ public RFID_RADIO_HANDLE handle; public RFID_RADIO_OPERATION_MODE mode; public HRESULT_RFID_STATUS status; };
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
83
Fields: [out/in] mode: continuous or non-continuous. Description: This is the data structure for f_RfidDev_RadioGetOperationMode / f_RfidDev_RadioSetOperationMode operation.
RFID_RadioGetSetPowerState_T Prototype: public struct RFID_RadioGetSetPowerState_T{ public RFID_RADIO_HANDLE handle; public RFID_RADIO_POWER_STATE state; public HRESULT_RFID_STATUS status; }; Fields: [out/in] state: power on/off state. Description: This is the data structure for f_RfidDev_RadioGetPowerState / f_RfidDev_RadioSetPowerState operation.
RFID_RadioGetSetCurrentLinkProfile_T Prototype: public struct RFID_RadioGetSetCurrentLinkProfile_T{ public RFID_RADIO_HANDLE handle; public UInt32 profile; public HRESULT_RFID_STATUS status; }; Fields: [out/in] profile: profile 0--5 . Description: This is the data structure for f_RfidDev_RadioGetCurrentLinkProfile / f_RfidDev_RadioSetCurrentLinkProfile operation.
RFID_RadioGetLinkProfile_T
Prototype:
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
84
public struct RFID_RadioGetLinkProfile_T{ public RFID_RADIO_HANDLE handle; public UInt32 profile; public RFID_RADIO_LINK_PROFILE linkProfileInfo; //[out] public HRESULT_RFID_STATUS status; }; Fields: [in] profile: profile 0-- 5. [out/in] linkProfileInfo: link profile information. Description: This is the data structure for f_RfidDev_RadioGetLinkProfile operation.
RFID_RadioReadWriteLinkProfileRegister_T
Prototype: public struct RFID_RadioReadWriteLinkProfileRegister_T{ public RFID_RADIO_HANDLE handle; public UInt32 profile; public UInt16 address; public UInt16 value; public HRESULT_RFID_STATUS status; }; Fields: [in] profile: profile id (0--5) for the link-profile register to be accessed. [in] address: address of the register. [out/in] value: content. Description: This is the data structure for f_RfidDev_RadioRead(/Write)LinkProfileRegister operation.
RFID_AntennaPortGetStatus_T Prototype: public struct RFID_AntennaPortGetStatus_T{ public RFID_RADIO_HANDLE handle; public UInt32 antennaPort; public RFID_ANTENNA_PORT_STATUS portStatus; //[out] public HRESULT_RFID_STATUS status; }; Fields:
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
85
[in] antennaPort: always = 0 for CS101. [out] portStatus: enabled/disabled. Description: This is the data structure for f_RfidDev_AntennaPortGetStatus operation.
RFID_AntennaPortSetState_T Prototype: public struct RFID_AntennaPortSetState_T{ public RFID_RADIO_HANDLE handle; public UInt32 antennaPort; public RFID_ANTENNA_PORT_STATE state; public HRESULT_RFID_STATUS status; }; Fields: [in] antennaPort: always = 0 for CS101. [in] state: enabled / disabled. Description: This is the data structure for f_RfidDev_AntennaPortSetState operation.
RFID_AntennaPortGetSetConfiguration_T Prototype: public struct RFID_AntennaPortGetSetConfiguration_T{ public RFID_RADIO_HANDLE handle; public UInt32 antennaPort; public RFID_ANTENNA_PORT_CONFIG config; // [const struct*] public HRESULT_RFID_STATUS status; }; Fields: [in] antennaPort: always 0 for CS101 . [in/out] config: the structure to be configured. Description: This is the data structure for f_RfidDev_AntennaPortGetConfiguration / f_RfidDev_AntennaPortSetConfiguration operation.
RFID_18K6CSetSelectCriteria__T Prototype: public struct RFID_18K6CSetSelectCriteria__T{
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
86
public RFID_RADIO_HANDLE handle; public UInt32 countCriteria; public RFID_18K6C_SELECT_CRITERIA criteria; //[in] const* public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] countCriteria: criteria count. [in] criteria: criteria to set. [in] flags: flags. Description: This is the data structure for f_RfidDev_18K6CSetSelectCriteria… operation.
RFID_18K6CGetSelectCriteria__T Prototype: public struct RFID_18K6CGetSelectCriteria__T{ public RFID_RADIO_HANDLE handle; public UInt32 countCriteria; public RFID_18K6C_SELECT_CRITERIA criteria; public HRESULT_RFID_STATUS status; }; Fields: [in] countCriteria: criteria count. [in] criteria: criteria to get. Description: This is the data structure for f_RfidDev_18K6CGetSelectCriteria… operation.
RFID_18K6CSetPostMatchCriteria__T Prototype: public struct RFID_18K6CSetPostMatchCriteria__T{ public RFID_RADIO_HANDLE handle; public UInt32 countCriteria; public RFID_18K6C_SINGULATION_CRITERIA criteria; //[in] const* public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] countCriteria: criteria count.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
87
[in] criteria: criteria to set. Description: This is the data structure for f_RfidDev_18K6CSetPostMatchCriteria… operation.
RFID_18K6CGetPostMatchCriteria__T Prototype: public struct RFID_18K6CGetPostMatchCriteria__T{ public RFID_RADIO_HANDLE handle; public UInt32 countCriteria; public RFID_18K6C_SINGULATION_CRITERIA criteria; public HRESULT_RFID_STATUS status; }; Fields: [in] countCriteria: criteria count. [in] criteria: criteria to get. Description: This is the data structure for f_RfidDev_18K6CGetPostMatchCriteria… operation.
RFID_18K6CGetSetQueryTagGroup_T Prototype: public struct RFID_18K6CGetSetQueryTagGroup_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_TAG_GROUP group; public HRESULT_RFID_STATUS status; }; Fields: [out / in] Group: the tag group for subsequent tag-protocol operations applied to it. This is not NULL. Description: This is the data structure for f_RfidDev_18K6CGet(/Set)QueryTagGroup operation.
RFID_18K6CGetSetCurrentSingulationAlgorithm_T Prototype: public struct RFID_18K6CGetSetCurrentSingulationAlgorithm_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_SINGULATION_ALGORITHM algorithm; public HRESULT_RFID_STATUS status; };
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
88
Fields: [out/ in] Algorithm: enum of the Q type of interest. 0 = fixedQ; 1 = dynamicQ 2 = dynamicQAdjust 3 = dynamicQThresh; Description: This is the data structure for f_RfidDev_18K6CGet(/Set)CurrentSingulationAlgorithm operation.
RFID_18K6CGetSetSingulationAlgorithmParameters_T Prototype: public struct RFID_18K6CGetSetSingulationAlgorithmParameters_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_SINGULATION_ALGORITHM_PARMS_T singulationParms; public HRESULT_RFID_STATUS status; }; Fields: [in] parms: singulation algorithm parameters Description: This is the data structure for f_RfidDev_18K6CGet(/Set)SingulationAlgorithmParameters operation.
RFID_18K6CSetQueryParameters_T Prototype: public struct RFID_18K6CSetQueryParameters_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_QUERY_PARMS parms; //[in] const* public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] parms: structure containing the query parameters.. [in] flags: flags. Description: This is the data structure for f_RfidDev_18K6CSetQueryParameters operation.
RFID_18K6CGetQueryParameters_T Prototype: public struct RFID_18K6CGetQueryParameters_T{
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
89
public RFID_RADIO_HANDLE handle; public RFID_18K6C_QUERY_PARMS parms; public HRESULT_RFID_STATUS status; }; Fields: [in] parms: structure obtaining the query parameters.. Description: This is the data structure for f_RfidDev_18K6CGetQueryParameters operation.
RFID_18K6CTagInventory_T Prototype: public struct RFID_18K6CTagInventory_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_INVENTORY_PARMS invenParms; //[in] const* public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] invenParms: INVENTORY_PARMS [in] flags: . 0 | RFID_FLAG_PERFORM_SELECT |& RFID_FLAG_PERFORM_POST_MATCH Description: This is the data structure for f_RfidDev_18K6CTagInventory operation.
RFID_18K6CTagRead_T
Prototype: public struct RFID_18K6CTagRead_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_READ_PARMS readParms; //[in] const* public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] readParms: READ_PARMS [in] flags: 0 | RFID_FLAG_PERFORM_SELECT |& RFID_FLAG_PERFORM_POST_MATCH Description: This is the data structure for f_RfidDev_18K6CTagRead operation.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
90
RFID_18K6CTagWrite_T Prototype: public struct RFID_18K6CTagWrite_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_WRITE_PARMS_T writeParms; //[in] const* public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] writeParms: PARMS [in] flags: 0 | RFID_FLAG_PERFORM_SELECT |& RFID_FLAG_PERFORM_POST_MATCH Description: This is the data structure for f_RfidDev_18K6CTagWrite operation.
RFID_18K6CTagKill_T Prototype: public struct RFID_18K6CTagKill_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_KILL_PARMS killParms; //[in] const public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] killParms: PARMS [in] flags: 0 | RFID_FLAG_PERFORM_SELECT |& RFID_FLAG_PERFORM_POST_MATCH Description: This is the data structure for f_RfidDev_18K6CTagKill operation.
RFID_18K6CTagLock_T Prototype: public struct RFID_18K6CTagLock_T{ public RFID_RADIO_HANDLE handle; public RFID_18K6C_LOCK_PARMS lockParms; //[in] const* public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields:
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
91
[in] lockParms: PARMS [in] flags: 0 | RFID_FLAG_PERFORM_SELECT |& RFID_FLAG_PERFORM_POST_MATCH Description: This is the data structure for f_RfidDev_18K6CTagLock operation.
RFID_RadioGetSetResponseDataMode_T Prototype: public struct RFID_RadioGetSetResponseDataMode_T { public RFID_RADIO_HANDLE handle; public UInt32 responseType; //RFID_RESPONSE_TYPE public UInt32 responseMode; //[in] |[out] RFID_RESPONSE_MODE public HRESULT_RFID_STATUS status; }; Fields: [in] responseType: currently always RFID_RESPONSE_TYPE_DATA (0xffffffff) [out,in] responseMode: Compact, Normal(default), extended. Description: This is the data structure for f_RfidDev_RadioGetResponseDataMode / f_RfidDev_RadioSetResponseDataMode operation.
RFID_MacUpdateFirmware_T Prototype: public struct RFID_MacUpdateFirmware_T { public RFID_RADIO_HANDLE handle; public UInt32 length; public UIntPtr pImage; //const INT8U* public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: To Be Designed . Description: This is the data structure for f_RfidDev_MacUpdateFirmware operation.
RFID_MacGetVersion_T Prototype: public struct RFID_MacGetVersion_T {
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
92
public RFID_RADIO_HANDLE handle; public RFID_VERSION version; public HRESULT_RFID_STATUS status; }; Fields: [out] version: Rfid MAC version. Description: This is the data structure for f_RfidDev_MacGetVersion operation.
RFID_MacReadWriteOemData_T Prototype: public struct RFID_MacReadWriteOemData_T { public RFID_RADIO_HANDLE handle; public UInt32 address; public UInt32 count; public UIntPtr pData; //UI32* ptr to an BYTE-array[count*4+1] public HRESULT_RFID_STATUS status; }; Fields: To Be Designed. Description: This is the data structure for f_RfidDev_MacReadOemData / f_RfidDev_MacWriteOemData operation.
RFID_MacReset_T Prototype: public struct RFID_MacReset_T { public RFID_RADIO_HANDLE handle; public RFID_MAC_RESET_TYPE resetType; // public HRESULT_RFID_STATUS status; }; Fields: [in] resetType: soft_reset. Description: This is the data structure for f_RfidDev_MacReset operation.
RFID_MacClearError_T
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
93
Prototype: public struct RFID_MacClearError_T { public RFID_RADIO_HANDLE handle; public HRESULT_RFID_STATUS status; }; Fields:
-- .
Description: This is the data structure for f_RfidDev_MacClearError operation.
RFID_MacBypassReadWriteRegister_T Prototype: public struct RFID_MacBypassReadWriteRegister_T{ public RFID_RADIO_HANDLE handle; public UInt16 address; public UInt16 value; public HRESULT_RFID_STATUS status; }; Fields: [in] address: UINT16 register address. [out,in] value: UINT32 value. Description: This is the data structure for f_RfidDev_MacBypassReadRegister / f_RfidDev_MacBypassWriteRegister operation.
RFID_MacGetSetRegion_T Prototype: public struct RFID_MacGetSetRegion_T { public RFID_RADIO_HANDLE handle; public UInt32 region; //RFID_MAC_REGION public IntPtr pRegionConfig; //void* public HRESULT_RFID_STATUS status; }; Fields: To Be Designed. Description: This is the data structure for
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
94
f_RfidDev_MacGetRegion / f_RfidDev_MacSetRegion operation.
RFID_RadioSetGpioPinsConfiguration_T Prototype: public struct RFID_RadioSetGpioPinsConfiguration_T { public RFID_RADIO_HANDLE handle; public UInt32 mask; public UInt32 configuration; public HRESULT_RFID_STATUS status; }; Fields: [in] mask: bit mask of GPIO’s Ids. [in] configuration: GPIO In or Out. Description: This is the data structure for f_RfidDev_RadioSetGpioPinsConfiguration operation.
RFID_RadioGetGpioPinsConfiguration_T
Prototype: public struct RFID_RadioGetGpioPinsConfiguration_T { public RFID_RADIO_HANDLE handle; public UInt32 configuration; public HRESULT_RFID_STATUS status; }; Fields: configuration: bit masked status of the 32 GPIOs (as Input or Output pin). Description: This is the data structure for f_RfidDev_RadioGetGpioPinsConfiguration operation.
RFID_RadioReadWriteGpioPins_T Prototype: public struct RFID_RadioReadWriteGpioPins_T { public RFID_RADIO_HANDLE handle; public UInt32 mask; public UInt32 value; public HRESULT_RFID_STATUS status; };
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
95
Fields: [in] mask: bit mask of GPIOs to be affected. [out,in] value: values Description: This is the data structure for f_RfidDev_RadioReadGpioPins / f_RfidDev_RadioWriteGpioPins operation.
RFID_RadioCancelOperation_T Prototype: public struct RFID_RadioCancelOperation_T { public RFID_RADIO_HANDLE handle; public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] flags: unreferenced. Description: This is the data structure for f_RfidDev_RadioCancelOperation operation.
RFID_RadioAbortOperation_T Prototype: public struct RFID_RadioAbortOperation_T { public RFID_RADIO_HANDLE handle; public UInt32 flags; public HRESULT_RFID_STATUS status; }; Fields: [in] flags: unreferenced. Description: This is the data structure for f_RfidDev_RadioAbortOperation operation.
RFID_RadioIssueCommand_T Prototype: public struct RFID_RFID_RadioIssueCommand_T { public RFID_RADIO_HANDLE handle; public UInt32 command; //e.g. 0x17 public HRESULT_RFID_STATUS status;
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
96
}; Fields: [in] flags: unreferenced. Description: This is the data structure for f_RfidDev_RadioAbortOperation operation. Note: {RFID_PACKET_CALLBACK_FUNCTION Callback; void* context; INT32S* pCallbackCode;} is handled in rfid lib.
RFID_PACKETMSG_COMMON_T Prototype: public struct RFID_PACKETMSG_COMMON_T { public Byte pkt_ver; //INT8U Packet specific version number public Byte flags; // Packet specific flags public UInt16 pkt_type; // Packet type identifier public UInt16 pkt_len; // Packet length preamble: number of 32-bit words that follow the common public UInt16 res0; // Reserved for future use }; Fields: pkt_ver: Packet specific version number flags: Packet specific flags pkt_type: Packet type identifier pkt_len: Packet length preamble: number of 32-bit words that follow the common res0: Reserved for future use Description: This is the common packet preamble that contains fields that are common to all packets.
RFID_PACKETMSG_COMMAND_BEGIN_T Prototype: public struct RFID_PACKETMSG_COMMAND_BEGIN_T { public RFID_PACKETMSG_COMMON_T cmn; public UInt32 command; public UInt32 ms_ctr; }; Fields: cmn: The command context command: The command for which the packet sequence is in response to ms_ctr: Current millisecond counter.
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
97
Description: This is the command-begin packet.
RFID_PACKETMSG_COMMAND_END_T Prototype: public struct RFID_PACKETMSG_COMMAND_END_T { public RFID_PACKETMSG_COMMON_T cmn; public UInt32 ms_ctr; // Current millisecond counter public UInt32 status; // Command status indicator }; Fields: cmn: The command context. ms_ctr: Current millisecond counter. Description: This is the command-end packet.
RFID_PACKETMSG_ANTENNA_CYCLE_BEGIN_T Prototype: public struct RFID_PACKETMSG_ANTENNA_CYCLE_BEGIN_T { public RFID_PACKETMSG_COMMON_T cmn; // No other packet specific fields }; Fields: cmn: The command context. Description: This is the antenna-cycle-begin packet.
RFID_PACKETMSG_ANTENNA_CYCLE_END_T Prototype: public struct RFID_PACKETMSG_ANTENNA_CYCLE_END_T { public RFID_PACKETMSG_COMMON_T cmn; // No other packet specific fields }; Fields: cmn: The command context. Description: This is the antenna-cycle-begin packet..
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
98
RFID_PACKETMSG_ANTENNA_BEGIN_T Prototype: public struct RFID_PACKETMSG_ANTENNA_BEGIN_T { public RFID_PACKETMSG_COMMON_T cmn; // The logical antenna ID public UInt32 antenna; }; Fields: cmn: The command context. antenna: The antenna id . Description: This is the antenna-begin packet.
RFID_PACKETMSG_ANTENNA_END_T Prototype: public struct RFID_PACKETMSG_ANTENNA_END_T { public RFID_PACKETMSG_COMMON_T cmn; // No other packet specific fields }; Fields: cmn: The command context. Description: This is the antenna-end packet.
RFID_PACKETMSG_INVENTORY_CYCLE_BEGIN_T Prototype: public struct RFID_PACKETMSG_INVENTORY_CYCLE_BEGIN_T { public RFID_PACKETMSG_COMMON_T cmn; public UInt32 ms_ctr;. } Fields: cmn: The command context. ms_ctr: Current millisecond counter. Description: This is the inventory-cycle-begin packet.
RFID_PACKETMSG_INVENTORY_CYCLE_END_T Prototype: public struct RFID_PACKETMSG_INVENTORY_CYCLE_END_T { public RFID_PACKETMSG_COMMON_T cmn;
CSL CS101-2 EPC CLASS 1 GEN 2 RFID HANDHELD READ ER USER'S MANUAL, VERSION 1.0
Copyright © Convergence Systems Limited, All Rights Reserved
99
public UInt32 ms_ctr; }; Fields: cmn: The command context. ms_ctr: Current millisecond counter. Description: This is the inventory-cycle-end packet.
RFID_PACKETMSG_18K6C_INVENTORY_ROUND_BEGIN_T Prototype: public struct RFID_PACKETMSG_18K6C_INVENTORY_ROUND_BEGIN_T { public RFID_PACKETMSG_COMMON_T cmn; // No packet specific fields }; Fields: cmn: The command context. Description: This is the data structure in the message. .
RFID_PACKETMSG_18K6C_INVENTORY_ROUND_END_T Prototype: public struct RFID_PACKETMSG_18K6C_INVENTORY_ROUND_END_T { public RFID_PACKETMSG_COMMON_T cmn; // No packet specific fields }; Fields: cmn: The command context. Description: This is the ISO 18000-6C inventory round end packet.
RFID_PACKETMSG_18K6C_TAG_ACCESS_T Prototype: // Pointers and fixed size buffers may only be used in an unsafe context public unsafe struct RFID_PACKETMSG_18K6C_TAG_ACCESS_T { public RFID_PACKETMSG_COMMON_T cmn; public UInt32 ms_ctr; //UInt32 public Byte command; //INT8U
Loading...