Extension of WIPI for Mobile RFID Using Generic I/O
Marie Kim1, LeeYongJoon2
RFID/USN Research Division, ETRI
161 Gajeong-Dong, Yuseong-Gu, Daejeon, 305-350, KOREA
Tel : +82-42-860-1590, Fax : +82-42-869-1712
Abstract
WIPI(Wireless Internet Platform for Interoperability) is the Korean Mobile Standard Platform which provides execution environment for Mobile application. WIPI is our own national standard specification and loaded in all mobile communication devices which are sold in our country since April 2005. Mobile RFID is the technology that provides information in mobile communication device to internet. To apply Mobile RFID, RFID reader must be loaded in mobile communication device. WIPI platform must control this reader and execute filtering function to obtain necessary information.
This paper defines Mobile RFID middleware functionalities and suggests the method of WIPI platform extension which provides Mobile RFID utility service. This paper devises Mobile RFID platform which extends Generic I/O. Extended WIPI platform provides the reader control functionalities such as PowerOn, PowerOff, Open, Close, Reset. In addition, extended WIPI platform provides the tag control functionalities such as ReadTagID, ReadUserData, WriteTagID, WriteUserData, KillTag, LockTag, UnlockTag, etc. Finally, extended WIPI platform supports filtering operation based tag identifier.
Keyword:Mobile, RFID, WIPI, Reader, Generic I/O
1
I.Introduction
RFID is the technology that utilizes Radio Frequency to identify anobject automatically. There is a tag attached on some object. RFID reader reads the tag identifier which is associated with the object information. After that, RFID reader transfers the tag information to RFID middleware which then sends information to the host (Information Server or RFID Application)which requested the information. The host can utilize the acquired information to construct a database if the host is Information Server, or utilize to search the database if the host is RFID Application. This technology has been utilized in supply chain management effectively.
Mobile RFID is the technology that provides tag related information by using mobile communication device utilizing RFID reader which is loaded in the device. To support Mobile RFID, mobile communication platform must provide the function to control RFID reader, to control tag, and to filter necessary information based on tag identifier.
WIPI (Wireless Internet Platform for Interoperability) is the Korean Mobile Standard Platform which provides execution environment for Mobile application. WIPI is our own national standard specification and loaded in all mobile communication devices which are sold in our country since April 2005. Mobile RFID is the technology that provides information in mobile communication device to internet. To apply Mobile RFID, RFID reader must be loaded in mobile communication device. WIPI platform must control this reader and execute filtering function to obtain necessary information.
This paper defines Mobile RFID middleware functionalities and suggests WIPI Platform extension method that provides mobileRFID utility service. We extend Generic I/O and provideRFID middleware functions that are necessary for mobile RFID technology.
II.The structure of MobileRFID network
RFID has been used in the supply chain management. Fixed RFID reader is used to check the delivery and stockpile of items. EPC global leads the movement to standardize RFID technology. Following is the structure for that EPC global standard.
Figure 1 The structure of EPC global network
In figure 1, ONS (Object Name Server) is the server that provides URL (Uniform Resource Locator) on the item requested. EPC IS the server that acquires EPS tag related information from middleware and then sends the accumulated information to the node. Savant is a RFID middleware that filters the raw data acquired from RFID reader and controls the readers. RFID reader collects tag or sensor data and sends them to savant. Users can request information on Savant and on EPS IS.
The structure of Mobile RFID Network has not been decided yet. The present Korean Mobile RFID Forumsuggests the following structure.
Figure 2 Mobile RFID Network Model
Mobile RFID communication device requests URL that has detailed information on tagged item to ODS (Object Directory Service) using mobile communication network (CDMA 1X network). ODS is similar to the ONS. But, ODS supports multi-code such as EPC, u-code, etc. ODS searches for the URL of the information server containing tag related information and send that URL founded to the requesting mobile communication device. Application Server may obtain tag related information from OIS (Object Information Server). OTS (Object Traceability Service) provides history information about the object. If mobile RFID application wants to know the object history information, then it can use OTS.
Once obtaining URL from ODS, the mobile RFID communication device utilizes the obtained URL to get detailed information on the item from Application Server, OIS or OTS.
III.The Structure of WIPI Platform
The structure of WIPI for platform standard is shown in figure 3. WIPI is divided into WIPI API(Application Programming Interface), WIPI Runtime Engine and HAL(Handset Adaptation Layer).
Figure 3. Structure of WIPI
The HAL in figure 3 is the layer to support hardware independence when loading platform. HAL is materialized using basic software. Through HAL, WIPI platform provides device abstraction. HAL is implemented using mobile communication device native system software such as device drivers attached, CDMA processing module, or Operating System software.
WIPI-C and WIPI-Java are the collected API that can be used to develop utility program based on WIPI Platform. WIPI provides C and Java API. The functions that are provided by WIPI C are also provided by WIPI Java.
WIPI Runtime Engine provides event planning and execution, utility program execution, memory management, linking with WIPI API and HAL, network management functions.
IV.Mobile RFID Middleware Functionalities
This paper defines the function of middleware. In the case of EPC global network using fixed reader, EPC global Savant in Figure 1 manages the readers linked and filters information collected by readers by specific rules.
Mobile RFID middleware manages RFID reader, executes operations on tag, defines filtering rules to choose requested tags, and then provides to the utility.
This paper defines RFID middlewarefunctions as follows.
Functions to control readers: RFID middleware controls RFID readers loaded in mobile communication device. It supplies PowerOn/PowerOff of a reader,Open/Close and Reset operations.
Functions to manage tags: It provides operations on tags. It readstag id and userdata through reader. And alternatively, it writes tag id and userdata to the chosen tag.It may kill/lock/unlock the specific tag. Operations on tags are important in protecting information.
Filtering function: It filters raw data collected by readers, groups, and counts by specific rules. In this way, it produces the information requested by the utility.
V.The Extension of WIPI HAL
WIPI operates as in Figure 4.
Figure 4 WIPI Operating Flow
WIPI utility writes program using Application API and operates. WIPI API uses the function provided by WIPI runtime engine and HAL. HAL is operated by using the function of native system software.
WIPI HAL defines Generic I/O API for device attached to은 the mobile communication device. WIPI HAL defines Generic I/O related events and registers them to the WIPI Runtime Engine.
All the events generated from Generic I/O devices are delivered to the WIPI Runtime Engine. And then, WIPI Runtime Engine sends the events to the HAL through the MH_pltEvent(). The the events registration to the WIPI Runtime Engine can be performed through MH_PltRegIODevice() during HAL initializationprocess, MH_ioDevInit().
WIPI HAL defines Generic I/O API of input/output device attached to the mobile communication device. And it executes events using Runtime Engine.
typedef struct MH_IODevice {M_Char *devname;
M_Char *devtype;
M_Uint16 total_devnum;
DEVOPENFUN open;
DEVCLOSEFUN close;
DEVREADFUN read;
DEVWRITEFUN write;
DEVCONTROLFUN control;
} MH_IODevice;
Table 1 Structure of Generic I/O
This paper describes the method to extend existing Generic I/O in managing mobile RFID reader control. The method to extend HAL is as follows.
(1)Defines mobile RFID reader registration structure according to table 1. Members of structure are RFID reader name, RFID reader type (physical, logical), number of RFID reader. Methods of structure are open, close, read(TagID, userdata), write(TagID, userdata), control. RFID reader “open” includes PowerOn and Open. RFID reader “close” include Close and PowerOff. The control function defines kill/lock/unlock tag.
(2)Registers the structure defined in step (1) to the WIPI HAL by using MH_PltRegIODevice() in HAL initialization process, MH_ioDevInit().
(3)Extends necessary events for RFID reader/tag handling.
MH_IODEVICE_OPEN/_CLOSE
MH_IODEVICE_RESET
MH_IODEVICEEV_KILLTAG
MH_IODEVICEEV_WRITE_ID
MH_IODEVICEEV_READ_ID
MH_IODEVICEEV_WRITE_UserData
MH_IODEVICEEV_READ_UserData
(4)Mobile RFID reader configuration ought to be accessed through MH_sysGetInformation(), MH_sysSetInformation(). Mobile communication device configuration information is to be extended to include RFID reader manufacturer, RFID model, RFID ReadCycle, RFID DutyCycle, etc.
Extending HAL as above makes it possible to control RFID reader. RFID reader can be used according to the above definitions. Reader device driver sends operation results to HAL through the defined events. HAL receiving the events sends them to the WIPI API through WIPI Runtime Engine.
VI.The Extension of WIPI API
WIPI API provides C and Java API. The functions of C API are provided by Java API.
This papers defines the method to extend Mobile RFID WIPI API using C. C API controls input/output devices loaded in mobile communication device using Generic I/O. WIPI Java API is extended in a similar way to execute the function of mobile RFID middleware. Table 2 shows existing Generic I/O functions.
Function / Itemsdevice open/close / MC_ioDevOpen
MC_ioDevClose
Data processing / MC_ioDevRead
MC_ioDevWrite
Device control / MC_ioDevControl
Callback Registration / MC_ioDevSetOpenCB
MC_ioDevSetReadCB
MC_ioDevSetWriteCB
Table 2 Generic I/O functions
RFID reader can’t be shared multiple application at the same time. So, instead of Callback function for non-blocking I/O device, this paper defines Callback function for handling RFID reader operating result from RFID reader device driver.
Each function is defined as follows.
Items / Mobile RFID Reader ProcessingMC_ioDevOpen / Power on, open communication channel
MC_ioDevClose / Close communication channel, power off
MC_ioDevRead / Read tag id or userdata
MC_ioDevWrite / Write tag id or userdata
MC_ioDevControl / Reset RFID reader
Filtering based on tag id
Kill/lock/unlock tag
MC_ioDevSetOpenCB / Callback registration function for open completion
MC_ioDevSetReadCB / Callback registration function for read completion
MC_ioDevSetWriteCB / Callback registration function for write completion
MC_ioDevControlCB / Callback registration function for reset/kill/lock/unlock completion
VII.Conclusion
Mobile RFID technology provides detailed information on items through mobile communication network using RFID reader loaded in mobile communication device. Not like the existing fixed network, this technology needs to consider the limits of power sources such as battery of mobile device. Thus operations of RFID reader should be optimized fully.
This defines mobile RFID middleware functions and describes the method that extends the mobile middleware functions in agreement with defining I/O devices consistently.
VIII.References
[1]WIPI 2_0_1 Section 1 Standard Structure and Function.doc, 2004.9
[2]WIPI 2_0_1 Section 3 C API.doc, 2004.9
[3]WIPI 2_0_1 Section 2 HAL API.doc, 2004.9
[4]Auto-ID Savant Specification v1.0, 2003.9
1