EP4053506A1 - System and method of automatic destination selection - Google Patents
System and method of automatic destination selection Download PDFInfo
- Publication number
- EP4053506A1 EP4053506A1 EP22167547.3A EP22167547A EP4053506A1 EP 4053506 A1 EP4053506 A1 EP 4053506A1 EP 22167547 A EP22167547 A EP 22167547A EP 4053506 A1 EP4053506 A1 EP 4053506A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- mobile device
- destination
- time
- route
- defined locations
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 47
- 230000006870 function Effects 0.000 claims description 26
- 230000003213 activating effect Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 6
- 238000004519 manufacturing process Methods 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 42
- 239000000523 sample Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 12
- 238000013459 approach Methods 0.000 description 11
- 230000003068 static effect Effects 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000000446 fuel Substances 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000003321 amplification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000001143 conditioned effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000002650 habitual effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 235000006508 Nelumbo nucifera Nutrition 0.000 description 1
- 240000002853 Nelumbo nucifera Species 0.000 description 1
- 235000006510 Nelumbo pentapetala Nutrition 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 210000001367 artery Anatomy 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3453—Special cost functions, i.e. other than distance or default speed limit of road segments
- G01C21/3492—Special cost functions, i.e. other than distance or default speed limit of road segments employing speed data or traffic data, e.g. real-time or historical
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3453—Special cost functions, i.e. other than distance or default speed limit of road segments
- G01C21/3484—Personalized, e.g. from learned user behaviour or user-defined profiles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3605—Destination input or retrieval
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3605—Destination input or retrieval
- G01C21/3617—Destination input or retrieval using user history, behaviour, conditions or preferences, e.g. predicted or inferred from previous use or current movement
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3691—Retrieval, searching and output of information related to real-time traffic, weather, or environmental conditions
Definitions
- LBS location based services
- ETA Estimated Time of Arrival
- Rush hour traffic volume, road construction, vehicular collisions, and roadside emergencies are just a few examples of the various events and circumstances that can cause traffic congestion. Due to the nature of such events traffic congestion can be difficult to predict. Although radio, television, and online news sources can provide traffic information gathered using various techniques such as highway cameras, phone-in traffic tips, satellite imagery, and road sensors; this information is stale and/or inaccurate.
- Old or inaccurate traffic information can be troublesome for various reasons.
- an alternate traffic route which may be less convenient, is chosen due to a traffic report indicating that a traffic problem exists, which problem has since been alleviated. This can cause a commuter to take a less optimal route, which can waste fuel, cause them to be late, and cause congestion on side-roads.
- a traffic report may indicate that the commuter's route is clear, when in fact an event has, in the meantime, created a traffic jam, since the traffic report is based on information that is not current.
- An object for vehicle navigation is providing a route from an origin to a destination.
- the route can be roughly defined to include an ordered sequence of roadways that may be traveled to move from the origin to the destination.
- there are a relatively small number that are "good” as defined by some measure or measures, such as shortest, fastest, and more subjective measures such as simplest, least stress, most scenic, and so on). Given a set of conditions, there often can be determined an optimal (best) route to fit a given measure or measures.
- a route can be defined relative to a map database.
- a map database generally comprises an object-based encoding of the geometry, connectivity and descriptive attributes of a collection of roadways, and is usually based on a topological model, such as a ID directed graph inscribed within a 2D surface sheet.
- the individual objects in a model of this type include edges that mostly represent roads (such as the centerlines of roads), and nodes that represent locations where roads intersect and cul-de-sacs terminate.
- a "road” or “roadway” (used interchangeably here) in a map database can be defined in terms of a connected "chain” of edges that share a common name. Most roadways consist of a single connected chain. Some roads are more complicated, for instance, a road may be split in two by another geographic feature such as a river.
- Certain non-road features can also be represented by edges, including railroads, streams and rivers, and the boundaries of area objects (faces) such as parks, water bodies, and military bases, as well as boundaries of towns, cities, counties and similar divisions of governmental hierarchy.
- the geometry of the database can be represented by coordinate locations (x/y or longitude/latitude points) associated with nodes, and "shape" (often point sequences) associated with edges.
- the "raw" connectivity of the roadways is represented by the edge/node connectivity that is provided by the directed graph representation: each edge has a specific "from” and "to” node; each node has a list of edges that have the node at either the "from” or "to” end.
- Actual road connectivity may be limited by descriptive attributes such as turn prohibitions and travel mode restrictions.
- Other descriptive attributes can include the road name, legal travel speed and direction (bi-directional or one-way), number of lanes and similar.
- Map databases can carry different levels of detail.
- a fully detailed, or large-scale map database will include everything from the most important long-distance highways to minor back alleys and un-paved country lanes.
- a sparsely detailed, or small-scale map database can have only the most important highways and connections that allow long distance travel.
- Map databases also include varying geographical extents of coverage. Some map databases may cover only a small area. Others may cover entire continents. Often there is an inverse correlation between scale and coverage extent, in that large-scale maps tend to have limited geographic coverage, while continental extent maps may have limited detail. Such a circumstance was particularly true for paper maps (city map vs. road atlas), and is still true in paper-equivalent computer map renderings.
- a familiar example is the internet-based mapping service: when zooming in on a given displayed map area, more detail and less extent are displayed, and when zooming out, less detail and more extent are displayed.
- wide roads and roads with wide medians may also be split lengthwise into two separate one-way chains representing the two independent directions of travel.
- Many roads are short, consisting of only a single edge. Some roads are very long, spanning from ocean to ocean across a continent, and consisting of thousands of individual edges within a full-detailed representation. Most roads are somewhere between these two extremes.
- a route as originally described may therefore be represented as a specific sequence of connected edges within a map database. Given a route with this representation, a variety of properties about the overall route can be determined by inspecting the individual edges. For instance, to determine the length of the route, one can sum the lengths of the individual edges. Similarly, to estimate travel time of a route, one can determine the travel time for each edge (length divided by speed) and accumulate the sum over the whole set. Such a travel time is termed "static", in that it would be based on a fixed representation of speed.
- More elaborate results may be determined by examining a route's edge sequence within the context of the containing database. For instance, the list of turn-by-turn instructions that are required to follow a route may be inferred by examining how the route traverses each node relative to the other edges that occur at the corresponding intersection. Some intersection traversals are more important than others, and may warrant explicit identification in a route representation. Other intersections are more trivial; for example, those in which no turn is made. Such intersections may not be explicitly identified in some representations.
- Traffic and Congestion technology can be used for modeling of traffic patterns and congestion, and can build on technology for route representation and support various applications, such those described herein.
- FIG. 1 an example zone of traffic is shown, which comprises a traffic "problem" hereinafter named a congested zone 2.
- the congested zone 2 comprises a "left-bound" lane of traffic 4 (i.e. with respect to the page) and a "right-bound” lane of traffic 6.
- the congested zone 2 represents a common zone of traffic congestion caused by any one or more traffic events.
- Another zone of traffic is also shown in Figure 1 and, in this example, represents an upstream zone 8, which refers to any roadway that is, approaching, expected to connect, lead into, or is simply an upstream portion of a same roadway that includes the congested zone 2.
- the upstream zone 8 thus feeds traffic into the congested zone 2 such that at least one mobile device 100 approaching the congested zone 2 can be determined.
- the congested zone 2 at a particular point in time comprises three vehicles travelling left-bound 4, namely vehicles 10B, 10C, and 10D; and comprises a single vehicle 10E travelling right-bound 6.
- the upstream zone 8 at the same point in time comprises a single vehicle 10A travelling left-bound 4 towards the congested zone 2.
- Each vehicle 10A-10E comprises a respective data communications device, hereinafter referred to as a mobile device 100A-100E, which travels with the corresponding vehicle 10A-10E in which it currently resides.
- the mobile device 100 can be any suitable device capable of communicating via a wireless network 200.
- the mobile devices 100 utilize such capability to provide device data 78 to a dynamic traffic notification sub-system 80, via the wireless network 200.
- the device data 78 comprises information related to the location and speed of the vehicle 10, as measured by, or obtained by or from another source, the mobile device 10 located and travelling within the vehicle 10.
- mobile device 100B in vehicle 10B may utilize a GPS function to measure the speed of the vehicle 10B and the current location, prepare device data 78, and send the device data 78 to the dynamic traffic notification sub-system 80, hereinafter referred to as "the notification sub-system 80" for brevity.
- the notification sub-system 80 uses device data 78 from a plurality of mobile devices 100 to dynamically determine traffic conditions, such as the development of the congested zone 2, in order to prepare a notification 84 that can be sent to a mobile device 100 that is expected to be headed towards the congested zone 2.
- Commute traffic congestion tends to follow very reliable patterns. For example, a given stretch of heavily used freeway at 7:30 AM every weekday morning, would be expected to have traffic moving much slower than during normal "free-flow" conditions. Within that basic model, more refined patterns can be found. For example, it can be found that traffic may be heaviest on Monday (33 mph average), a little lighter Tuesday-Thursday (37 mph) and perhaps lighter still on Friday (45 mph). However, the same stretch of freeway may be free flowing (e.g., 65 mph) at noon, flowing well during the evening commute (e.g., 60 mph), and racing along at 75+ mph overnight and on the weekend.
- these observations can yield information about how the congestion tends to affect certain portions of the route. For example, a portion of a route following "Hwy 1" tends to flow at 39 mph, and the portion that follows "Hwy 2" tends to flow at 51 mph. In turn, the portion of Highway 1 between 7 th and 10 th streets can be observed to average 34 mph at around 7:44 AM, and the portion between 10 th and 14 th streets observed to average 41 mph at 7:51 AM and so on.
- This description of a single person's experience can be generalized into the system concept of collecting traffic data using "traffic probe” and using that data for traffic modeling.
- traffic probe By collecting observations or data for a large enough number of vehicles/drivers (by, for example, using wireless devices with GPS), then those observations and that data can be aggregated and collectively analyzed to develop an overall model of traffic congestion.
- each device e.g ., owned by a driver of a vehicle
- the overall picture serves as the traffic model, and is a byproduct of the system.
- Interval Based Analysis One approach to traffic and congestion modelling includes dividing routes into intervals and collecting data on those intervals.
- a framework that sub-divides the highly trafficked parts of the road network into well defined "traffic segments” (e.g ., Highway 1 between 7 th and 10 th ) is provided.
- traffic segments e.g ., Highway 1 between 7 th and 10 th
- Each traffic segment can correspond to a short "chain” of edges that are in the map database.
- Time also can be subdivided into intervals (e.g., 15 minute uniform slots).
- each probe can travel through the network (matching the travel shape of its path to the shape of a continuous sequence of edges) and can provide its average speed through each traffic segment.
- Such information can be assigned to a best-fitting time bucket.
- Traffic and congestion modeling can be based wholly or in part on collection of data and analysis of data.
- a historical model can be used to refine static speeds assigned based on speed limits and other sources, such as from in-road sensors.
- a historical traffic model includes a list of traffic segments and associated time-of-day, day-of-week (and given enough time, week-of-year) time slots that contain expected traffic flow speeds (potentially with error estimates) during that time slot on that segment. Gaps can be filled with default "static" speeds.
- the model can be constructed as a large matrix, with rows representing traffic segments and columns representing time slots.
- ETA Estimation Time of Arrival
- ETA is an important feature provided by a vehicle navigation system. ETA is a fairly simple concept: "if I leave now and follow this route, about when will I get there?" Determining ETA is equally simple on the surface: if I know my route, and I have an estimate of how long it will take to travel the route (for example, the "static" summation described above), then I can estimate my ETA by taking the current time (or in general, the expected departure time) and merely add the travel time estimate. This technique is good as long as the travel time estimate is reliable.
- travel time estimates can be unreliable. In fact, there are a variety of factors that can cause travel time to vary. Very long routes probably involve one or more stops (for fuel, food, sleep, etc.) that will increase travel time. Travel time is also (obviously) dependent on actual travel speed: some people drive fast, some drive slow; some times there is bad weather or unforeseen detours; sometimes there is traffic congestion that is slow, slower or even stopped all together. Accurately computing ETA in an automated vehicle navigation system is therefore problematic. Many of the influencing factors are completely beyond the insight or control of the best automated system, as they rely on human behavior (e.g., the decision to make a stop) or the unpredictable future (traffic "accidents" happen). However, if we factor out the uncontrollable, there are still many refinements that may be made to improve travel time estimation accuracy.
- Historical modeling techniques also can be personalized for each user, such that particular user habits and preferences can shape data collected and how that data is used in developing a traffic model for that user.
- observing how a person drives on different types of roads may pick up similar habits: some people tend to drive fast on the freeway, some drive more slowly. This can similarly be applied to the estimate by applying personalized factors to adjust the speeds used for the different road types. If a person's habits are consistent, then these adjustment factors can be applied to any travel time estimate that is produced for that person, and not just for particular roads or road segments.
- a network of probes (which can be used to produce the historical traffic model described previously), it is possible to monitor the current activity of all probes in real time to produce a current picture of traffic congestion, as will be addressed further below.
- a list of recent probe samples for each segment can be tracked and used to compute a "live expected speed" for the segment.
- An approach to using these live speeds to compute travel time can be similar to the use of speeds from the historical model and can include stepping through the route's edges in sequence computing travel times for each edge. If the edge corresponds to a traffic segment for which there is a current live speed then that speed can be used. If this is no live speed, then the historical model value from the appropriate time slot can be used. If there is no traffic segment, then a static speed can be used.
- a preferred speed determination function includes a continuous function of live and historical values.
- a simplified description of one such function can be : for a set time along the route ( ⁇ 10 minutes?) the average live speed of recent probes is used, then for some period of time (10 - 30 minutes?) a decreasing fraction of live combined with an increasing fraction of historical speed is used, after which historical is used exclusively.
- the ETA calculation preferably is continuously updated as the route is consumed (traveled) during driving. Such preference is based on at least three reasons. First, actual traffic congestion will continue to evolve, and probes driving somewhere up ahead may detect different and new conditions, thus evolving the live model. Second, because part of the route has been consumed by driving, the location framework for live traffic has shifted, so that live information is needed for roads that are further along the route than originally needed. Third, because actual travel progress may vary greatly from the original estimate (particularly on long routes), the time framework of the historical model may also change, resulting in a dramatic increase or decrease of likely traffic speeds far ahead.
- Live traffic and congestion data such as that obtained from in-vehicle probes, can be used for modelling traffic and congestion, and can supplement a historical model.
- a mixture of live data and historical data can be used.
- a destination can be predicted, in order to generate an estimate of arrival time at that destination, as well as an estimated time of required departure to arrive at the destination at a desired time.
- prediction of destination is provided based on two pre-defined destinations inputted/selected by a user. More particularly, in a preferred example, a user defines a first location, which will be selected as a destination when the device is in the vicinity of a second defined location, and conversely, when the device is in the vicinity of the first location, the destination will be selected as the second location.
- a time of day criteria can be further imposed, in order to automatically select either location as a destination.
- the first location can be selected as a home of the user
- the second location can be selected as a work place of the user.
- the device can select home as the destination, when the time frame is after 3 PM, for example.
- the device can select the work place location of the user as a destination.
- this destination selection, and ETA calculation can be provided responsive to initiation or starting of the application, without user input.
- these preferred approaches provide a benefit of being easy to use, requiring minimal programming and minimum involvement by a user in order to provide a useful destination prediction function.
- An override feature can be provided, such that if the user does not want to generate an ETA to the predicted destination, then another destination can be selected by the user instead from an interface provided for such on the device.
- Figure 11 depicts an example method, while Figures 12-16 depict user interface aspects, in which the method in Figure 11 can be provided. These figures are described in further detail below.
- mobile devices As noted above, data communication devices will be commonly referred to as "mobile devices". Examples of applicable mobile devices include navigation devices, in-vehicle computers or navigation devices, pagers, cellular phones, cellular smart-phones, portable gaming and entertainment devices, wireless organizers, personal digital assistants, computers, laptops, handheld wireless communication devices, wirelessly enabled notebook computers and the like. Although the examples herein primarily focus on a mobile communication device, any of these devices can be adapted or used to implement the aspects described herein.
- One exemplary mobile device is a two-way communication device with advanced data communication capabilities including the capability to communicate with other mobile devices or computer systems through a network of transceiver stations.
- the mobile device may also have the capability to allow voice communication.
- it may be referred to as a smartphone, a data messaging device, a two-way pager, a cellular telephone with data messaging capabilities, a wireless Internet appliance, or a data communication device (with or without telephony capabilities).
- the mobile device may be one that is used in a system that is configured for continuously routing content, such as pushed content, from a host system to the mobile device.
- content such as pushed content
- FIG. 2 an example system diagram showing the redirection of user data items (such as message A or C) from a corporate enterprise computer system (host system) 250 to the user's mobile device 100 via a wireless router 26 is provided.
- the wireless router 26 provides the wireless connectivity functionality as it acts to both abstract most of the wireless network's 200 complexities, and it also implements features necessary to support pushing data to the mobile device 100.
- a plurality of mobile devices may access data from the host system 250.
- message A in Figure 2 represents an internal message sent from, e.g. a desktop computer within the host system 250, to any number of server computers in the corporate network 260 (e.g. LAN), which may, in general, include a database server, a calendar server, an E-mail server or a voice-mail server.
- Message C in Figure 2 represents an external message from a sender that is not directly connected to the host system 250, such as the user's mobile device 100, some other user's mobile device (not shown), or any user connected to the public or private network 224 (e.g. the Internet).
- Message C could be e-mail, voice-mail, calendar information, database updates, web-page updates or could even represent a command message from the user's mobile device 100 to the host system 250.
- the host system 250 may comprise, along with the typical communication links, hardware and software associated with a corporate enterprise computer network system, one or more wireless mobility agents, a TCP/IP connection, a collection of datastores (for example a data store for e-mail can be an off-the-shelf mail server program such as Microsoft Exchange ® Server or Lotus Notes ® Server), which typically are behind a corporate firewall.
- a data store for e-mail can be an off-the-shelf mail server program such as Microsoft Exchange ® Server or Lotus Notes ® Server
- Microsoft Exchange ® Server Lotus Notes ® Server
- the mobile device 100 may be adapted for communication within wireless network 200 via wireless links, as required by each wireless network 200 being used.
- a wireless router 26 shown in Figure 2
- a data item A repackaged in outer envelope B (the packaged data item A now referred to as "data item (A)"
- ASP Application Service Provider
- the mobile-destined data item (A) is routed through the network 224, and through a firewall protecting the wireless router 26.
- the host system 250 is just one embodiment of one type of host service that offers push-based messages for a handheld wireless device that is capable of notifying and preferably presenting the data to the user in real-time at the mobile device when data arrives at the host system.
- a wireless router 26 (sometimes referred to as a "relay") provides a number of advantages to both the host system 250 and the wireless network 200.
- the host system 250 in general runs a host service that is considered to be any computer program that is running on one or more computer systems.
- the host service is said to be running on a host system 250, and one host system 250 can support any number of host services.
- a host service may or may not be aware of the fact that information is being channelled to mobile devices 100.
- an e-mail or message program 138 might be receiving and processing e-mail while an associated program (e.g . an e-mail wireless mobility agent) is also monitoring the mailbox for the user and forwarding or pushing the same e-mail to a wireless device 100.
- a host service might also be modified to prepare and exchange information with mobile devices 100 via the wireless router 26, like customer relationship management software.
- a mobility agent might offer a Wireless Access Protocol (WAP) connection to several databases.
- WAP Wireless Access Protocol
- a mobile device 100 may be a hand-held two-way wireless paging computer as exemplified in Figures 3-8 .
- the system is exemplified as operating in a two-way communications mode, certain aspects of the system could be used in a "one and one-half' or acknowledgment paging environment, or even with a one-way paging system.
- the wireless router 26 still could abstract the mobile device 100 and wireless network 200, offer push services to standard web-based server systems and allow a host service in a host system 250 to reach the mobile device 100 in many countries.
- the host system 250 shown herein has many methods when establishing a communication link to the wireless router 26.
- the host system 250 could use connection protocols like TCP/IP, X.25, Frame Relay, ISDN, ATM or many other protocols to establish a point-to-point connection. Over this connection there are several tunnelling methods available to package and send the data, some of these include: HTTP/HTML, HTTP/XML, HTTP/Proprietary, FTP, SMTP or some other proprietary data exchange protocol.
- the type of host systems 250 that might employ the wireless router 26 to perform push could include: field service applications, e-mail services, stock quote services, banking services, stock trading services, field sales applications, advertising messages and many others.
- This wireless network 200 abstraction can be accomplished by wireless router 26, which can implement this routing and push functionality.
- the wireless router 26 provides a range of services to make creating a push-based host service possible.
- These networks may comprise: (1) the Code Division Multiple Access (CDMA) network, (2) the Groupe Special Mobile or the Global System for Mobile Communications (GSM) and the General Packet Radio Service (GPRS), and (3) the upcoming third-generation (3G) and fourth generation (4G) networks like EDGE, UMTS and HSDPA, LTE, Wi-Max etc.
- CDMA Code Division Multiple Access
- GSM Global System for Mobile Communications
- GPRS General Packet Radio Service
- 3G Third-generation
- 4G fourth generation
- Some older examples of data-centric networks include, but are not limited to: (1) the Mobitex Radio Network (“Mobitex”) and (2) the DataTAC Radio Network (“DataTAC”).
- FIG. 3 one example of a mobile device 100a is shown in Figure 3
- FIG. 4 another example of a mobile device 100b is shown in Figure 4
- the numeral "100" will hereinafter refer to any mobile device 100, and by explanation and reference, the examples 100a and 100b of Figures 3 and 4 .
- a similar numbering convention is used for some other general features common between Figures 3 and 4 such as a display 12, a positioning device 14, a cancel or escape button 16, a camera button 17, and a menu or option button 24.
- the mobile device 100a shown in Figure 3 comprises a display 12a and the cursor or view positioning device 14 shown in this embodiment is a trackball 14a.
- Positioning device 14 may serve as another input member and is both rotational to provide selection inputs to the main processor 102 (see Figure 5 ) and can also be pressed in a direction generally toward housing to provide another selection input to the processor 102.
- Trackball 14a permits multidirectional positioning of the selection cursor 18 (see Figure 7 ) such that the selection cursor 18 can be moved in an upward direction, in a downward direction and, if desired and/or permitted, in any diagonal direction.
- the trackball 14a is in this example situated on the front face of a housing for mobile device 100a as shown in Figure 3 to enable a user to manoeuvre the trackball 14a while holding the mobile device 100a in one hand.
- the trackball 14a may serve as another input member (in addition to a directional or positioning member) to provide selection inputs to the processor 102 and can preferably be pressed in a direction towards the housing of the mobile device 100b to provide such a selection input.
- the display 12 may include a selection cursor 18 that depicts generally where the next input or selection will be received.
- the selection cursor 18 may comprise a box, alteration of an icon or any combination of features that enable the user to identify the currently chosen icon or item.
- the mobile device 100a in Figure 3 also comprises a programmable convenience button 15 to activate a selected application such as, for example, a calendar or calculator.
- mobile device 100a includes an escape or cancel button 16a, a camera button 17a, a menu or option button 24a and a keyboard 20.
- the camera button 17 is able to activate photo-capturing functions when pressed preferably in the direction towards the housing.
- the menu or option button 24 loads a menu or list of options on display 12a when pressed.
- the escape or cancel button 16a, the menu option button 24a, and keyboard 20 are disposed on the front face of the mobile device housing, while the convenience button 15 and camera button 17a are disposed at the side of the housing. This button placement enables a user to operate these buttons while holding the mobile device 100 in one hand.
- the keyboard 20 is, in this embodiment, a standard QWERTY keyboard.
- the mobile device 100b shown in Figure 4 comprises a display 12b and the positioning device 14 in this embodiment is a trackball 14b.
- the mobile device 100b also comprises a menu or option button 24b, a cancel or escape button 16b, and a camera button 17b.
- the mobile device 100b as illustrated in Figure 4 comprises a reduced QWERTY keyboard 22.
- the keyboard 22, positioning device 14b, escape button 16b and menu button 24b are disposed on a front face of a mobile device housing.
- the reduced QWERTY keyboard 22 comprises a plurality of multi-functional keys and corresponding indicia including keys associated with alphabetic characters corresponding to a QWERTY array of letters A to Z and an overlaid numeric phone key arrangement.
- mobile device 100 represents one example mobile device, which has physical keys that can be pressed
- user interfaces include one or more positioning or cursor/view positioning mechanisms such as a touch pad, a positioning wheel, a joystick button, a mouse, a touchscreen, a set of arrow keys, a tablet, an accelerometer (for sensing orientation and/or movements of the mobile device 100 etc.), or other input device, whether presently known or unknown, may be employed.
- any variation of keyboard 20, 22 may be used.
- the mobile devices 100 shown in Figures 3 and 4 are for illustrative purposes only and various other mobile devices 100 are equally applicable to the following examples.
- other mobile devices 100 may include the trackball 14b, escape button 16b and menu or option button 24 similar to that shown in Figure 4 only with a full or standard keyboard of any type.
- Other buttons may also be disposed on the mobile device housing such as colour coded "Answer” and “Ignore” buttons to be used in telephonic communications.
- the display 12 may itself be touch sensitive thus itself providing an input mechanism in addition to display capabilities.
- the housing for the mobile device 100 should not be limited to the single-piece configurations shown in Figures 3 and 4 , other configurations such as clamshell or "flip-phone" configurations are also applicable.
- the mobile device 100 comprises a number of components such as a main processor 102 that controls the overall operation of the mobile device 100. Communication functions, including data and voice communications, are performed through a communication subsystem 104.
- the communication subsystem 104 receives messages from and sends messages to a wireless network 200.
- the communication subsystem 104 is configured in accordance with the Global System for Mobile Communication (GSM) and General Packet Radio Services (GPRS) standards, which is used worldwide.
- GSM Global System for Mobile Communication
- GPRS General Packet Radio Services
- Other communication configurations that are equally applicable are the 3G and 4G networks such as EDGE, UMTS and HSDPA, LTE, Wi-Max etc.
- the wireless link connecting the communication subsystem 104 with the wireless network 200 represents one or more different Radio Frequency (RF) channels, operating according to defined protocols specified for GSM/GPRS communications.
- RF Radio Frequency
- the main processor 102 also may interact with additional subsystems (as available) such as a Random Access Memory (RAM) 106, a flash memory 108, a display 110, an auxiliary input/output (I/O) subsystem 112, a data port 114, a keyboard 116, a speaker 118, a microphone 120, a GPS receiver 121, short-range communications 122, and other device subsystems 124.
- RAM Random Access Memory
- flash memory 108 a flash memory
- I/O auxiliary input/output subsystem
- data port 114 a keyboard 116
- speaker 118 a speaker 118
- microphone 120 a microphone 120
- GPS receiver 121 GPS receiver 121
- short-range communications 122 short-range communications 122
- the display 110 and the keyboard 116 may be used for both communication-related functions, such as entering a text message for transmission over the network 200, and device-resident functions such as a calculator or task list.
- the mobile device 100 can send and receive communication signals over the wireless network 200 after required network registration or activation procedures have been completed.
- Network access is associated with a subscriber or user of the mobile device 100.
- the mobile device 100 may use a subscriber module component or "smart card" 126, such as a Subscriber Identity Module (SIM), a Removable User Identity Module (RUIM) and a Universal Subscriber Identity Module (USIM).
- SIM Subscriber Identity Module
- RUIM Removable User Identity Module
- USIM Universal Subscriber Identity Module
- a SIM/RUIM/USIM 126 is to be inserted into a SIM/RUIM/USIM interface 128 in order to communicate with a network. Without the component 126, the mobile device 100 is not fully operational for communication with the wireless network 200. Once the SIM/RUIM/USIM 126 is inserted into the SIM/RUIM/USIM interface 128, it is coupled to the main processor 102.
- the mobile device 100 can be a battery-powered device (or be battery powered at some times or in some modes, while being powered by an automobile or wall power or another source of energy at other times) and typically includes a battery interface 132 for receiving one or more rechargeable batteries 130.
- the battery 130 can be a smart battery with an embedded microprocessor.
- the battery interface 132 is coupled to a regulator (not shown), which assists the battery 130 in providing power V+ to the mobile device 100.
- a regulator not shown
- future technologies such as micro fuel cells may provide the power to the mobile device 100.
- a plurality of batteries such as a primary and a secondary batter may be provided
- the mobile device 100 also includes an operating system 134 and software components 136 to 146 which are described in more detail below.
- the operating system 134 and the software components 136 to 146 that are executed by the main processor 102 are typically stored in a persistent store such as the flash memory 108, which may alternatively be a read-only memory (ROM) or similar storage element (not shown).
- ROM read-only memory
- portions of the operating system 134 and the software components 136 to 146 such as specific device applications, or parts thereof, may be temporarily loaded into a volatile store such as the RAM 106.
- Other software components can also be included, as is well known to those skilled in the art.
- the subset of software applications 136 that control basic device operations, including data and voice communication applications, may be installed on the mobile device 100 during its manufacture.
- Software applications may include a message application 138, a device state module 140, a Personal Information Manager (PIM) 142, a connect module 144 and an IT policy module 146.
- a message application 138 can be any suitable software program that allows a user of the mobile device 100 to send and receive electronic messages, wherein messages are typically stored in the flash memory 108 of the mobile device 100.
- a device state module 140 can provide persistence, i.e. the device state module 140 provides for availability and storage of potentially important device data.
- Device state module 140 can be implemented using flash memory 108 (or other non-volatile memory technologies), so that the data is not lost when the mobile device 100 is turned off or loses power.
- a PIM 142 includes functionality for organizing and managing data items of interest to the user, such as, but not limited to, e-mail, text messages, instant messages, contacts, calendar events, and voice mails, and may interact with the wireless network 200.
- a connect module 144 implements the communication protocols that are required for the mobile device 100 to communicate with the wireless infrastructure and any host system 250, such as an enterprise system, that the mobile device 100 is authorized to interface with.
- An IT policy module 146 can receive IT policy data that encodes IT policies, and may be responsible for organizing and securing rules, such as a "Set Maximum Password Attempts" IT policy, and password expiration policies.
- software applications or components 139 can also be installed on the mobile device 100. These software applications 139 can be pre-installed applications (e.g ., applications other than message application 138) or third party applications, which are added after the manufacture of the mobile device 100. Examples of third party applications include games, calculators, and utilities.
- the additional applications 139 can be loaded onto the mobile device 100 through at least one of the wireless network 200, the auxiliary I/O subsystem 112, the data port 114, the short-range communications subsystem 122, or any other suitable device subsystem 124.
- the data port 114 can be any suitable port that enables data communication between the mobile device 100 and another computing device.
- the data port 114 can be a serial or a parallel port.
- the data port 114 can be a USB port that includes data lines for data transfer and a supply line that can provide a charging current to charge the battery 130 of the mobile device 100.
- received signals are output to the speaker 118, and signals for transmission are generated by the microphone 120.
- voice or audio signal output is accomplished primarily through the speaker 118, the display 110 can also be used to provide additional information such as the identity of a calling party, duration of a voice call, or other voice call related information.
- the communication subsystem 104 includes a receiver 150, a transmitter 152, and example associated components such as one or more embedded or internal antenna elements 154 and 156, Local Oscillators (LOs) 158, and a processing module such as a Digital Signal Processor (DSP) 160.
- LOs Local Oscillators
- DSP Digital Signal Processor
- the particular design of the communication subsystem 104 can be dependent on the communication network 200 with which the mobile device 100 is intended to operate. Thus, it should be understood that the design illustrated in Figure 6 serves only as one example. Radios also can be implemented differently, for example, LOs can be avoided by avoiding intermediate frequencies, such as by using direct digital sampling.
- Signals received by the antenna 154 through the wireless network 200 are input to the receiver 150, which may perform such common receiver functions as signal amplification, frequency down conversion, filtering, channel selection, and analog-to-digital (A/D) conversion.
- A/D conversion of a received signal allows more complex communication functions such as demodulation and decoding to be performed in the DSP 160.
- signals to be transmitted are processed, including modulation and encoding, by the DSP 160.
- These DSP-processed signals are input to the transmitter 152 for digital-to-analog (D/A) conversion, frequency up conversion, filtering, amplification and transmission over the wireless network 200 via the antenna 156.
- D/A digital-to-analog
- the wireless link between the mobile device 100 and the wireless network 200 can contain one or more different channels, typically different RF channels, and associated protocols used between the mobile device 100 and the wireless network 200.
- An RF channel is a limited resource that should be conserved, based on concerns such as limits of overall bandwidth and limited battery power of the mobile device 100.
- the transmitter 152 When the mobile device 100 is fully operational, the transmitter 152 is typically keyed or turned on only when it is transmitting to the wireless network 200 and is otherwise turned off to conserve resources. Similarly, the receiver 150 may be periodically turned off to conserve power until it is needed to receive signals or information (if at all) during designated time periods. The receiver 150 also can be turned on to poll for data to be retrieved.
- system architectures where information can be pushed to mobile devices.
- Such system architectures can operate to push information responsive to a request from a mobile.
- mobile device 100 can request information periodically, and the system can respond with any messages or notifications determined to be applicable to device 100.
- the mobile device 100 may display a home screen 40, which may be the active screen when the mobile device 100 is powered up or may be accessible from other screens.
- the home screen 40 generally comprises a status region 44 and a theme background 46, which provides a graphical background for the display 12.
- the theme background 46 displays a series of icons 42 in a predefined arrangement on a graphical background. In some themes, the home screen 40 may limit the number icons 42 shown on the home screen 40 so as to not detract from the theme background 46, particularly where the background 46 is chosen for aesthetic reasons.
- the theme background 46 shown in Figure 7 provides a grid of icons. It will be appreciated that preferably several themes are available for the user to select and that any applicable arrangement may be used.
- One or more of the series of icons 42 is typically a folder 52 that itself is capable of organizing any number of applications therewithin.
- the status region 44 in this embodiment comprises a date/time display 48.
- the theme background 46 in addition to a graphical background and the series of icons 42, also comprises a status bar 50.
- the status bar 50 can provide information to the user based on the location of the selection cursor 18, e.g. by displaying a name for the icon 53 that is currently highlighted.
- An application such as a maps program 60 (see also Figure 8 ) may be initiated (opened or viewed) from display 12 by highlighting a corresponding icon 53 using the positioning device 14 and providing a suitable user input to the mobile device 100.
- maps program 60 may be initiated by moving the positioning device 14 such that the icon 53 is highlighted by the selection box 18 as shown in Figure 7 , and providing a selection input, e.g . by pressing the trackball 14b.
- FIG 8 shows an example of how other software applications and components 139 that may be stored on and used with the mobile device 100 can use the user interface. Only examples are shown in Figure 8 and such examples are not to be considered exhaustive.
- a global positioning system (GPS) application 54 internet browser 56, simple message service (SMS) 58, maps program 60 and a profiles application 62 are shown to illustrate the various features that may be provided by the mobile device 100.
- the GPS application 54 in this example, comprises a traffic module 55, which represents any sub-program, sub-routine, function or other set of computer executable instructions for providing device data 78 to the notification sub-system 80, when such data 78 is obtained using the GPS application 54.
- the message application 138 which in the following will be referred to as an email application 138 for clarity. It will be appreciated that the various applications may operate independently or may utilize features of other applications.
- the GPS application 54 may use the maps program 60 for displaying directions to a user.
- the notification sub-system 80 is shown, wherein the notification sub-system 80 is hosted by the wireless router 26 described above.
- the wireless router 26 is responsible for routing messages from and to mobile devices 100A-100E and thus has the ability to obtain device data 78 provided by a plurality of such mobile devices 100 in order to prepare notifications 84 for those plurality of mobile devices 100 and other mobile devices.
- the implementation exemplified in Figure 9 illustrates obtaining device data 78 from each of mobile devices 100B through 100E and provides a notification 84 to mobile device 100A.
- the device data 78 and notifications 84 may comprise separate and distinct data packages sent using separate protocols or may take advantage of existing communication methods such as email, SMS, etc.
- the notification sub-system 80 which in this example can reside at the wireless router 26, stores traffic-related data in a traffic database 82.
- traffic-related data may comprise any device data 78 obtained from various mobile devices 100, copies of notifications 84 that have already been sent (or are about to be sent - to facilitate repeated use of the same notifications 84), and any other information that may be required to carry out the delivery of a notification 84 based on the acquisition of device data 78, several examples of which will be explained below.
- the traffic database 82 may represent any memory, datastore, or storage medium and may or may not be internal to the wireless router 26.
- the traffic database 82 may be maintained by a third party or configured to be an integral component of the notification sub-system 80.
- the notification sub-system 80 may also have access to a third party source 83 to obtain additional data pertaining to traffic events and other location based information.
- the third party source 83 may represent police or emergency crew dispatchers that provide more detailed information pertaining to accidents.
- the third party source 83 may also provide information such as the locations of gas stations, tow truck origins, and so on, for use in various embodiments as will be exemplified below.
- Figure 9 also illustrates that, in addition to providing an alert to the user of the mobile device 100A using the notification 84 on the mobile device 100A itself, the notification may be used in other ways.
- a copy of the notification 84' is provided to an other system 85 through a device interface 86 such that an alert may be provided to the user through an output mechanism 88.
- the vehicle 10A is shown as comprising the other system 85, which may represent a vehicle entertainment or navigation system, a vehicle engine control system, as well as various dashboard implemented systems.
- the mobile device's access to the information comprised in the notification 84 can be shared with other systems in the same locale as the mobile device 100A in order to provide a wide range of alert types and to coordinate with other sub-systems.
- the configuration shown in Figure 9 can also provide for a mobile device 100 without a GPS receiver 121 to utilize location and speed information acquired by the vehicle 10, for example through a vehicle navigation system, an on-board-diagnostics (OBD) connection or both.
- the mobile device 100 also can be the communication link between a vehicle 10 and the notification sub-system 80 to accommodate a wider range of environments and configurations.
- the mobile device 100 may itself be integral to the vehicle 10 (not shown), e.g . where the vehicle has a GPS receiver and wireless connectivity.
- the principles described herein may be applied to a mobile device 100 in any form, including wherein the mobile device 100 is provided as a sub-system of a vehicle 10.
- Device data 78 from N mobile devices 100 is obtained by the notification sub-system 80 at 200, which data 78 is then stored in the traffic database 82.
- device data 78 is obtained from mobile devices 100A, 100B, 100C, 100D, and 100E.
- the device data 78 is then organized based on the zone from which it originates and the traffic database is updated. For example, the device data 78 from mobile devices 100B-100E would be grouped into one zone, whereas the device data 78 from mobile device 100A would be grouped into another zone.
- one aspect of an easier to use interface for a handheld navigation device can include a facility to quickly predict a destination, without initial involvement of a user.
- a complicated arrangement could be provided that would track movements of a device and build a database of those movements, such an approach can require more initial data gathering time, storage space for the gathered information, as well as complicated prediction algorithms, and can use scant mobile device battery power and processing resources.
- the depicted method includes displaying (2401) a start page, such as that of Figure 12 , upon input, such as turning on the mobile device, or activating (2402) a navigation function (which can be done automatically at startup, if configured to do so.)
- a current location of a device can be estimated (2403), such as by using GPS signal information, or an identity of a cell phone tower, triangulation of tower signals and so on.
- a comparison/determination (2405) between the current location and first and second pre-defined destination is made. If the current location is proximate a first pre-defined destination (e.g., work), such as by being within 100 meters, 1km, or 50m of a GPS coordinate (or otherwise used in defining such location), then the second pre-defined destination (e.g., home) is selected (2406) automatically as a destination for a route from the current location, for which an ETA will be calculated.
- a first pre-defined destination e.g., work
- the second pre-defined destination e.g., home
- An override can be accepted (2407) through an interface, which would override the automatic selection.
- An ETA is then calculated (2408), and subsequently outputted using those parameters.
- Traffic congestion information (2413) can be used in selecting (2412) a route to be taken, on which the ETA calculated will be based.
- a plurality of locations can each be associated with a pre-defined destination, for which an ETA can be calculated upon proximity to the location to which that pre-defined destination is associated.
- An optional time criteria can be used in a further determination (2411) of whether the time criteria suggests that the user of the device intends to proceed to either the first or the second predefined destination.
- FIG. 11 more particularly depicts that if a present device location is not proximate either the first or the second pre-defined destinations, then a time criteria can be used to select a pre-defined destination.
- a time criteria can be a further requirement to be met before selecting either the first or the second pre-defined destination, in addition to proximity to the other of the pre-defined destinations.
- the user can define a home location as a first pre-defined destination and work as a second pre-defined destination.
- home will be selected as a destination, and vice versa.
- a time of day criteria can be used to select either home or work.
- time criteria it may be desirable to employ the time criteria determination (2411) as a further decision prior to selecting the pre-defined destination associated with the current location for ETA calculation. For example, if the user is more than 1 km from home, then the determination of being near home may fail. However, if it is a workday, and the time is in the morning (an example time criteria), then work may be selected as a destination anyway, and an ETA to work may be provided. Similarly, if a user is not considered proximate to work, but perhaps nearby, and the time is in the late afternoon, then home can be selected as a destination, and an ETA provided.
- the time criteria can cause the device not to select home as a destination.
- the time criteria is used as a secondary test, where there may be some ambiguity concerning nearness to either the first or the second pre-defined locations.
- Figure 12 depicts an example user interface screen displayed when a navigation application is selected or activated.
- Figure 12 depicts a user interface element 2705 prior to obtaining a positional fix (e.g., prior to 2403 in Figure 24).
- the depicted user interface element 2705 accepts inputs that can include selection of a view 2710, a places 2712, a search 2714, and a share 2716 element.
- User interface element 2705 can suggest to choose a destination by selection of places 2712, which would cause the user interface element 2705 to transfer to a user interface element depicted by Figure 30.
- a positional fix is obtained, which causes automatic display of a user interface element 2805 as depicted in Figure 13 .
- User interface element 2805 depicts that the destination "home" (see Figure 15 ).
- Such destination can correspond to either the first or the second pre-defined locations described with respect to Figure 11 .
- a current location of the mobile device would be proximate the other of the defined locations, and either a time of day criteria is satisfied or not implemented.
- Figure 15 depicts that user interface element 3005 for defining places can include an add place button 3010, a pre-defined destination of home 3015, and of work 3020 can be defined.
- user interface element 2805 can show a miles remaining 2810, a time remaining 2815 and an absolute estimated time of arrival 2820, in addition to the same selectable elements, view 2710, places 2712, search 2714, and share 2716 element, as depicted in Figure 27.
- a user need not have selected the "home" destination, but it was automatically proposed based on methods according to the example of Figure 11 and related description.
- the above description is related to automatically predicting a destination for automatic provision of an ETA and related information.
- Such ETA can be shared, such as by using the user interface depicted in Figure 14 .
- the user interface element 2905 of Figure 14 depicts that a default operating procedure can be that an SMS message is sent to a phone number associated with the contact (2910), while a Pick 2915 button allows the option to select additional phone numbers.
- An excuse window 2920 can be provided, which allows a reason to be included in the message as to why the ETA may be different from what was expected.
- a send button 2921 allows confirmation of the selections before the messages with the ETA information are sent.
- ETA can be shared by any of a variety of mechanisms, such as e-mail.
- Such aspects can include automatic production/sending of supplemental/periodic update notifications based on a variety of conditions or parameters, including elapsed time, proximity to POI, departures from the route, or re-selections. For example, updates can be made hourly, or when passing a given point.
- the user interface can be modified or a user interface provided that provides user-selectable options, which can have defaults for such parameters and conditions.
- traffic information and other route information also can be displayed in optimized formats, as explained below, with respect to example user interface elements depicted in Figure 16 .
- routes which can comprise a number of interconnected road (travel) segments are depicted (on user interface element 3105) as linear representations (also can be called a spine or a trunk), such as linear shape 3110 (which in that it represents a route, also can be termed a linear representation of such route).
- linear representations also can be called a spine or a trunk
- linear shape 3110 which in that it represents a route, also can be termed a linear representation of such route.
- Such linear representation can be oriented along one axis of a 2-D display of the device, such as along an axis that is parallel to a field of view of a user of the device (and thus can vary if the device is turned on its side, such that the route orientation can turn to maintain that orientation with respect to the viewpoint of the user).
- the linear representation takes up most of the available display width.
- Indicators of information such as roads to be taken along the route can be represented at angles along the linear representation (e.g., indicators 3120a, 3120b, and 3120c).
- Indication of traffic congestion information (3125) can be represented by different cross hatching or colors within the area of the linear representation 3110, itself.
- indication 3125 of traffic congestion can be termed an information segment for the portion of the route on which that congestion occurs, and which is indicated by indication 3125.
- an information indicator thus can be an indicator of a point along a route to which an informational item is relevant, as well as a segment of a route along which such informational item is relevant.
- informational indicators can be overlayed on the linear representation (linear shape) of the route, as is 3125, above or below such linear representation.
- a collection of informational indicators can be displayed for any given route, represented by such a linear shape, as explained and exemplified by the discussion below.
- a scale indicator (3150) can be provided, as well as a textual expression (3151) of remaining miles to go to arrive at the destination on the depicted route.
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Social Psychology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Atmospheric Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Ecology (AREA)
- Environmental & Geological Engineering (AREA)
- Environmental Sciences (AREA)
- Navigation (AREA)
Abstract
Description
- This application claims priority from
U.S. Provisional Pat. App. Ser. No. 61/290,570, filed on December 29, 2009 - The following relates generally to location based services (LBS) for mobile devices, and in particular to systems and methods for providing navigation information, routes, Estimated Time of Arrival (ETA) information, search functionality, and other related functionality on mobile devices.
- Rush hour traffic volume, road construction, vehicular collisions, and roadside emergencies are just a few examples of the various events and circumstances that can cause traffic congestion. Due to the nature of such events traffic congestion can be difficult to predict. Although radio, television, and online news sources can provide traffic information gathered using various techniques such as highway cameras, phone-in traffic tips, satellite imagery, and road sensors; this information is stale and/or inaccurate.
- Old or inaccurate traffic information can be troublesome for various reasons. For example, an alternate traffic route, which may be less convenient, is chosen due to a traffic report indicating that a traffic problem exists, which problem has since been alleviated. This can cause a commuter to take a less optimal route, which can waste fuel, cause them to be late, and cause congestion on side-roads. Conversely, a traffic report may indicate that the commuter's route is clear, when in fact an event has, in the meantime, created a traffic jam, since the traffic report is based on information that is not current.
- In addition to better data gathering and dissemination about traffic conditions, a variety of applications and enhancements to user interfaces, such as user interfaces that are optimized for mobile devices remain to be realized.
- Embodiments will now be described by way of example, and not limitation, with reference to the appended drawings wherein:
-
Figure 1 depicts a schematic diagram illustrating an example of a traffic notification system providing a traffic notification to one mobile device according to data obtained from a plurality of other mobile devices. -
Figure 2 depicts a system diagram illustrating the environment in which data items are pushed from a host system to a mobile device. -
Figure 3 depicts a schematic diagram of a mobile device and a display screen therefor. -
Figure 4 depicts a schematic diagram of another mobile device and a display screen therefor. -
Figure 5 depicts a block diagram of an exemplary embodiment of a mobile device. -
Figure 6 depicts a block diagram of an exemplary embodiment of a communication subsystem component of the mobile device ofFigure 5 . -
Figure 7 depicts a screen shot of an exemplary home screen displayed by a mobile device. -
Figure 8 depicts a block diagram illustrating exemplary ones of the other software applications and components shown inFigure 5 . -
Figure 9 depicts a schematic diagram showing an example configuration for the embodiment ofFigure 1 when implemented with the wireless router shown inFigure 2 . -
Figure 10 depicts a flow diagram illustrating exemplary operations performed by a traffic notification system for preparing and providing a traffic notification to a mobile device. -
Figure 11 depicts a method for location prediction for route determination and ETA determination. -
Figure 12 depicts an example start screen of a navigation function that can provide functionality and use technology described above. -
Figure 13 depicts an example display of ETA information. -
Figure 14 depicts an example user interface element. -
Figure 15 depicts a user interface element within the navigation application. -
Figure 16 depicts an example user interface element relating to route representation. - It will be appreciated that for simplicity and clarity of illustration, where considered appropriate, reference numerals may be repeated among the figures to indicate corresponding or analogous elements. In addition, numerous specific details are set forth in order to provide a thorough understanding of the embodiments described herein. However, it will be understood by those of ordinary skill in the art that the embodiments described herein may be practiced without these specific details. In other instances, well-known methods, procedures and components have not been described in detail so as not to obscure the embodiments described herein. Also, the description is not to be considered as limiting the scope of the embodiments described herein.
- The following table of contents provides a guide to the disclosure, and is organized into sections. First, component technologies and techniques are described, followed by an example architecture in which such component technologies and techniques can be employed, and finally, disclosure of several applications that can be provided in such an architecture, and which can be based on the component technologies and techniques is provided.
- An object for vehicle navigation is providing a route from an origin to a destination. The route can be roughly defined to include an ordered sequence of roadways that may be traveled to move from the origin to the destination. In general, there will be many (perhaps millions of) possible sequences that may be used to travel between any given origin/destination pair. In practice, there are a relatively small number that are "good" (as defined by some measure or measures, such as shortest, fastest, and more subjective measures such as simplest, least stress, most scenic, and so on). Given a set of conditions, there often can be determined an optimal (best) route to fit a given measure or measures.
- For computer-assisted vehicle navigation, a route can be defined relative to a map database. A map database generally comprises an object-based encoding of the geometry, connectivity and descriptive attributes of a collection of roadways, and is usually based on a topological model, such as a ID directed graph inscribed within a 2D surface sheet. The individual objects in a model of this type include edges that mostly represent roads (such as the centerlines of roads), and nodes that represent locations where roads intersect and cul-de-sacs terminate. A "road" or "roadway" (used interchangeably here) in a map database can be defined in terms of a connected "chain" of edges that share a common name. Most roadways consist of a single connected chain. Some roads are more complicated, for instance, a road may be split in two by another geographic feature such as a river.
- Certain non-road features can also be represented by edges, including railroads, streams and rivers, and the boundaries of area objects (faces) such as parks, water bodies, and military bases, as well as boundaries of towns, cities, counties and similar divisions of governmental hierarchy.
- The geometry of the database can be represented by coordinate locations (x/y or longitude/latitude points) associated with nodes, and "shape" (often point sequences) associated with edges. The "raw" connectivity of the roadways is represented by the edge/node connectivity that is provided by the directed graph representation: each edge has a specific "from" and "to" node; each node has a list of edges that have the node at either the "from" or "to" end.
- Actual road connectivity may be limited by descriptive attributes such as turn prohibitions and travel mode restrictions. Other descriptive attributes can include the road name, legal travel speed and direction (bi-directional or one-way), number of lanes and similar.
- Map databases can carry different levels of detail. A fully detailed, or large-scale map database will include everything from the most important long-distance highways to minor back alleys and un-paved country lanes. A sparsely detailed, or small-scale map database can have only the most important highways and connections that allow long distance travel.
- Map databases also include varying geographical extents of coverage. Some map databases may cover only a small area. Others may cover entire continents. Often there is an inverse correlation between scale and coverage extent, in that large-scale maps tend to have limited geographic coverage, while continental extent maps may have limited detail. Such a circumstance was particularly true for paper maps (city map vs. road atlas), and is still true in paper-equivalent computer map renderings. A familiar example is the internet-based mapping service: when zooming in on a given displayed map area, more detail and less extent are displayed, and when zooming out, less detail and more extent are displayed.
- In fully detailed databases, wide roads and roads with wide medians may also be split lengthwise into two separate one-way chains representing the two independent directions of travel. Many roads are short, consisting of only a single edge. Some roads are very long, spanning from ocean to ocean across a continent, and consisting of thousands of individual edges within a full-detailed representation. Most roads are somewhere between these two extremes.
- A route as originally described may therefore be represented as a specific sequence of connected edges within a map database. Given a route with this representation, a variety of properties about the overall route can be determined by inspecting the individual edges. For instance, to determine the length of the route, one can sum the lengths of the individual edges. Similarly, to estimate travel time of a route, one can determine the travel time for each edge (length divided by speed) and accumulate the sum over the whole set. Such a travel time is termed "static", in that it would be based on a fixed representation of speed.
- More elaborate results may be determined by examining a route's edge sequence within the context of the containing database. For instance, the list of turn-by-turn instructions that are required to follow a route may be inferred by examining how the route traverses each node relative to the other edges that occur at the corresponding intersection. Some intersection traversals are more important than others, and may warrant explicit identification in a route representation. Other intersections are more trivial; for example, those in which no turn is made. Such intersections may not be explicitly identified in some representations.
- Turning now to
Figure 1 , an example zone of traffic is shown, which comprises a traffic "problem" hereinafter named acongested zone 2. Thecongested zone 2 comprises a "left-bound" lane of traffic 4 (i.e. with respect to the page) and a "right-bound" lane of traffic 6. It can be seen that thecongested zone 2 represents a common zone of traffic congestion caused by any one or more traffic events. Another zone of traffic is also shown inFigure 1 and, in this example, represents anupstream zone 8, which refers to any roadway that is, approaching, expected to connect, lead into, or is simply an upstream portion of a same roadway that includes thecongested zone 2. In this example, theupstream zone 8 thus feeds traffic into thecongested zone 2 such that at least onemobile device 100 approaching thecongested zone 2 can be determined. - In the example shown in
Figure 1 , thecongested zone 2 at a particular point in time comprises three vehicles travelling left-bound 4, namelyvehicles single vehicle 10E travelling right-bound 6. For the present discussion, the congestion occurs in the left-bound lane only whereasvehicle 10E is moving at a normal rate of speed in the right-bound lane. Theupstream zone 8, at the same point in time, comprises asingle vehicle 10A travelling left-bound 4 towards thecongested zone 2. Eachvehicle 10A-10E comprises a respective data communications device, hereinafter referred to as amobile device 100A-100E, which travels with thecorresponding vehicle 10A-10E in which it currently resides. As will be explained below, themobile device 100 can be any suitable device capable of communicating via awireless network 200. Themobile devices 100 utilize such capability to providedevice data 78 to a dynamictraffic notification sub-system 80, via thewireless network 200. Thedevice data 78 comprises information related to the location and speed of thevehicle 10, as measured by, or obtained by or from another source, themobile device 10 located and travelling within thevehicle 10. For example,mobile device 100B invehicle 10B may utilize a GPS function to measure the speed of thevehicle 10B and the current location, preparedevice data 78, and send thedevice data 78 to the dynamictraffic notification sub-system 80, hereinafter referred to as "thenotification sub-system 80" for brevity. - As will also be explained below, the
notification sub-system 80 usesdevice data 78 from a plurality ofmobile devices 100 to dynamically determine traffic conditions, such as the development of thecongested zone 2, in order to prepare anotification 84 that can be sent to amobile device 100 that is expected to be headed towards thecongested zone 2. - Commute traffic congestion tends to follow very reliable patterns. For example, a given stretch of heavily used freeway at 7:30 AM every weekday morning, would be expected to have traffic moving much slower than during normal "free-flow" conditions. Within that basic model, more refined patterns can be found. For example, it can be found that traffic may be heaviest on Monday (33 mph average), a little lighter Tuesday-Thursday (37 mph) and perhaps lighter still on Friday (45 mph). However, the same stretch of freeway may be free flowing (e.g., 65 mph) at noon, flowing well during the evening commute (e.g., 60 mph), and racing along at 75+ mph overnight and on the weekend.
- Further, observations for a single person traveling at the roughly the same time over the same route for five days a week, 50 weeks a year, can be accumulated to develop a robust model of the traffic congestion that this person faces each day, including its consistency, its day-of-the-week and season-of-the-year variability, and perhaps most importantly, the congestion's effect on the travel time that the person experiences daily.
- Furthermore, these observations can yield information about how the congestion tends to affect certain portions of the route. For example, a portion of a route following "
Hwy 1" tends to flow at 39 mph, and the portion that follows "Hwy 2" tends to flow at 51 mph. In turn, the portion ofHwy 1 between 7th and 10th streets can be observed to average 34 mph at around 7:44 AM, and the portion between 10th and 14th streets observed to average 41 mph at 7:51 AM and so on. - This description of a single person's experience can be generalized into the system concept of collecting traffic data using "traffic probe" and using that data for traffic modeling. By collecting observations or data for a large enough number of vehicles/drivers (by, for example, using wireless devices with GPS), then those observations and that data can be aggregated and collectively analyzed to develop an overall model of traffic congestion. In such a system, each device (e.g., owned by a driver of a vehicle) serves as a probe sensing the traffic conditions at particular locations and times. The overall picture serves as the traffic model, and is a byproduct of the system.
- To perform such traffic modeling and aggregation of probe data, a framework that sub-divides the highly trafficked parts of the road network into well defined "traffic segments" (e.g.,
Hwy 1 between 7th and 10th) is provided. Each traffic segment can correspond to a short "chain" of edges that are in the map database. Time also can be subdivided into intervals (e.g., 15 minute uniform slots). - For traffic and congesting modeling using a road interval-based system, each probe can travel through the network (matching the travel shape of its path to the shape of a continuous sequence of edges) and can provide its average speed through each traffic segment. Such information can be assigned to a best-fitting time bucket.
- Even with a well-distributed and robust number of probes, some road segments may not be well traveled at certain times of the day (for instance, reverse commute directions); it may also be that some time periods of the day may not have see very many probes anywhere (2:00-3:00 AM). However, these "gaps" in the data collection represent locations and times when there is not much traffic to begin with (in that the absence of probes in an otherwise well-distributed probe set leads to that conclusion); therefore, such data gaps are not considered to represent a true lack of knowledge concerning traffic conditions on those road segments or at those times. Rather, such absence can itself be considered an indication of where and when traffic congestion likely will not occur, and using default static speed would suffice.
- One product of such a data collection and aggregation process is a "historical traffic model". In one example, a historical traffic model includes a list of traffic segments and associated time-of-day, day-of-week (and given enough time, week-of-year) time slots that contain expected traffic flow speeds (potentially with error estimates) during that time slot on that segment. Gaps can be filled with default "static" speeds. The model can be constructed as a large matrix, with rows representing traffic segments and columns representing time slots.
- In some embodiments, it may be that only 20-25% of the edges in the map database will be "covered" by the model, because most edges are minor roads that may have little or no congestion or traffic patterns of interest, and therefore may not be of primary concern. Instead, freeways, highways, and important arteries and connecting ramps would be the primary focus of the traffic model.
- One useful application of a historical model is to improve the accuracy of travel time estimation, and in one specific application, Estimation Time of Arrival (ETA) calculations or determination. ETA is an important feature provided by a vehicle navigation system. ETA is a fairly simple concept: "if I leave now and follow this route, about when will I get there?" Determining ETA is equally simple on the surface: if I know my route, and I have an estimate of how long it will take to travel the route (for example, the "static" summation described above), then I can estimate my ETA by taking the current time (or in general, the expected departure time) and merely add the travel time estimate. This technique is good as long as the travel time estimate is reliable.
- However, travel time estimates can be unreliable. In fact, there are a variety of factors that can cause travel time to vary. Very long routes probably involve one or more stops (for fuel, food, sleep, etc.) that will increase travel time. Travel time is also (obviously) dependent on actual travel speed: some people drive fast, some drive slow; some times there is bad weather or unforeseen detours; sometimes there is traffic congestion that is slow, slower or even stopped all together. Accurately computing ETA in an automated vehicle navigation system is therefore problematic. Many of the influencing factors are completely beyond the insight or control of the best automated system, as they rely on human behavior (e.g., the decision to make a stop) or the unpredictable future (traffic "accidents" happen). However, if we factor out the uncontrollable, there are still many refinements that may be made to improve travel time estimation accuracy.
- Historical modeling techniques also can be personalized for each user, such that particular user habits and preferences can shape data collected and how that data is used in developing a traffic model for that user.
- One improvement in estimation of travel times would be to tailor travel time estimates to individual driving habits and preferences. Such an approach can be explained by reference to a common scenario: the daily commute to and from work. The daily commute has many opportunities for improving travel time estimation accuracy. Much of this revolves around its predictability. The route (or handful of route choices) is usually well established. It probably does not include any stops. It is habitual. Therefore, the habits of the individual driver are easily recognized. For instance, if the "static" travel time for a habitual route is always faster or slower than the time that it takes the person to actually drive the route, then an adjustment factor can be calculated to improve the estimate for that person. Other approaches to using data pertinent to a particular individual or feedback from prior experience to improve system behaviour can be provided. For example, observing how a person drives on different types of roads may pick up similar habits: some people tend to drive fast on the freeway, some drive more slowly. This can similarly be applied to the estimate by applying personalized factors to adjust the speeds used for the different road types. If a person's habits are consistent, then these adjustment factors can be applied to any travel time estimate that is produced for that person, and not just for particular roads or road segments.
- Previously, it was disclosed that data collection for and observations about personal driving habits can be used to improve accuracy of the estimation of route travel time and correspondingly ETA determination, and further that historical traffic models have the potential for even greater improvement and wider application.
- However, both of these methods rely on the stability of previously observed driving patterns, and some times actual traffic congestion (due to accidents, bad weather, sporting events and similar, or just wide variability) is much worse (and occasionally much better) than expected.
- If the departure time for a trip is immediate, it typically is preferable to know what the "live, real time" traffic conditions are now, rather than relying solely on the historical model, at least for the first portion of the route. Such an approach should yield more accurate travel time and ETA, and can serve as a trigger to alert the driver that today's experience will be worse ("you're going to be late") or better ("you have ten extra minutes") than usual.
- With a network of probes (which can be used to produce the historical traffic model described previously), it is possible to monitor the current activity of all probes in real time to produce a current picture of traffic congestion, as will be addressed further below. For example for all traffic segments, a list of recent probe samples for each segment can be tracked and used to compute a "live expected speed" for the segment.
- An approach to using these live speeds to compute travel time can be similar to the use of speeds from the historical model and can include stepping through the route's edges in sequence computing travel times for each edge. If the edge corresponds to a traffic segment for which there is a current live speed then that speed can be used. If this is no live speed, then the historical model value from the appropriate time slot can be used. If there is no traffic segment, then a static speed can be used.
- In practice, a robust implementation is more complicated than this conceptual description. One reason is that live traffic has a limited "shelf life". In other words, after some amount of time (e.g., 30 minutes), it is likely that the current live speed will be invalid, and that the historical pattern speed may be more accurate.
- A preferred speed determination function includes a continuous function of live and historical values. A simplified description of one such function can be : for a set time along the route (<10 minutes?) the average live speed of recent probes is used, then for some period of time (10 - 30 minutes?) a decreasing fraction of live combined with an increasing fraction of historical speed is used, after which historical is used exclusively.
- Because conditions will change, the ETA calculation preferably is continuously updated as the route is consumed (traveled) during driving. Such preference is based on at least three reasons. First, actual traffic congestion will continue to evolve, and probes driving somewhere up ahead may detect different and new conditions, thus evolving the live model. Second, because part of the route has been consumed by driving, the location framework for live traffic has shifted, so that live information is needed for roads that are further along the route than originally needed. Third, because actual travel progress may vary greatly from the original estimate (particularly on long routes), the time framework of the historical model may also change, resulting in a dramatic increase or decrease of likely traffic speeds far ahead.
- Live traffic and congestion data, such as that obtained from in-vehicle probes, can be used for modelling traffic and congestion, and can supplement a historical model. A mixture of live data and historical data can be used.
- Another component technology that can be implemented in devices, systems, and methods according to these examples includes that a destination can be predicted, in order to generate an estimate of arrival time at that destination, as well as an estimated time of required departure to arrive at the destination at a desired time. In a preferred implementation, prediction of destination is provided based on two pre-defined destinations inputted/selected by a user. More particularly, in a preferred example, a user defines a first location, which will be selected as a destination when the device is in the vicinity of a second defined location, and conversely, when the device is in the vicinity of the first location, the destination will be selected as the second location. A time of day criteria can be further imposed, in order to automatically select either location as a destination. For example, the first location can be selected as a home of the user, and the second location can be selected as a work place of the user. When in the vicinity of work, the device can select home as the destination, when the time frame is after 3 PM, for example. Similarly, when in the vicinity of home, it is a work day, and in the AM, the device can select the work place location of the user as a destination.
- Preferably also, this destination selection, and ETA calculation can be provided responsive to initiation or starting of the application, without user input. Thus, these preferred approaches provide a benefit of being easy to use, requiring minimal programming and minimum involvement by a user in order to provide a useful destination prediction function. An override feature can be provided, such that if the user does not want to generate an ETA to the predicted destination, then another destination can be selected by the user instead from an interface provided for such on the device.
-
Figure 11 depicts an example method, whileFigures 12-16 depict user interface aspects, in which the method inFigure 11 can be provided. These figures are described in further detail below. - To aid the reader in understanding at least one environment in which the
notification sub-system 80, and the above-described applications, may be implemented, an example system comprising thewireless network 200 and other components that may be used to effect communications betweenmobile devices 100 and thenotification subsystem 80 will now be described. - As noted above, data communication devices will be commonly referred to as "mobile devices". Examples of applicable mobile devices include navigation devices, in-vehicle computers or navigation devices, pagers, cellular phones, cellular smart-phones, portable gaming and entertainment devices, wireless organizers, personal digital assistants, computers, laptops, handheld wireless communication devices, wirelessly enabled notebook computers and the like. Although the examples herein primarily focus on a mobile communication device, any of these devices can be adapted or used to implement the aspects described herein.
- One exemplary mobile device is a two-way communication device with advanced data communication capabilities including the capability to communicate with other mobile devices or computer systems through a network of transceiver stations. The mobile device may also have the capability to allow voice communication. Depending on the functionality provided by the mobile device, it may be referred to as a smartphone, a data messaging device, a two-way pager, a cellular telephone with data messaging capabilities, a wireless Internet appliance, or a data communication device (with or without telephony capabilities).
- The mobile device may be one that is used in a system that is configured for continuously routing content, such as pushed content, from a host system to the mobile device. An example architecture of such a system will now be described.
- Referring now to
Figure 2 , an example system diagram showing the redirection of user data items (such as message A or C) from a corporate enterprise computer system (host system) 250 to the user'smobile device 100 via awireless router 26 is provided. Thewireless router 26 provides the wireless connectivity functionality as it acts to both abstract most of the wireless network's 200 complexities, and it also implements features necessary to support pushing data to themobile device 100. Although not shown, a plurality of mobile devices may access data from thehost system 250. In this example, message A inFigure 2 represents an internal message sent from, e.g. a desktop computer within thehost system 250, to any number of server computers in the corporate network 260 (e.g. LAN), which may, in general, include a database server, a calendar server, an E-mail server or a voice-mail server. - Message C in
Figure 2 represents an external message from a sender that is not directly connected to thehost system 250, such as the user'smobile device 100, some other user's mobile device (not shown), or any user connected to the public or private network 224 (e.g. the Internet). Message C could be e-mail, voice-mail, calendar information, database updates, web-page updates or could even represent a command message from the user'smobile device 100 to thehost system 250. Thehost system 250 may comprise, along with the typical communication links, hardware and software associated with a corporate enterprise computer network system, one or more wireless mobility agents, a TCP/IP connection, a collection of datastores (for example a data store for e-mail can be an off-the-shelf mail server program such as Microsoft Exchange® Server or Lotus Notes® Server), which typically are behind a corporate firewall. - The
mobile device 100 may be adapted for communication withinwireless network 200 via wireless links, as required by eachwireless network 200 being used. As an illustrative example of the operation for awireless router 26 shown inFigure 2 , consider a data item A, repackaged in outer envelope B (the packaged data item A now referred to as "data item (A)") and sent to themobile device 100 from an Application Service Provider (ASP) in thehost system 250. Within the ASP is a computer program, similar to a wireless mobility agent, running on any computer in the ASP's environment that is sending requested data items from a data store to amobile device 100. The mobile-destined data item (A) is routed through thenetwork 224, and through a firewall protecting thewireless router 26. - Although the above describes the
host system 250 as being used within a corporate enterprise network environment, this is just one embodiment of one type of host service that offers push-based messages for a handheld wireless device that is capable of notifying and preferably presenting the data to the user in real-time at the mobile device when data arrives at the host system. - A wireless router 26 (sometimes referred to as a "relay") provides a number of advantages to both the
host system 250 and thewireless network 200. Thehost system 250 in general runs a host service that is considered to be any computer program that is running on one or more computer systems. The host service is said to be running on ahost system 250, and onehost system 250 can support any number of host services. A host service may or may not be aware of the fact that information is being channelled tomobile devices 100. For example an e-mail or message program 138 (seeFigure 5 ) might be receiving and processing e-mail while an associated program (e.g. an e-mail wireless mobility agent) is also monitoring the mailbox for the user and forwarding or pushing the same e-mail to awireless device 100. A host service might also be modified to prepare and exchange information withmobile devices 100 via thewireless router 26, like customer relationship management software. In a third example, there might be a common access to a range of host services. For example a mobility agent might offer a Wireless Access Protocol (WAP) connection to several databases. - As discussed above, a
mobile device 100 may be a hand-held two-way wireless paging computer as exemplified inFigures 3-8 . Although the system is exemplified as operating in a two-way communications mode, certain aspects of the system could be used in a "one and one-half' or acknowledgment paging environment, or even with a one-way paging system. In such limited data messaging environments, thewireless router 26 still could abstract themobile device 100 andwireless network 200, offer push services to standard web-based server systems and allow a host service in ahost system 250 to reach themobile device 100 in many countries. - The
host system 250 shown herein has many methods when establishing a communication link to thewireless router 26. For one skilled in the art of data communications thehost system 250 could use connection protocols like TCP/IP, X.25, Frame Relay, ISDN, ATM or many other protocols to establish a point-to-point connection. Over this connection there are several tunnelling methods available to package and send the data, some of these include: HTTP/HTML, HTTP/XML, HTTP/Proprietary, FTP, SMTP or some other proprietary data exchange protocol. The type ofhost systems 250 that might employ thewireless router 26 to perform push could include: field service applications, e-mail services, stock quote services, banking services, stock trading services, field sales applications, advertising messages and many others. - This
wireless network 200 abstraction can be accomplished bywireless router 26, which can implement this routing and push functionality. Thewireless router 26 provides a range of services to make creating a push-based host service possible. These networks may comprise: (1) the Code Division Multiple Access (CDMA) network, (2) the Groupe Special Mobile or the Global System for Mobile Communications (GSM) and the General Packet Radio Service (GPRS), and (3) the upcoming third-generation (3G) and fourth generation (4G) networks like EDGE, UMTS and HSDPA, LTE, Wi-Max etc. Some older examples of data-centric networks include, but are not limited to: (1) the Mobitex Radio Network ("Mobitex") and (2) the DataTAC Radio Network ("DataTAC"). - Referring to
Figures 3 and 4 , one example of amobile device 100a is shown inFigure 3 , and another example of amobile device 100b is shown inFigure 4 . More generally, the numeral "100" will hereinafter refer to anymobile device 100, and by explanation and reference, the examples 100a and 100b ofFigures 3 and 4 . A similar numbering convention is used for some other general features common betweenFigures 3 and 4 such as a display 12, a positioning device 14, a cancel or escapebutton 16, a camera button 17, and a menu or option button 24. - The
mobile device 100a shown inFigure 3 comprises adisplay 12a and the cursor or view positioning device 14 shown in this embodiment is atrackball 14a. Positioning device 14 may serve as another input member and is both rotational to provide selection inputs to the main processor 102 (seeFigure 5 ) and can also be pressed in a direction generally toward housing to provide another selection input to theprocessor 102.Trackball 14a permits multidirectional positioning of the selection cursor 18 (seeFigure 7 ) such that theselection cursor 18 can be moved in an upward direction, in a downward direction and, if desired and/or permitted, in any diagonal direction. Thetrackball 14a is in this example situated on the front face of a housing formobile device 100a as shown inFigure 3 to enable a user to manoeuvre thetrackball 14a while holding themobile device 100a in one hand. Thetrackball 14a may serve as another input member (in addition to a directional or positioning member) to provide selection inputs to theprocessor 102 and can preferably be pressed in a direction towards the housing of themobile device 100b to provide such a selection input. - The display 12 may include a
selection cursor 18 that depicts generally where the next input or selection will be received. Theselection cursor 18 may comprise a box, alteration of an icon or any combination of features that enable the user to identify the currently chosen icon or item. Themobile device 100a inFigure 3 also comprises aprogrammable convenience button 15 to activate a selected application such as, for example, a calendar or calculator. Further,mobile device 100a includes an escape or cancelbutton 16a, acamera button 17a, a menu oroption button 24a and akeyboard 20. The camera button 17 is able to activate photo-capturing functions when pressed preferably in the direction towards the housing. The menu or option button 24 loads a menu or list of options ondisplay 12a when pressed. In this example, the escape or cancelbutton 16a, themenu option button 24a, andkeyboard 20 are disposed on the front face of the mobile device housing, while theconvenience button 15 andcamera button 17a are disposed at the side of the housing. This button placement enables a user to operate these buttons while holding themobile device 100 in one hand. Thekeyboard 20 is, in this embodiment, a standard QWERTY keyboard. - The
mobile device 100b shown inFigure 4 comprises adisplay 12b and the positioning device 14 in this embodiment is atrackball 14b. Themobile device 100b also comprises a menu oroption button 24b, a cancel or escapebutton 16b, and acamera button 17b. Themobile device 100b as illustrated inFigure 4 , comprises a reducedQWERTY keyboard 22. In this embodiment, thekeyboard 22,positioning device 14b,escape button 16b andmenu button 24b are disposed on a front face of a mobile device housing. The reducedQWERTY keyboard 22 comprises a plurality of multi-functional keys and corresponding indicia including keys associated with alphabetic characters corresponding to a QWERTY array of letters A to Z and an overlaid numeric phone key arrangement. - Although
mobile device 100 represents one example mobile device, which has physical keys that can be pressed, a wide range of user interfaces exist, and which can be used in devices that implement aspects disclosed herein. Such user interfaces include one or more positioning or cursor/view positioning mechanisms such as a touch pad, a positioning wheel, a joystick button, a mouse, a touchscreen, a set of arrow keys, a tablet, an accelerometer (for sensing orientation and/or movements of themobile device 100 etc.), or other input device, whether presently known or unknown, may be employed. Similarly, any variation ofkeyboard mobile devices 100 shown inFigures 3 and 4 are for illustrative purposes only and various othermobile devices 100 are equally applicable to the following examples. For example, othermobile devices 100 may include thetrackball 14b,escape button 16b and menu or option button 24 similar to that shown inFigure 4 only with a full or standard keyboard of any type. Other buttons may also be disposed on the mobile device housing such as colour coded "Answer" and "Ignore" buttons to be used in telephonic communications. In another example, the display 12 may itself be touch sensitive thus itself providing an input mechanism in addition to display capabilities. Furthermore, the housing for themobile device 100 should not be limited to the single-piece configurations shown inFigures 3 and 4 , other configurations such as clamshell or "flip-phone" configurations are also applicable. - Now, to aid the reader in understanding the structure of the
mobile device 100 and how it can communicate with thewireless network 200, reference will now be made toFigures 5 through 8 . - Referring first to
Figure 5 , shown therein is a block diagram of an exemplary embodiment of amobile device 100. Themobile device 100 comprises a number of components such as amain processor 102 that controls the overall operation of themobile device 100. Communication functions, including data and voice communications, are performed through acommunication subsystem 104. Thecommunication subsystem 104 receives messages from and sends messages to awireless network 200. In this exemplary embodiment of themobile device 100, thecommunication subsystem 104 is configured in accordance with the Global System for Mobile Communication (GSM) and General Packet Radio Services (GPRS) standards, which is used worldwide. Other communication configurations that are equally applicable are the 3G and 4G networks such as EDGE, UMTS and HSDPA, LTE, Wi-Max etc. New standards are still being defined, but it is believed that they will have similarities to the network behaviour described herein, and it will also be understood by persons skilled in the art that the aspects disclosed herein can be used with and adapted for other suitable communication protocols and standards that may be developed in the future. The wireless link connecting thecommunication subsystem 104 with thewireless network 200 represents one or more different Radio Frequency (RF) channels, operating according to defined protocols specified for GSM/GPRS communications. - The
main processor 102 also may interact with additional subsystems (as available) such as a Random Access Memory (RAM) 106, aflash memory 108, adisplay 110, an auxiliary input/output (I/O) subsystem 112, a data port 114, akeyboard 116, aspeaker 118, amicrophone 120, a GPS receiver 121, short-range communications 122, andother device subsystems 124. - Some of the subsystems of the
mobile device 100 perform communication-related functions, whereas other subsystems may provide "resident" or on-device functions. By way of example, thedisplay 110 and thekeyboard 116 may be used for both communication-related functions, such as entering a text message for transmission over thenetwork 200, and device-resident functions such as a calculator or task list. - The
mobile device 100 can send and receive communication signals over thewireless network 200 after required network registration or activation procedures have been completed. Network access is associated with a subscriber or user of themobile device 100. To identify a subscriber, themobile device 100 may use a subscriber module component or "smart card" 126, such as a Subscriber Identity Module (SIM), a Removable User Identity Module (RUIM) and a Universal Subscriber Identity Module (USIM). In the example shown, a SIM/RUIM/USIM 126 is to be inserted into a SIM/RUIM/USIM interface 128 in order to communicate with a network. Without thecomponent 126, themobile device 100 is not fully operational for communication with thewireless network 200. Once the SIM/RUIM/USIM 126 is inserted into the SIM/RUIM/USIM interface 128, it is coupled to themain processor 102. - The
mobile device 100 can be a battery-powered device (or be battery powered at some times or in some modes, while being powered by an automobile or wall power or another source of energy at other times) and typically includes abattery interface 132 for receiving one or morerechargeable batteries 130. In at least some embodiments, thebattery 130 can be a smart battery with an embedded microprocessor. Thebattery interface 132 is coupled to a regulator (not shown), which assists thebattery 130 in providing power V+ to themobile device 100. Although current technology makes use of a battery, future technologies such as micro fuel cells may provide the power to themobile device 100. In some embodiments, a plurality of batteries, such as a primary and a secondary batter may be provided - The
mobile device 100 also includes anoperating system 134 andsoftware components 136 to 146 which are described in more detail below. Theoperating system 134 and thesoftware components 136 to 146 that are executed by themain processor 102 are typically stored in a persistent store such as theflash memory 108, which may alternatively be a read-only memory (ROM) or similar storage element (not shown). Those skilled in the art will appreciate that portions of theoperating system 134 and thesoftware components 136 to 146, such as specific device applications, or parts thereof, may be temporarily loaded into a volatile store such as theRAM 106. Other software components can also be included, as is well known to those skilled in the art. - The subset of
software applications 136 that control basic device operations, including data and voice communication applications, may be installed on themobile device 100 during its manufacture. Software applications may include amessage application 138, a device state module 140, a Personal Information Manager (PIM) 142, aconnect module 144 and anIT policy module 146. Amessage application 138 can be any suitable software program that allows a user of themobile device 100 to send and receive electronic messages, wherein messages are typically stored in theflash memory 108 of themobile device 100. A device state module 140 can provide persistence, i.e. the device state module 140 provides for availability and storage of potentially important device data. Device state module 140 can be implemented using flash memory 108 (or other non-volatile memory technologies), so that the data is not lost when themobile device 100 is turned off or loses power. APIM 142 includes functionality for organizing and managing data items of interest to the user, such as, but not limited to, e-mail, text messages, instant messages, contacts, calendar events, and voice mails, and may interact with thewireless network 200. Aconnect module 144 implements the communication protocols that are required for themobile device 100 to communicate with the wireless infrastructure and anyhost system 250, such as an enterprise system, that themobile device 100 is authorized to interface with. AnIT policy module 146 can receive IT policy data that encodes IT policies, and may be responsible for organizing and securing rules, such as a "Set Maximum Password Attempts" IT policy, and password expiration policies. - Other types of software applications or
components 139 can also be installed on themobile device 100. Thesesoftware applications 139 can be pre-installed applications (e.g., applications other than message application 138) or third party applications, which are added after the manufacture of themobile device 100. Examples of third party applications include games, calculators, and utilities. - The
additional applications 139 can be loaded onto themobile device 100 through at least one of thewireless network 200, the auxiliary I/O subsystem 112, the data port 114, the short-range communications subsystem 122, or any othersuitable device subsystem 124. - The data port 114 can be any suitable port that enables data communication between the
mobile device 100 and another computing device. The data port 114 can be a serial or a parallel port. In some instances, the data port 114 can be a USB port that includes data lines for data transfer and a supply line that can provide a charging current to charge thebattery 130 of themobile device 100. - For voice communications, received signals are output to the
speaker 118, and signals for transmission are generated by themicrophone 120. Although voice or audio signal output is accomplished primarily through thespeaker 118, thedisplay 110 can also be used to provide additional information such as the identity of a calling party, duration of a voice call, or other voice call related information. - Referring now to
Figure 6 , an exemplary block diagram of thecommunication subsystem component 104 is shown. Thecommunication subsystem 104 includes areceiver 150, atransmitter 152, and example associated components such as one or more embedded orinternal antenna elements communication subsystem 104 can be dependent on thecommunication network 200 with which themobile device 100 is intended to operate. Thus, it should be understood that the design illustrated inFigure 6 serves only as one example. Radios also can be implemented differently, for example, LOs can be avoided by avoiding intermediate frequencies, such as by using direct digital sampling. - Signals received by the
antenna 154 through thewireless network 200 are input to thereceiver 150, which may perform such common receiver functions as signal amplification, frequency down conversion, filtering, channel selection, and analog-to-digital (A/D) conversion. A/D conversion of a received signal allows more complex communication functions such as demodulation and decoding to be performed in theDSP 160. In a similar manner, signals to be transmitted are processed, including modulation and encoding, by theDSP 160. These DSP-processed signals are input to thetransmitter 152 for digital-to-analog (D/A) conversion, frequency up conversion, filtering, amplification and transmission over thewireless network 200 via theantenna 156. - The wireless link between the
mobile device 100 and thewireless network 200 can contain one or more different channels, typically different RF channels, and associated protocols used between themobile device 100 and thewireless network 200. An RF channel is a limited resource that should be conserved, based on concerns such as limits of overall bandwidth and limited battery power of themobile device 100. - When the
mobile device 100 is fully operational, thetransmitter 152 is typically keyed or turned on only when it is transmitting to thewireless network 200 and is otherwise turned off to conserve resources. Similarly, thereceiver 150 may be periodically turned off to conserve power until it is needed to receive signals or information (if at all) during designated time periods. Thereceiver 150 also can be turned on to poll for data to be retrieved. - Some aspects of the description provided relate to a system architecture where information can be pushed to mobile devices. Such system architectures can operate to push information responsive to a request from a mobile. For example,
mobile device 100 can request information periodically, and the system can respond with any messages or notifications determined to be applicable todevice 100. - Turning now to
Figure 7 , themobile device 100 may display ahome screen 40, which may be the active screen when themobile device 100 is powered up or may be accessible from other screens. Thehome screen 40 generally comprises astatus region 44 and atheme background 46, which provides a graphical background for the display 12. Thetheme background 46 displays a series oficons 42 in a predefined arrangement on a graphical background. In some themes, thehome screen 40 may limit thenumber icons 42 shown on thehome screen 40 so as to not detract from thetheme background 46, particularly where thebackground 46 is chosen for aesthetic reasons. Thetheme background 46 shown inFigure 7 provides a grid of icons. It will be appreciated that preferably several themes are available for the user to select and that any applicable arrangement may be used. One or more of the series oficons 42 is typically afolder 52 that itself is capable of organizing any number of applications therewithin. - The
status region 44 in this embodiment comprises a date/time display 48. Thetheme background 46, in addition to a graphical background and the series oficons 42, also comprises astatus bar 50. Thestatus bar 50 can provide information to the user based on the location of theselection cursor 18, e.g. by displaying a name for theicon 53 that is currently highlighted. - An application, such as a maps program 60 (see also
Figure 8 ) may be initiated (opened or viewed) from display 12 by highlighting acorresponding icon 53 using the positioning device 14 and providing a suitable user input to themobile device 100. For example,maps program 60 may be initiated by moving the positioning device 14 such that theicon 53 is highlighted by theselection box 18 as shown inFigure 7 , and providing a selection input, e.g. by pressing thetrackball 14b. -
Figure 8 shows an example of how other software applications andcomponents 139 that may be stored on and used with themobile device 100 can use the user interface. Only examples are shown inFigure 8 and such examples are not to be considered exhaustive. In this example, a global positioning system (GPS)application 54,internet browser 56, simple message service (SMS) 58,maps program 60 and aprofiles application 62 are shown to illustrate the various features that may be provided by themobile device 100. TheGPS application 54, in this example, comprises atraffic module 55, which represents any sub-program, sub-routine, function or other set of computer executable instructions for providingdevice data 78 to thenotification sub-system 80, whensuch data 78 is obtained using theGPS application 54. Also shown inFigure 8 is themessage application 138, which in the following will be referred to as anemail application 138 for clarity. It will be appreciated that the various applications may operate independently or may utilize features of other applications. For example, theGPS application 54 may use themaps program 60 for displaying directions to a user. - Turning now to
Figure 9 , an exemplary implementation of thenotification sub-system 80 is shown, wherein thenotification sub-system 80 is hosted by thewireless router 26 described above. In this example, thewireless router 26 is responsible for routing messages from and tomobile devices 100A-100E and thus has the ability to obtaindevice data 78 provided by a plurality of suchmobile devices 100 in order to preparenotifications 84 for those plurality ofmobile devices 100 and other mobile devices. Consistent withFigure 1 , the implementation exemplified inFigure 9 illustrates obtainingdevice data 78 from each ofmobile devices 100B through 100E and provides anotification 84 tomobile device 100A. It will be appreciated that thedevice data 78 andnotifications 84 may comprise separate and distinct data packages sent using separate protocols or may take advantage of existing communication methods such as email, SMS, etc. - The
notification sub-system 80, which in this example can reside at thewireless router 26, stores traffic-related data in atraffic database 82. Such traffic-related data may comprise anydevice data 78 obtained from variousmobile devices 100, copies ofnotifications 84 that have already been sent (or are about to be sent - to facilitate repeated use of the same notifications 84), and any other information that may be required to carry out the delivery of anotification 84 based on the acquisition ofdevice data 78, several examples of which will be explained below. It will be appreciated that thetraffic database 82 may represent any memory, datastore, or storage medium and may or may not be internal to thewireless router 26. For example, thetraffic database 82 may be maintained by a third party or configured to be an integral component of thenotification sub-system 80. As such, the configuration shown inFigure 9 is merely for illustrative purposes and variations thereof are equally applicable according to the principles described herein. Thenotification sub-system 80 may also have access to athird party source 83 to obtain additional data pertaining to traffic events and other location based information. For example, thethird party source 83 may represent police or emergency crew dispatchers that provide more detailed information pertaining to accidents. Thethird party source 83 may also provide information such as the locations of gas stations, tow truck origins, and so on, for use in various embodiments as will be exemplified below. There may be any number ofthird party sources 83 available to thenotification sub-system 80, which can vary according to the particular embodiment. -
Figure 9 also illustrates that, in addition to providing an alert to the user of themobile device 100A using thenotification 84 on themobile device 100A itself, the notification may be used in other ways. In this example, a copy of the notification 84' is provided to another system 85 through adevice interface 86 such that an alert may be provided to the user through anoutput mechanism 88. For example, thevehicle 10A is shown as comprising theother system 85, which may represent a vehicle entertainment or navigation system, a vehicle engine control system, as well as various dashboard implemented systems. In this way, the mobile device's access to the information comprised in thenotification 84 can be shared with other systems in the same locale as themobile device 100A in order to provide a wide range of alert types and to coordinate with other sub-systems. - The configuration shown in
Figure 9 can also provide for amobile device 100 without a GPS receiver 121 to utilize location and speed information acquired by thevehicle 10, for example through a vehicle navigation system, an on-board-diagnostics (OBD) connection or both. As such, themobile device 100 also can be the communication link between avehicle 10 and thenotification sub-system 80 to accommodate a wider range of environments and configurations. Also, themobile device 100 may itself be integral to the vehicle 10 (not shown), e.g. where the vehicle has a GPS receiver and wireless connectivity. The principles described herein may be applied to amobile device 100 in any form, including wherein themobile device 100 is provided as a sub-system of avehicle 10. - The above disclosure included description of an example system architecture that can provide notifications to wireless devices, such as notifications relating to traffic conditions. Further description of such notifications, such as conditions which can generate notifications, how they may be formed, and their content is provided below.
- Turning now to
Figure 10 , one example illustrating the preparation of anotification 84 usingdevice data 78 from a plurality ofmobile devices 100 is shown.Device data 78 from Nmobile devices 100,e.g. devices notification sub-system 80 at 200, whichdata 78 is then stored in thetraffic database 82. In the example shown inFigures 1 and9 ,device data 78 is obtained frommobile devices device data 78 is then organized based on the zone from which it originates and the traffic database is updated. For example, thedevice data 78 frommobile devices 100B-100E would be grouped into one zone, whereas thedevice data 78 frommobile device 100A would be grouped into another zone. - It was described above that one aspect of an easier to use interface for a handheld navigation device can include a facility to quickly predict a destination, without initial involvement of a user. Although a complicated arrangement could be provided that would track movements of a device and build a database of those movements, such an approach can require more initial data gathering time, storage space for the gathered information, as well as complicated prediction algorithms, and can use scant mobile device battery power and processing resources.
- Turning to
Figure 11 , an approach to destination selection is depicted. The depicted method includes displaying (2401) a start page, such as that ofFigure 12 , upon input, such as turning on the mobile device, or activating (2402) a navigation function (which can be done automatically at startup, if configured to do so.) - Rather, in an example method (
Figure 11 ), a current location of a device can be estimated (2403), such as by using GPS signal information, or an identity of a cell phone tower, triangulation of tower signals and so on. A comparison/determination (2405) between the current location and first and second pre-defined destination is made. If the current location is proximate a first pre-defined destination (e.g., work), such as by being within 100 meters, 1km, or 50m of a GPS coordinate (or otherwise used in defining such location), then the second pre-defined destination (e.g., home) is selected (2406) automatically as a destination for a route from the current location, for which an ETA will be calculated. An override can be accepted (2407) through an interface, which would override the automatic selection. An ETA is then calculated (2408), and subsequently outputted using those parameters. Traffic congestion information (2413) can be used in selecting (2412) a route to be taken, on which the ETA calculated will be based. A plurality of locations can each be associated with a pre-defined destination, for which an ETA can be calculated upon proximity to the location to which that pre-defined destination is associated. - An optional time criteria can be used in a further determination (2411) of whether the time criteria suggests that the user of the device intends to proceed to either the first or the second predefined destination.
FIG. 11 more particularly depicts that if a present device location is not proximate either the first or the second pre-defined destinations, then a time criteria can be used to select a pre-defined destination. In a different example, a time criteria can be a further requirement to be met before selecting either the first or the second pre-defined destination, in addition to proximity to the other of the pre-defined destinations. - In a summary example, the user can define a home location as a first pre-defined destination and work as a second pre-defined destination. When the device is proximate work, home will be selected as a destination, and vice versa. When the device is proximate neither home nor work, then a time of day criteria can be used to select either home or work.
- In further explanation of time criteria (2411), it may be desirable to employ the time criteria determination (2411) as a further decision prior to selecting the pre-defined destination associated with the current location for ETA calculation. For example, if the user is more than 1 km from home, then the determination of being near home may fail. However, if it is a workday, and the time is in the morning (an example time criteria), then work may be selected as a destination anyway, and an ETA to work may be provided. Similarly, if a user is not considered proximate to work, but perhaps nearby, and the time is in the late afternoon, then home can be selected as a destination, and an ETA provided. Conversely, if the user is 1 km from work, but it is a weekend, then the time criteria can cause the device not to select home as a destination. Thus, in a preferred example, the time criteria is used as a secondary test, where there may be some ambiguity concerning nearness to either the first or the second pre-defined locations.
- Turning to a specific example,
Figure 12 depicts an example user interface screen displayed when a navigation application is selected or activated.Figure 12 depicts auser interface element 2705 prior to obtaining a positional fix (e.g., prior to 2403 in Figure 24). In this pre-location determination period, the depicteduser interface element 2705 accepts inputs that can include selection of aview 2710, aplaces 2712, asearch 2714, and ashare 2716 element. -
User interface element 2705 can suggest to choose a destination by selection ofplaces 2712, which would cause theuser interface element 2705 to transfer to a user interface element depicted by Figure 30. However, for purposes of explaining the automatic destination selection aspects of Figure 24, it is assumed that a positional fix is obtained, which causes automatic display of auser interface element 2805 as depicted inFigure 13 .User interface element 2805 depicts that the destination "home" (seeFigure 15 ). Such destination can correspond to either the first or the second pre-defined locations described with respect toFigure 11 . Conversely, a current location of the mobile device would be proximate the other of the defined locations, and either a time of day criteria is satisfied or not implemented.Figure 15 depicts that user interface element 3005 for defining places can include anadd place button 3010, a pre-defined destination ofhome 3015, and ofwork 3020 can be defined. - As depicted,
user interface element 2805 can show a miles remaining 2810, a time remaining 2815 and an absolute estimated time ofarrival 2820, in addition to the same selectable elements,view 2710, places 2712,search 2714, andshare 2716 element, as depicted in Figure 27. Thus, a user need not have selected the "home" destination, but it was automatically proposed based on methods according to the example ofFigure 11 and related description. - The above description is related to automatically predicting a destination for automatic provision of an ETA and related information. Such ETA can be shared, such as by using the user interface depicted in
Figure 14 . - The
user interface element 2905 ofFigure 14 depicts that a default operating procedure can be that an SMS message is sent to a phone number associated with the contact (2910), while aPick 2915 button allows the option to select additional phone numbers. Anexcuse window 2920 can be provided, which allows a reason to be included in the message as to why the ETA may be different from what was expected. Asend button 2921 allows confirmation of the selections before the messages with the ETA information are sent. ETA can be shared by any of a variety of mechanisms, such as e-mail. - Such aspects can include automatic production/sending of supplemental/periodic update notifications based on a variety of conditions or parameters, including elapsed time, proximity to POI, departures from the route, or re-selections. For example, updates can be made hourly, or when passing a given point. The user interface can be modified or a user interface provided that provides user-selectable options, which can have defaults for such parameters and conditions.
- In addition to the above-described functionality and user interface elements, traffic information and other route information also can be displayed in optimized formats, as explained below, with respect to example user interface elements depicted in
Figure 16 . - As shown in
Figure 16 , routes, which can comprise a number of interconnected road (travel) segments are depicted (on user interface element 3105) as linear representations (also can be called a spine or a trunk), such as linear shape 3110 (which in that it represents a route, also can be termed a linear representation of such route). Such linear representation can be oriented along one axis of a 2-D display of the device, such as along an axis that is parallel to a field of view of a user of the device (and thus can vary if the device is turned on its side, such that the route orientation can turn to maintain that orientation with respect to the viewpoint of the user). Preferably, the linear representation takes up most of the available display width. Indicators of information such as roads to be taken along the route can be represented at angles along the linear representation (e.g.,indicators linear representation 3110, itself. - To the extent that these indicators apply to one or more portions of the route (as opposed to a point on the route), these indicators also can be viewed as information segments. For
example indication 3125 of traffic congestion can be termed an information segment for the portion of the route on which that congestion occurs, and which is indicated byindication 3125. As can be discerned, an information indicator thus can be an indicator of a point along a route to which an informational item is relevant, as well as a segment of a route along which such informational item is relevant. As will become apparent, such informational indicators can be overlayed on the linear representation (linear shape) of the route, as is 3125, above or below such linear representation. A collection of informational indicators can be displayed for any given route, represented by such a linear shape, as explained and exemplified by the discussion below. - A scale indicator (3150) can be provided, as well as a textual expression (3151) of remaining miles to go to arrive at the destination on the depicted route.
- Although the above has been described with reference to certain specific embodiments, various modifications thereof will be apparent to those skilled in the art as outlined in the appended claims:
Further embodiments are disclosed in the following numbered clauses: - 1. A method for implementation on a mobile device comprising:
- activating (2402) a navigation function on the mobile device;
- determining (2403) a location of the mobile device; and
- when the location of the mobile device is proximate to a location associated with a pre-defined destination (2405), producing a navigation output (2408) using the pre-defined destination.
- 2. The method of
item 1, further comprising displaying (2712) an option to associate a selected destination as the pre-defined destination associated with the location. - 3. The method of
item 1, wherein the navigation output comprises one or more of a route to the pre-defined destination and an estimated time of arrival at the pre-defined destination. - 4. The method of
item 1, further including outputting (2820) an estimated time of arrival to a destination selected in response to detection of user input. - 5. The method of
item 1, further comprising displaying a start page (2401, 2705) upon mobile device initialization, which includes a user-selectable option to activate the navigation function, and activating the navigation function responsive to detecting a user selection of the option to activate the navigation function. - 6. The method of
item 1, further comprising obtaining (84) traffic congestion information over a network interface, selecting a route based at least in part on the traffic congestion information, and outputting the estimated time of arrival (2820) based on the selected route. - 7. The method of
item 1, wherein the outputting of the estimated time of arrival at the pre-defined destination is further conditioned (2411) on a time of day meeting a time of day criteria. - 8. The method of
item 7, wherein the time of day criteria comprises a criteria that the current time is within one of the morning or the afternoon hours. - 9. A computer readable medium storing computer executable instructions for a method to be implemented on a mobile device comprising:
- activating (2402) a navigation function on the mobile device;
- determining (2405) a location of the mobile device; and
- when the location of the mobile device is proximate (2405) to a location associated with a pre-defined destination, outputting (2408) a navigation output comprising one or more of a route to the pre-defined destination and an estimated time of arrival at the pre-defined destination.
- 10. The computer readable medium of
item 9, wherein the method further comprises outputting (2407, 2408) an estimated time of arrival to a destination selected in response to detection of user input. - 11. The computer readable medium of
item 9, wherein the method further comprises displaying (2401) a start page upon mobile device initialization, which includes a user-selectable option to activate the navigation function, and activating (2402) the navigation function responsive to detecting a user selection of the option to activate the navigation function. - 12. The computer readable medium of
item 9, wherein the method further comprises obtaining traffic congestion information (2413) over a network interface, selecting (2412) a route based at least in part on the traffic congestion information, and outputting the estimated time of arrival based on the selected route. - 13. The computer readable medium of
item 9, wherein the outputting of the estimated time of arrival at the pre-defined destination is further conditioned on a time of day meeting a time of day criteria (2411). - 14. A mobile device, comprising:
- a user interface module (116) operable to receive input; and
- a navigation module (102) operable to initialize responsive to input from the user interface module indicative of a command to initialize, obtain (2403) information representative of a location of the mobile device; and to output (2408) a navigation output comprising one or more of a route to a pre-defined destination associated with the location and an estimated time of arrival at the pre-defined destination, when the location of the mobile device is proximate to the location (2405).
- 15. The mobile device of item 14, wherein the user interface module further is operable to display an option to associate a selected destination as the pre-defined destination associated with the location.
Claims (12)
- A method for navigating a commute implemented on a mobile device (100), comprising:setting two pre-defined locations based on user input;activating (2402) a navigation function on the mobile device (100);determining (2403) a current location of the mobile device (100);selecting a destination from the two pre-defined locations, wherein selecting the destination comprises:in response to determining that the current location of the mobile device (100) is proximate to one of the two pre-defined locations (2405), automatically selecting (2406) the other of the two pre-defined locations as the destination, andin response to determining that the current location of the mobile device (100) is proximate to neither of the two pre-defined locations (2405), selecting (2406) the destination from the two pre-defined locations based on a time criteria; andproducing a navigation output (2408) using the selected destination.
- The method of claim 1, wherein the navigation output comprises a route to the selected destination and an estimated time of arrival at the selected destination.
- The method of claim 1,wherein the current location is determined by using GPS signal information.
- The method of claim 1, wherein the setting step comprise selecting or inputting the two pre-defined locations based on user input.
- The method of claim 1, wherein the automatically selecting (2406) the other of the first or second pre-defined location as the destination without implementing a time of day criteria.
- The method of claim 5, wherein the time of day criteria comprises a criteria that the current time is within one of the morning or the afternoon hours.
- A computer readable medium storing computer executable instructions for a method to be implemented on a mobile device comprising:setting two pre-defined locations based on user input;activating (2402) a navigation function on the mobile device (100);determining (2403) a current location of the mobile device (100);selecting a destination from the two pre-defined locations, wherein selecting the destination comprises:in response to determining that the current location of the mobile device (100) is proximate to one of the two pre-defined locations (2405), automatically selecting (2406) the other of the two pre-defined locations as the destination, andin response to determining that the current location of the mobile device (100) is proximate to neither of the two pre-defined locations (2405), selecting (2406) the destination from the two pre-defined locations based on a time criteria; andproducing a navigation output (2408) using the selected destination.
- The computer readable medium of claim 7, wherein the method further comprises outputting (2407, 2408) an estimated time of arrival to the selected destination.
- The computer readable medium of claim 7, wherein the current location is determined by using GPS signal information.
- The computer readable medium of claim 7, wherein the method further comprises obtaining traffic congestion information (2413) over a network interface, selecting (2412) a route based at least in part on the traffic congestion information, and outputting the estimated time of arrival based on the selected route.
- The computer readable medium of claim 7, wherein the automatically selecting (2406) the other of the two pre-defined locations as the destination without implementing a time of day criteria.
- A mobile device, comprising:
one or more processors (102), a memory (108), and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors (102), the one or more programs comprise instructions which, when executed by the one or more processors (102), are configured to cause the mobile device (100) to perform the method of any one of claims 1-6.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29057009P | 2009-12-29 | 2009-12-29 | |
EP10187144.0A EP2341316B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP20211509.3A EP3805705B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP18189983.2A EP3467439B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
Related Parent Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP20211509.3A Division EP3805705B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP20211509.3A Division-Into EP3805705B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP10187144.0A Division EP2341316B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP18189983.2A Division EP3467439B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
Publications (1)
Publication Number | Publication Date |
---|---|
EP4053506A1 true EP4053506A1 (en) | 2022-09-07 |
Family
ID=43425881
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP22167547.3A Pending EP4053506A1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP18189983.2A Active EP3467439B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP10187144.0A Active EP2341316B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP20211509.3A Active EP3805705B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP18189983.2A Active EP3467439B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP10187144.0A Active EP2341316B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
EP20211509.3A Active EP3805705B1 (en) | 2009-12-29 | 2010-10-11 | System and method of automatic destination selection |
Country Status (3)
Country | Link |
---|---|
US (1) | US9518833B2 (en) |
EP (4) | EP4053506A1 (en) |
CA (1) | CA2725193C (en) |
Families Citing this family (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120036437A1 (en) * | 2010-08-04 | 2012-02-09 | Alberth Jr William P | Method, Devices, and System for Delayed Usage of Identified Content |
KR20120048312A (en) * | 2010-11-05 | 2012-05-15 | 삼성전자주식회사 | Mobile device and control method thereof |
US8928336B2 (en) | 2011-06-09 | 2015-01-06 | Ford Global Technologies, Llc | Proximity switch having sensitivity control and method therefor |
US8975903B2 (en) | 2011-06-09 | 2015-03-10 | Ford Global Technologies, Llc | Proximity switch having learned sensitivity and method therefor |
US8823318B2 (en) | 2011-07-25 | 2014-09-02 | ConvenientPower HK Ltd. | System and method for operating a mobile device |
US10004286B2 (en) | 2011-08-08 | 2018-06-26 | Ford Global Technologies, Llc | Glove having conductive ink and method of interacting with proximity sensor |
US9143126B2 (en) | 2011-09-22 | 2015-09-22 | Ford Global Technologies, Llc | Proximity switch having lockout control for controlling movable panel |
US20130103300A1 (en) * | 2011-10-25 | 2013-04-25 | Nokia Corporation | Method and apparatus for predicting a travel time and destination before traveling |
US10112556B2 (en) | 2011-11-03 | 2018-10-30 | Ford Global Technologies, Llc | Proximity switch having wrong touch adaptive learning and method |
US8994228B2 (en) | 2011-11-03 | 2015-03-31 | Ford Global Technologies, Llc | Proximity switch having wrong touch feedback |
US8878438B2 (en) | 2011-11-04 | 2014-11-04 | Ford Global Technologies, Llc | Lamp and proximity switch assembly and method |
WO2013101045A1 (en) | 2011-12-29 | 2013-07-04 | Intel Corporation | Navigation systems and associated methods |
KR20130100549A (en) * | 2012-03-02 | 2013-09-11 | 삼성전자주식회사 | Apparatus and method for providing navigation service in electronic device |
US9831870B2 (en) | 2012-04-11 | 2017-11-28 | Ford Global Technologies, Llc | Proximity switch assembly and method of tuning same |
US9944237B2 (en) | 2012-04-11 | 2018-04-17 | Ford Global Technologies, Llc | Proximity switch assembly with signal drift rejection and method |
US9184745B2 (en) | 2012-04-11 | 2015-11-10 | Ford Global Technologies, Llc | Proximity switch assembly and method of sensing user input based on signal rate of change |
US8933708B2 (en) | 2012-04-11 | 2015-01-13 | Ford Global Technologies, Llc | Proximity switch assembly and activation method with exploration mode |
US9520875B2 (en) | 2012-04-11 | 2016-12-13 | Ford Global Technologies, Llc | Pliable proximity switch assembly and activation method |
US9197206B2 (en) | 2012-04-11 | 2015-11-24 | Ford Global Technologies, Llc | Proximity switch having differential contact surface |
US9287864B2 (en) | 2012-04-11 | 2016-03-15 | Ford Global Technologies, Llc | Proximity switch assembly and calibration method therefor |
US9568527B2 (en) | 2012-04-11 | 2017-02-14 | Ford Global Technologies, Llc | Proximity switch assembly and activation method having virtual button mode |
US9219472B2 (en) | 2012-04-11 | 2015-12-22 | Ford Global Technologies, Llc | Proximity switch assembly and activation method using rate monitoring |
US9531379B2 (en) | 2012-04-11 | 2016-12-27 | Ford Global Technologies, Llc | Proximity switch assembly having groove between adjacent proximity sensors |
US9660644B2 (en) | 2012-04-11 | 2017-05-23 | Ford Global Technologies, Llc | Proximity switch assembly and activation method |
US9559688B2 (en) | 2012-04-11 | 2017-01-31 | Ford Global Technologies, Llc | Proximity switch assembly having pliable surface and depression |
US9065447B2 (en) | 2012-04-11 | 2015-06-23 | Ford Global Technologies, Llc | Proximity switch assembly and method having adaptive time delay |
US9136840B2 (en) | 2012-05-17 | 2015-09-15 | Ford Global Technologies, Llc | Proximity switch assembly having dynamic tuned threshold |
US8981602B2 (en) | 2012-05-29 | 2015-03-17 | Ford Global Technologies, Llc | Proximity switch assembly having non-switch contact and method |
US9337832B2 (en) | 2012-06-06 | 2016-05-10 | Ford Global Technologies, Llc | Proximity switch and method of adjusting sensitivity therefor |
US10119831B2 (en) | 2012-06-10 | 2018-11-06 | Apple Inc. | Representing traffic along a route |
US11935190B2 (en) | 2012-06-10 | 2024-03-19 | Apple Inc. | Representing traffic along a route |
CN105683716B (en) | 2012-06-22 | 2018-07-17 | 谷歌有限责任公司 | Context traffic or current warning |
EP3196817B1 (en) | 2012-06-22 | 2020-02-19 | Google LLC | Presenting information for a current location or time |
US9641172B2 (en) | 2012-06-27 | 2017-05-02 | Ford Global Technologies, Llc | Proximity switch assembly having varying size electrode fingers |
US9298358B1 (en) | 2012-08-21 | 2016-03-29 | Google Inc. | Scrollable notifications |
US8922340B2 (en) | 2012-09-11 | 2014-12-30 | Ford Global Technologies, Llc | Proximity switch based door latch release |
TW201413219A (en) * | 2012-09-26 | 2014-04-01 | Hon Hai Prec Ind Co Ltd | System and method for vehicle navigation |
KR101872570B1 (en) * | 2012-10-08 | 2018-06-28 | 패트릭 순-시옹 | Distributed storage systems and methods |
US8796575B2 (en) | 2012-10-31 | 2014-08-05 | Ford Global Technologies, Llc | Proximity switch assembly having ground layer |
CA2833542C (en) | 2012-11-20 | 2020-06-30 | Accenture Global Services Limited | Situation-aware mobile travel advisory to public transport commuters |
US9311204B2 (en) | 2013-03-13 | 2016-04-12 | Ford Global Technologies, Llc | Proximity interface development system having replicator and method |
US20140365505A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Harvesting Addresses |
US9631930B2 (en) * | 2013-03-15 | 2017-04-25 | Apple Inc. | Warning for frequently traveled trips based on traffic |
US9857193B2 (en) | 2013-06-08 | 2018-01-02 | Apple Inc. | Mapping application with turn-by-turn navigation mode for output to vehicle display |
US9459112B2 (en) * | 2013-03-15 | 2016-10-04 | Vivint, Inc. | Security system with traffic monitoring |
US9317813B2 (en) | 2013-03-15 | 2016-04-19 | Apple Inc. | Mobile device with predictive routing engine |
US9020754B2 (en) * | 2013-03-22 | 2015-04-28 | Here Global B.V. | Vehicle arrival prediction |
US9590875B2 (en) * | 2013-04-29 | 2017-03-07 | International Business Machines Corporation | Content delivery infrastructure with non-intentional feedback parameter provisioning |
US20150106006A1 (en) * | 2013-10-11 | 2015-04-16 | Kevin NAJAFI | Method of route scheduling and devices thereof |
US9282309B1 (en) | 2013-12-22 | 2016-03-08 | Jasmin Cosic | Methods, systems and apparatuses for multi-directional still pictures and/or multi-directional motion pictures |
US9500492B2 (en) | 2014-03-03 | 2016-11-22 | Apple Inc. | Map application with improved navigation tools |
EP3114574A4 (en) * | 2014-03-03 | 2018-03-07 | Inrix, Inc. | Traffic obstruction detection |
US10113879B2 (en) * | 2014-03-03 | 2018-10-30 | Apple Inc. | Hierarchy of tools for navigation |
US9695760B2 (en) | 2014-03-31 | 2017-07-04 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method for improving energy efficiency of a vehicle based on known route segments |
US9266443B2 (en) | 2014-03-31 | 2016-02-23 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method for adaptive battery charge and discharge rates and limits on known routes |
US9290108B2 (en) | 2014-03-31 | 2016-03-22 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method for adaptive battery temperature control of a vehicle over a known route |
US9008858B1 (en) | 2014-03-31 | 2015-04-14 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method for providing adaptive vehicle settings based on a known route |
US9534919B2 (en) | 2014-07-08 | 2017-01-03 | Honda Motor Co., Ltd. | Method and apparatus for presenting a travel metric |
US9503516B2 (en) | 2014-08-06 | 2016-11-22 | Google Technology Holdings LLC | Context-based contact notification |
US10038443B2 (en) | 2014-10-20 | 2018-07-31 | Ford Global Technologies, Llc | Directional proximity switch assembly |
US9654103B2 (en) | 2015-03-18 | 2017-05-16 | Ford Global Technologies, Llc | Proximity switch assembly having haptic feedback and method |
US9593959B2 (en) * | 2015-03-31 | 2017-03-14 | International Business Machines Corporation | Linear projection-based navigation |
US9548733B2 (en) | 2015-05-20 | 2017-01-17 | Ford Global Technologies, Llc | Proximity sensor assembly having interleaved electrode configuration |
US10102226B1 (en) | 2015-06-08 | 2018-10-16 | Jasmin Cosic | Optical devices and apparatuses for capturing, structuring, and using interlinked multi-directional still pictures and/or multi-directional motion pictures |
DE102015213748B4 (en) * | 2015-07-21 | 2017-07-06 | Preh Car Connect Gmbh | Method for determining a prospective route by means of a navigation system |
US9820108B1 (en) | 2015-10-20 | 2017-11-14 | Allstate Insurance Company | Connected services configurator |
US10277597B2 (en) | 2015-11-09 | 2019-04-30 | Silvercar, Inc. | Vehicle access systems and methods |
US10072938B2 (en) * | 2016-04-29 | 2018-09-11 | Bayerische Motoren Werke Aktiengesellschaft | Method and system for determining and providing a personalized ETA with privacy preservation |
CN107560625A (en) * | 2016-06-30 | 2018-01-09 | 上海博泰悦臻网络技术服务有限公司 | A kind of information automatic reminding method, system and guider |
US10401187B2 (en) * | 2016-07-15 | 2019-09-03 | Here Global B.V. | Method, apparatus and computer program product for a navigation system user interface |
JP6625508B2 (en) * | 2016-10-24 | 2019-12-25 | クラリオン株式会社 | Control device, control system |
US10540705B2 (en) * | 2016-10-31 | 2020-01-21 | Walmart Apollo, Llc | System and medium for checking-in a customer |
US10677599B2 (en) * | 2017-05-22 | 2020-06-09 | At&T Intellectual Property I, L.P. | Systems and methods for providing improved navigation through interactive suggestion of improved solutions along a path of waypoints |
US10801850B2 (en) * | 2017-08-09 | 2020-10-13 | Curbside Inc. | Arrival predictions based on destination specific model |
US10979857B2 (en) * | 2018-05-03 | 2021-04-13 | Curbside Inc. | Content conversion tracking based on location data |
US10902538B2 (en) | 2018-08-21 | 2021-01-26 | GM Global Technology Operations LLC | Efficient ride request |
US11257494B1 (en) * | 2019-09-05 | 2022-02-22 | Amazon Technologies, Inc. | Interacting with a virtual assistant to coordinate and perform actions |
US20230016123A1 (en) * | 2021-07-14 | 2023-01-19 | Motional Ad Llc | Methods and systems for travel time estimation |
CN113830098B (en) * | 2021-11-12 | 2022-04-15 | 比亚迪股份有限公司 | Vehicle driving reminding method and device, storage medium and vehicle |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060229802A1 (en) * | 2004-11-30 | 2006-10-12 | Circumnav Networks, Inc. | User interface system and method for a vehicle navigation device |
WO2007067842A2 (en) * | 2005-12-08 | 2007-06-14 | Motorola Inc. | Predictive navigation |
US20090005964A1 (en) * | 2007-06-28 | 2009-01-01 | Apple Inc. | Intelligent Route Guidance |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5220507A (en) | 1990-11-08 | 1993-06-15 | Motorola, Inc. | Land vehicle multiple navigation route apparatus |
DE10019407A1 (en) * | 2000-04-19 | 2001-10-25 | Bosch Gmbh Robert | Navigation system has sensors that detect faults or driver deterioration and plan emergency rerouting to e.g. car park |
US7203598B1 (en) * | 2000-09-26 | 2007-04-10 | Nortel Networks Limited | Traffic information and automatic route guidance |
US6591188B1 (en) * | 2000-11-01 | 2003-07-08 | Navigation Technologies Corp. | Method, system and article of manufacture for identifying regularly traveled routes |
WO2004077291A1 (en) * | 2003-02-25 | 2004-09-10 | Matsushita Electric Industrial Co., Ltd. | Application program prediction method and mobile terminal |
JP2005031068A (en) * | 2003-06-20 | 2005-02-03 | Matsushita Electric Ind Co Ltd | Location guide device |
US20050222756A1 (en) | 2004-04-05 | 2005-10-06 | Davis Scott B | Methods for displaying a route traveled by mobile users in a communication network |
GB0420095D0 (en) * | 2004-09-10 | 2004-10-13 | Cotares Ltd | Apparatus for and method of predicting a future behaviour of an object |
WO2006040901A1 (en) * | 2004-10-14 | 2006-04-20 | Matsushita Electric Industrial Co., Ltd. | Move destination prediction device and move destination prediction method |
JP2007078573A (en) * | 2005-09-15 | 2007-03-29 | Denso Corp | Route guide apparatus and program |
US8229458B2 (en) * | 2007-04-08 | 2012-07-24 | Enhanced Geographic Llc | Systems and methods to determine the name of a location visited by a user of a wireless device |
US20120221242A1 (en) * | 2009-08-03 | 2012-08-30 | Hans Schulte | Navigation device and a method of operation of a navigation device |
EP2343694B1 (en) * | 2009-12-29 | 2012-03-14 | Research In Motion Limited | System and method of sending an arrival time estimate |
US8392116B2 (en) * | 2010-03-24 | 2013-03-05 | Sap Ag | Navigation device and method for predicting the destination of a trip |
US8538686B2 (en) * | 2011-09-09 | 2013-09-17 | Microsoft Corporation | Transport-dependent prediction of destinations |
US9200918B2 (en) * | 2012-03-09 | 2015-12-01 | Apple Inc. | Intelligent destination recommendations based on historical data |
-
2010
- 2010-10-11 EP EP22167547.3A patent/EP4053506A1/en active Pending
- 2010-10-11 EP EP18189983.2A patent/EP3467439B1/en active Active
- 2010-10-11 US US12/901,794 patent/US9518833B2/en active Active
- 2010-10-11 EP EP10187144.0A patent/EP2341316B1/en active Active
- 2010-10-11 EP EP20211509.3A patent/EP3805705B1/en active Active
- 2010-12-13 CA CA2725193A patent/CA2725193C/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060229802A1 (en) * | 2004-11-30 | 2006-10-12 | Circumnav Networks, Inc. | User interface system and method for a vehicle navigation device |
WO2007067842A2 (en) * | 2005-12-08 | 2007-06-14 | Motorola Inc. | Predictive navigation |
US20090005964A1 (en) * | 2007-06-28 | 2009-01-01 | Apple Inc. | Intelligent Route Guidance |
Also Published As
Publication number | Publication date |
---|---|
EP3805705A1 (en) | 2021-04-14 |
US20110161001A1 (en) | 2011-06-30 |
US9518833B2 (en) | 2016-12-13 |
EP3467439A1 (en) | 2019-04-10 |
EP3805705B1 (en) | 2022-07-20 |
CA2725193A1 (en) | 2011-06-29 |
EP2341316B1 (en) | 2018-08-22 |
EP2341316A1 (en) | 2011-07-06 |
EP3467439B1 (en) | 2020-12-09 |
CA2725193C (en) | 2016-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2341316B1 (en) | System and method of automatic destination selection | |
US9261366B2 (en) | Automatic origin determination for faster route request initiation and resulting system response time | |
EP2341318B1 (en) | Mobile device and method of representing route information | |
US9037405B2 (en) | System and method of sending an arrival time estimate | |
US8433505B2 (en) | System and method for faster detection of traffic jams | |
US7430472B2 (en) | Automated location-intelligent traffic notification service systems and methods | |
KR101920479B1 (en) | Generating jam related segment data | |
US6615130B2 (en) | Real time vehicle guidance and traffic forecasting system | |
EP1840519A2 (en) | Route search method and navigation apparatus | |
CA2724883C (en) | System and method of sending an arrival time estimate | |
CA2725283C (en) | System and method of representing route information | |
JP2004062594A (en) | Method and program for predicting road traffic congestion | |
CA2726562C (en) | Automatic origin determination for faster route request initiation and resulting system response time | |
Kwon et al. | Agent-based on-line traffic condition and information analysis system for wireless V2I communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20220411 |
|
AC | Divisional application: reference to earlier application |
Ref document number: 2341316 Country of ref document: EP Kind code of ref document: P Ref document number: 3467439 Country of ref document: EP Kind code of ref document: P Ref document number: 3805705 Country of ref document: EP Kind code of ref document: P |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G01C 21/36 20060101ALI20230331BHEP Ipc: G01C 21/34 20060101AFI20230331BHEP |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20230705 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
INTG | Intention to grant announced |
Effective date: 20240517 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |