RFID Software

Disclaimer: Our software is most compatible with our RFID products. When used with other RFID products, you might not get the best results.
RFID products are a great addition to any industry, but the most important part of an RFID solution is the software. Data delivered to and retrieved from RFID devices like RFID tags, readers, encoders, and printers are processed using RFID software.
Check out the details of our downloadable application below!
 
 

I. MTC CS108 - Mobile App V6

1. System Architecture

The structures and methods used to design and construct an application are described in an application or system architecture.
Our app is designed on an IoT Stack as such:

2. Mobile Extension – Inventory

When you download our application, you will be able to:
  • Manage tag reads and item reconciliations.
  • Resolve geolocation from GPS sensor on the Android device.
  • Correlate assigned location to physical location of the items.
  • Reduce the usage of multiple background colors to keep the design clean and easy to read. Each of the items will be labeled with visuals (Okay/wrong location/unknown icons) to indicate status of the items.
  • Swipe right on item to launch Geiger search for the EPC.
  • Items are being reordered in real-time so that the Okay items will be pushed to the bottom of the list, where the pending / unknown items are staying on top of the list. All items are sorted alphabetically with optimized sorting algorithms.
  • Validate with sample test data
There are four different “tag status” icons that will be shown on the Inventory List:
Icon
Status
Description
Empty (no icon)
Pending
Assets that have been given the current location but have not yet been read are being retrieved from the asset information collection.
 
  • Assigned location = empty
  • Timestamp = empty
Unknown
Assets are being read at the location, but the device has no asset information.
 
  • Assigned location = empty
  • Timestamp = when the tag is read
Correct
Assets are being read at the location, but the device has no record of any assets.
 
  • Assigned location = current location
  • Timestamp = when the tag is read
Misplaced
Assets are being read at the location, however the device does not have any asset information.
  • Assigned location ! = current location
  • Timestamp = when the tag is read
 
  • Manage tag reads and item reconciliations
  • Resolve geolocation from GPS sensor on the Android device
  • Correlate assigned location to physical location of the items
  • Reduce the usage of multiple background color to keep the design clean and easy to read. Each of the items will be labeled with visuals (Okay/wrong location/unknown icons) to indicate status of the items
  • Swipe right on item to launch Geiger search for the EPC
  • Items are being reordered in real-time so that the Okay items will be pushed to the bottom of the list, where the pending unknown items are staying on top of the list. All items are sorted alphabetically with optimized sorting algorithm

3. Local Storage - LiteDB

Data Modeling
  • All persistent data will be saved to LiteDB
  • High performance schema-less NoSQL database
  • To be synchronized with centralized database
Records will be saved in four collections:
  • Asset Information Collection
    • ID: int
    • EPC: string
    • Serial number: string
    • Descriptions: string
    • Asset image: string
 
  • Asset Location Collection
    • ID: int
    • Latitude: double
    • Longitude: double
    • Location description: string
 
  • RFID Scan Data Collection
    • ID: guid
    • EPC: string
    • Reader ID: string
    • Timestamp: date / time
    • Location ID: int
    • Comments: string
    • Image: string
    • Uploaded to cloud: int
 
  • RFID In Process Collection
Asset Information and Location
  • Create data collections in local storage for Asset and location information
  • Import test data manually for initial testing
Saving tag reads to local storage
  • Each entries will be saved with GUID
  • Saving time of read and name of the reader

4. Search RFID Tag Option

5. Mobile Extension – Location-Based Services

6. Managing Data with Local Storage - LiteDB

  • All tag data will be saved in the high performance NoSQL database locally similar to MongoDB.
  • Data can be synced back to a remote database (MSSQL/MySQL/MongoDB).
  • Auto-saving all in-process data when leaving the Inventory page to avoid data loss.
  • Submitted data will be pending for upload to the remote database when connection is available.
  • Data reconciliation is performed in real-time when the asset information is stored locally.
  • Load asset information and asset location data to devices with JSON files.
    • Modify the content of AssetInformation.json and AssetLocation.json to be imported to the device.
    • Install the APK of the app on our device.
    • Connect the device to your PC through USB and enable file transfer (mass storage).
    • Go to the folder /Android/data/mtc.cs108rfid.reader/files on the device and delete all the .db files.
    • Copy the two JSON files to the folder.
    • Close and launch the program again and data on the JSON files will be loaded into the local database.
  • Asset Information
    • The records in this collection will be assigned with a unique ID automatically when being inserted.
  • Asset Location
    • The records in this collection have integer key values. You should assign IDs to each record manually so that they can match up with the Location ID file on the Asset Information records.
 
  • Manage tag reads and item reconciliations.
  • Resolve geolocation from GPS sensor on the Android device.
  • Correlate assigned location to physical location of the items.
  • Reduce the usage of multiple background color to keep the design clean and easy to read. Each of the items will be labeled with visuals (Okay/wrong location/unknown icons) to indicate status of the items
  • Swipe right on item to launch Geiger search for the EPC
  • Items are being reordered in real-time so that the Okay items will be pushed to the bottom of the list, where the pending unknown items are staying on top of the list. All items are sorted alphabetically with optimized sorting algorithm
  • Three-tier architecture with RESTful WebAPI for data access.
  • WebAPI for user registration/activation/password reset/authentication.
  • WebAPI for data access:
    • Asset Information
    • Asset Location
    • Scanned RFID data
  • Swagger web client for easy API testing.
  • Database ORM through Entity Framework Core 6.0 and can be mapped to other databases such as MySQL and PostgreSQL.
Swagger Web Client
Auth: User Registration/Activation/Password Reset/Authentication
Asset Information: Asset Registry
AssetLocation: Location Definitions with Latitude/Longitude
RFIDScanData: Asset Inventory and Reconciliation Data

II. Vehicle Tracking Solution with CS203X Integrated Reader

1. Software Installation – Client Software

Windows Desktop client for:
  • Vehicle movement tracking
  • Tag registrations
  • Configuration settings

2. Solution Design Document

3. Integration Process

  • Prepare a Windows 10 PC/Laptop
  • Configure the CS203X readers for sending tag data to the PC
  • Install Mosquitto MQTT Broker for messaging
  • Install Microsoft SQL Server Express
  • Install middleware for message processing
  • Install desktop client application
  • Create RFID tag data simulator for testing without reader (optional)

4. System Validations – MQTT Messaging

5. System Validations – RFID Tag Simulator

  • Run Node-Red by typing “node-red” at the command prompt
  • Import the simulator flow and deploy. This will send a vehicle event every 60 seconds, where it creates a random delay of 10-20s between Reader A and Reader B

RFID Software

Disclaimer: Our software is most compatible with our RFID products. When used with other RFID products, you might not get the best results.