CO-PENDING APPLICATIONS The following applications are being filed concurrently with the present applications. The entire contents of each of the following applications is hereby incorporated herein by reference: A NAVIGATION DEVICE AND METHOD FOR STORING AND UTILIZING A LAST DOCKED LOCATION (Attorney docket number 06P057US16) filed on even date herewith; A METHOD AND DEVICE FOR UTILIZING A SELECTABLE LOCATION MARKER FOR RELATIONAL DISPLAY OF POINT OF INTEREST ENTRIES (Attorney docket number 06P057US15) filed on even date herewith; A METHOD AND DEVICE FOR MAP SWITCHING (Attorney docket number 06P057US14) filed on even date herewith; A NAVIGATION DEVICE AND METHOD FOR CONVEYING INFORMATION RELATIONSHIPS (Attorney docket number 06P057US20) filed on even date herewith; A NAVIGATION DEVICE, SERVER, AND METHOD FOR COMMUNICATING THEREBETWEEN (Attorney docket number 06P057US17) filed on even date herewith; A METHOD AND DEVICE FOR PROVIDING PREFERENCES DURING ROUTE TRAVEL CALCULATION ON A NAVIGATION DEVICE (Attorney docket number 06P057US13) filed on even date herewith; A NAVIGATION DEVICE AND METHOD OF ACTIVATING INFORMATION ON A NAVIGATION DEVICE (Attorney docket number 06P057US12) filed on even date herewith; AUTOMATIC DISCOVERY OF WIRELESS COMMUNICATION SETTINGS (Attorney docket number 06P057US04) filed on even date herewith; A NAVIGATION DEVICE AND METHOD OF IMPLEMENTING AUDIO FEATURES IN A NAVIGATION DEVICE (Attorney docket number 06P057US21) filed on even date herewith; METHODS OF CUSTOMIZING NAVIGATION SYSTEMS (Attorney docket number 06P057US03) filed on even date herewith; and A NAVIGATION DEVICE AND METHOD FOR SEQUENTIAL MAP DISPLAY (Attorney docket number 06P057US22) filed on even date herewith.
PRIORITY STATEMENT The present application hereby claims priority under 35 U.S.C. § 119 on each of Great Britain Patent Application numbers 0604709.6 filed Mar. 8, 2006; 0604708.8 filed Mar. 8, 2006; 0604710.4 filed Mar. 8, 2006; 0604704.7 filed Mar. 8, 2006; and 0604706.2 filed Mar. 8, 2006, the entire contents of each of which is hereby incorporated herein by reference.
FIELD The present application generally relates to navigation methods and devices.
BACKGROUND Navigation devices and methods are known to aid users in determining a route of travel between a current location of the navigation device and an input/selected travel destination. The navigation device stores information in memory including map information and route of travel calculation algorithms to aid the navigation device in determining an appropriate route of travel.
A problem facing navigation devices is that routes of travel are constantly changing. New roads are being built, roads are being torn down and alternative routes of travel are constantly being provided. Further, a user typically purchases a navigation device with the software regarding not only map information which needs to be updated at a later date to account for new road construction, etc., but map information which further typically includes only geographic information for one area such as the United States and Europe. While a user can decide to purchase information for a different area if the user moves from the United States to Europe for example, it is difficult, tedious, and expensive for a user to constantly purchase the latest updated algorithmic and map information to constantly update his/her navigation device.
SUMMARY In at least one embodiment, the present application is directed to a method of updating information on a navigation device in an automatic manner. In at least one embodiment, the method includes detecting a connection with a remote navigation device; automatically providing information to update the navigation device upon detecting the connection; and varying a display of the navigation device upon completion of a successful automatic update of information on the navigation device.
In at least one other embodiment, the present application is directed to a method of updating information on a navigation device in an automatic manner. The method includes establishing a connection with a remote server; automatically receiving updated information from the remote server upon establishing the connection; and displaying an indication of a successful update on the navigation device upon successfully receiving the updated information.
In at least one other embodiment, the present application is directed to a method of updating information on a navigation device in a non-automatic manner. The method includes establishing a connection between the navigation device and a remote server; requesting information to update the navigation device after the connection to the remote server is established; and updating information of the navigation device upon receiving the requested information from the remote server.
In at least one other embodiment, the present application is directed to a navigation device. The navigation device includes means for establishing a connection between the navigation device and a remote server; means for requesting information to update the navigation device after the connection to the remote server is established; and means for updating information of the navigation device upon receiving the requested information from the remote server.
In at least one other embodiment, the present application is directed to a navigation device. The navigation device includes means for establishing a connection with a remote server; means for automatically receiving updated information from the remote server upon establishing the connection; and means for displaying an indication of a successful update on the navigation device upon successfully receiving the updated information.
BRIEF DESCRIPTION OF THE DRAWINGS The present application will be described in more detail below by using example embodiments, which will be explained with the aid of the drawings, in which:
FIG. 1 illustrates an example view of a Global Positioning System (GPS);
FIG. 2 illustrates an example block diagram of electronic components of a navigation device of an embodiment of the present application;
FIG. 3 illustrates an example block diagram of a server, navigation device and connection therebetween of an embodiment of the present application;
FIG. 4 illustrates an example of a message display after navigation device/server connection is established;
FIG. 5 illustrates an example main menu for display;
FIG. 6 illustrates an example of an “options” display;
FIG. 7 illustrates an example of a display of a list of regions;
FIG. 8 illustrates an example of a display of a list of countries;
FIG. 9 illustrates an example of an alphabetical entry display;
FIG. 10 illustrates an example of a list of selectable options;
FIG. 11 illustrates an example display;
FIG. 12 illustrates an example of a message display;
FIG. 13 illustrates an example of a request to purchase; and
FIG. 14 illustrates an example of an alphabetical entry display.
DETAILED DESCRIPTION OF THE EXAMPLE EMBODIMENTS The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present invention. As used herein, the singular forms “a”, “an”, and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “includes” and/or “including”, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
In describing example embodiments illustrated in the drawings, specific terminology is employed for the sake of clarity. However, the disclosure of this patent specification is not intended to be limited to the specific terminology so selected and it is to be understood that each specific element includes all technical equivalents that operate in a similar manner.
Referencing the drawings, wherein like reference numerals designate identical or corresponding parts throughout the several views, example embodiments of the present patent application are hereafter described. Like numbers refer to like elements throughout. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
FIG. 1 illustrates an example view of Global Positioning System (GPS), usable by navigation devices, including the navigation device of embodiments of the present application. Such systems are known and are used for a variety of purposes. In general, GPS is a satellite-radio based navigation system capable of determining continuous position, velocity, time, and in some instances direction information for an unlimited number of users.
Formerly known as NAVSTAR, the GPS incorporates a plurality of satellites which work with the earth in extremely precise orbits. Based on these precise orbits, GPS satellites can relay their location to any number of receiving units.
The GPS system is implemented when a device, specially equipped to receive GPS data, begins scanning radio frequencies for GPS satellite signals. Upon receiving a radio signal from a GPS satellite, the device determines the precise location of that satellite via one of a plurality of different conventional methods. The device will continue scanning, in most instances, for signals until it has acquired at least three different satellite signals (noting that position is not normally, but can be determined, with only two signals using other triangulation techniques). Implementing geometric triangulation, the receiver utilizes the three known positions to determine its own two-dimensional position relative to the satellites. This can be done in a known manner. Additionally, acquiring a fourth satellite signal will allow the receiving device to calculate its three dimensional position by the same geometrical calculation in a known manner. The position and velocity data can be updated in real time on a continuous basis by an unlimited number of users.
As shown inFIG. 1, the GPS system is denoted generally byreference numeral100. A plurality ofsatellites120 are in orbit about theearth124. The orbit of eachsatellite120 is not necessarily synchronous with the orbits ofother satellites120 and, in fact, is likely asynchronous. AGPS receiver140, usable in embodiments of navigation devices of the present application, is shown receiving spread spectrum GPS satellite signals160 from thevarious satellites120.
The spread spectrum signals160, continuously transmitted from eachsatellite120, utilize a highly accurate frequency standard accomplished with an extremely accurate atomic clock. Eachsatellite120, as part of itsdata signal transmission160, transmits a data stream indicative of thatparticular satellite120. It is appreciated by those skilled in the relevant art that theGPS receiver device140 generally acquires spread spectrum GPS satellite signals160 from at least threesatellites120 for theGPS receiver device140 to calculate its two-dimensional position by triangulation. Acquisition of an additional signal, resulting insignals160 from a total of foursatellites120, permits theGPS receiver device140 to calculate its three-dimensional position in a known manner.
FIG. 2 illustrates an example block diagram of electronic components of anavigation device200 of an embodiment of the present application, in block component format. It should be noted that the block diagram of thenavigation device200 is not inclusive of all components of the navigation device, but is only representative of many example components.
Thenavigation device200 is located within a housing (not shown). The housing includes aprocessor210 connected to aninput device220 and adisplay screen240. Theinput device220 can include a keyboard device, voice input device, and/or any other known input device utilized to input information; and thedisplay screen240 can include any type of display screen such as an LCD display, for example. In at least one embodiment of the present application, theinput device220 anddisplay screen240 are integrated into an integrated input and display device, including a touchpad or touchscreen input wherein a user need only touch a portion of thedisplay screen240 to select one of a plurality of display choices or to activate one of a plurality of virtual buttons.
In addition, other types ofoutput devices250 can also include, including but not limited to, an audible output device. Asoutput device250 can produce audible information to a user of thenavigation device200, it is equally understood thatinput device240 can also include a microphone and software for receiving input voice commands as well.
In thenavigation device200,processor210 is operatively connected to and set to receive input information frominput device240 via aconnection225, and operatively connected to at least one ofdisplay screen240 andoutput device250, viaoutput connections245, to output information thereto. Further, theprocessor210 is operatively connected tomemory230 viaconnection235 and is further adapted to receive/send information from/to input/output (I/O)ports270 viaconnection275, wherein the I/O port270 is connectible to an I/O device280 external to thenavigation device200. The external I/O device270 may include, but is not limited to an external listening device such as an earpiece for example. The connection to I/O device280 can further be a wired or wireless connection to any other external device such as a car stereo unit for hands-free operation and/or for voice activated operation for example, for connection to an ear piece or head phones, and/or for connection to a mobile phone for example, wherein the mobile phone connection may be used to establish a data connection between thenavigation device200 and the internet or any other network for example, and/or to establish a connection to a server via the internet or some other network for example.
Thenavigation device200, in at least one embodiment, may establish a “mobile” network connection with theserver302 via a mobile device400 (such as a mobile phone, PDA, and/or any device with mobile phone technology) establishing a digital connection (such as a digital connection via known Bluetooth technology for example). Thereafter, through its network service provider, the mobile device400 can establish a network connection (through the internet for example) with aserver302. As such, a “mobile” network connection is established between the navigation device200 (which can be, and often times is mobile as it travels alone and/or in a vehicle) and theserver302 to provide a “real-time” or at least very “up to date” gateway for information.
The establishing of the network connection between the mobile device400 (via a service provider) and another device such as theserver302, using the internet410 for example, can be done in a known manner. This can include use of TCP/IP layered protocol for example. The mobile device400 can utilize any number of communication standards such as CDMA, GSM, WAN, etc.
As such, an internet connection may be utilized which is achieved via data connection, via a mobile phone or mobile phone technology within thenavigation device200 for example. For this connection, an internet connection between theserver302 and thenavigation device200 is established. This can be done, for example, through a mobile phone or other mobile device and a GPRS (General Packet Radio Service)-connection (GPRS connection is a high-speed data connection for mobile devices provided by telecom operators; GPRS is a method to connect to the internet.
Thenavigation device200 can further complete a data connection with the mobile device400, and eventually with the internet410 andserver302, via existing Bluetooth technology for example, in a known manner, wherein the data protocol can utilize any number of standards, such as the GSRM, the Data Protocol Standard for the GSM standard, for example.
Thenavigation device200 may include its own mobile phone technology within thenavigation device200 itself (including an antenna for example, wherein the internal antenna of thenavigation device200 can further alternatively be used). The mobile phone technology within thenavigation device200 can include internal components as specified above, and/or can include an insertable card, complete with necessary mobile phone technology and/or an antenna for example. As such, mobile phone technology within thenavigation device200 can similarly establish a network connection between thenavigation device200 and theserver302, via the internet410 for example, in a manner similar to that of any mobile device400.
For GRPS phone settings, the Bluetooth enabled device may be used to correctly work with the ever changing spectrum of mobile phone models, manufacturers, etc., model/manufacturer specific settings may be stored on thenavigation device200 for example. The data stored for this information can be updated in a manner discussed in any of the embodiments, previous and subsequent.
FIG. 2 further illustrates an operative connection between theprocessor210 and an antenna/receiver250 viaconnection255, wherein the antenna/receiver250 can be a GPS antenna/receiver for example. It will be understood that the antenna and receiver designated byreference numeral250 are combined schematically for illustration, but that the antenna and receiver may be separately located components, and that the antenna may be a GPS patch antenna or helical antenna for example.
Further, it will be understood by one of ordinary skill in the art that the electronic components shown inFIG. 2 are powered by power sources (not shown) in a conventional manner. As will be understood by one of ordinary skill in the art, different configurations of the components shown inFIG. 2 are considered within the scope of the present application. For example, in one embodiment, the components shown inFIG. 2 may be in communication with one another via wired and/or wireless connections and the like. Thus, the scope of thenavigation device200 of the present application includes a portable orhandheld navigation device200.
In addition, the portable orhandheld navigation device200 ofFIG. 2 can be connected or “docked” in a known manner to a motorized vehicle such as a car or boat for example. Such anavigation device200 is then removable from the docked location for portable or handheld navigation use.
FIG. 3 illustrates an example block diagram of aserver302 and anavigation device200 of the present application, via ageneric communications channel318, of an embodiment of the present application. Theserver302 and anavigation device200 of the present application can communicate when a connection viacommunications channel318 is established between theserver302 and the navigation device200 (noting that such a connection can be a data connection via mobile device, a direct connection via personal computer via the internet, etc.).
Theserver302 includes, in addition to other components which may not be illustrated, aprocessor304 operatively connected to amemory306 and further operatively connected, via a wired orwireless connection314, to a massdata storage device312. Theprocessor304 is further operatively connected totransmitter308 andreceiver310, to transmit and send information to and fromnavigation device200 viacommunications channel318. The signals sent and received may include data, communication, and/or other propagated signals. Thetransmitter308 andreceiver310 may be selected or designed according to the communications requirement and communication technology used in the communication design for thenavigation system200. Further, it should be noted that the functions oftransmitter308 andreceiver310 may be combined into a signal transceiver.
Server302 is further connected to (or includes) amass storage device312, noting that themass storage device312 may be coupled to theserver302 viacommunication link314. Themass storage device312 contains a store of navigation data and map information, and can again be a separate device from theserver302 or can be incorporated into theserver302.
Thenavigation device200 is adapted to communicate with theserver302 throughcommunications channel318, and includes processor, memory, etc. as previously described with regard toFIG. 2, as well astransmitter320 andreceiver322 to send and receive signals and/or data through thecommunications channel318, noting that these devices can further be used to communicate with devices other thanserver302. Further, thetransmitter320 andreceiver322 are selected or designed according to communication requirements and communication technology used in the communication design for thenavigation device200 and the functions of thetransmitter320 andreceiver322 may be combined into a single transceiver.
Software stored inserver memory306 provides instructions for theprocessor304 and allows theserver302 to provide services to thenavigation device200. One service provided by theserver302 involves processing requests from thenavigation device200 and transmitting navigation data from themass data storage312 to thenavigation device200. According to at least one embodiment of the present application, another service provided by theserver302 includes processing the navigation data using various algorithms for a desired application and sending the results of these calculations to thenavigation device200.
Thecommunication channel318 generically represents the propagating medium or path that connects thenavigation device200 and theserver302. According to at least one embodiment of the present application, both theserver302 andnavigation device200 include a transmitter for transmitting data through the communication channel and a receiver for receiving data that has been transmitted through the communication channel.
Thecommunication channel318 is not limited to a particular communication technology. Additionally, thecommunication channel318 is not limited to a single communication technology; that is, thechannel318 may include several communication links that use a variety of technology. For example, according to at least one embodiment, thecommunication channel318 can be adapted to provide a path for electrical, optical, and/or electromagnetic communications, etc. As such, thecommunication channel318 includes, but is not limited to, one or a combination of the following: electric circuits, electrical conductors such as wires and coaxial cables, fiber optic cables, converters, radio-frequency (rf) waves, the atmosphere, empty space, etc. Furthermore, according to at least one various embodiment, thecommunication channel318 can include intermediate devices such as routers, repeaters, buffers, transmitters, and receivers, for example.
In at least one embodiment of the present application, for example, thecommunication channel318 includes telephone and computer networks. Furthermore, in at least one embodiment, thecommunication channel318 may be capable of accommodating wireless communication such as radio frequency, microwave frequency, infrared communication, etc. Additionally, according to at least one embodiment, thecommunication channel318 can accommodate satellite communication.
The communication signals transmitted through thecommunication channel318 include, but are not limited to, signals as may be required or desired for given communication technology. For example, the signals may be adapted to be used in cellular communication technology such as Time Division Multiple Access (TDMA), Frequency Division Multiple Access (FDMA), Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), etc. Both digital and analogue signals can be transmitted through thecommunication channel318. According to at least one embodiment, these signals may be modulated, encrypted and/or compressed signals as may be desirable for the communication technology.
Themass data storage312 includes sufficient memory for the desired navigation applications. Examples of themass data storage312 may include magnetic data storage media such as hard drives for example, optical storage media such as CD-Roms for example, charged data storage media such as flash memory for example, molecular memory, etc.
According to at least one embodiment of the present application, theserver302 includes a remote server accessible by thenavigation device200 via a wireless channel. According to at least one other embodiment of the application, theserver302 may include a network server located on a local area network (LAN), wide area network (WAN), virtual private network (VPN), etc.
According to at least one embodiment of the present application, theserver302 may include a personal computer such as a desktop or laptop computer, and thecommunication channel318 may be a cable connected between the personal computer and thenavigation device200. Alternatively, a personal computer may be connected between thenavigation device200 and theserver302 to establish an internet connection between theserver302 and thenavigation device200. Alternatively, a mobile telephone or other handheld device may establish a wireless connection to the internet, for connecting thenavigation device200 to theserver302 via the internet.
Thenavigation device200 may be provided with information from theserver302 via information downloads which may be periodically updated upon a user connectingnavigation device200 to theserver302 and/or may be more dynamic upon a more constant or frequent connection being made between theserver302 andnavigation device200 via a wireless mobile connection device and TCP/IP connection for example. For many dynamic calculations, theprocessor304 in theserver302 may be used to handle the bulk of the processing needs, however,processor210 ofnavigation device200 can also handle much processing and calculation, oftentimes independent of a connection to aserver302.
Themass storage device312 connected to theserver302 can include volumes more cartographic and route data than that which is able to be maintained on thenavigation device200 itself, including maps, etc. Theserver302 may process, for example, the majority of the devices of anavigation device200 which travel along the route using a set of processing algorithms. Further, the cartographic and route data stored inmemory312 can operate on signals (e.g. GPS signals), originally received by thenavigation device200.
In an embodiment of the present application, from the perspective of theserver302 for example, a method of updating information on anavigation device200 includes detecting a connection with aremote navigation device200; automatically providing information to update thenavigation device200 upon detecting the connection; and varying a display on thedisplay screen240 of thenavigation device200 upon completion of the successful automatic update of information on thenavigation device200. Further, in an embodiment of the present application directed to automatic updating from the perspective of thenavigation device200, a method includes establishing a connection with aremote server302; requesting information to update thenavigation device200 after the connection to theremote server302 is established; and updating information of thenavigation device200 upon receiving the requested information from theremote server302. In another embodiment, from the perspective of thenavigation device200, a method of updating information on anavigation device200 includes establishing a connection with aremote server302; automatically receiving updated information from theremote server302 upon establishing the connection; and displaying an indication of a successful update on thenavigation device200 upon successfully receiving the updated information.
In a first embodiment of the present application, theserver302 can be configured to communicate information automatically tonavigation device200, through an established communications channel orconnection318. By doing so, updated information can easily and automatically be provided to anavigation device200 in an easy and efficient manner. Further, as will be discussed in a later embodiment, theserver302 can distinguish between information to be automatically sent (such as update, including extended ephemeris data for example) and information which is new information and available for purchase by a user of thenavigation device200.
Ephemeris data is used by the GPS receiver (the navigation device200) to calculate the positions of the satellites. This data can be received from the satellites themselves but that is a long and slow process (it can take up to 10 minutes) because of the very low bandwidth between the receiver and the satellites. To speed this process up, this data can be calculated off board for about a week in advance and stored on a server. This pre-calculated data is then sent from the server to the navigation device that will use this data instead of downloading it from the satellites. The whole purpose of this data is to shorten the time thenavigation device200 needs to obtain its current position after power on.
By providing updated information automatically to anavigation device200, only a centrally locatedserver302 need be updated to provide information to a plurality ofnavigation devices200. As such, a user of anavigation device200 does not need to constantly replace software on their device, and instead need just establish acommunications channel318 with aserver302 to add updated information to theirnavigation device200. From the perspective of theserver302, again only one centrally located device, namelyserver302, need be updated to send updated information to a plurality ofnavigation devices200.
In at least one embodiment of the present application, no user interaction need be involved in the process, as information to update the navigation device happens automatically. For example, upon detecting a connection with aremote navigation device200, and using received handshake information received from theparticular navigation device200 connected to theserver302, theserver302 may then identify theparticular navigation device200 from previously stored information regarding a plurality of navigation devices200 (stored inmemory306 ormass data storage312 for example). The processor504server302 can then determine which information (map information for example) is stored on thatparticular navigation device302, and can then determine whether or not such map information (for example) stored on theparticular navigation device200 is the most recently updated version of information (such as map information for example) currently stored, inmass data storage312 for example (further or alternatively, the processor504 of theserver302 can determine if particular stored information, such as map information for example, has been recently updated and thus is marked, in some manner, for download). If such map information (for example) stored on theparticular navigation device200 is not the most recently updated version of information, then theserver302 can begin the automatic download process.
As indicated above, in one example embodiment, the automatic update process may be implemented for the ephemeris data. However, this is merely exemplary, and the automatic update process of the embodiment described above should not be so limited.
In addition, in at least one embodiment, an expiry date may be associated with the data, wherein the user of thenavigation device200 may begin the download process if the data has expired, for example. In this case, theserver302 always sends the latest version without checking databases.
In another example embodiment, the process is used whenever a user of thenavigation device200 has bought a new map, or more generally may be entitled to some new content. In such an instance, theserver302 may download this data automatically upon detection. For this, the whole described procedure is used: handshaking, checking databases, downloading data, activation of data, maybe even installing of data (for example, activating the newly downloaded voice or automatically showing new POI on map).
Thereafter, a message can be sent to and displayed on thenavigation device200 as shown inFIG. 4 for example (from server302), indicating the automatic providing of an information update to thenavigation device200, such as downloading information fromremote server302 for example, is about to occur. This will permit the automatic downloading of information to thenavigation device200 in a quick and efficient manner.
The information can include but is not limited to extended ephemeris (EE) to Extended ephemeris data may contain, for example, pre-calculated ephemeris for GPS satellites in view to allow GPS receivers such as antenna/receiver250 withinnavigation device200 for example, to operate with enhanced performance (e.g. to calculate its current position faster). This is only one example of the type of information that can be automatically downloaded to thenavigation device200 upon detecting a connection between theserver302 and aremote navigation device200. Alternatively, other types of information can be updated. For example, this can include but is not limited to specifically formatted pages from theremote server302.
Before the download process starts for providing information to update thenavigation device200, a message may be displayed on thenavigation device200, displaying the file size of the file that will be added. Further, there can also be an error message if thenavigation device200 does not have enough space to store the data inmemory230. Once the information is provided, adisplay240 of thenavigation device200 can be varied to display a message during the updating of the information, and/or upon completion of a successful automatic update. For example, a change in color, such as a blue screen for example, may be displayed on thedisplay240 of thenavigation device200 to indicate a successful update. Further, the blue screen may include a display of a message upon completion of a successful update, announcing a successful download for example.
It should be noted that connection of theremote navigation device200 with aserver302 can be established in any number of ways, including but not limited to a connection via the internet. The connection can further be a data connection utilizing a mobile phone or other mobile device for example.
Further, the updating method of the present application can be in the form of a subscription service that a user signs up for. For example, a software browser may be included with or added to thenavigation device200, for connecting to the remote server and for receiving information from the remote server to update information on thenavigation device200. Again, the updated information can include extended ephemeris data, map information, etc. Unlike known map updating or map downloading services, the flow of providing information to update the navigation device can be controlled at theserver302, which opens the possibility for additional changes/additions without having to contact the user.
For example, this may be implemented in any number of ways. In a first embodiment, as soon as the user of thenavigation device200 opens a connection, a background process on thenavigation device200 queries theserver302 if there is new data (this is done for ephemeris, for example, but could be implemented more generally for all data). In another embodiment, thenavigation device200 tries to be connected continuously by opening a push channel, and whenever theserver302 wants to send information to thenavigation device200, it sends a notification to the navigation device200 (e.g. an indication that there is data to download) and again, thenavigation device200 starts downloading the available data. This may be done for server messages, traffic information, etc. Server messages can include, but are not limited to notifications to the customers of the navigation devices200 (like an SMS) sent by theserver302 to a specific customer, a specific type ofnavigation device200, to all customers, etc.
From the perspective of thenavigation device200, an embodiment of the present application is directed to a method of updating information on thenavigation device200. The method of this embodiment includes establishing a connection with a remote server302 (via the internet, TCP/IP, etc.); automatically receiving updated information from theremote server302 upon establishing the connection; and displaying (viadisplay240 for example, which may be integrated with input device220) an indication of a successful update on thenavigation device200 upon successfully receiving the updated information. Again, the received information can include extended ephemeris data, and the display can include varying the color of the display upon completion of a successful update and/or displaying a message upon completion of a successful update.
It should be noted that the method of any of the embodiments of the present application can be implemented in the form of anavigation device200 itself, and/or in the form of a computer readable medium including program segments for, when executed on the processor of a navigation device, causing the navigation device to implement an embodiment of any of the aforementioned methods.
From the perspective of thenavigation device200, another embodiment of the present application is directed to a method of updating information on thenavigation device200. The method of this embodiment includes establishing a connection between thenavigation device200 and aremote server302; requesting information to update thenavigation device200 after the connection to theremote server302 is established; and updating information of thenavigation device200 upon receiving the requested information from theremote server302.
By control of download information from theserver302, additional optional information can be provided to a user of thenavigation device200, for purchase, for example.FIG. 5 provides an example of adisplay screen240 of a main menu which can be displayed on anavigation device200 upon establishing a connection between thenavigation device200 and aremote server302. Thedisplay screen240 ofFIG. 5 includes an option for selecting “TomTom Plus Services,” which can include additional services or additional information which can be provided to the user for an additional charge, for example.
Upon selecting the displayed “TomTom Plus Services” ofFIG. 5 (via selection of a touch screen of an integrated input and display device, integratingdisplay screen240 andinput device220 of thenavigation device200, for example), another display screen can be presented on thenavigation device200 as shown inFIG. 6 for example. This display screen provides the user with a plurality of options from which to select, including a plurality of options to download a map, an update, a new map, a new voice, etc. Therefore, upon establishing a connection between thenavigation device200 and a remote server302 (viacommunications channel318 for example), thenavigation device200 can request information to update thenavigation device200. This request can include selecting, from a plurality of selections displayed onnavigation device200 such as those shown inFIG. 6 for example, information to download.
Upon the user then selecting a particular option shown inFIG. 6 for example, such as “new map download” for example, a list of regions may be displayed as shown inFIG. 7 for example. Once a region is displayed such as North America or Europe for example, a list of countries may then be displayed as shown inFIG. 8. Thereafter, once a country is selected, a city may be selected via alphabetical entries shown inFIG. 9 and/or selection as shown inFIG. 10. Once this occurs, information in thenavigation device200 may be updated upon receiving the requested information from theremote server302. It should be noted that the sequence ofFIGS. 5-10 is merely exemplary, as any type of selection process for selecting a map or any other information download can be used and is encompassed within at least one embodiment of the present application.
In addition, by establishing this connection with the server and this ability to request information, theserver302 is also in a position to provide new services, new maps, new voices, etc. to thenavigation device200. The displayed upon selections can include at least one of a map and new map, including selections of at least one of a region, country, and a city, for example. Thus, in the case that theserver302 detects that the user of thenavigation device200 owns a particular map as selected inFIG. 10, the map can be updated on the navigation device for “no charge.” As such, information on thenavigation device200 can be updated upon receiving the requested new map or other information from theremote server302.
However, in another embodiment of the present application, a display on thenavigation device200 can include selectable options to purchase or not purchase the requested information. For example, if theserver302 detects that the user of thenavigation device200 wants a map which was not previously owned, a message can be sent to the user requesting the user of thenavigation device200 to purchase the new map.
For example, in an embodiment of the present application,FIG. 11 illustrates a situation where theserver302 detects that the map information requested is a map which was previously owned. As shown inFIG. 11, the display can indicate “city map download” and can further provide an indication that the map is owned. The display can provide the size of the map to download, a prompt to the user indicating whether or not the user would like to download the map, etc. If the user would like to download the map, the user can select yes, and if not, the user can select no. If the user decides the select yes, and decides to receive the city map download,navigation device200 can be updated by downloading the map. A message can be displayed during the download and/or after completion of a successful update as shown inFIG. 12 for example. Further, a color of the display of thenavigation device200 can be varied upon completion of a successful update in a manner similar to that previously described. Further, the received information can include an updated map, a new map, a new voice, extended ephemeris data, etc.
Alternatively, if theserver302 determines that the user of thenavigation device200 does not own the map, selectable options to purchase or not purchase the information can be displayed on thenavigation device200, as shown inFIG. 13 for example. The display can indicate that the map is not previously owned, and can provide a request to purchase the map as shown inFIG. 13. If the user decides that he or she would like to purchase the map, then thenavigation device200 can further display a request for information to complete the purchase upon selection of the option to purchase.
For example, as shown inFIG. 14, if a user selects yes, the user may be prompted for a password to confirm the purchase. Thereafter, if the password fails for some reason, and/or if payment cannot be received in any other matter, an indication can be provided to the user. Similarly, if the password is successful and if payment is successful, an indication can be provided to the user prior to proceeding with the download of information.
As previously described, in any of the embodiments of the present application, a software browser may be included in thenavigation device200, for connecting to theremote server302 and for receiving information from theremote server302 to update information on thenavigation device200. The software browser can be used to control one or both of automatic providing of information to update thenavigation device200 upon detection of a connection between anavigation device200 and aserver302; and/or for requesting information to update thenavigation device200 after connection to aremote server302 is established, based upon payment for new information and/or receipt of an update of existing information at “no charge,” for example.
The methods of at least one embodiment expressed above may be implemented as a computer data signal embodied in the carrier wave or propagated signal that represents a sequence of instructions which, when executed by a processor (such asprocessor304 ofserver302, and/orprocessor210 ofnavigation device200 for example) causes the processor to perform a respective method. In at least one other embodiment, at least one method provided above may be implemented above as a set of instructions contained on a computer readable or computer accessible medium, such as one of the memory devices previously described, for example, to perform the respective method when executed by a processor or other computer device. In varying embodiments, the medium may be a magnetic medium, electronic medium, optical medium, etc.
Further, any of the above-described example embodiments of methods of the present invention may be embodied in the form of an apparatus. For example, any of the aforementioned methods may be embodied in the form of a navigation device, including, but not limited to, any of the structure for performing the methodology illustrated in the drawings.
Even further, any of the aforementioned methods may be embodied in the form of a program. The program may be stored on a computer readable media and is adapted to perform any one of the aforementioned methods when run on a computer device (a device including a processor). Thus, the storage medium or computer readable medium, is adapted to store information and is adapted to interact with a data processing facility or computer device to perform the method of any of the above mentioned embodiments.
The storage medium may be a built-in medium installed inside a computer device main body or a removable medium arranged so that it can be separated from the computer device main body. Examples of the built-in medium include, but are not limited to, rewriteable non-volatile memories, such as ROMs and flash memories, and hard disks. Examples of the removable medium include, but are not limited to, optical storage media such as CD-ROMs and DVDs; magneto-optical storage media, such as MOs; magnetism storage media, including but not limited to floppy disks (trademark), cassette tapes, and removable hard disks; media with a built-in rewriteable non-volatile memory, including but not limited to memory cards; and media with a built-in ROM, including but not limited to ROM cassettes; etc. Furthermore, various information regarding stored images, for example, property information, may be stored in any other form, or it may be provided in other ways.
As one of ordinary skill in the art will understand upon reading the disclosure, the electronic components of thenavigation device200 and/or the components of theserver302 can be embodied as computer hardware circuitry or as a computer readable program, or as a combination of both.
The system and method of embodiments of the present application include software operative on the processor to perform at least one of the methods according to the teachings of the present application. One of ordinary skill in the art will understand, upon reading and comprehending this disclosure, the manner in which a software program can be launched from a computer readable medium in a computer based system to execute the functions found in the software program. One of ordinary skill in the art will further understand the various programming languages which may be employed to create a software program designed to implement and perform at least one of the methods of the present application.
The programs can be structured in an object-orientation using an object-oriented language including but not limited to JAVA, Smalltalk, C++, etc., and the programs can be structured in a procedural-orientation using a procedural language including but not limited to COBAL, C, etc. The software components can communicate in any number of ways that are well known to those of ordinary skill in the art, including but not limited to by application of program interfaces (API), interprocess communication techniques, including but not limited to report procedure call (RPC), common object request broker architecture (CORBA), Component Object Model (COM), Distributed Component Object Model (DCOM), Distributed System Object Model (DSOM), and Remote Method Invocation (RMI). However, as will be appreciated by one of ordinary skill in the art upon reading the present application disclosure, the teachings of the present application are not limited to a particular programming language or environment.
The above systems, devices, and methods have been described by way of example and not by way of limitation with respect to improving accuracy, processor speed, and ease of user interaction, etc. with anavigation device200.
Further, elements and/or features of different example embodiments may be combined with each other and/or substituted for each other within the scope of this disclosure and appended claims.
Still further, any one of the above-described and other example features of the present invention may be embodied in the form of an apparatus, method, system, computer program and computer program product. For example, of the aforementioned methods may be embodied in the form of a system or device, including, but not limited to, any of the structure for performing the methodology illustrated in the drawings.
Example embodiments being thus described, it will be obvious that the same may be varied in many ways. Such variations are not to be regarded as a departure from the spirit and scope of the present invention, and all such modifications as would be obvious to one skilled in the art are intended to be included within the scope of the following claims.