RE-PROGRAMMING VEHICLE MODULES

A system and method of re-programming one or more modules at a vehicle includes deciding to re-program an infotainment head unit (IHU) or one or more vehicle system modules on a vehicle; accessing a Wi-Fi signal using the IHU; receiving software at the IHU from a remotely-located computer via the Wi-Fi signal; and re-programming the one or more vehicle system modules or the IHU with the received software using the IHU.

DETAILED DESCRIPTION OF THE ILLUSTRATED EMBODIMENT(S)

The system and method described below involves re-programming software at a vehicle using an infotainment head unit (IHU). Generally speaking, an IHU is a device located in the vehicle that provides audio content, visual content, or both to vehicle occupants in the vehicle. In the past, vehicles came equipped with radios but as the number of features and variety of content available to vehicle occupants has increased, the IHU has supplanted the vehicle radio. Often, the IHU is communicatively linked to other devices on the vehicle via a bus and includes processing capabilities, a memory device, and a visual display. In some vehicles, new software or software updates are wirelessly sent to a vehicle telematics unit that can receive the software and re-program devices at the vehicle. However, the IHU can also re-program vehicle system modules and other devices located on the vehicle. Vehicles can include the IHU in addition to the vehicle telematics unit. In this configuration, the vehicle telematics unit has the ability to communicate via a wireless carrier system and provide a wireless Wi-Fi “hotspot” to other wireless devices nearby the vehicle. And the IHU can include the ability to communicate using short-range wireless techniques and access remotely-located computers (e.g., servers) via the telematics unit-provided “hotspot.” With the access to remotely-located computers, the IHU can request software updates from these computers using the vehicle telematics unit as a conduit. However, the IHU can use its own processing power and computer-executable directions to control software reprogramming.

With reference toFIG. 1, there is shown an operating environment that comprises a mobile vehicle communications system10and that can be used to implement the method disclosed herein. Communications system10generally includes a vehicle12, one or more wireless carrier systems14, a land communications network16, a computer18, and a call center20. It should be understood that the disclosed method can be used with any number of different systems and is not specifically limited to the operating environment shown here. Also, the architecture, construction, setup, and operation of the system10and its individual components are generally known in the art. Thus, the following paragraphs simply provide a brief overview of one such communications system10; however, other systems not shown here could employ the disclosed method as well.

Vehicle12is depicted in the illustrated embodiment as a passenger car, but it should be appreciated that any other vehicle including motorcycles, trucks, sports utility vehicles (SUVs), recreational vehicles (RVs), marine vessels, aircraft, etc., can also be used. Some of the vehicle electronics28is shown generally inFIG. 1and includes a telematics unit30, a microphone32, one or more pushbuttons or other control inputs34, an audio system36, a visual display38, and a GPS module40as well as a number of vehicle system modules (VSMs)42. Some of these devices can be connected directly to the telematics unit such as, for example, the microphone32and pushbutton(s)34, whereas others are indirectly connected using one or more network connections, such as an entertainment bus44or a communications bus46. Examples of suitable network connections include a controller area network (CAN), a media oriented system transfer (MOST), a local interconnection network (LIN), a local area network (LAN), and other appropriate connections such as Ethernet or others that conform with known ISO, SAE and IEEE standards and specifications, to name but a few. In some implementations the entertainment bus44uses a network connection that permits faster speeds/larger bandwidth than the communications bus46. For instance, the entertainment bus44can use the MOST-type bus whereas the vehicle bus46can use the CAN-type bus.

According to one embodiment, telematics unit30utilizes cellular communication according to either GSM or CDMA standards and thus includes a standard cellular chipset50for voice communications like hands-free calling, a wireless modem for data transmission, an electronic processing device52, one or more digital memory devices54, and a dual antenna56. It should be appreciated that the modem can either be implemented through software that is stored in the telematics unit and is executed by processor52, or it can be a separate hardware component located internal or external to telematics unit30. The modem can operate using any number of different standards or protocols such as EVDO, CDMA, GPRS, and EDGE. Wireless networking between the vehicle and other networked devices can also be carried out using telematics unit30and dual antenna56. For this purpose, telematics unit30can be configured to communicate wirelessly according to one or more wireless protocols, such as any of the IEEE 802.11 protocols, WiMAX, or Bluetooth. It is possible that the vehicle telematics unit30can host a Wi-Fi “hotspot” using its wireless communication capabilities such that the unit30acts as a wireless router for other wireless devices via antenna56. The vehicle telematics unit30can establish a wireless local area network (WLAN) for wireless devices within a short range of the vehicle12to use for accessing the Internet. When used for packet-switched data communication such as TCP/IP, the telematics unit can be configured with a static IP address or can set up to automatically receive an assigned IP address from another device on the network such as a router or from a network address server.

Telematics unit30can be used to provide a diverse range of vehicle services that involve wireless communication to and/or from the vehicle. Such services include: turn-by-turn directions and other navigation-related services that are provided in conjunction with the GPS-based vehicle navigation module40; airbag deployment notification and other emergency or roadside assistance-related services that are provided in connection with one or more collision sensor interface modules such as a body control module (not shown); and diagnostic reporting using one or more diagnostic modules. Infotainment-related services can be provided at the vehicle12whereby music, webpages, movies, television programs, videogames and/or other information is downloaded by an infotainment head unit module37(discussed in more detail below) and is stored for current or later playback. The above-listed services are by no means an exhaustive list of all of the capabilities of vehicle telematics unit30and/or infotainment head unit module37, but are simply an enumeration of some of the services that the unit30or infotainment head unit37are capable of offering. Furthermore, it should be understood that at least some of the aforementioned modules could be implemented in the form of software instructions saved internal or external to telematics unit30, they could be hardware components located internal or external to telematics unit30, or they could be integrated and/or shared with each other or with other systems located throughout the vehicle, to cite but a few possibilities. In the event that the modules are implemented as VSMs42located external to telematics unit30, they could utilize entertainment bus44to exchange data and commands with the infotainment head unit37.

Apart from the audio system36and GPS module40, the vehicle12can include other vehicle system modules (VSMs)42in the form of electronic hardware components that are located throughout the vehicle and typically receive input from one or more sensors and use the sensed input to perform diagnostic, monitoring, control, reporting and/or other functions. Each of the VSMs42is preferably connected by communication bus44to the other VSMs, as well as to the telematics unit30, and can be programmed to run vehicle system and subsystem diagnostic tests. As examples, one VSM42can be an engine control module (ECM) that controls various aspects of engine operation such as fuel ignition and ignition timing, another VSM42can be a powertrain control module that regulates operation of one or more components of the vehicle powertrain, another VSM42can be a body control module that governs various electrical components located throughout the vehicle, like the vehicle's power door locks and headlights, and yet another VSM42can be a rear-seat entertainment center that displays images and plays sound to the rear of the driver and passenger seats. According to one embodiment, the engine control module is equipped with on-board diagnostic (OBD) features that provide myriad real-time data, such as that received from various sensors including vehicle emissions sensors, and provide a standardized series of diagnostic trouble codes (DTCs) that allow a technician to rapidly identify and remedy malfunctions within the vehicle. As is appreciated by those skilled in the art, the above-mentioned VSMs are only examples of some of the modules that may be used in vehicle12, as numerous others are also possible.

Vehicle electronics28also includes a number of vehicle user interfaces that provide vehicle occupants with a means of providing and/or receiving information, including microphone32, pushbuttons(s)34, audio system36, infotainment head unit37, and visual display38. As used herein, the term ‘vehicle user interface’ broadly includes any suitable form of electronic device, including both hardware and software components, which is located on the vehicle and enables a vehicle user to communicate with or through a component of the vehicle. Microphone32provides audio input to the telematics unit to enable the driver or other occupant to provide voice commands and carry out hands-free calling via the wireless carrier system14. For this purpose, it can be connected to an on-board automated voice processing unit utilizing human-machine interface (HMI) technology known in the art. The pushbutton(s)34allow manual user input into the telematics unit30to initiate wireless telephone calls and provide other data, response, or control input. Separate pushbuttons can be used for initiating emergency calls versus regular service assistance calls to the call center20. Audio system36provides audio output to a vehicle occupant and can be a dedicated, stand-alone system or part of the primary vehicle audio system. According to the particular embodiment shown here, audio system36is operatively coupled to both communication bus44and entertainment bus46and can provide AM, FM and satellite radio, CD, DVD and other multimedia functionality.

The functionality of the audio system36can be provided in conjunction with or the infotainment head unit37described above. That is, the infotainment head unit37can be integrated with the audio system36as it is shown inFIG. 1such that it is included as part of the audio system36and operatively coupled to both the communication bus44and entertainment bus46. However, it should be appreciated that the infotainment head unit37can also be a stand-alone unit that is operatively coupled to both the communication bus44and the entertainment bus46. The infotainment head unit37can include a processor, a memory device, and an antenna39for connecting with a Wi-Fi hotspot. Visual display38is preferably a graphics display, such as a touch screen on the instrument panel or a heads-up display reflected off of the windshield, and can be used to provide a multitude of input and output functions. Various other vehicle user interfaces can also be utilized, as the interfaces ofFIG. 1are only an example of one particular implementation.

Wireless carrier system14is preferably a cellular telephone system that includes a plurality of cell towers70(only one shown), one or more mobile switching centers (MSCs)72, as well as any other networking components required to connect wireless carrier system14with land network16. Each cell tower70includes sending and receiving antennas and a base station, with the base stations from different cell towers being connected to the MSC72either directly or via intermediary equipment such as a base station controller. Cellular system14can implement any suitable communications technology, including for example, analog technologies such as AMPS, or the newer digital technologies such as CDMA (e.g., CDMA2000) or GSM/GPRS. As will be appreciated by those skilled in the art, various cell tower/base station/MSC arrangements are possible and could be used with wireless system14. For instance, the base station and cell tower could be co-located at the same site or they could be remotely located from one another, each base station could be responsible for a single cell tower or a single base station could service various cell towers, and various base stations could be coupled to a single MSC, to name but a few of the possible arrangements.

Computer18can be one of a number of computers accessible via a private or public network such as the Internet. Each such computer18can be used for one or more purposes, such as a web server accessible by the vehicle via telematics unit30and wireless carrier14. Other such accessible computers18can be, for example: a service center computer where diagnostic information and other vehicle data can be uploaded from the vehicle via the telematics unit30; a client computer used by the vehicle owner or other subscriber for such purposes as accessing or receiving vehicle data or to setting up or configuring subscriber preferences or controlling vehicle functions; or a third party repository to or from which vehicle data or other information is provided, whether by communicating with the vehicle12or call center20, or both. A computer18can also be used for providing Internet connectivity such as DNS services or as a network address server that uses DHCP or other suitable protocol to assign an IP address to the vehicle12.

Call center20is designed to provide the vehicle electronics28with a number of different system back-end functions and, according to the exemplary embodiment shown here, generally includes one or more switches80, servers82, databases84, live advisors86, as well as an automated voice response system (VRS)88, all of which are known in the art. These various call center components are preferably coupled to one another via a wired or wireless local area network90. Switch80, which can be a private branch exchange (PBX) switch, routes incoming signals so that voice transmissions are usually sent to either the live adviser86by regular phone or to the automated voice response system88using VoIP. The live advisor phone can also use VoIP as indicated by the broken line inFIG. 1. VoIP and other data communication through the switch80is implemented via a modem (not shown) connected between the switch80and network90. Data transmissions are passed via the modem to server82and/or database84. Database84can store account information such as subscriber authentication information, vehicle identifiers, profile records, behavioral patterns, and other pertinent subscriber information. Data transmissions may also be conducted by wireless systems, such as 802.11x, GPRS, and the like. Although the illustrated embodiment has been described as it would be used in conjunction with a manned call center20using live advisor86, it will be appreciated that the call center can instead utilize VRS88as an automated advisor or, a combination of VRS88and the live advisor86can be used.

Turning now toFIG. 2, there is shown a method200of re-programming one or more modules at the vehicle12. The method200begins at step210by providing a Wi-Fi signal using the vehicle telematics unit30. As discussed above, the vehicle12can act as a wireless “hotspot” or “Wi-Fi hotspot” using its vehicle telematics unit30. When a wireless device, such as a smartphone, a laptop, another vehicle telematics unit, or the infotainment head unit (IHU)37is within communication range of the hotspot, then the wireless device can send and receive data to/from the Internet through the hotspot offered by the vehicle telematics unit30. The vehicle telematics unit30can establish a data link with the Internet via the cell tower70and the wireless carrier system14. While the “hotspot” has been described as “Wi-Fi,” it should be appreciated that any of the short-range wireless protocols (e.g., IEEE 802.11) used for sending packetized data can be implemented as a hotspot. The method200proceeds to step220.

At step220, it is decided to re-program the IHU37or one or more VSMs42on the vehicle12. This decision can be made at the IHU37. And the decision can be made based on information received from a source located away from the vehicle12or the decision can be made based on a periodic trigger occurring at the vehicle12that can cause the vehicle telematics unit30and/or IHU37to decide to re-program. That is, the vehicle12can receive information at the vehicle telematics unit30indicating that a software update is available. This information can be sent from the back office (e.g., computer18) or the call center20and alert the vehicle telematics unit30that a software update is available. In response to receiving this information, the vehicle telematics unit30can pass this information to the IHU37, which can decide whether to begin the re-programming process. In one implementation, the vehicle telematics unit30can receive information from a back office, such as computer18, indicating that a software update is available. This information can be simple, such as an alert that informs the vehicle telematics unit30that software updates exist. Or the information can be more complex, such as data that identifies a new software version number, which can be compared with an existing software version used by the IHU37or VSMs42. This information can include other data in addition to the software version number. For example, the information can identify the IP address of the computer18where software updates or new software can be obtained, or time periods during which the new software should be accessed. Other information is possible and these are merely examples. In any event, the information, such as the alert or the new software version number, can be sent from the vehicle telematics unit30to the IHU37via the Wi-Fi link or the communications bus46, which can ultimately make the decision whether or not to proceed with the method200.

Apart from receiving information at the vehicle telematics unit30that can be used to decide to re-program, it is also possible that the vehicle telematics unit30can store a trigger that is activated in response to the passage of time. When such a trigger occurs, the vehicle telematics unit30can attempt to obtain software updates from the computer18. The vehicle telematics unit30can receive information that indicates whether or not software updates exist. Use of the trigger can facilitate a periodic check to see if software updates exist at the computer18. The software update may be applicable to one or more VSMs42, the IHU37, or both. The method200proceeds to step230.

At step230, the Wi-Fi signal is accessed using the IHU37. Once the decision is made to re-program VSMs42and/or the IHU37, re-programming can be carried out using the vehicle telematics unit30and the IHU37. The IHU37can receive information indicating that software exists or identifying software updates and in response it can access the Wi-Fi hotspot generated by the vehicle telematics unit30. As can be appreciated fromFIG. 1, the IHU37can use an antenna39for communicating via short-range wireless protocols. As part of re-programming, the IHU37can establish a short-range wireless link with the Wi-Fi hotspot of the vehicle telematics unit30. Once the short-range wireless link has been established, the IHU37can use its processing capabilities and antenna39to generate a request for software and/or software updates that passes through the antenna56and the vehicle telematics unit30and ultimately arriving at the computer18. The request for software or software updates can be sent to the back office, such as the computer18, from the IHU37through a secured link (such as a secure sockets layer (SSL) or a virtual private network (VPN)) that is set up between the computer18and the IHU37using the telematics unit30. The method200proceeds to step240.

At step240, software is received at the IHU37from the computer18via the Wi-Fi signal provided using the vehicle telematics unit30. After the computer18receives the request for software or software updates, the particular software can be identified at the computer18and sent to the IHU37via the land network16, wireless network14, and vehicle telematics unit30. Like the request for software or software updates, the software itself can be sent through the secured link between the computer18and the IHU37. After wirelessly receiving the software at the vehicle telematics unit30, the software can be sent over the wireless link established at the vehicle12as part of the Wi-Fi hotspot between the telematics unit30and the IHU37. The method200proceeds to step240.

At step250, the IHU37or one or more VSMs42are re-programmed with the received software using the IHU37. After receiving the software/software updates at the IHU37via the Wi-Fi hotspot, the IHU37can re-program or re-flash itself and/or carry out re-programming or re-flashing of the VSMs42with the received software/software updates. The IHU37can communicate software received from the Wi-Fi hotspot to the VSMs42over the entertainment bus44. As noted above, the entertainment bus44can be a MOST bus that permits relatively fast data transfer speeds when compared with the communication bus46that is often a CAN bus. After the IHU37receives the updated software, the re-programming process can be directed by the IHU37without assistance from the vehicle telematics unit30. The method200then ends.