×

On-device mapping of WIFI hotspots via direct connection of WIFI-enabled and GPS-enabled mobile devices

  • US 7,466,986 B2
  • Filed: 01/19/2006
  • Issued: 12/16/2008
  • Est. Priority Date: 01/19/2006
  • Status: Expired due to Fees
First Claim
Patent Images

1. A mobile user device comprising:

  • a processor;

    local storage accessible to the processor and processor operations;

    a system interconnect;

    a global positioning system (GPS) receiver coupled to the system interconnect that records a current GPS location of the mobile device;

    a wireless transceiver coupled to the system interconnect and which is capable of detecting hotspots, supporting wireless connection to the hotspots, and receiving operating characteristics and performance metrics of the hotspots; and

    a locally-executed hotspot locating (LHSL) utility executing on the processor and which comprises program code that when executed by the processor performs the functions of;

    responsive to a detection of a wireless hotspot by the wireless transceiver, identifying a current GPS coordinate of the computer device;

    linking the current GPS coordinate with an identifier (ID) of the detected wireless hotspot; and

    automatically updating a locally-stored hotspot location database (LHLD) stored on the local storage with an entry corresponding to the detected hotspot and linked GPS coordinate;

    automatically initiating a connection to a wireless access point associated with the detected hotspot, wherein said code that provides the function of updating the LHLD comprises code for;

    storing the operating parameters and performance metrics within the entry for the hotspot; and

    providing said operating parameters and performance metrics to a user when said user later requests a listing of hotspots that that results in an output the entry; and

    dynamically retrieving information about the hotspot during the connection, said information comprising operating characteristics and performance metrics of the hotspot and associated service from among;

    name/identification (ID) of the hotspot;

    name of the hotspot service provider/vendor;

    cost associated with accessing the hotspot;

    availability of the hotspot, including general total uptime and periods of availability for access;

    bandwidth of the wireless link to the hotspot;

    estimated bandwidth of the link from the hotspot to the background network;

    average time to establish a connection to the hotspot, guaranteed minimum download speed and minimum upload speed;

    maximum, minimum and average latency added by the hotspot link;

    accessibility range of the hotspot;

    wireless signal attenuation characteristics exhibited by the hotspot;

    overall quality of service (QoS) of the hotspot, determined utilizing parameters that define the quality, strength, and usability of the hotspot;

    overall historical and current user rating of the hotspot,wherein said code that provides the function of dynamically retrieving comprises code for;

    accessing the hotspot;

    transmitting one or more test packets to a backend network connected to an access device of the hotspot, said test packets causing a return packet to be generated by one or more hosts within the backend network and transmitted back to the device; and

    determining operating characteristics and performance metrics of the hotspot and associated service based on the connection to the hotspot and the transmission and return of the test packets;

    measuring the round-trip time for the test packets to return to determine network latency over the hotspot connection;

    mapping bandwidth measurements, both peak and sustained, for the hotspot;

    storing said network latency and bandwidth measurements within the hotspot entry;

    comparing round-trip times of the detected hotspot against other round-trip times obtained for other hotspots in the geographical area to gauge relative performance; and

    providing said latency, said relative performance and said bandwidth to a user when said user later requests a listing of hotspots that results in an output of the entry;

    when the detected hotspot is previously identified within an existing entry of the LHLD;

    updating only the operating parameters and performance metrics of the existing entry whereby duplicate entries are avoided and the existing entry contains updated and current information; and

    storing within the existing entry a time of a last update, wherein each entry is assigned a entry creation time and a most current update time that is adjusted as updates to the existing entry occur;

    receiving a request for one or more hotspots within a particular geographic location;

    determining which acceptable entries of the multiple entries within the HLD have a geographic location in proximity to the particular geographic location;

    identifying those entries having proximate geographical locations as acceptable entries;

    providing an output of the acceptable entries to the user;

    when said request includes user-preferences for operating characteristics and performance metrics associated with the acceptable hotspot;

    comparing the user preferred operating characteristics and performance metrics to the stored operating characteristics and performance metrics for each of the entries deemed acceptable based on their proximity to the specific geographical location; and

    presenting for output only those entries that are both proximate to the specific geographic location and exhibit similar operating characteristics and performance metrics as the user-preferences, wherein when no entry that is proximate to the specific geographic location also exhibits similar operating characteristics and performance metrics, said code comprises code for displaying a result that indicates that no entries proximate to the specific geographic location exhibits the user-preferences;

    displaying a user interface within which a user may enter said request, said user interface being displayed locally on the device, wherein said receiving of the request occurs when the user enters and submits the request within the user interface, and wherein said providing displays said output via a graphical display associated with said user interface, and wherein for each returned acceptable entry, the output comprises one or more of;

    hotspot and service identification information;

    usage terms for the hotspot;

    system requirements for accessing the hotspot;

    known performance metrics a and operating characteristics of the hotspot;

    street address;

    driving directions from an origination point entered by the user within the request; and

    , when graphics output is support by the user interface, a map of the location of the hotspot;

    a mechanism for generating and transmitting HOTs (hotspot operability transmissions) including corresponding GPS locations to a remote Provider;

    a mechanism for establishing communication with a second device; and

    wherein the wireless receiver receives operating characteristics and performance metrics of the hotspots when wireless connectivity is established by the LHSL utility,wherein said LHSL utility further comprises code that when executed performs the functions of;

    when the second device includes stored hotspot location data;

    establishing a connection to communicate with the second device;

    ascertaining that the hotspot location data on the second device is stored in a supported format for sharing;

    updating the device'"'"'s LHLD with hotspot location data from the second device that is more recent than the hotspot data currently stored within the device'"'"'s LHLD; and

    tagging the hotspot location data received from the second device as originating from the second device;

    when the second device is a peer device, dynamically establishing said connection as a peer-to-peer connection; and

    when a share option is turned on within the device, automatically sharing the device'"'"'s LHLD with the second device.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×