08. Fixed Readers - TEC-RFID/rfid-asset-documentation GitHub Wiki
This is a technical guide for those prepared to set up or debug their own fixed reader configuration. We generally recommend that the below be carried out by our TEC-RFID installation staff: this service will typically be included in your initial setup fee.
A. Equipment needed
To set up fixed RFID reading, you will need the following equipment:
- A fixed RFID reader, such as a Zebra FX7500 or FX9600 reader
- RFID antennas, such as a Zebra AN510
- RFID cables, for connecting the reader to the antennas
- A power source - either a Zebra Power Supply (PWR-BGA24V78W1WW) or an ethernet cable with POE, using a POE injector or POE enable switch
- A connection method - for testing, an ethernet cable is recommended. For final installation, connecting to the network using ethernet is the best method. Wi-Fi is also an option, using an external USB dongle.
- Optional: brackets for mounting the antennas
B. Antenna cables
There are variety of types of RFID cables. Common connector types are:
- SMA male connectors - use for most antennas
- TNC RP male - used for the reader connection for the FX7500 and FX9600
You can use a variety of grades of cable, but we normally use LMR-240 cable, which is suited for outdoors. The type of connector used needs to match the grade of the cable.
C. The admin portal
The admin portal enables users to configure the readers. To access the admin portal, there is a sticker on the side of the FX7500 or FX9600. You can access it by typing http:// and then the code on the sticker, for example http://fx96006ba758. By default, the readers ship in http mode and the default password for admin is 'change'. After firmware version v3.10.30, it switches to HTTPS mode and the user is required to change from the default password.
i. Firmware
- Firmware is found here
- To upgrade firmware, download the desired firmware version and extract the files
- Go to the admin portal, select firmware, update, file based upload, and then select all files in the firmware folder
- In order to upgrade to firmware v3.21.23 or above, you need to update to v3.21.21 first
ii. IP Address
- The reader is set to DHCP by default
- To find the IP address, click Dashboard and it will be displayed
- Instructions for setting a fixed IP address are available here
D. IoT connector
Starting from v3.21.21, Zebra introduced IoT Connector. The documentation is found here.
Instructions for setting up IoT Connector as a test using HTTP POST are available below.
i. Setup
- Log into the admin portal, click Communication, Zebra IoT Connector, then Configuration
- Select HTTP POST under Endpoint Type and fill in your endpoint/webhook details, then click Add
- Once you've added your endpoint, scroll down and check local rest management and local rest control, then update
ii. Connection
- On the connection tab of IoT connector, click connect or disconnect and check or uncheck connect automatically as desired
- If you plug in a reader and it is inaccessible in 123RFID or TECRFIDService, it may be connected to IoT Connector - if so, login to the web portal and disconnect IoT Connector
iii. Commands
A Postman collection for the commands is available to download here: IoT Connector Commands.postman_collection.json
Steps for using the commands:
- With the Auth command, input the basic auth credentials of the reader - this will return a bearer token - which will expire after about a minute
- With the Start and Stop commands, copy the bearer token from Auth and paste in bearer token under these commands
- You can then run the Start and Stop commands to send data
E. Testing using 123RFID
Zebra makes 123RFID Desktop available for free, which is ideal for configuring and testing fixed RFID readers. You can download it and find help documentation here.
Steps for testing with 123RFID:
- Power the reader and connect it to a laptop using an ethernet cable
- Open 123RFID
- Click find readers
- If none are found, you can find the IP address from the web portal
- Connect to the RFID reader
- You can click antennas to disable them and adjust antenna power
- To test whether you can read a specific set of tags, you can upload them as a .txt or .csv file
- It will only accept a simple .csv - if your list of tags is in Excel, copy and paste into Notepad with each EPC on its own line, then upload
- To collect a list of EPCs using a fixed reader, turn the power down to 10dbm, then pass the tags near the antenna, to ensure no extra tags are included
- Using the handheld reader with 123RFID Mobile, turn the power down to 40, then under Application Settings, tick export data. You can then use the handheld reader on low power to collect EPCs from blank tags and export them to create a tag list
F. Configuring and installing TECRFIDService and RFID Asset
i. Configuring TECRFIDService
We connect to RFID Asset using the TECRFIDService. Extract the provided files, then open TECRFIDService.txt to configure it. If you make any changes to the config file while the service is running, you need to stop and restart it for the changes to take effect.
Main Settings
- DISABLESQL 0-1 Disable SQL to use HTTPPOST
- APIKEY http post api key (found under settings, API key)
- POSTHTTP url of post api (https://app.tec-rfid.co.uk/api/update-asset-location-by-reader-id)
- SCANMODE 0-2 0 is INBOUND/OUTBOUND, 1 adds PROBABLY INBOUND/PROBABLY OUTBOUND, 2 = Antenna number for last read
- TAGPERSIST Seconds before tag is dropped from internal tables (2.0)
- TIMESLICE length of time each antenna live in ms (100)
- SESSION 0-3 is RFID session, 4 = in/out toggle 2/3 (0)
- MODE RFID Scan mode (0)
- MINREADS Minimum reads to trigger an event (0)
- STATIONARYTIME Scanmode 2 only - Length of time in reader antenna field before an event is triggered or 0 to disable - (0)
- FILTERMINUTES The prevents repeatedly sending updates for one tag for the same antenna within a set duration, values are in seconds
- PAIR Use this to treat more than one antenna as the same location for filtering purposes
Advanced Settings:
- LEADTRIM 0-23 how many digits to strip from start of tag (0)
- POSTTRIM 0-23 how many digits to strip from end of tag (0)
- MAXTAG 1-24 tag will be truncated to this from start (Use 9/10 for integer id's) (24)
- TRIMLEADZERO 0/1 leave/remove leading zeros from start of tag after above processing (0)
- ALLOWALPHA 0/1 Allow hex chars in tag or not * If sql database stores employeID as integer then do not use this (0)
- CONVERTASCII 0/1 Convert valid ascii tags to ASCII, tags including codes outside of 32-127 will be treated as non ascii - ALLOWALPHA needs to be enabled (0)
- SEGMENTS How many segments to break read data into (10)
- SEGLEN Length of data sample at start and end of reads for analysis (10)
- FILTER Comma seperated list of tags to ignore (After all above processing done)
- MAXRSSI -99 -> -50 Tag strength cut off (-99)
- GPIOTIMEOUT Seconds for GPIO (LED) to be enabled (8.0)
- READERRETRY Seconds before reader connection reconnected (15)
Set up reader configs as follows:
- Readers use port 5084. If communicating through firewall multiple ports may need to be mapped back to readers
- READER Reader name (alphanumeric)
- Location num (Integer)
- Reader type (string)
- IP address (string) - find on reader dashboard as above
- Port (integer)
- Power (Double)
- GPIO (IMP 1-3, ZEB ?-?, -1 = not used)
- Antenna (upto 8 chars 0=Outbound, 1=Inbound, x = not used)
Max power for Zebra antennas: 10.0-29.2
Zebra readers must have ntp server set and be set to GMT - Also disable frequency hopping and choose frequency not to conflict with nearby readers
Example config file
DISABLESQL|"1"
APIKEY|"[insert API Key]"
POSTHTTP|"https://app.tec-rfid.co.uk/api/update-asset-location-by-reader-id"
ALLOWALPHA|"1"
SCANMODE|"2"
SESSION|"0"
SEGLEN|"100"
TAGPERSIST|"2.0"
TIMESLICE|"250"
MINREADS|"0"
STATIONARYTIME|"5"
FILTERMINUTES|"60"
PAIR|"READER1-1,READER1-2"
READER|"READER1,1,ZEB,192.168.1.146,5084,29.2,-1,0101"
You create a unique READER entry for each reader on the network. Below is an explanation of what each part of the reader record means.
READER|"READER1 (reader name),1 (location number),ZEB (RFID reader brand - Zebra),192.168.1.146 (IP address),5084 (port number),29.2 (RFID power, measured in dbm),-1 (GPIO off),0101 (number of antennas and which antennas are in or out in SCANMODE 0 or 1)"
ii. Testing and installing TECRFIDService
- To test the service, open TECRFIDService.exe
- To Install as a service, right click Install.bat and click run as administrator
- It may not automatically start. To check, type Services in the start bar, then scroll down to TECRFIDService, select and click start service
- To uninstall the service, right click Install.bat and click run as administrator
iii. Configuring locations in RFID Asset
- Set the reader names in the TECRFIDService config file (reader name in bold): READER|"READER1,1,ZEB,192.168.1.146,5084,29.2,-1,0101"
- The tag reads will be sent to RFID Asset using the reader name and then the antenna number (corresponding to the port on the reader the antenna is plugged into). E.g. READER1 antenna 1 will be sent as READER1-1 and antenna 2 will be READER1-2
- To associate a reader and antenna to a location in Asset, edit the location, and input the antenna code under Reader ID, e.g. READER1-1, for READER1, antenna port 1