WO2007078944A2 - Arrangement for programming an embedded system in a vehicle - Google Patents
Arrangement for programming an embedded system in a vehicle Download PDFInfo
- Publication number
- WO2007078944A2 WO2007078944A2 PCT/US2006/048435 US2006048435W WO2007078944A2 WO 2007078944 A2 WO2007078944 A2 WO 2007078944A2 US 2006048435 W US2006048435 W US 2006048435W WO 2007078944 A2 WO2007078944 A2 WO 2007078944A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- telematics
- embedded system
- control unit
- external programmer
- programming
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44557—Code layout in executable memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0062—Adapting control system settings
- B60W2050/0075—Automatic parameter input, automatic initialising or calibrating means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2556/00—Input parameters relating to data
- B60W2556/45—External transmission of data to or from the vehicle
- B60W2556/55—External transmission of data to or from the vehicle using telemetry
Definitions
- the present invention relates to embedded systems used in a vehicle. More particularly, the present invention relates to apparatus and methods for programming such embedded systems.
- Figure 1 is a schematic block diagram of one embodiment of a system for programming an embedded system in a vehicle.
- Figure 3 is a flow chart illustrating a further plurality of interrelated processes that may be executed by the system of Figure 1 to program an embedded system.
- a system for programming an embedded system disposed in a vehicle comprises an external programmer and a principal control unit fixed in the vehicle.
- the principal control unit is coupled for communicating with the embedded system and the external programmer, and responds to communications received from the external programmer to direct the embedded system to enter a programming mode. While in the programming mode, the embedded system is programmed by the principal control unit in response to communications from the external programmer.
- programming is described in the context of a telematics system in which the principal control unit is a telematics control unit that oversees the operation of a plurality of embedded systems within the telematics system.
- the telematics system 100 includes a telematics control unit 105 that is connected for communication with a plurality of embedded systems 110, 115, and 120. Telematics control unit 105 may be used to oversee and control the operations of each of the embedded systems. For example, telematics control unit
- Communications between the telematics control unit 105 and embedded systems 110, 115, and 120 may be wired (i.e., using electrically conductive wires and/or electro-optical fibers for the like) or wireless.
- Wireless communications that may be used include, without limitation, Bluetooth, WiFi, code division multiple access (CDMA), time division multiple access (TDMA), global system for mobile communications (GSM), Zigbee, and/or any Institute of Electrical and Electronics Engineers (IEEE) 802.XX standard.
- an embedded system may act as a conduit for communications between the telematics control unit 105 and a targeted embedded system.
- Each of the embedded systems 110, 115, and 120 may execute a unique function within the vehicle.
- embedded system 110 may be a network access device or other embedded communication device.
- embedded system 115 may be a global positioning system (GPS) navigation system.
- Embedded system 120 may be used to monitor the vehicle to determine when service and/or maintenance is needed.
- the programs and information used by each of the embedded systems 110, 115, and 120, to execute these functions may be disposed in memory storage 135, 140, and 145 respectively associated with each embedded system.
- Each of the embedded systems may require, for example, programming that is unique to the vehicle type and/or geographical area in which the vehicle is to be used.
- Vehicle type programming of the embedded systems may be implemented at the vehicle factory when access to the various embedded systems is easily obtained. In many instances, however, geographic area programming may require programming of the embedded system at a local dealer. Similarly, vehicle type programming may require programming of the embedded system at a local dealer when the telematics system 100 is installed as an aftermarket product.
- the software programs and information that constitute the programming for one or more of the embedded systems 110, 115, and 120, are communicated to the telematics control unit 105 by an external programmer 125. Communications between the external programmer 125 and the telematics control unit 105 take place over one or more communication links 130.
- Communication link 130 may be in the form of a wired connection or a wireless connection.
- Wireless communications that may be used include, without limitation, Bluetooth, WiFi, CDMA, TDMA, GSM, Zigbee, and/or any IEEE 802.XX standard.
- Figure 2 is a flow chart illustrating a plurality of interrelated processes that may be executed by the system of Figure 1 to program one or more of the embedded systems 110, 115, and 120.
- the external programmer 125 communicates with the telematics control unit 105 by, for example, issuing one or more commands to the telematics control unit 105 over link 130.
- the telematics control unit 105 responds to the issued commands at step 210.
- the telematics control unit 105 directs the embedded system that is to be programmed (the target embedded system) to enter a programming mode.
- the target embedded system With the target embedded system in its programming mode, information and programming for the target embedded system is provided from the external programmer 125 to the target embedded system through the telematics control unit 105. Since programming and programming information is provided through the telematics control unit 105, removal of the target embedded system from its location within the vehicle is not necessarily required. Rather, programming of any of the embedded systems 110, 115, and 120 may take place using a single communications link 130 between the external programmer 125 and the telematics system 100.
- the telematics control unit 105 may control programming of the target embedded system in a number of different manners.
- the external programmer 125 may provide a series of commands over link 130 that instruct the telematics control unit 105 on how control of the programming operation is to proceed.
- the telematics control unit 105 may be statically preprogrammed with the code that is necessary to program the embedded systems under its control.
- the external programmer 125 may provide software code to the telematics control unit 105 during the programming operation that the unit 105 may execute to program a target embedded system.
- Figure 3 is a flow chart illustrating a plurality of interrelated processes that may be executed by the system of Figure 1 to program one or more of the embedded systems 110, 115, and 120, where the external programmer 125 provides software code for execution by the telematics control unit 105 to program the target embedded system.
- the external programmer 125 communicates with the telematics control unit 105 over link 130.
- the telematics control unit 105 responds to the communications from the external programmer 125 at step 310 by directing the target embedded system into its programming mode of operation.
- the external programmer 125 provides executable code to the telematics control unit 105.
- This code is executed by the telematics control unit 105 to control the operation of the target embedded system as the target embedded system is programmed with the programming and information sent by the external programmer 125 at step 320.
- the code provided at step 315 may be loaded into the telematics control unit 105 before the unit 105 directs the target embedded system into the programming mode of operation.
- the manner in which the target embedded system is to be directed into the programming mode may be contained in the code provided at step 315.
- the code that is executed by the telematics control unit 105 causes the telematics control unit 105 to mimic the operation of a standard external programmer that would otherwise be used to directly program the target embedded system in a standalone mode of operation.
- standalone programming generally requires removal of the targeted embedded system from its location within the vehicle and can be quite complex.
- programming of the targeted embedded system using the telematics control unit 105 does not necessarily impose the burden of removing the embedded system from the vehicle for programming.
- the telematics control unit 105 executes the code received from the external programmer 125 to program the target embedded system. Execution of the code may be initiated, for example, through a command sent by the external programmer 125. Alternatively, the code may be self executing. Other manners to direct the telematics control unit 105 to execute the code may also be employed. [0022] While executing the code, the telematics control unit 105 programs the target embedded system in accordance with the communications received from the external programmer 125. For example, the telematics control unit 105 may store programs and/or information received from the external programmer 125 into the memory of the target embedded system. Programs stored into the memory of the target embedded system may be executed by the embedded system to perform the various functions for which the embedded system was designed. Other information stored into the memory may be used by the newly stored programs or by existing programs within the target embedded system.
- the telematics control unit 105 queries the external programmer 125 at step 330 to determine whether the programming operation is complete. If the programming operation is not complete, the process returns to step 320 where the external programmer 125 provides the additional programming and/or information needed to complete programming of the target embedded system. If no further programming and/or information is needed, the telematics control unit 105 places the target embedded system into an execution mode of operation at step 335. In the execution mode of operation, the target embedded system begins operating in accordance with the programming and/or information provided by the external programmer 125 to execute its designated functions. At step 340, the code executed by the telematics control unit 105 to control programming of the target embedded control system may be removed.
- Dynamic provisioning and removal of the executable code in the manner shown in Figure 3 may have a number of advantages in various situations.
- a dedicated memory space may be reused to execute the software code required for programming the different embedded systems 110, 115, and 120, of the telematics system 100. This reduces the memory requirements of the telematics control unit 105 and results in a corresponding memory device and physical space savings.
- the security of the algorithms used to program the embedded systems is improved over static programming methods since the code used to execute the algorithms is only present in the telematics system 100 during programming of one or more of the embedded systems.
- the use of a dynamic system to execute the algorithms used to program the embedded systems facilitates programming of the embedded systems in ways that were not originally contemplated during initial system design and deployment.
- Dynamic provisioning also provides a logical separation between a master software programming entity and the software programming entity itself. This logical separation promotes software encapsulation, divisibility of labor between multiple human resources, and development security. Each of these characteristics is desirable during the software development process.
Abstract
A system for programming an embedded system disposed in a vehicle is set forth. The programming system comprises an external programmer and a principal control unit fixed in the vehicle. The principal control unit is coupled for communicating with the embedded system and the external programmer, and responds to communications received from the external programmer to direct the embedded system to enter a programming mode. While in the programming mode, the embedded system is programmed by the principal control unit in response to communications from the external programmer. In one example, programming is described in the context of a telematics system in which the principal control unit is a telematics control unit that oversees the operation of a plurality of embedded systems within the telematics system.
Description
ARRANGEMENT FOR PROGRAMMING AN EMBEDDED SYSTEM IN A VEHICLE
BACKGROUND OF THE INVENTION 1. Cross Reference to Related Applications.
Loooi] This application is related to applications attorney docket number IS02086TC, entitled "Programming an Embedded System in a Vehicle using Dynamic Provisioning of Program Control Operations," and attorney docket number ISO2088TC, entitled "Communication Device Programming Failure Recoverability Scheme," which are both concurrently filed herewith, and both of which are incorporated herein by reference.
2 . Technical Field.
[0002] The present invention relates to embedded systems used in a vehicle. More particularly, the present invention relates to apparatus and methods for programming such embedded systems.
3. Related Art.
[ooo3] Vehicles increasingly employ embedded systems to execute a variety of vehicle functions. One such area employing embedded systems is the area of automobile network solutions. Many vehicles now include wireless communication services such as navigation and roadside assistance that require dedicated embedded systems. Additionally, embedded systems may be used to monitor vehicle performance and notify a service center or the like of the need for vehicle maintenance.
[ooo4] Programming of these embedded systems is typically accomplished by manually removing the embedded device and connecting it directly to an external programmer. Because of the complexity of these programming operations, programming of the embedded system is often executed at the vehicle device production factory. An embedded system that requires programming that is specific
to a geographic area may be performed at a dealership. However, such programming again requires removal of the embedded device from the vehicle for direct connection to the external programmer.
[0005] The systems currently used to program embedded systems can be somewhat difficult to use for initial programming. The inefficiencies increase when an embedded system must be re-programmed after initial installation. Accordingly, a new system for more efficiently programming embedded systems disposed in a vehicle is desirable.
BRIEF DESCRIPTION OF THE DRAWINGS [ooo6] The invention can be better understood with reference to the following drawings and description. The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention. Moreover, in the figures, like referenced numerals designate corresponding parts throughout the different views.
[0007] Figure 1 is a schematic block diagram of one embodiment of a system for programming an embedded system in a vehicle.
I0008] Figure 2 is a flow chart illustrating a plurality of interrelated processes that may be executed by the system of Figure 1 to program an embedded system.
[0009] Figure 3 is a flow chart illustrating a further plurality of interrelated processes that may be executed by the system of Figure 1 to program an embedded system.
DETAILED DESCRIPTION looio] A system for programming an embedded system disposed in a vehicle is set forth. The programming system comprises an external programmer and a principal control unit fixed in the vehicle. The principal control unit is coupled for communicating with the embedded system and the external programmer, and
responds to communications received from the external programmer to direct the embedded system to enter a programming mode. While in the programming mode, the embedded system is programmed by the principal control unit in response to communications from the external programmer. In one example, programming is described in the context of a telematics system in which the principal control unit is a telematics control unit that oversees the operation of a plurality of embedded systems within the telematics system.
[ooii] Other systems, methods, features and advantages of the invention will be, or will become, apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the invention, and be protected by the following claims.
[ooi2] Figure 1 is a schematic block diagram of one embodiment of a system for programming an embedded system in a vehicle. Although the programming system is suitable for use in a number of different programming situations where an embedded system is connected for communications with a principal control unit, the exemplary programming system and corresponding processes are described in the context of a telematics system 100 that, for example, is fixed within a vehicle.
[0013] As shown, the telematics system 100 includes a telematics control unit 105 that is connected for communication with a plurality of embedded systems 110, 115, and 120. Telematics control unit 105 may be used to oversee and control the operations of each of the embedded systems. For example, telematics control unit
105 may be used to mediate inter-process communications between the embedded systems, schedule various operations associated with each of the embedded systems, or the like. Communications between the telematics control unit 105 and embedded systems 110, 115, and 120, may be wired (i.e., using electrically conductive wires and/or electro-optical fibers for the like) or wireless. Wireless communications that may be used include, without limitation, Bluetooth, WiFi, code division multiple access (CDMA), time division multiple access (TDMA), global system for mobile communications (GSM), Zigbee, and/or any Institute of Electrical and Electronics
Engineers (IEEE) 802.XX standard. Further, an embedded system may act as a conduit for communications between the telematics control unit 105 and a targeted embedded system.
[ooi4] Each of the embedded systems 110, 115, and 120 may execute a unique function within the vehicle. For example, embedded system 110 may be a network access device or other embedded communication device. Similarly, embedded system 115 may be a global positioning system (GPS) navigation system. Embedded system 120 may be used to monitor the vehicle to determine when service and/or maintenance is needed. The programs and information used by each of the embedded systems 110, 115, and 120, to execute these functions may be disposed in memory storage 135, 140, and 145 respectively associated with each embedded system. Other embedded system types that may be implemented include WiFi systems, radio systems, vehicle head units, body modules, engine controllers, power control modules, vehicle system monitors, safety devices, heating, ventilating, and air- conditioning (HVAC) systems, and the like. Telematics control unit 105 may integrate the functionality of the embedded systems 110, 115, and 120 to offer the vehicle operator a wide range of telematics services.
[oois] Each of the embedded systems may require, for example, programming that is unique to the vehicle type and/or geographical area in which the vehicle is to be used. Vehicle type programming of the embedded systems may be implemented at the vehicle factory when access to the various embedded systems is easily obtained. In many instances, however, geographic area programming may require programming of the embedded system at a local dealer. Similarly, vehicle type programming may require programming of the embedded system at a local dealer when the telematics system 100 is installed as an aftermarket product.
[ooi6] In the system shown in Figure 1, the software programs and information that constitute the programming for one or more of the embedded systems 110, 115, and 120, are communicated to the telematics control unit 105 by an external programmer 125. Communications between the external programmer 125 and the telematics control unit 105 take place over one or more communication links 130.
Communication link 130 may be in the form of a wired connection or a wireless connection. Wireless communications that may be used include, without limitation, Bluetooth, WiFi, CDMA, TDMA, GSM, Zigbee, and/or any IEEE 802.XX standard.
[0017] Figure 2 is a flow chart illustrating a plurality of interrelated processes that may be executed by the system of Figure 1 to program one or more of the embedded systems 110, 115, and 120. At step 205 of the illustrated process, the external programmer 125 communicates with the telematics control unit 105 by, for example, issuing one or more commands to the telematics control unit 105 over link 130. The telematics control unit 105 responds to the issued commands at step 210. In accordance with one manner of responding, the telematics control unit 105 directs the embedded system that is to be programmed (the target embedded system) to enter a programming mode. With the target embedded system in its programming mode, information and programming for the target embedded system is provided from the external programmer 125 to the target embedded system through the telematics control unit 105. Since programming and programming information is provided through the telematics control unit 105, removal of the target embedded system from its location within the vehicle is not necessarily required. Rather, programming of any of the embedded systems 110, 115, and 120 may take place using a single communications link 130 between the external programmer 125 and the telematics system 100.
[ooi8] The telematics control unit 105 may control programming of the target embedded system in a number of different manners. For example, the external programmer 125 may provide a series of commands over link 130 that instruct the telematics control unit 105 on how control of the programming operation is to proceed. Alternatively, the telematics control unit 105 may be statically preprogrammed with the code that is necessary to program the embedded systems under its control. Still further, the external programmer 125 may provide software code to the telematics control unit 105 during the programming operation that the unit 105 may execute to program a target embedded system.
[0019] Figure 3 is a flow chart illustrating a plurality of interrelated processes that may be executed by the system of Figure 1 to program one or more of the embedded systems 110, 115, and 120, where the external programmer 125 provides software code for execution by the telematics control unit 105 to program the target embedded system. At step 305 of the exemplary process, the external programmer 125 communicates with the telematics control unit 105 over link 130. The telematics control unit 105 responds to the communications from the external programmer 125 at step 310 by directing the target embedded system into its programming mode of operation. At step 315, the external programmer 125 provides executable code to the telematics control unit 105. This code is executed by the telematics control unit 105 to control the operation of the target embedded system as the target embedded system is programmed with the programming and information sent by the external programmer 125 at step 320. The code provided at step 315 may be loaded into the telematics control unit 105 before the unit 105 directs the target embedded system into the programming mode of operation. For example, the manner in which the target embedded system is to be directed into the programming mode may be contained in the code provided at step 315.
[0020] In one embodiment of the programming system, the code that is executed by the telematics control unit 105 causes the telematics control unit 105 to mimic the operation of a standard external programmer that would otherwise be used to directly program the target embedded system in a standalone mode of operation. As noted above, standalone programming generally requires removal of the targeted embedded system from its location within the vehicle and can be quite complex. In contrast, programming of the targeted embedded system using the telematics control unit 105 does not necessarily impose the burden of removing the embedded system from the vehicle for programming.
[002i] At step 325, the telematics control unit 105 executes the code received from the external programmer 125 to program the target embedded system. Execution of the code may be initiated, for example, through a command sent by the external programmer 125. Alternatively, the code may be self executing. Other manners to direct the telematics control unit 105 to execute the code may also be employed.
[0022] While executing the code, the telematics control unit 105 programs the target embedded system in accordance with the communications received from the external programmer 125. For example, the telematics control unit 105 may store programs and/or information received from the external programmer 125 into the memory of the target embedded system. Programs stored into the memory of the target embedded system may be executed by the embedded system to perform the various functions for which the embedded system was designed. Other information stored into the memory may be used by the newly stored programs or by existing programs within the target embedded system.
[0023] Once the programming and/or information provided by the external programmer 125 is stored in the target embedded system, the telematics control unit 105 queries the external programmer 125 at step 330 to determine whether the programming operation is complete. If the programming operation is not complete, the process returns to step 320 where the external programmer 125 provides the additional programming and/or information needed to complete programming of the target embedded system. If no further programming and/or information is needed, the telematics control unit 105 places the target embedded system into an execution mode of operation at step 335. In the execution mode of operation, the target embedded system begins operating in accordance with the programming and/or information provided by the external programmer 125 to execute its designated functions. At step 340, the code executed by the telematics control unit 105 to control programming of the target embedded control system may be removed.
roo24] Dynamic provisioning and removal of the executable code in the manner shown in Figure 3 may have a number of advantages in various situations. For example, a dedicated memory space may be reused to execute the software code required for programming the different embedded systems 110, 115, and 120, of the telematics system 100. This reduces the memory requirements of the telematics control unit 105 and results in a corresponding memory device and physical space savings. Further, the security of the algorithms used to program the embedded systems is improved over static programming methods since the code used to execute the algorithms is only present in the telematics system 100 during programming of
one or more of the embedded systems. Still further, the use of a dynamic system to execute the algorithms used to program the embedded systems facilitates programming of the embedded systems in ways that were not originally contemplated during initial system design and deployment.
[0025] Dynamic provisioning also provides a logical separation between a master software programming entity and the software programming entity itself. This logical separation promotes software encapsulation, divisibility of labor between multiple human resources, and development security. Each of these characteristics is desirable during the software development process.
[0026] While various embodiments of the invention have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the invention. Accordingly, the invention is not to be restricted except in light of the attached claims and their equivalents.
Claims
1. A system for programming an embedded system disposed in a vehicle comprising: an external programmer; and a principal control unit fixed in the vehicle and coupled for communicating with the embedded system and the external programmer, wherein the principal control unit responds to one or more commands received from the external programmer to direct the embedded system to enter a programming mode, and wherein the embedded system is programmed by the principal control unit in response to communications from the external programmer while the embedded system is in the programming mode.
2. The system of claim 1 wherein the principal control unit and external programmer cooperate to program the embedded system as a cellular telephone.
3. The system of claim 1 wherein the principal control unit and external programmer cooperate to program the embedded system as a network access device.
4. The system of claim 1 wherein the principal control unit executes software code provided from the external programmer to program the embedded system.
5. The system of claim 4 wherein the software code provided from the external programmer to program the embedded system is removed from the principal control unit once programming of the embedded system is completed.
6. The system of claim 1 wherein the one or more communication links facilitating communication between the principal control unit and the external programmer comprises a wireless link.
7. The system of claim 6 wherein the wireless link comprises a wireless connection selected from the group consisting of Bluetooth, WiFi, code division multiple access (CDMA), time division multiple access (TDMA), global system for mobile communications (GSM), Zigbee, and an Institute of Electrical and Electronics Engineers (IEEE) 802.XX standard.
8. A telematics system comprising: an embedded system; a telematics control unit; one or more communication links facilitating communications between the embedded system and the telematics control unit; and one or more communication links facilitating communications between the telematics control unit and an external programmer, wherein the telematics control unit responds to communications received from the external programmer to direct the embedded system to enter a programming mode, and wherein the embedded system is programmed by the telematics control unit in response to communications from the external programmer while the embedded system is in the programming mode.
9. The telematics system of claim 8 wherein the embedded system comprises at least one of the following: an embedded communication device, a network access device, or a cellular telephone.
10. The telematics system of claim 8 wherein the telematics control unit executes one or more programs provided from the external programmer to program the embedded system.
11. The telematics system of claim 10 wherein the one or more programs provided from the external programmer to program the embedded system are removed from the telematics control unit once programming of the embedded system is completed.
12. The telematics system of claim 8 wherein the one or more communication links facilitating communication between the telematics control unit and the external programmer comprises a wireless link.
13. The telematics system of claim 10 wherein the wireless link comprises a wireless connection selected from the group consisting of Bluetooth, WiFi, code division multiple access (CDMA), time division multiple access (TDMA), global system for mobile communications (GSM), Zigbee, and an Institute of Electrical and Electronics Engineers (IEEE) 802.XX standard.
14. A telematics system in a vehicle comprising: embedded system means for wirelessly communicating with an external link to execute a vehicle task; telematics control means for controlling operation of a plurality of embedded devices, including the embedded system means; and external programming means communicating with the telematics control means for commanding the telematics control means to direct the embedded system means into a programming mode of operation, wherein the embedded system means is programmed by the telematics control means in response to communications from the external programming means while the embedded system means is in the programming mode.
15. The telematics system of claim 14 wherein the embedded system means comprises at least one of the following: an embedded communication device, a network access device, or a cellular telephone.
16. The telematics system of claim 14 wherein the telematics control means executes one or more programs provided from the external programmer means to program the embedded system means.
17. The telematics system of claim 16 wherein the one or more programs provided from the external programmer means to program the embedded system means are removed from the telematics control means once programming of the embedded system means is completed.
18. The telematics system of claim 14 wherein the telematics control means and the external programmer means communicate over a wireless link.
19. The telematics system of claim 18 wherein the wireless link comprises a wireless connection selected from the group consisting of Bluetooth, WiFi, code division multiple access (CDMA), time division multiple access (TDMA), global system for mobile communications (GSM), Zigbee, and an Institute of Electrical and Electronics Engineers (IEEE) 802.XX standard.
20. A method of programming an embedded system in a telematics system having a telematics control unit, the method comprising: connecting an external programmer for communication with the telematics control unit; issuing commands from the external programmer to the telematics control unit; responding to the commands by having the telematics control unit direct the embedded system to enter a programming mode; providing programming for the embedded system from the external programmer to the telematics control unit; and storing the programming received by the telematics control unit into the embedded system while the embedded system is in the programming mode.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US31931105A | 2005-12-28 | 2005-12-28 | |
US11/319,311 | 2005-12-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2007078944A2 true WO2007078944A2 (en) | 2007-07-12 |
WO2007078944A3 WO2007078944A3 (en) | 2008-12-11 |
Family
ID=38228771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2006/048435 WO2007078944A2 (en) | 2005-12-28 | 2006-12-19 | Arrangement for programming an embedded system in a vehicle |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2007078944A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9600266B2 (en) | 2012-12-05 | 2017-03-21 | Bendix Commercial Vehicle Systems Llc | Methods and apparatus for updating software components in coordination with operational modes of a motor vehicle |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442553A (en) * | 1992-11-16 | 1995-08-15 | Motorola | Wireless motor vehicle diagnostic and software upgrade system |
US6505780B1 (en) * | 2001-12-05 | 2003-01-14 | Koninklijke Philips Electronics N.V. | Personalize vehicle settings using RF tags |
US6687587B2 (en) * | 2001-12-21 | 2004-02-03 | General Motors Corporation | Method and system for managing vehicle control modules through telematics |
US6975612B1 (en) * | 1999-06-14 | 2005-12-13 | Sun Microsystems, Inc. | System and method for providing software upgrades to a vehicle |
US7162339B2 (en) * | 2004-08-31 | 2007-01-09 | General Motors Corporation | automated vehicle calibration and testing system via telematics |
-
2006
- 2006-12-19 WO PCT/US2006/048435 patent/WO2007078944A2/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442553A (en) * | 1992-11-16 | 1995-08-15 | Motorola | Wireless motor vehicle diagnostic and software upgrade system |
US6975612B1 (en) * | 1999-06-14 | 2005-12-13 | Sun Microsystems, Inc. | System and method for providing software upgrades to a vehicle |
US6505780B1 (en) * | 2001-12-05 | 2003-01-14 | Koninklijke Philips Electronics N.V. | Personalize vehicle settings using RF tags |
US6687587B2 (en) * | 2001-12-21 | 2004-02-03 | General Motors Corporation | Method and system for managing vehicle control modules through telematics |
US7162339B2 (en) * | 2004-08-31 | 2007-01-09 | General Motors Corporation | automated vehicle calibration and testing system via telematics |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9600266B2 (en) | 2012-12-05 | 2017-03-21 | Bendix Commercial Vehicle Systems Llc | Methods and apparatus for updating software components in coordination with operational modes of a motor vehicle |
Also Published As
Publication number | Publication date |
---|---|
WO2007078944A3 (en) | 2008-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11036484B2 (en) | Software update management | |
US20170344355A1 (en) | Updating vehicle system modules | |
US8559910B2 (en) | OTA initiation method for telematics system in 2G GSM/3G WCDMA network | |
US11084462B2 (en) | Method for modifying safety and/or security-relevant control devices in a motor vehicle | |
US7502353B2 (en) | Device for accessing a vehicle control system via a wireless link | |
CN104427490B (en) | Method and apparatus motor vehicle control device maintained by mobile communication | |
US9179488B2 (en) | Vehicle telematics connection retry | |
US20180024826A1 (en) | Vehicle region-specific software updates distribution | |
US8660549B2 (en) | Avoiding battery depletion of a mobile device | |
CN103226065B (en) | Intelligent automobile performance monitoring system based on onboard automatic diagnosis system | |
US20100082559A1 (en) | Method of managing a schedule-based software package update | |
US10103996B2 (en) | Dynamic status update solicitation | |
US20180081670A1 (en) | Prioritization of updates for over-the-air distribution | |
US20220024471A1 (en) | Monitoring apparatus, monitoring program, and monitoring method | |
CN106656565A (en) | Automobile controller remote update method, device and system | |
US9338731B2 (en) | Vehicle telematics unit management | |
US8797958B2 (en) | Method of wirelessly communicating data between vehicles and central facilities | |
US20170196026A1 (en) | Controlling wireless subscription selection of a uicc with multiple cellular profiles | |
US20090247153A1 (en) | Automatic updating of a preferred roaming list stored in a vehicle telematics unit | |
US20180063882A1 (en) | Method of telematics connectivity management | |
US8934917B1 (en) | Opportunistic data connectivity | |
CN110018842A (en) | Remote vehicle task management | |
CN110245033A (en) | Vehicle control system and control method for vehicle | |
US20120244850A1 (en) | Meid-based paging to reach de-activated telematics modules | |
US9224250B2 (en) | Vehicle telematics unit lockout recovery |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 06845815 Country of ref document: EP Kind code of ref document: A2 |