US20090287796A1 - Method and apparatus for device and carrier independent location systems for mobile devices - Google Patents

Method and apparatus for device and carrier independent location systems for mobile devices Download PDF

Info

Publication number
US20090287796A1
US20090287796A1 US12/505,665 US50566509A US2009287796A1 US 20090287796 A1 US20090287796 A1 US 20090287796A1 US 50566509 A US50566509 A US 50566509A US 2009287796 A1 US2009287796 A1 US 2009287796A1
Authority
US
United States
Prior art keywords
information
electronic device
position information
format
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/505,665
Inventor
Michel Turcotte
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Access Systems Americas Inc
Original Assignee
Access Systems Americas Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/802,172 external-priority patent/US6823260B1/en
Application filed by Access Systems Americas Inc filed Critical Access Systems Americas Inc
Priority to US12/505,665 priority Critical patent/US20090287796A1/en
Assigned to PALM, INC. reassignment PALM, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: TURCOTTE, MICHEL
Assigned to PALMSOURCE, INC. reassignment PALMSOURCE, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: PALM, INC.
Publication of US20090287796A1 publication Critical patent/US20090287796A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel

Definitions

  • the present invention relates to the field of location systems and protocols for mobile devices.
  • Communication networks exist that allow for electronic mobile devices to communicate with and retrieve information from a variety of content providers in the network.
  • the mobile device can be located anywhere in the world.
  • a user may require weather information from a content provider located on the Internet.
  • the content provider In order for the content provider to process a request for weather information, the content provider must know where the user is geographically located in the world.
  • methods that provide location information of a user, through their mobile device are network carrier, connection hardware, and connection software dependent in that a particular type of hardware can only interface with a particular network carrier in order to provide location information of a specific format.
  • the entire system is designed for a one-to-one relationship between the hardware device and the network carrier when providing location information to a third party, such as a content provider.
  • the location information be of a specific format in order for the content provider to understand the information and process a request for information.
  • the method may also be dependent on a proxy server to convert location information of the specific format to a published standard format. In that case, the proxy server is able to interpret and understand the information of the specific format.
  • an Internet capable mobile handheld device can submit a request for weather information to a content provider over a communication network through a proxy server.
  • the proxy server acts to convert the transfer of information between the mobile device and the content provider.
  • the proxy server ensures that location information coming from the mobile device is converted to a particular format as requested by the content provider.
  • the request for location information of a specific format from the content provider may be embedded in the web clipping application specific to the content provider.
  • the format required by the content provider may be a mailing zip code as used in the United States of America.
  • connection software driver that connects the mobile device to a network communicates with a particular network carrier for specific location information.
  • the communicated location information can be of any particular type, as long as the connection software driver, the network carrier, and the proxy server understand the format and type of information.
  • one type of information can be tower information.
  • the connection software driver in the mobile device may have access to information about the tower or base station that the mobile device connects through to access the communication network.
  • a particular type of information is the tower ID or identification number.
  • connection software driver in the mobile device sends the tower ID information to the proxy server.
  • the proxy server then can convert the tower ID information to a zip code that corresponds to the location of the accessed tower. This conversion can be facilitated with the use of a mapping table that ties specific towers to specific zip codes.
  • the proxy server converts the location information
  • the complete request for weather information including the converted location information, is sent to the content provider for weather information.
  • the content provider with the proper location information in the proper zip code format, then sends a web page back to the proxy server with the weather information to be sent to the mobile device.
  • the mobile device must connect to the network using specific connecting hardware, a specific connecting software driver, and a specific network carrier.
  • Each of these dependent components understand that location information of a specific format is required, e.g., that of tower ID. If, however, the mobile device uses a different connecting hardware, such as a wireless internal modem instead of a built-in radio, the software driver associated with the modem will not know or understand that location information is requested. As such, the software driver associated with the modem will not be able to send the necessary tower ID information to the proxy server.
  • Embodiments of the present invention disclose a method and system for providing geographic location information for a mobile device to a third party through a communication network.
  • the present invention provides a more flexible mechanism and protocol for providing location information.
  • the present invention provides a better interface over a communication network between a mobile device and a third party for providing location information.
  • the present invention provides for a more universal system that is device and carrier independent for providing location information over a communication network.
  • embodiments of the present invention disclose a method and system for providing location information of a mobile device to third parties in a communication network through a protocol that is device and network carrier independent. Position information of any first format is sent to a proxy server in a location information packet. An identifier that identifies the type and format of the position information is also sent.
  • the proxy server then takes the location information packet and based on its identifier, calls a proxy software driver, such as an executable plug-in module.
  • the proxy driver is able to convert the position information of the first format into at least one of a plurality of published standard location formats.
  • the executable plug-in module is able to recognize which of the plurality of standard location formats most closely matches or exactly matches the format required by the content provider. After the position information is converted to the format required by the content provider, the proxy server sends the position information to the content provider.
  • location information of a first format is sent from a mobile device to a proxy server.
  • Position information of a first format is created indicating the geographic location of the mobile device.
  • the position information is created by a software driver located in the mobile device.
  • the software driver may be a network connection driver that connects the mobile device to a network carrier. In that case, position information associated with the network carrier, such as tower identification number, is relayed back to the software driver.
  • the software driver may be directed to an internal global positioning satellite (GPS) hardware device located on the mobile device.
  • GPS global positioning satellite
  • the position information of the first format is then sent to a proxy server.
  • An identifier that indicates the type and format of the position information is also sent.
  • the proxy server accesses a first executable plug-in module or program that is directly associated with the identifier.
  • the executable plug-in module is able to convert the position information of the first format into a plurality of standard location formats.
  • the plug-in module is a dynamic link library (DLL).
  • the plug-in module is able to determine the required format as required by a content provider.
  • the required format is one of the plurality of standard location formats in one embodiment of the present invention.
  • the plug-in module is able then to convert the position information of the first format into the format required by the content provider. After the conversion, the proxy server sends the position information of the required format to the content provider.
  • the standard position information may be of any type providing geographic location and may consist of one of the following: network carrier tower identification; network carrier cell ID; zip code and postal code; global positioning satellite (GPS) coordinates; city name or code; country name or code; state name or code; county name or code; closest major airport name or code; phone area code; train station name or code; time zone; daylight saving time; mobile network ID; mobile network name; mobile network cellular ID; IP address; local time; street name; street address; and user ID.
  • GPS global positioning satellite
  • a mobile device sends a query that is attached to a web clipping application located on the mobile device.
  • the query is directed to a third party, such as a content provider, over a communication network via a proxy server.
  • a location information packet is also sent to the proxy server along with the query.
  • the location information packet also contains the position information of the mobile device, and an identifier that indicates the particular type and format the position information is comprised of.
  • a third party on the communication network initiates a request for location information pertaining to a mobile electronic device.
  • a mobile device sends a plurality of position information packets, each of which is identified with an identifier, each of which is associated with a software driver located on the mobile device.
  • the proxy server directs each of the plurality of position information packets to the corresponding executable plug-in module as per the associated identifier.
  • Each plug-in module converts the position information into the standard location format that most closely matches the format required by a requesting third party or content provider.
  • Each plug-in module also gives a satisfaction number that indicates how closely the converted location information matches the required format. For example, if the conversion was exact, the satisfaction number may be one hundred percent.
  • FIG. 1A illustrates a block diagram of a first exemplary network environment including a personal digital assistant in accordance with an embodiment of the present invention.
  • FIG. 1B illustrates a block diagram of a second exemplary network environment including a personal digital assistant coupled to other computer systems and the Internet via a cradle device in accordance with an embodiment of the present invention.
  • FIG. 2A is a top side perspective view of a palmtop computer system that can be used as a platform for the data entry and authentication embodiments of the present invention.
  • FIG. 2B is a bottom side perspective view of the palmtop computer system of FIG. 2A .
  • FIG. 3 is an exploded view of the components of the palmtop computer system of FIG. 2A .
  • FIG. 4 is a perspective view of the cradle device for connecting the palmtop computer system to other systems via a communication interface.
  • FIG. 5 is a logical block diagram of the palmtop computer system in accordance with an embodiment of the present invention.
  • FIG. 6 illustrates a block diagram of a carrier access network for a handheld electronic device, in accordance with one embodiment of the present invention.
  • FIG. 7 is a block diagram illustrating an exemplary raw position information packet that is generated by a software driver located on a handheld electronic device, in accordance with one embodiment of the present invention.
  • FIG. 8 illustrates a block diagram of the proxy server, in accordance with one embodiment of the present invention.
  • FIG. 9 is a table illustrating possible forms of standard position information formats, in accordance with one embodiment of the present invention.
  • FIG. 10 is a block diagram of system that illustrates the process of providing location information over a communication network, in accordance with one embodiment of the present invention.
  • FIG. 11 illustrates a flow chart of steps in accordance with providing position and location information over a communication network, in one embodiment of the present invention.
  • the present invention is compatible with any mobile electronic device.
  • a personal digital assistant or commonly called a PDA.
  • the PDA is a pocket sized electronic organizer with the capability to store telephone numbers, addresses, daily appointment, and software that keeps track of business or personal data such as expenses, etc.
  • the PDA also has the ability to connect to a personal computer, enabling the two devices to exchange information, in order to synchronize the information between the two devices.
  • the PDA can also be connected to a modem, enabling it to have electronic mail (e-mail) capabilities over the Internet along with other Internet capabilities.
  • an advanced PDA can have Internet capabilities over a wireless communication interface (e.g., radio interface).
  • the PDA can be used to browse Web pages located on the Internet.
  • the PDA can be coupled to a networking environment. It should be appreciated that embodiments of the present invention are well suited to operate within a wide variety of electronic systems (e.g., computer systems) which can be communicatively coupled to a networking environment, including cellular phones, pagers, etc.
  • FIG. 1A is a block diagram of an exemplary network environment 50 including an exemplary personal digital assistant.
  • the PDA 100 is also known as a palmtop or palm-sized electronic system or computer system.
  • the PDA 100 has the ability to transmit and receive data and information over a wireless communication interface (e.g., a radio interface).
  • the PDA 100 is one exemplary implementation on which the present invention can operate.
  • the present invention can operate on any portable electronic system or device.
  • the present invention can also operate on a non-portable system.
  • the local area network could be used to query location information.
  • base station 32 is both a transmitter and receiver base station which can be implemented by coupling it into an existing public communication network 34 .
  • base station 32 enables the personal digital assistant 100 to communicate with a proxy server computer system 36 , which is coupled by wire 35 to the existing public telephone network 34 .
  • proxy server computer system 36 is coupled to the Internet 52 , thereby enabling the PDA 100 to communicate with the Internet 52 .
  • other embodiments of a communications network may be utilized in accordance with the present invention.
  • the data and information which are communicated between base station 32 and the personal digital assistant 100 are a type of information and data that can conventionally be transferred and received over a public telephone wire network system.
  • a wireless communication interface is utilized to communicate data and-information between the PDA 100 and base station 32 .
  • a wireless communication system in accordance with the present invention is the Mobitex wireless communication system.
  • FIG. 1B illustrates a system 51 that can be used in conjunction with the present invention.
  • System 51 comprises a host computer system 56 which can either be a desktop unit as shown, or, alternatively, can be a laptop system 58 .
  • one or more host computer systems can be used within system 51 .
  • Host computer systems 58 and 56 are shown connected to a communication bus 54 , which in one embodiment can be a serial communication bus, but could be of any of a number of well known designs, e.g., a parallel bus, Ethernet Local Area Network (LAN), etc.
  • bus 54 can provide communication with the Internet 52 using a number of well known protocols.
  • bus 54 is also coupled to a cradle 60 for receiving and initiating communication with a personal digital assistant 100 in one embodiment of the present invention.
  • Cradle 60 provides an electrical and mechanical communication interface between bus 54 (and anything coupled to bus 54 ) and the computer system 100 for two way communications.
  • Computer system 100 also contains a wireless infrared communication mechanism 64 (e.g., an infrared emitter and detector device) for sending and receiving information from other similarly equipped devices (see FIG. 1B ).
  • a wireless infrared communication mechanism 64 e.g., an infrared emitter and detector device
  • the exemplary personal digital assistant or palmtop computer system 100 can be used in network environment combining elements of networks 50 and 51 . That is, as will be seen below, the PDA 100 can include both a wireless infrared communication mechanism and a signal (e.g., radio) receiver/transmitter device.
  • a wireless infrared communication mechanism e.g., Bluetooth
  • a signal e.g., radio
  • FIG. 2A is a perspective illustration of the top face 100 a of one embodiment of the palmtop computer system.
  • the top face 100 a contains a display screen 105 surrounded by a bezel or cover.
  • a removable stylus 80 is also shown.
  • the display screen 105 is a touch screen able to register contact between the screen and the tip of the stylus 80 .
  • the stylus 80 can be of any material to make contact with the screen 105 .
  • the top face 100 a also contains one or more dedicated and/or programmable buttons 75 for selecting information and causing the computer system to implement functions.
  • the on/off button 95 is also shown.
  • FIG. 2A also illustrates a handwriting recognition pad or “digitizer” containing two regions 106 a and 106 b.
  • Region 106 a is for the drawing of alphabetic characters therein (and not for numeric characters) for automatic recognition
  • region 106 b is for the drawing of numeric characters therein (and not for alphabetic characters) for automatic recognition.
  • the stylus 80 is used for stroking a character within one of the regions 106 a or 106 b.
  • the stroke information is then fed to an internal processor for automatic character recognition. Once characters are recognized, they are typically displayed on the screen for verification and/or modification.
  • FIG. 2B illustrates the bottom side 100 b of one embodiment of the palmtop computer system.
  • An optional extendible antenna 85 is shown and also a battery storage compartment door 90 is shown.
  • a communication interface 108 is also shown.
  • the communication interface 108 is a serial communication port, but could also alternatively be of any of a number of well known communication standards and protocols, e.g., parallel, USB, SCSI, Firewire (IEEE 1394), Ethernet, etc. It is appreciated that interface 108 can also be used for charging current when using rechargeable batteries.
  • FIG. 3 is an exploded view of the palmtop computer system 100 in accordance with one implementation.
  • System 100 contains a front cover 210 having an outline of region 106 and holes 75 a for receiving buttons 75 b.
  • a flat panel display 105 (both liquid crystal display and touch screen) fits into front cover 210 . Any of a number of display technologies can be used, e.g., liquid crystal display (LCD), field emission display (FED), plasma, etc., for the flat panel display 105 .
  • a battery 215 provides electrical power.
  • a contrast adjustment (potentiometer) 220 is also shown.
  • On/off button 95 is shown along with an infrared emitter and detector device 64 .
  • a flex circuit 230 is shown along with a PC board 225 containing electronics and logic (e.g., memory, communication bus, processor, etc.) for implementing computer system functionality.
  • a digitizer pad can be part of the display assembly or it can also be included in PC board 225 .
  • a midframe 235 is shown along with stylus 80 .
  • Position adjustable antenna 85 is shown.
  • a radio receiver/transmitter device 240 is also shown between the midframe and the rear cover 245 of FIG. 3 .
  • the receiver/transmitter device 240 is coupled to the antenna 85 and also coupled to communicate with the PC board 225 .
  • the Mobitex wireless communication system is used to provide two way communication between system 100 and other networked computers and/or the Internet via a proxy server.
  • TCP protocol can be used.
  • FIG. 4 is a perspective illustration of one embodiment of the cradle 60 for receiving the palmtop computer system 100 .
  • Cradle 60 contains a mechanical and electrical interface 260 for interfacing with communication interface 108 ( FIG. 2B ) of computer system 100 when system 100 is slid into the cradle 60 in an upright position. Once inserted, button 270 can be pressed to initiate two way communication between system 100 and other computer systems coupled to electrical interface cable 265 .
  • FIG. 5 is a block diagram of exemplary interior components of an exemplary personal digital assistant 100 upon which embodiments of the present invention may be implemented. It is appreciated that the exemplary PDA 100 of FIG. 5 is only exemplary and that the present invention can operate within a number of different electronic systems including general purpose networked computer systems, embedded computer systems, and stand alone electronic systems such as a cellular telephone or a pager.
  • FIG. 5 illustrates circuitry of an exemplary electronic system or computer system 100 (such as the personal digital assistant), some of which can be implemented on PC board 225 ( FIG. 3 ).
  • Exemplary computer system 100 includes an address/data bus 99 for communicating information, a central processor 101 coupled with the bus 99 for processing information and instructions, a volatile memory 102 (e.g., random access memory (RAM), static RAM dynamic RAM, etc.) coupled with the bus 99 for storing information and instructions for the central processor 101 and a non-volatile memory 103 (e.g., read only memory (ROM), programmable ROM, flash memory, EPROM, EEPROM, etc.) coupled to the bus 99 for storing static information and instructions for the processor 101 .
  • RAM random access memory
  • EEPROM electrically erasable programmable ROM
  • FIG. 5 illustrates circuitry of an exemplary electronic system or computer system 100 (such as the personal digital assistant), some of which can be implemented on PC board 225 ( FIG. 3 ).
  • Exemplary computer system 100 includes an address
  • Exemplary computer system 100 also includes an optional data storage device 104 (e.g., memory card, hard drive, etc.) coupled with the bus 99 for storing information and instructions. Data storage device 104 can be removable. As described above, exemplary computer system 100 also contains an electronic display device 105 coupled to the bus 99 for displaying information to the computer user.
  • PC board 225 FIG. 3 ) can contain the processor 101 , the bus 99 , the ROM 103 and the RAM 102 .
  • an alphanumeric input device 106 which in one implementation is a handwriting recognition pad (“digitizer”) having regions 106 a and 106 b ( FIG. 2A ), for instance.
  • Device 106 can communicate information (spatial data and pressure data) and command selections to the central processor 101 .
  • System 100 also includes an optional cursor control or directing device 107 coupled to the bus for communicating user input information and command selections to the central processor 101 .
  • device 107 is a touch screen device incorporated with screen 105 . Device 107 is capable of registering a position on the screen 105 where the stylus makes contact and the pressure of the contact.
  • the display device 105 utilized with the computer system 100 may be a liquid crystal device, cathode ray tube (CRT), field emission device (FED, also called flat panel CRT) or other display device suitable for creating graphic images and alphanumeric characters recognizable to the user.
  • display 105 is a flat panel display.
  • exemplary computer system 100 also includes a signal input/output device 108 which is coupled to bus 99 for providing a communication link between computer system 100 and a network environment (e.g., network environment 50 and 51 of FIGS. 1A and 1B respectively).
  • signal input/output device 108 enables central processor unit 101 to communicate wirelessly with other electronic systems coupled to the network.
  • signal input/output device 108 is coupled to antenna 85 and provides the functionality to transmit and receive information over a wireless communication interface.
  • the present embodiment of signal input/output device 108 is well-suited to be implemented in a wide variety of ways.
  • signal input/output device 108 could be implemented as a modem.
  • signal input/output communication device 108 also coupled to bus 99 , can be a serial port for communicating with the cradle 60 .
  • device 108 can also include an infrared communication port.
  • Web platform applications resident on a personal digital assistant 100 are software programs that can run independently, or can be extensions of and supported by corresponding applications located on remote computer systems.
  • Web platform applications are commonly known as web clipping applications, an example of which is a Palm Query Application (PQA), also known as web clipping application (WCA).
  • PQA Palm Query Application
  • WCA web clipping application
  • Web platform applications on PDA 100 can be extensions of corresponding applications located on a remote stand-alone computer system.
  • an address book application located on a PDA 100 can exchange data with and be supported by the corresponding applications located on a stand-alone computer system, such as system 56 in FIG. 1B .
  • the process of synchronization is described in more detail in the following three U.S. patents which are hereby incorporated by reference: U.S. Pat. No. 5,727,202 entitled “Method and Apparatus for Synchronizing Information on Two Different Computer Systems”, issued Mar. 10, 1998; U.S. Pat. No.
  • web platform applications facilitate user interaction with content servers associated with those applications.
  • the web platform application contains user-interface elements that retrieves, updates, and displays content on a PDA 100 .
  • a host of installed web applications on PDA 100 can provide access to specific types of information such as stock quotes, flight schedules, restaurant listing, as well as other pieces of information while connected to the Internet.
  • a web platform application can facilitate user interaction with a content server by having a user fill out query forms located on a web platform application while disconnected from the Internet. Subsequently, the forms are sent out for processing the next time the PDA 100 is synchronized with a host computer system, such as system 56 in FIG. 1B .
  • An example of a web platform application that is supported by a content server, that maintains a specific web site, could be a weather application.
  • a user can use the weather web platform application to interact with the weather content server to access information about the latest weather conditions for the location of the user.
  • a user accesses information from a content server based on a simple query and response protocol.
  • the query portion of the web platform application is stored locally on the PDA 100 .
  • the user enters data in to a request form (e.g., for a stock symbol, news topic, weather conditions, or name to look up) without even going on-line.
  • PDA personal digital assistant
  • palmtop computer system
  • present invention can be practiced with other electronic systems or electronic devices (e.g. personal computer systems, cellular phones, pagers, portable web devices, etc.).
  • FIG. 6 illustrates a block diagram of the carrier access network 600 for a PDA 100 , in one embodiment of the present invention.
  • PDA 100 can access the network through a carrier through a number of connection hardware mechanisms.
  • the connection hardware could be an internal radio, wireless modem, wireline modem, a cradle attached to a host compute, etc.
  • the PDA 100 could also have additional hardware devices like a Global Positioning Satellite (GPS) receiver.
  • GPS Global Positioning Satellite
  • each access or connection hardware there is a software driver for each access or connection hardware.
  • the other associated drivers are represented as driver-two 622 , through the nth driver 625 .
  • the software driver of an access device coordinates the interaction between the PDA 100 and a base station of a specific carrier network, such as base station 32 of FIG. 1A , in order to access a communication network, such as the Internet.
  • the software driver understands that position information of the PDA 100 is required to send a query by the PDA 100 .
  • This query may be associated with a web clipping application (WCA) located on PDA 100 , such as a weather WCA.
  • WCA web clipping application
  • the software driver may need to communicate with the carrier network to obtain whatever position information is available.
  • the carrier network may provide zip code or identification information for the closest tower providing access to the communication network for the PDA 100 .
  • the PDA 100 may have multiple hardware devices that are capable of producing position information.
  • the software driver associated with a GPS system on the PDA 100 is capable of providing very accurate position information.
  • determining the position information of the PDA 100 is device and carrier independent. In other words, regardless of what device, or hardware used to access a communication network, or which carrier network is used to access the communication network, the present invention allows for the possibility for the PDA 100 to access any type of position information in order to provide location information to a proxy server.
  • the location information may have been requested by a third party on the communication network that desires location information of a PDA 100 .
  • the location information may be required by a content provider in order to process a request for information by the PDA 100 .
  • a query or request for weather information requires location information to be provided.
  • the location information may be provided in the initial query, via a web clipping application, or by a request by the content server.
  • FIG. 7 is a block diagram illustrating the raw position information packet 700 that is generated by a software driver located on the PDA 100 , in accordance with one embodiment of the present invention.
  • the packet 700 is a packet of digital data that might come from different sources of information to determine where the location of the connection hardware associated with the PDA 100 .
  • the precision of this location information may vary depending on the following: a) the type and sophistication of the mobile device; b) the carrier network; and c) the capabilities of the connection hardware and the software driver associated with the hardware.
  • Typical information may be information related to the base station that the PDA 100 uses to access the communication network.
  • packet 700 may contain a raw position information identifier 710 .
  • This identifier 710 will indicate what type or format of location information data 730 is included within the packet 700 . For example, if the data 730 is actual GPS coordinates of the PDA 100 , the identifier may be number 17 .
  • raw information packet 700 may contain multiple types of location information in another embodiment.
  • the identifier 710 may also contain information about electronic device that is sending the raw positing information identifier 710 , such as the phone or PDA type.
  • packet 700 may contain a length portion 720 that indicates the length of data 730 .
  • each of the parts of the packet 700 is comprised of an 8 bit byte. So, the identifier 710 would be a maximum of 8 bits. It is appreciated that this is exemplary only and that each of the parts may be larger than 8 bits to accommodate the various of methods in determining location information.
  • more than one raw position information packet 700 may be generated by the software drivers associated with the hardware devices for a PDA 100 .
  • the more location information that is presented for a specific PDA 100 the better the chance of getting precise location information.
  • FIG. 8 illustrates a block diagram of the proxy server 36 , in accordance with one embodiment of the present invention.
  • the proxy server can be the proxy server 36 in FIG. 1A .
  • FIG. 8 illustrates that a raw location packet 700 is sent to proxy server 36 .
  • the operating system of the PDA 100 takes the raw information packet 700 and sends the packet 700 to the proxy server.
  • This location information might be more or less accurate with respect to the specific location information of the PDA 100 .
  • the raw location packet 700 will be identified using a raw location packet identifier 710 .
  • the proxy server facilitates the interface of information between the PDA 100 and the content provider.
  • the proxy server 36 takes a query for weather information from the PDA 100 and sends it to the content provider over the Internet 52 .
  • the proxy server takes the resulting web page with weather information and sends it back to the PDA.
  • the proxy server 36 receives the raw information packet 700 from a PDA 100 .
  • the raw information packet 700 may be associated with a query from a web clipping application, or from a request from a third party request for location information regarding the PDA 100 .
  • the proxy server 36 locates the proper executable plug-in module associated with the raw information packet 700 .
  • the proper plug-in module is determined from the identifier associated with packet 700 .
  • each of the plug-in modules are dynamic link libraries (DLLs).
  • packet 700 may be associated with DLL- 1810 of FIG. 8 .
  • Each of the plugin module programs in FIG. 8 are able to convert the raw location information contained within an associated packet, such as packet 700 , into at least one of a plurality of standard location formats.
  • these conversion programs are located within raw location dynamic link libraries (DLLS) contained within the proxy server.
  • DLLS raw location dynamic link libraries
  • These DLLs are sometimes called proxy drivers. It is appreciated that the use of DLLs is exemplary only and that other technologies are equally useful, such as regular libraries, modules, etc.
  • Each of the raw location DLLs store executable routines as files that can be loaded and accessed when needed by a program, for example the conversion of the location information into a standard location information format.
  • the programs contained within the raw location DLL can contain code that accesses tables contained within the raw location DLL, or even access information, tables, or programs contained within other web sites over a communication network, as shown by the source of information block 840 attached to raw location DLL-n 830 .
  • proxy server 36 contains as many raw location DLLs as are necessary to convert the myriad of raw position information provided by the PDA 100 into standardized location formats. Proxy server 36 contains raw location DLL- 1810 , raw location DLL- 2820 , and on up to raw location DLL-n 830 .
  • this device and carrier independent system for providing location information allows for the addition of any new connection hardware or hardware device by supplying a corresponding software driver to the PDA 100 and a corresponding raw location DLL at the proxy server.
  • the software driver knows how to interact with this new connection hardware or hardware device, such as a GPS receiver, in order to generate any possible raw location packet.
  • the proxy server will convert the raw location packet received from the PDA 100 using the appropriate raw location DLL, or proxy driver, in order to transform it into at least one of a plurality of standardized location information formats recognizable by the requesting party.
  • FIG. 9 is a Table 900 illustrating a plurality of standardized location information formats. Location information given in packet 700 is converted by a corresponding DLL into a standard location format as exemplified in Table 900 .
  • the content provider may require only zip code information 912 to be converted from the raw location information packet 700 .
  • the raw information packet 700 may contain tower ID information.
  • a corresponding executable plug-in module at the proxy server will take the tower ID information and convert that data into a zip code which corresponds to that tower.
  • the zip code 912 typically corresponds to the tower or base station that the PDA 100 accesses the communication network. As such, the zip code may have an accuracy that can vary from a few hundred square feet to many hundreds of miles.
  • More specific location information may be required from content providers that need to know within a few meters the location of the PDA 100 .
  • emergency health care services may require exact location information in the format of GPS coordinates 914 .
  • Table 900 is exemplary only and that other standard location formats not shown in Table 900 are possible such as closest major airport name or code, phone area code, time zone, daylight saving time, etc.
  • FIG. 10 is a block diagram of system 1000 that illustrates the process of providing location information over a communication network, in accordance with one embodiment of the present invention.
  • System 1000 shows a PDA 100 that connects to a communication network using various connection hardware and software drivers 600 .
  • the PDA can use a wireless connection to a base station 32 or have a direst wireline connection to the proxy server 36 .
  • a wireless service provider 1010 or carrier network 1010 is used to connect to the proxy server.
  • raw positioning information 700 is sent to the proxy server 36 by the PDA 100 .
  • the raw position information of a first format is delivered to the corresponding DLL.
  • the corresponding DLL is determined from an identifier sent along with the raw positioning information 70 .
  • the proxy server locates and accesses an appropriate DLL, 1010 , 1020 , or 1030 to convert the location information into at least one of a plurality of standardized location information formats.
  • the content provider 1050 is able to interpret the position or location information in the standardized format.
  • the DLLs can access other programs or databases in other content providers or wireless service providers, such as provider B 1040 .
  • the DLL associated with the raw information packet 700 is able to convert the location information of the first format into a plurality of standard location information formats. Also, the DLL can determine which standard location information format is closest to the format required by a requesting third party, or the content provider that is the object of a web clipping application. Thus, the DLL knows the format the location information is included in the raw information packet 700 and the format required by the requesting party or content provider. The DLL then is able to convert the raw location information packet 700 into the format closest to the required format. In another embodiment, the DLL is able to convert the raw location information packet directly into the required format.
  • FIG. 11 illustrates a flow chart of steps in accordance with providing position and location information over a communication network, such as the internet, in one embodiment of the present invention.
  • Process 1100 begins with understanding that a content provider requires geographic position information in order to process a query or request for information from an electronic device, such as PDA 100 , in step 1110 .
  • step 1120 position information of a first format is created by the PDA 100 .
  • the position information is created by software drivers located on the PDA 100 . These software drivers may be network access drivers or may be associated with location hardware on the PDA 100 , such as a GPS device.
  • the position information is created by the software driver associated with the network connecting hardware.
  • the software driver sends a request for the position information of said first format to the network carrier.
  • the network carrier returns the information of a first format.
  • the software driver queries the-user for location information of the first format.
  • the user may provide zip code information, address information, etc.
  • the user may provide location information that is not associated with the PDA 100 . Such is the case when the user is traveling, but wants movie information for a location near the user's home.
  • step 1130 of process 1100 the electronic device sends position information of the first format to a proxy server.
  • This position information may be of any format that is particular to the carrier network, or hardware device, or connection hardware.
  • the PDA 100 sends an identifier with the position information.
  • the identifier indicates the type and format of the position information. Specifically, the identifier tells the proxy server that the position information is of a first format.
  • the proxy server determines a first executable program that is associated with the position information of a first format.
  • the associated executable program is determined from the identifier contained within the position information.
  • a plurality of executable programs is located within the proxy server, each of the executable programs associated with location information packets of specific formats.
  • the proxy server accesses the associated or first executable program in order to convert the position information from the first format into a first standard location format.
  • This standard location format is recognizable by the requester of the location information.
  • the first executable program is capable of converting the position information of the first format into a plurality of standard location formats.
  • the executable program is able to compare and recognize which of the standard location formats most closely matches the format as requested by a third party or a content provider.
  • step 1170 the position information of the first format is converted into a first standard location format.
  • step 1180 the position information in the first standard location format is sent to the third party requesting the information.
  • the third party may be a content provider.
  • a specific request is made by the third party at a specific time for location information of a particular mobile device.
  • the third party may provide advertising for a local coffee shop.
  • the third party has a request for location information pertaining to all mobile devices within a zip code area of the coffee shop. If any mobile device enters into a carrier network within the zip code, the third party is notified, whereby the third party can have a content provider send out an advertisement for that coffee shop.
  • a mobile device sends a plurality of position information packets, each of which is identified with an identifier, each of which is associated with a software driver located on the mobile device.
  • the proxy server directs each of the plurality of position information packets to the corresponding executable plug-in module as per the associated identifier.
  • Each plug-in module converts the position information into the standard location format that most closely matches the format required by a requesting third party or content provider.
  • Each plug-in module also gives a satisfaction number that indicates how closely the converted location information matches the required format. For example, if the conversion was exact, the satisfaction number may be one hundred percent.
  • the proxy server decides which one of the converted position information packets will be sent to the requesting party. In one embodiment, depending on the satisfaction value given by each of the DLLs, the proxy server will select the packet with the highest satisfaction value.
  • the instructions for the steps, and the data input and output from the steps of process 1100 may be implemented utilizing processor 101 and ROM memory 103 and RAM memory 102 , as shown in FIG. 5 .
  • processor 101 and ROM memory 103 and RAM memory 102 may be implemented utilizing processor 101 and ROM memory 103 and RAM memory 102 , as shown in FIG. 5 .
  • other types of memory storage can be utilized to accomplish the aforementioned such as a hard drive, a CD ROM, flash memory, or any compact integrated circuit memory storage device.

Abstract

A method and system for a device and carrier independent geographic location protocol. Specifically, the present invention provides location information of a mobile device to third parties in a communication network through a protocol that is device and network carrier independent. Position information of any first format is sent to a proxy server. An identifier that identifies the type and format of the position information is also sent. The proxy server then locates and accesses an executable plug-in module associated with the identifier to convert the position information of the first format into one of a plurality of standard location formats. The executable plug-in module converts the position information into a second standard format as required by the third party. After the position information is converted to the second format, the proxy server sends the position information to the third party.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation application of application Ser. No. 10/964,788, entitled “METHOD AND APPARATUS FOR DEVICE AND CARRIER INDEPENDENT LOCATION SYSTEMS FOR MOBILE DEVICES,” filed Oct. 13, 2004, which is a continuation application of application Ser. No. 09/802,172, entitled “METHOD AND APPARATUS FOR DEVICE AND CARRIER INDEPENDENT LOCATION SYSTEMS FOR MOBILE DEVICES,” filed Mar. 7, 2001, now U.S. Pat. No. 6,823,260, and assigned to the assignee of the present application. The subject matter in the above-identified co-pending and commonly owned applications is incorporated herein by reference.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to the field of location systems and protocols for mobile devices.
  • 2. RELATED ART
  • Communication networks exist that allow for electronic mobile devices to communicate with and retrieve information from a variety of content providers in the network. The mobile device can be located anywhere in the world.
  • For particular types of information, it is necessary to provide location information in order to process a request from the mobile device. For example, a user may require weather information from a content provider located on the Internet. In order for the content provider to process a request for weather information, the content provider must know where the user is geographically located in the world.
  • Heretofore, methods that provide location information of a user, through their mobile device, are network carrier, connection hardware, and connection software dependent in that a particular type of hardware can only interface with a particular network carrier in order to provide location information of a specific format. In other words, the entire system is designed for a one-to-one relationship between the hardware device and the network carrier when providing location information to a third party, such as a content provider.
  • Further, it is preferable that the location information be of a specific format in order for the content provider to understand the information and process a request for information. In some cases, the method may also be dependent on a proxy server to convert location information of the specific format to a published standard format. In that case, the proxy server is able to interpret and understand the information of the specific format.
  • For example, an Internet capable mobile handheld device can submit a request for weather information to a content provider over a communication network through a proxy server. The proxy server acts to convert the transfer of information between the mobile device and the content provider. In fact, the proxy server ensures that location information coming from the mobile device is converted to a particular format as requested by the content provider. The request for location information of a specific format from the content provider may be embedded in the web clipping application specific to the content provider. The format required by the content provider may be a mailing zip code as used in the United States of America.
  • Understanding that the content provider requires location information, the connection software driver that connects the mobile device to a network communicates with a particular network carrier for specific location information. The communicated location information can be of any particular type, as long as the connection software driver, the network carrier, and the proxy server understand the format and type of information.
  • In particular, one type of information can be tower information. When communicating with the network, the connection software driver in the mobile device may have access to information about the tower or base station that the mobile device connects through to access the communication network. Specifically, a particular type of information is the tower ID or identification number.
  • The connection software driver in the mobile device sends the tower ID information to the proxy server. The proxy server then can convert the tower ID information to a zip code that corresponds to the location of the accessed tower. This conversion can be facilitated with the use of a mapping table that ties specific towers to specific zip codes.
  • After the proxy server converts the location information, the complete request for weather information, including the converted location information, is sent to the content provider for weather information. The content provider, with the proper location information in the proper zip code format, then sends a web page back to the proxy server with the weather information to be sent to the mobile device.
  • A problem exists in that the process for transferring the location information is device and network carrier specific. If the mobile device were to connect to the Internet using a different network carrier and different connection software driver, then location information of any type would not be generated. The connection software driver would not be able to or understand how to receive tower information from the different network carrier in order to process a request for location information. Thus, the method requires that the mobile device use a particular network carrier.
  • Thus, the mobile device must connect to the network using specific connecting hardware, a specific connecting software driver, and a specific network carrier. Each of these dependent components understand that location information of a specific format is required, e.g., that of tower ID. If, however, the mobile device uses a different connecting hardware, such as a wireless internal modem instead of a built-in radio, the software driver associated with the modem will not know or understand that location information is requested. As such, the software driver associated with the modem will not be able to send the necessary tower ID information to the proxy server.
  • SUMMARY OF THE INVENTION
  • Embodiments of the present invention disclose a method and system for providing geographic location information for a mobile device to a third party through a communication network. The present invention provides a more flexible mechanism and protocol for providing location information. In addition, the present invention provides a better interface over a communication network between a mobile device and a third party for providing location information. Also, the present invention provides for a more universal system that is device and carrier independent for providing location information over a communication network.
  • Specifically, embodiments of the present invention disclose a method and system for providing location information of a mobile device to third parties in a communication network through a protocol that is device and network carrier independent. Position information of any first format is sent to a proxy server in a location information packet. An identifier that identifies the type and format of the position information is also sent.
  • The proxy server then takes the location information packet and based on its identifier, calls a proxy software driver, such as an executable plug-in module. The proxy driver is able to convert the position information of the first format into at least one of a plurality of published standard location formats.
  • Additionally, the executable plug-in module is able to recognize which of the plurality of standard location formats most closely matches or exactly matches the format required by the content provider. After the position information is converted to the format required by the content provider, the proxy server sends the position information to the content provider.
  • In one embodiment of the present invention, location information of a first format is sent from a mobile device to a proxy server. Position information of a first format is created indicating the geographic location of the mobile device. The position information is created by a software driver located in the mobile device. The software driver may be a network connection driver that connects the mobile device to a network carrier. In that case, position information associated with the network carrier, such as tower identification number, is relayed back to the software driver. The software driver may be directed to an internal global positioning satellite (GPS) hardware device located on the mobile device. The software driver may determine location by asking the user for position information.
  • The position information of the first format is then sent to a proxy server. An identifier that indicates the type and format of the position information is also sent. The proxy server accesses a first executable plug-in module or program that is directly associated with the identifier. The executable plug-in module is able to convert the position information of the first format into a plurality of standard location formats. In one embodiment, the plug-in module is a dynamic link library (DLL).
  • The plug-in module is able to determine the required format as required by a content provider. The required format is one of the plurality of standard location formats in one embodiment of the present invention. The plug-in module is able then to convert the position information of the first format into the format required by the content provider. After the conversion, the proxy server sends the position information of the required format to the content provider.
  • In another embodiment, the standard position information may be of any type providing geographic location and may consist of one of the following: network carrier tower identification; network carrier cell ID; zip code and postal code; global positioning satellite (GPS) coordinates; city name or code; country name or code; state name or code; county name or code; closest major airport name or code; phone area code; train station name or code; time zone; daylight saving time; mobile network ID; mobile network name; mobile network cellular ID; IP address; local time; street name; street address; and user ID.
  • In one embodiment of the present invention, a mobile device sends a query that is attached to a web clipping application located on the mobile device. The query is directed to a third party, such as a content provider, over a communication network via a proxy server. A location information packet is also sent to the proxy server along with the query. The location information packet also contains the position information of the mobile device, and an identifier that indicates the particular type and format the position information is comprised of.
  • In another embodiment of the present invention, a third party on the communication network initiates a request for location information pertaining to a mobile electronic device.
  • In another embodiment of the present invention, a mobile device sends a plurality of position information packets, each of which is identified with an identifier, each of which is associated with a software driver located on the mobile device. The proxy server directs each of the plurality of position information packets to the corresponding executable plug-in module as per the associated identifier. Each plug-in module converts the position information into the standard location format that most closely matches the format required by a requesting third party or content provider. Each plug-in module also gives a satisfaction number that indicates how closely the converted location information matches the required format. For example, if the conversion was exact, the satisfaction number may be one hundred percent.
  • These and other objects and advantages of the present invention will no doubt become obvious to those of ordinary skill in the art after having read the following detailed description of the preferred embodiments which are illustrated in the various drawing figures.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1A illustrates a block diagram of a first exemplary network environment including a personal digital assistant in accordance with an embodiment of the present invention.
  • FIG. 1B illustrates a block diagram of a second exemplary network environment including a personal digital assistant coupled to other computer systems and the Internet via a cradle device in accordance with an embodiment of the present invention.
  • FIG. 2A is a top side perspective view of a palmtop computer system that can be used as a platform for the data entry and authentication embodiments of the present invention.
  • FIG. 2B is a bottom side perspective view of the palmtop computer system of FIG. 2A.
  • FIG. 3 is an exploded view of the components of the palmtop computer system of FIG. 2A.
  • FIG. 4 is a perspective view of the cradle device for connecting the palmtop computer system to other systems via a communication interface.
  • FIG. 5 is a logical block diagram of the palmtop computer system in accordance with an embodiment of the present invention.
  • FIG. 6 illustrates a block diagram of a carrier access network for a handheld electronic device, in accordance with one embodiment of the present invention.
  • FIG. 7 is a block diagram illustrating an exemplary raw position information packet that is generated by a software driver located on a handheld electronic device, in accordance with one embodiment of the present invention.
  • FIG. 8 illustrates a block diagram of the proxy server, in accordance with one embodiment of the present invention.
  • FIG. 9 is a table illustrating possible forms of standard position information formats, in accordance with one embodiment of the present invention.
  • FIG. 10 is a block diagram of system that illustrates the process of providing location information over a communication network, in accordance with one embodiment of the present invention.
  • FIG. 11 illustrates a flow chart of steps in accordance with providing position and location information over a communication network, in one embodiment of the present invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • Reference will now be made in detail to the preferred embodiments of the present invention, a method and apparatus for a device and carrier independent location system, examples of which are illustrated in the accompanying drawings. While the invention will be described in conjunction with the preferred embodiments, it will be understood that they are not intended to limit the invention to these embodiments. On the contrary, the invention is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the invention as defined by the appended claims.
  • Furthermore, in the following detailed description of the present invention, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be recognized by one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well known methods, procedures, components, and circuits have not been described in detail as not to unnecessarily obscure aspects of the present invention.
    • Notation and Nomenclature
  • Some portions of the detailed descriptions which follow are presented in terms of procedures, steps, logic blocks, processing, and other symbolic representations of operations on data bits that can be performed on computer memory. These descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. A procedure, computer executed step, logic block, process, etc., is here, and generally, conceived to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
  • It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, it is appreciated that throughout the present invention, discussions utilizing terms such as “accessing” “processing” or “computing” or “translating” or “calculating” or “determining” or “scrolling” or “displaying” or “recognizing” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
    • Exemplary Palmtop Computer System Platform
  • The present invention is compatible with any mobile electronic device. One of the common types of electronic systems which can be used in accordance with one embodiment of the present invention is referred to as a personal digital assistant, or commonly called a PDA. The PDA is a pocket sized electronic organizer with the capability to store telephone numbers, addresses, daily appointment, and software that keeps track of business or personal data such as expenses, etc. Furthermore, the PDA also has the ability to connect to a personal computer, enabling the two devices to exchange information, in order to synchronize the information between the two devices. Additionally, the PDA can also be connected to a modem, enabling it to have electronic mail (e-mail) capabilities over the Internet along with other Internet capabilities. Moreover, an advanced PDA can have Internet capabilities over a wireless communication interface (e.g., radio interface). In particular, the PDA can be used to browse Web pages located on the Internet. The PDA can be coupled to a networking environment. It should be appreciated that embodiments of the present invention are well suited to operate within a wide variety of electronic systems (e.g., computer systems) which can be communicatively coupled to a networking environment, including cellular phones, pagers, etc.
  • FIG. 1A is a block diagram of an exemplary network environment 50 including an exemplary personal digital assistant. The PDA 100 is also known as a palmtop or palm-sized electronic system or computer system. The PDA 100 has the ability to transmit and receive data and information over a wireless communication interface (e.g., a radio interface). The PDA 100 is one exemplary implementation on which the present invention can operate. The present invention can operate on any portable electronic system or device. The present invention can also operate on a non-portable system. For example, in one embodiment of the present invention, the local area network could be used to query location information.
  • In one embodiment, base station 32 is both a transmitter and receiver base station which can be implemented by coupling it into an existing public communication network 34. Implemented in this manner, base station 32 enables the personal digital assistant 100 to communicate with a proxy server computer system 36, which is coupled by wire 35 to the existing public telephone network 34. Furthermore, proxy server computer system 36 is coupled to the Internet 52, thereby enabling the PDA 100 to communicate with the Internet 52. It should be further appreciated that other embodiments of a communications network may be utilized in accordance with the present invention.
  • The data and information which are communicated between base station 32 and the personal digital assistant 100 are a type of information and data that can conventionally be transferred and received over a public telephone wire network system. However, a wireless communication interface is utilized to communicate data and-information between the PDA 100 and base station 32. It should be appreciated that one embodiment of a wireless communication system in accordance with the present invention is the Mobitex wireless communication system.
  • FIG. 1B illustrates a system 51 that can be used in conjunction with the present invention. System 51 comprises a host computer system 56 which can either be a desktop unit as shown, or, alternatively, can be a laptop system 58. Optionally, one or more host computer systems can be used within system 51. Host computer systems 58 and 56 are shown connected to a communication bus 54, which in one embodiment can be a serial communication bus, but could be of any of a number of well known designs, e.g., a parallel bus, Ethernet Local Area Network (LAN), etc. Optionally, bus 54 can provide communication with the Internet 52 using a number of well known protocols.
  • Importantly, bus 54 is also coupled to a cradle 60 for receiving and initiating communication with a personal digital assistant 100 in one embodiment of the present invention. Cradle 60 provides an electrical and mechanical communication interface between bus 54 (and anything coupled to bus 54) and the computer system 100 for two way communications. Computer system 100 also contains a wireless infrared communication mechanism 64 (e.g., an infrared emitter and detector device) for sending and receiving information from other similarly equipped devices (see FIG. 1B).
  • With reference to FIGS. 1A and 1B, it is appreciated that the exemplary personal digital assistant or palmtop computer system 100 can be used in network environment combining elements of networks 50 and 51. That is, as will be seen below, the PDA 100 can include both a wireless infrared communication mechanism and a signal (e.g., radio) receiver/transmitter device.
  • FIG. 2A is a perspective illustration of the top face 100 a of one embodiment of the palmtop computer system. The top face 100 a contains a display screen 105 surrounded by a bezel or cover. A removable stylus 80 is also shown. The display screen 105 is a touch screen able to register contact between the screen and the tip of the stylus 80. The stylus 80 can be of any material to make contact with the screen 105. The top face 100 a also contains one or more dedicated and/or programmable buttons 75 for selecting information and causing the computer system to implement functions. The on/off button 95 is also shown.
  • FIG. 2A also illustrates a handwriting recognition pad or “digitizer” containing two regions 106 a and 106 b. Region 106 a is for the drawing of alphabetic characters therein (and not for numeric characters) for automatic recognition, and region 106 b is for the drawing of numeric characters therein (and not for alphabetic characters) for automatic recognition. The stylus 80 is used for stroking a character within one of the regions 106 a or 106 b. The stroke information is then fed to an internal processor for automatic character recognition. Once characters are recognized, they are typically displayed on the screen for verification and/or modification.
  • FIG. 2B illustrates the bottom side 100 b of one embodiment of the palmtop computer system. An optional extendible antenna 85 is shown and also a battery storage compartment door 90 is shown. A communication interface 108 is also shown. In one embodiment of the present invention, the communication interface 108 is a serial communication port, but could also alternatively be of any of a number of well known communication standards and protocols, e.g., parallel, USB, SCSI, Firewire (IEEE 1394), Ethernet, etc. It is appreciated that interface 108 can also be used for charging current when using rechargeable batteries.
  • FIG. 3 is an exploded view of the palmtop computer system 100 in accordance with one implementation. System 100 contains a front cover 210 having an outline of region 106 and holes 75 a for receiving buttons 75 b. A flat panel display 105 (both liquid crystal display and touch screen) fits into front cover 210. Any of a number of display technologies can be used, e.g., liquid crystal display (LCD), field emission display (FED), plasma, etc., for the flat panel display 105. A battery 215 provides electrical power. A contrast adjustment (potentiometer) 220 is also shown. On/off button 95 is shown along with an infrared emitter and detector device 64. A flex circuit 230 is shown along with a PC board 225 containing electronics and logic (e.g., memory, communication bus, processor, etc.) for implementing computer system functionality. A digitizer pad can be part of the display assembly or it can also be included in PC board 225. A midframe 235 is shown along with stylus 80. Position adjustable antenna 85 is shown.
  • A radio receiver/transmitter device 240 is also shown between the midframe and the rear cover 245 of FIG. 3. The receiver/transmitter device 240 is coupled to the antenna 85 and also coupled to communicate with the PC board 225. In one implementation, the Mobitex wireless communication system is used to provide two way communication between system 100 and other networked computers and/or the Internet via a proxy server. In other embodiments, TCP protocol can be used.
  • FIG. 4 is a perspective illustration of one embodiment of the cradle 60 for receiving the palmtop computer system 100. Cradle 60 contains a mechanical and electrical interface 260 for interfacing with communication interface 108 (FIG. 2B) of computer system 100 when system 100 is slid into the cradle 60 in an upright position. Once inserted, button 270 can be pressed to initiate two way communication between system 100 and other computer systems coupled to electrical interface cable 265.
  • Referring now to FIG. 5, portions of the present electronic system are comprised of computer-readable and computer-executable instructions which reside, for example, in computer-readable media of an electronic system (e.g., personal digital assistant, computer system, and the like). FIG. 5 is a block diagram of exemplary interior components of an exemplary personal digital assistant 100 upon which embodiments of the present invention may be implemented. It is appreciated that the exemplary PDA 100 of FIG. 5 is only exemplary and that the present invention can operate within a number of different electronic systems including general purpose networked computer systems, embedded computer systems, and stand alone electronic systems such as a cellular telephone or a pager.
  • FIG. 5 illustrates circuitry of an exemplary electronic system or computer system 100 (such as the personal digital assistant), some of which can be implemented on PC board 225 (FIG. 3). Exemplary computer system 100 includes an address/data bus 99 for communicating information, a central processor 101 coupled with the bus 99 for processing information and instructions, a volatile memory 102 (e.g., random access memory (RAM), static RAM dynamic RAM, etc.) coupled with the bus 99 for storing information and instructions for the central processor 101 and a non-volatile memory 103 (e.g., read only memory (ROM), programmable ROM, flash memory, EPROM, EEPROM, etc.) coupled to the bus 99 for storing static information and instructions for the processor 101. Exemplary computer system 100 also includes an optional data storage device 104 (e.g., memory card, hard drive, etc.) coupled with the bus 99 for storing information and instructions. Data storage device 104 can be removable. As described above, exemplary computer system 100 also contains an electronic display device 105 coupled to the bus 99 for displaying information to the computer user. In one embodiment, PC board 225 (FIG. 3) can contain the processor 101, the bus 99, the ROM 103 and the RAM 102.
  • Also included in computer system 100 of FIG. 5 is an alphanumeric input device 106 which in one implementation is a handwriting recognition pad (“digitizer”) having regions 106 a and 106 b (FIG. 2A), for instance. Device 106 can communicate information (spatial data and pressure data) and command selections to the central processor 101. System 100 also includes an optional cursor control or directing device 107 coupled to the bus for communicating user input information and command selections to the central processor 101. In one implementation, device 107 is a touch screen device incorporated with screen 105. Device 107 is capable of registering a position on the screen 105 where the stylus makes contact and the pressure of the contact. The display device 105 utilized with the computer system 100 may be a liquid crystal device, cathode ray tube (CRT), field emission device (FED, also called flat panel CRT) or other display device suitable for creating graphic images and alphanumeric characters recognizable to the user. In the preferred embodiment, display 105 is a flat panel display.
  • With reference still to FIG. 5, exemplary computer system 100 also includes a signal input/output device 108 which is coupled to bus 99 for providing a communication link between computer system 100 and a network environment (e.g., network environment 50 and 51 of FIGS. 1A and 1B respectively). As such signal input/output device 108 enables central processor unit 101 to communicate wirelessly with other electronic systems coupled to the network. It should be appreciated that within the present embodiment, signal input/output device 108 is coupled to antenna 85 and provides the functionality to transmit and receive information over a wireless communication interface. It should be further appreciated that the present embodiment of signal input/output device 108 is well-suited to be implemented in a wide variety of ways. For example, signal input/output device 108 could be implemented as a modem. Further, signal input/output communication device 108, also coupled to bus 99, can be a serial port for communicating with the cradle 60. Additionally, device 108 can also include an infrared communication port.
  • Web Platform Applications
  • A method and system are described utilizing web platform applications and applications in general. Web platform applications resident on a personal digital assistant 100 are software programs that can run independently, or can be extensions of and supported by corresponding applications located on remote computer systems. Web platform applications are commonly known as web clipping applications, an example of which is a Palm Query Application (PQA), also known as web clipping application (WCA).
  • Web platform applications on PDA 100 can be extensions of corresponding applications located on a remote stand-alone computer system. For example, through synchronizing the PDA 100 with a stand-alone computer system, an address book application located on a PDA 100 can exchange data with and be supported by the corresponding applications located on a stand-alone computer system, such as system 56 in FIG. 1B. The process of synchronization is described in more detail in the following three U.S. patents which are hereby incorporated by reference: U.S. Pat. No. 5,727,202 entitled “Method and Apparatus for Synchronizing Information on Two Different Computer Systems”, issued Mar. 10, 1998; U.S. Pat. No. 5,832,489 entitled Method and Apparatus for Synchronizing Information on Two Different Computer Systems”, issued Nov. 3, 1998; U.S. Pat. No. 6,006,274 entitled “Method and Apparatus using a Pass Through Personal Computer Connected to Both a Local Communication Link and a Computer Network for Identifying and Synchronizing a Preferred Computer with a Portable Computer”, issued Dec. 21, 1999.
  • Furthermore, web platform applications facilitate user interaction with content servers associated with those applications. The web platform application contains user-interface elements that retrieves, updates, and displays content on a PDA 100. A host of installed web applications on PDA 100 can provide access to specific types of information such as stock quotes, flight schedules, restaurant listing, as well as other pieces of information while connected to the Internet. Additionally, a web platform application can facilitate user interaction with a content server by having a user fill out query forms located on a web platform application while disconnected from the Internet. Subsequently, the forms are sent out for processing the next time the PDA 100 is synchronized with a host computer system, such as system 56 in FIG. 1B.
  • An example of a web platform application that is supported by a content server, that maintains a specific web site, could be a weather application. A user can use the weather web platform application to interact with the weather content server to access information about the latest weather conditions for the location of the user.
  • A user accesses information from a content server based on a simple query and response protocol. The query portion of the web platform application is stored locally on the PDA 100. The user enters data in to a request form (e.g., for a stock symbol, news topic, weather conditions, or name to look up) without even going on-line.
    • Providing Device and Carrier Independent Position Information of a Mobile Device Through a Communication Network
  • Although the description of-the present invention will focus on an exemplary personal digital assistant (hereinafter referred to as “PDA”) or palmtop: computer system, the present invention can be practiced with other electronic systems or electronic devices (e.g. personal computer systems, cellular phones, pagers, portable web devices, etc.).
  • FIG. 6 illustrates a block diagram of the carrier access network 600 for a PDA 100, in one embodiment of the present invention. PDA 100 can access the network through a carrier through a number of connection hardware mechanisms. For example, the connection hardware could be an internal radio, wireless modem, wireline modem, a cradle attached to a host compute, etc. The PDA 100 could also have additional hardware devices like a Global Positioning Satellite (GPS) receiver. Each of these hardware access mechanisms or hardware devices can be represented as hardware device one in block 610, hardware device two in block 612, through the n hardware device in block 615.
  • Continuing with FIG. 6, there is a software driver for each access or connection hardware. There is also a software driver for each hardware device on the PDA 100. For example, for hardware device-one 610, there is an associated software driver-one 620. The other associated drivers are represented as driver-two 622, through the nth driver 625. The software driver of an access device coordinates the interaction between the PDA 100 and a base station of a specific carrier network, such as base station 32 of FIG. 1A, in order to access a communication network, such as the Internet.
  • In one embodiment of the present invention, the software driver understands that position information of the PDA 100 is required to send a query by the PDA 100. This query may be associated with a web clipping application (WCA) located on PDA 100, such as a weather WCA. The software driver may need to communicate with the carrier network to obtain whatever position information is available. For example, the carrier network may provide zip code or identification information for the closest tower providing access to the communication network for the PDA 100.
  • In another embodiment of the present invention, the PDA 100 may have multiple hardware devices that are capable of producing position information. For example, the software driver associated with a GPS system on the PDA 100 is capable of providing very accurate position information.
  • It is appreciated that there are many different ways to determine the precise or approximate location of a mobile device on the globe. These methods include, among others, the use of a GPS locator, finding something specific to the wireless (or wireline) network, such as using the cell identification (ID), asking the user where the mobile device is located for street names or addresses, or even determining position information from the date, hour and angle of the sun. Other types of information include mobile network carrier tower identification, mobile network carrier cell ID, mobile network ID, Internet IP address, user ID, network frequency, etc. The present invention can utilize any of these mechanisms to determine position information of the PDA 100.
  • In one embodiment, determining the position information of the PDA 100 is device and carrier independent. In other words, regardless of what device, or hardware used to access a communication network, or which carrier network is used to access the communication network, the present invention allows for the possibility for the PDA 100 to access any type of position information in order to provide location information to a proxy server.
  • In one embodiment, the location information may have been requested by a third party on the communication network that desires location information of a PDA 100. In another embodiment, the location information may be required by a content provider in order to process a request for information by the PDA 100. For example, a query or request for weather information requires location information to be provided. The location information may be provided in the initial query, via a web clipping application, or by a request by the content server.
  • FIG. 7 is a block diagram illustrating the raw position information packet 700 that is generated by a software driver located on the PDA 100, in accordance with one embodiment of the present invention. The packet 700 is a packet of digital data that might come from different sources of information to determine where the location of the connection hardware associated with the PDA 100. The precision of this location information may vary depending on the following: a) the type and sophistication of the mobile device; b) the carrier network; and c) the capabilities of the connection hardware and the software driver associated with the hardware. Typical information may be information related to the base station that the PDA 100 uses to access the communication network.
  • Continuing with FIG. 7, packet 700 may contain a raw position information identifier 710. This identifier 710 will indicate what type or format of location information data 730 is included within the packet 700. For example, if the data 730 is actual GPS coordinates of the PDA 100, the identifier may be number 17.
  • Additionally, raw information packet 700 may contain multiple types of location information in another embodiment. The identifier 710 may also contain information about electronic device that is sending the raw positing information identifier 710, such as the phone or PDA type. Furthermore, packet 700 may contain a length portion 720 that indicates the length of data 730.
  • In accordance with another embodiment of the present invention, each of the parts of the packet 700 is comprised of an 8 bit byte. So, the identifier 710 would be a maximum of 8 bits. It is appreciated that this is exemplary only and that each of the parts may be larger than 8 bits to accommodate the various of methods in determining location information.
  • Furthermore, more than one raw position information packet 700 may be generated by the software drivers associated with the hardware devices for a PDA 100. The more location information that is presented for a specific PDA 100, the better the chance of getting precise location information.
  • FIG. 8 illustrates a block diagram of the proxy server 36, in accordance with one embodiment of the present invention. The proxy server can be the proxy server 36 in FIG. 1A. FIG. 8 illustrates that a raw location packet 700 is sent to proxy server 36. In one embodiment of the present invention, the operating system of the PDA 100 takes the raw information packet 700 and sends the packet 700 to the proxy server. This location information might be more or less accurate with respect to the specific location information of the PDA 100. In any case, the raw location packet 700 will be identified using a raw location packet identifier 710.
  • The proxy server facilitates the interface of information between the PDA 100 and the content provider. For example, the proxy server 36 takes a query for weather information from the PDA 100 and sends it to the content provider over the Internet 52. Alternatively, the proxy server takes the resulting web page with weather information and sends it back to the PDA.
  • In one embodiment of the present invention, the proxy server 36 receives the raw information packet 700 from a PDA 100. The raw information packet 700 may be associated with a query from a web clipping application, or from a request from a third party request for location information regarding the PDA 100.
  • The proxy server 36 then locates the proper executable plug-in module associated with the raw information packet 700. The proper plug-in module is determined from the identifier associated with packet 700. In one embodiment of the present invention, each of the plug-in modules are dynamic link libraries (DLLs). For example, packet 700 may be associated with DLL-1810 of FIG. 8. Each of the plugin module programs in FIG. 8 are able to convert the raw location information contained within an associated packet, such as packet 700, into at least one of a plurality of standard location formats.
  • In one embodiment of the present invention, these conversion programs are located within raw location dynamic link libraries (DLLS) contained within the proxy server. These DLLs are sometimes called proxy drivers. It is appreciated that the use of DLLs is exemplary only and that other technologies are equally useful, such as regular libraries, modules, etc.
  • Each of the raw location DLLs store executable routines as files that can be loaded and accessed when needed by a program, for example the conversion of the location information into a standard location information format. The programs contained within the raw location DLL can contain code that accesses tables contained within the raw location DLL, or even access information, tables, or programs contained within other web sites over a communication network, as shown by the source of information block 840 attached to raw location DLL-n 830.
  • Continuing with FIG. 8, proxy server 36 contains as many raw location DLLs as are necessary to convert the myriad of raw position information provided by the PDA 100 into standardized location formats. Proxy server 36 contains raw location DLL-1810, raw location DLL-2820, and on up to raw location DLL-n 830.
  • In accordance with embodiments of the present invention, this device and carrier independent system for providing location information allows for the addition of any new connection hardware or hardware device by supplying a corresponding software driver to the PDA 100 and a corresponding raw location DLL at the proxy server. The software driver knows how to interact with this new connection hardware or hardware device, such as a GPS receiver, in order to generate any possible raw location packet.
  • The proxy server will convert the raw location packet received from the PDA 100 using the appropriate raw location DLL, or proxy driver, in order to transform it into at least one of a plurality of standardized location information formats recognizable by the requesting party.
  • FIG. 9 is a Table 900 illustrating a plurality of standardized location information formats. Location information given in packet 700 is converted by a corresponding DLL into a standard location format as exemplified in Table 900.
  • For example, in processing a request for weather information over the Internet, the content provider may require only zip code information 912 to be converted from the raw location information packet 700. The raw information packet 700 may contain tower ID information. A corresponding executable plug-in module at the proxy server will take the tower ID information and convert that data into a zip code which corresponds to that tower. The zip code 912 typically corresponds to the tower or base station that the PDA 100 accesses the communication network. As such, the zip code may have an accuracy that can vary from a few hundred square feet to many hundreds of miles.
  • More specific location information may be required from content providers that need to know within a few meters the location of the PDA 100. For example, emergency health care services may require exact location information in the format of GPS coordinates 914.
  • It is appreciated that Table 900 is exemplary only and that other standard location formats not shown in Table 900 are possible such as closest major airport name or code, phone area code, time zone, daylight saving time, etc.
  • FIG. 10 is a block diagram of system 1000 that illustrates the process of providing location information over a communication network, in accordance with one embodiment of the present invention. System 1000 shows a PDA 100 that connects to a communication network using various connection hardware and software drivers 600. The PDA can use a wireless connection to a base station 32 or have a direst wireline connection to the proxy server 36. In the case of a wireless connection, a wireless service provider 1010 or carrier network 1010 is used to connect to the proxy server. In either case, raw positioning information 700 is sent to the proxy server 36 by the PDA 100.
  • At the proxy server 36, the raw position information of a first format is delivered to the corresponding DLL. The corresponding DLL is determined from an identifier sent along with the raw positioning information 70. The proxy server locates and accesses an appropriate DLL, 1010, 1020, or 1030 to convert the location information into at least one of a plurality of standardized location information formats. The content provider 1050 is able to interpret the position or location information in the standardized format. The DLLs can access other programs or databases in other content providers or wireless service providers, such as provider B 1040.
  • In accordance with another embodiment of the present invention, the DLL associated with the raw information packet 700 is able to convert the location information of the first format into a plurality of standard location information formats. Also, the DLL can determine which standard location information format is closest to the format required by a requesting third party, or the content provider that is the object of a web clipping application. Thus, the DLL knows the format the location information is included in the raw information packet 700 and the format required by the requesting party or content provider. The DLL then is able to convert the raw location information packet 700 into the format closest to the required format. In another embodiment, the DLL is able to convert the raw location information packet directly into the required format.
  • FIG. 11 illustrates a flow chart of steps in accordance with providing position and location information over a communication network, such as the internet, in one embodiment of the present invention. Process 1100 begins with understanding that a content provider requires geographic position information in order to process a query or request for information from an electronic device, such as PDA 100, in step 1110.
  • In step 1120, position information of a first format is created by the PDA 100. The position information is created by software drivers located on the PDA 100. These software drivers may be network access drivers or may be associated with location hardware on the PDA 100, such as a GPS device.
  • In one embodiment, the position information is created by the software driver associated with the network connecting hardware. In that case, the software driver sends a request for the position information of said first format to the network carrier. The network carrier returns the information of a first format.
  • In another embodiment of the present invention, the software driver queries the-user for location information of the first format. For example, the user may provide zip code information, address information, etc. In particular, the user may provide location information that is not associated with the PDA 100. Such is the case when the user is traveling, but wants movie information for a location near the user's home.
  • In step 1130 of process 1100, the electronic device sends position information of the first format to a proxy server. This position information may be of any format that is particular to the carrier network, or hardware device, or connection hardware.
  • In step 1140 of process 1100, the PDA 100 sends an identifier with the position information. The identifier indicates the type and format of the position information. Specifically, the identifier tells the proxy server that the position information is of a first format.
  • In step 1150 of process 1100, the proxy server determines a first executable program that is associated with the position information of a first format. The associated executable program is determined from the identifier contained within the position information. In one embodiment, a plurality of executable programs is located within the proxy server, each of the executable programs associated with location information packets of specific formats.
  • In step 1160, the proxy server accesses the associated or first executable program in order to convert the position information from the first format into a first standard location format. This standard location format is recognizable by the requester of the location information.
  • In another embodiment of the present invention, the first executable program is capable of converting the position information of the first format into a plurality of standard location formats. The executable program is able to compare and recognize which of the standard location formats most closely matches the format as requested by a third party or a content provider.
  • Continuing with process 1100, in step 1170 the position information of the first format is converted into a first standard location format. In step 1180, the position information in the first standard location format is sent to the third party requesting the information. The third party may be a content provider.
  • In accordance with another embodiment, in the case where a third party is independently requesting location information, a specific request is made by the third party at a specific time for location information of a particular mobile device. For example, the third party may provide advertising for a local coffee shop. The third party has a request for location information pertaining to all mobile devices within a zip code area of the coffee shop. If any mobile device enters into a carrier network within the zip code, the third party is notified, whereby the third party can have a content provider send out an advertisement for that coffee shop.
  • In another embodiment of the present invention, a mobile device sends a plurality of position information packets, each of which is identified with an identifier, each of which is associated with a software driver located on the mobile device. The proxy server directs each of the plurality of position information packets to the corresponding executable plug-in module as per the associated identifier. Each plug-in module converts the position information into the standard location format that most closely matches the format required by a requesting third party or content provider. Each plug-in module also gives a satisfaction number that indicates how closely the converted location information matches the required format. For example, if the conversion was exact, the satisfaction number may be one hundred percent.
  • The proxy server then decides which one of the converted position information packets will be sent to the requesting party. In one embodiment, depending on the satisfaction value given by each of the DLLs, the proxy server will select the packet with the highest satisfaction value.
  • The flexibility of the process 1100, in accordance with embodiments of the present invention is without limit. Any mobile device located anywhere in the world can use any carrier network provider to talk to any server on the Internet in order to provide location information. Thus, embodiments of the present invention are device and carrier independent.
  • While the method of embodiments illustrated in process 1100 show specific sequences and quantity of steps, the present invention is suitable to alternative embodiments. For example, not all the steps provided for in the method are required for the present invention. Furthermore, additional steps can be added to the steps presented in the present embodiment. Likewise, the sequences of steps can be modified depending upon the application.
  • The instructions for the steps, and the data input and output from the steps of process 1100 may be implemented utilizing processor 101 and ROM memory 103 and RAM memory 102, as shown in FIG. 5. Furthermore, other types of memory storage can be utilized to accomplish the aforementioned such as a hard drive, a CD ROM, flash memory, or any compact integrated circuit memory storage device.
  • The preferred embodiment of the present invention, a device and carrier method and system for providing location information, is thus described. While the present invention has been described in particular embodiments, it should be appreciated that the present invention should not be construed as limited by such embodiments, but rather construed according to the below claims.

Claims (14)

1. A system for providing information from a content server to an electronic device through a remote computer system comprising:
a content server comprising information;
an electronic device comprising a processor and a memory, the processor executing a web platform application, the web platform application comprising a request form wherein a user of the electronic device inputs data into the request form when the electronic device is not online and the request form including the data inputted by the user is stored in the electronic device memory;
a computer system comprising a processor, the computer system remote to the electronic device, the computer system processor executing an application implementing the steps of:
receiving the request form stored in the electronic device memory from the electronic device when the electronic device becomes connected online;
transferring the request form to the content server; and
retrieving information from the content server based on the request form.
2. The system of claim 1, wherein the web platform application comprises user interface elements that retrieve, update or display the information from the content server on the electronic device.
3. The system of claim 1, wherein the request form comprises position information of the electronic device.
4. The system of claim 1, wherein the application on the computer system further implements the step of creating a complete query based on the request form from the electronic device according to the content server specifications and sending the complete query to the content server.
5. The system of claim 1, wherein the web platform application is supported by one or more corresponding applications on the computer system remote to the electronic device.
6. The system of claim 5, wherein the corresponding applications are dynamic link libraries.
7. The system of claim 5, wherein the corresponding applications are executable plug-in modules.
8. The system of claim 1, wherein the transferring the request form step comprises synchronizing with host computer system.
9. The system of claim 1, wherein the electronic device further comprises a connection hardware device comprising a software driver, the software driver creating position information of the electronic device.
10. The system of claim 9, wherein the connection hardware device is selected from the group comprising: internal radio, wireless modem, wireline modem, a cradle, a global positioning satellite receiver.
11. The system of claim 9, wherein the position information is determined using one of the methods selected from the group comprising:
zip code and postal code;
global positioning satellite (GPS) coordinates;
city name or code;
country name or code;
state name or code;
county name or code;
closest major airport name or code;
phone area code;
train station name or code;
time zone;
daylight saving time;
mobile network ID;
mobile network name;
mobile network cellular ID;
IP address;
local time;
street name;
street address; and
user ID.
12. The system of claim 9, wherein the position information determination is device and carrier independent.
13. The system of claim 1, wherein the electronic device is handheld electronic device.
14. The system of claim 1, wherein the electronic device is a mobile phone.
US12/505,665 2001-03-07 2009-07-20 Method and apparatus for device and carrier independent location systems for mobile devices Abandoned US20090287796A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/505,665 US20090287796A1 (en) 2001-03-07 2009-07-20 Method and apparatus for device and carrier independent location systems for mobile devices

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/802,172 US6823260B1 (en) 2001-03-07 2001-03-07 Method and apparatus for device and carrier independent location systems for mobile devices
US10/964,788 US7565411B1 (en) 2004-10-13 2004-10-13 Method and apparatus for device and carrier independent location systems for mobile devices
US12/505,665 US20090287796A1 (en) 2001-03-07 2009-07-20 Method and apparatus for device and carrier independent location systems for mobile devices

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/964,788 Continuation US7565411B1 (en) 2001-03-07 2004-10-13 Method and apparatus for device and carrier independent location systems for mobile devices

Publications (1)

Publication Number Publication Date
US20090287796A1 true US20090287796A1 (en) 2009-11-19

Family

ID=40872700

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/964,788 Active 2026-05-26 US7565411B1 (en) 2001-03-07 2004-10-13 Method and apparatus for device and carrier independent location systems for mobile devices
US12/505,665 Abandoned US20090287796A1 (en) 2001-03-07 2009-07-20 Method and apparatus for device and carrier independent location systems for mobile devices

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/964,788 Active 2026-05-26 US7565411B1 (en) 2001-03-07 2004-10-13 Method and apparatus for device and carrier independent location systems for mobile devices

Country Status (1)

Country Link
US (2) US7565411B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130111545A1 (en) * 2011-11-02 2013-05-02 Alcatel-Lucent Usa Inc. Privacy Management for Subscriber Data
US10380513B2 (en) * 2016-03-11 2019-08-13 Sap Se Framework for classifying forms and processing form data

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10839321B2 (en) * 1997-01-06 2020-11-17 Jeffrey Eder Automated data storage system
US20060206610A1 (en) * 2005-03-09 2006-09-14 Yibei Ling Method, system and apparatus for location-aware content push service and location-based dynamic attachment
US20090198954A1 (en) * 2008-02-01 2009-08-06 Electronic Data Systems Corporation Method and system for generating location codes
US10085135B2 (en) 2009-02-10 2018-09-25 Yikes Llc Radio frequency patch antenna and system for permitting secure access to a restricted area
US9558604B2 (en) 2009-02-10 2017-01-31 Yikes Llc System for permitting secure access to a restricted area
US9367975B2 (en) 2009-02-10 2016-06-14 Yikes Llc System for permitting secure access to a restricted area
US20100201536A1 (en) * 2009-02-10 2010-08-12 William Benjamin Robertson System and method for accessing a structure using a mobile device
US8791790B2 (en) 2009-02-10 2014-07-29 Yikes Llc System and method for accessing a structure using a mobile device
US9336635B2 (en) 2009-02-10 2016-05-10 Yikes Llc System and method for permitting secure access to a structure
US10818119B2 (en) 2009-02-10 2020-10-27 Yikes Llc Radio frequency antenna and system for presence sensing and monitoring
US9576494B2 (en) * 2014-01-29 2017-02-21 Apollo Education Group, Inc. Resource resolver
CA3094398A1 (en) 2018-03-19 2019-09-26 Simpello Llc System and method for detecting presence within a strictly defined wireless zone

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6247048B1 (en) * 1998-04-30 2001-06-12 Openwave Systems Inc Method and apparatus for transcoding character sets between internet hosts and thin client devices over data networks
US20010054087A1 (en) * 2000-04-26 2001-12-20 Michael Flom Portable internet services
US20020002603A1 (en) * 2000-04-17 2002-01-03 Mark Vange System and method for web serving
US20020046262A1 (en) * 2000-08-18 2002-04-18 Joerg Heilig Data access system and method with proxy and remote processing
US20020098844A1 (en) * 2001-01-19 2002-07-25 John Friedenfelds Method for performing a predetermined action on wireless calls based on caller's location
US20020103858A1 (en) * 2000-10-02 2002-08-01 Bracewell Shawn D. Template architecture and rendering engine for web browser access to databases
US20020116534A1 (en) * 2000-11-14 2002-08-22 Doug Teeple Personalized mobile device viewing system for enhanced delivery of multimedia
US6446004B1 (en) * 2001-02-28 2002-09-03 International Business Machines Corporation System and method for implementing proximity or location driven activities
US20020198001A1 (en) * 2000-12-27 2002-12-26 Sundeep Bajikar Method and apparatus for an independent positioning system and augmentation of GPS
US20030074204A1 (en) * 2001-01-17 2003-04-17 Prasad Krothapalli Offline browsing
US6606663B1 (en) * 1998-09-29 2003-08-12 Openwave Systems Inc. Method and apparatus for caching credentials in proxy servers for wireless user agents
US6704798B1 (en) * 2000-02-08 2004-03-09 Hewlett-Packard Development Company, L.P. Explicit server control of transcoding representation conversion at a proxy or client location
US6738808B1 (en) * 2000-06-30 2004-05-18 Bell South Intellectual Property Corporation Anonymous location service for wireless networks
US6760770B1 (en) * 1999-08-26 2004-07-06 Naoyuki Kageyama Portable information system for receiving information via a communication network
US6760759B1 (en) * 1999-11-24 2004-07-06 Mtel Limited System to support mobile visual communications
US6823260B1 (en) * 2001-03-07 2004-11-23 Palm Source, Inc. Method and apparatus for device and carrier independent location systems for mobile devices
US7574486B1 (en) * 2000-11-06 2009-08-11 Telecommunication Systems, Inc. Web page content translator

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6247048B1 (en) * 1998-04-30 2001-06-12 Openwave Systems Inc Method and apparatus for transcoding character sets between internet hosts and thin client devices over data networks
US6606663B1 (en) * 1998-09-29 2003-08-12 Openwave Systems Inc. Method and apparatus for caching credentials in proxy servers for wireless user agents
US6760770B1 (en) * 1999-08-26 2004-07-06 Naoyuki Kageyama Portable information system for receiving information via a communication network
US6760759B1 (en) * 1999-11-24 2004-07-06 Mtel Limited System to support mobile visual communications
US6704798B1 (en) * 2000-02-08 2004-03-09 Hewlett-Packard Development Company, L.P. Explicit server control of transcoding representation conversion at a proxy or client location
US20020002603A1 (en) * 2000-04-17 2002-01-03 Mark Vange System and method for web serving
US20010054087A1 (en) * 2000-04-26 2001-12-20 Michael Flom Portable internet services
US6738808B1 (en) * 2000-06-30 2004-05-18 Bell South Intellectual Property Corporation Anonymous location service for wireless networks
US20020046262A1 (en) * 2000-08-18 2002-04-18 Joerg Heilig Data access system and method with proxy and remote processing
US20020103858A1 (en) * 2000-10-02 2002-08-01 Bracewell Shawn D. Template architecture and rendering engine for web browser access to databases
US7574486B1 (en) * 2000-11-06 2009-08-11 Telecommunication Systems, Inc. Web page content translator
US20020116534A1 (en) * 2000-11-14 2002-08-22 Doug Teeple Personalized mobile device viewing system for enhanced delivery of multimedia
US20020198001A1 (en) * 2000-12-27 2002-12-26 Sundeep Bajikar Method and apparatus for an independent positioning system and augmentation of GPS
US20030074204A1 (en) * 2001-01-17 2003-04-17 Prasad Krothapalli Offline browsing
US20020098844A1 (en) * 2001-01-19 2002-07-25 John Friedenfelds Method for performing a predetermined action on wireless calls based on caller's location
US6446004B1 (en) * 2001-02-28 2002-09-03 International Business Machines Corporation System and method for implementing proximity or location driven activities
US6823260B1 (en) * 2001-03-07 2004-11-23 Palm Source, Inc. Method and apparatus for device and carrier independent location systems for mobile devices

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130111545A1 (en) * 2011-11-02 2013-05-02 Alcatel-Lucent Usa Inc. Privacy Management for Subscriber Data
US10380513B2 (en) * 2016-03-11 2019-08-13 Sap Se Framework for classifying forms and processing form data
US10380512B2 (en) * 2016-03-11 2019-08-13 Sap Se Framework for hierarchy-based data processing
US11151484B2 (en) 2016-03-11 2021-10-19 Sap Se Framework for classifying forms and processing form data

Also Published As

Publication number Publication date
US7565411B1 (en) 2009-07-21

Similar Documents

Publication Publication Date Title
US20090287796A1 (en) Method and apparatus for device and carrier independent location systems for mobile devices
US6823260B1 (en) Method and apparatus for device and carrier independent location systems for mobile devices
US7877518B2 (en) Method and apparatus for updating applications on a mobile device via device synchronization
US7337218B2 (en) Secure server-based identification for simplified online transaction processing with palmtop computer
US7536190B1 (en) Providing content based on user-specific information from a wireless device
US6760728B1 (en) Method and apparatus for importing and exporting directory and calendar information to and from personal information management applications
US7249160B2 (en) Electronic mail processing system and mail server
US6850986B1 (en) Method and system for implementing URL scheme proxies on a computer system
EP1556965B1 (en) Method and system for selecting data items for service requests
US6593944B1 (en) Displaying a web page on an electronic display device having a limited display area
AU3074900A (en) Electronic mail advertisement system
US20090187671A1 (en) Method and system for implementing url scheme proxies on a computer system
EP3079085B1 (en) Information search dependent on the position and direction of a portable electronic device
CN101184123B (en) Method for obtaining linkman information in address list, system and communication terminal
US6907456B2 (en) Default portal site access with wireless module
US6954638B2 (en) Electronic device and method of operation
US20090083280A1 (en) System and method for guiding sightseers
CN101329178B (en) Method and device for obtaining coded information and address localization
WO2007097485A1 (en) A document delivery system and method there of
EP1534024B1 (en) Retrieval of positional data for a location by a mobile station from an information service
US20060252434A1 (en) Mobile communication device with e-map data, a phone book, and wireless communication, and an application method thereof
US20050124357A1 (en) Method for transmitting address information to a global positioning system from a personal digital assistant or other similar device via a connector
US20030092429A1 (en) Method of transferring facility information by radio and control center
KR20020032717A (en) Advertisement and additional service system using a wireless internet and the method therefor
JP2003271720A (en) System and apparatus for introducing real estate item, and method of introducing real estate item and program therefor used for the same

Legal Events

Date Code Title Description
AS Assignment

Owner name: PALMSOURCE, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PALM, INC.;REEL/FRAME:022976/0087

Effective date: 20030212

Owner name: PALM, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TURCOTTE, MICHEL;REEL/FRAME:022976/0071

Effective date: 20010625

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION