Efficient over-the-air software update for a connected vehicle
First Claim
1. A method comprising:
- determining that an observed behavior of a vehicle application that is installed in a connected vehicle fails to conform to a desired behavior of the vehicle application as specified by runtime rules data, wherein the connected vehicle includes an engine and a battery;
receiving, by the connected vehicle, a monitor module via a wireless network; and
installing the monitor module in the vehicle application so that an object code of the vehicle application is modified to include the monitor module;
wherein the monitor module includes a software patch that is operable to correct an error that caused the observed behavior of the vehicle application to fail to correspond to the desired behavior of the vehicle application as specified by runtime rules data;
wherein the monitor module includes user input data describing user instructions for configuring the monitor module to generate the software patch;
wherein the vehicle application is an element of the connected vehicle;
wherein the monitor module is received and installed in the connected vehicle while the connected vehicle is powered off and the battery of the connected vehicle is not being charged; and
wherein the monitor module is written in an aspect language so that the connected vehicle receives the monitor module from the wireless network while also leaving a sufficient charge in the battery to start the engine.
1 Assignment
0 Petitions
Accused Products
Abstract
The disclosure includes a system and method for providing a wireless software update for a connected vehicle. The connected vehicle includes a processor, an engine, a battery, a non-transitory memory storing a vehicle application and a wireless antenna that is powered by the battery and operable to receive a monitor module from a wireless network while the battery is not being charged. The processor is communicatively coupled to the battery, the wireless antenna and the non-transitory memory. The monitor module is written in an aspect language and includes a software patch for the vehicle application. The wireless antenna receives the monitor module from the wireless network while leaving a sufficient charge in the battery to enable the battery to start the engine. The processor installs the monitor module in the vehicle application stored in the non-transitory memory. Installation of the monitor module provides the software patch for the vehicle application.
-
Citations
19 Claims
-
1. A method comprising:
-
determining that an observed behavior of a vehicle application that is installed in a connected vehicle fails to conform to a desired behavior of the vehicle application as specified by runtime rules data, wherein the connected vehicle includes an engine and a battery; receiving, by the connected vehicle, a monitor module via a wireless network; and installing the monitor module in the vehicle application so that an object code of the vehicle application is modified to include the monitor module; wherein the monitor module includes a software patch that is operable to correct an error that caused the observed behavior of the vehicle application to fail to correspond to the desired behavior of the vehicle application as specified by runtime rules data; wherein the monitor module includes user input data describing user instructions for configuring the monitor module to generate the software patch; wherein the vehicle application is an element of the connected vehicle; wherein the monitor module is received and installed in the connected vehicle while the connected vehicle is powered off and the battery of the connected vehicle is not being charged; and wherein the monitor module is written in an aspect language so that the connected vehicle receives the monitor module from the wireless network while also leaving a sufficient charge in the battery to start the engine.
-
-
2. A method comprising:
-
determining that an observed behavior of a vehicle application that is installed in a connected vehicle fails to conform to a desired behavior of the vehicle application as specified by runtime rules data, wherein the connected vehicle includes an engine and a battery; receiving, by the connected vehicle, a monitor module with monitor data that describes the monitor module via a wireless network, wherein the monitor module includes a software patch that is operable to correct an error that caused the observed behavior of the vehicle application to fail to correspond to the desired behavior, the monitor data includes user input data describing user instructions for configuring the monitor module to generate the software patch; and installing the monitor module in the vehicle application so that an object code of the vehicle application is modified to include the monitor module; wherein the monitor module with the monitor data is received and installed in the connected vehicle while the connected vehicle is powered off and the battery of the connected vehicle is not being charged; and wherein the monitor module is written in an aspect language so that the connected vehicle receives the monitor module with the monitor data from the wireless network while also leaving a sufficient charged in the battery to start the engine. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
analyzing a set of runtime rules for a vehicle application to generate the monitor module for the vehicle application, wherein the set of runtime rules describes desired behavior of the vehicle application; receiving user input data describing user instructions for configuring the monitor module to generate a software patch that is operable to correct an error that caused observed behavior of the vehicle application to fail to correspond to the desired behavior of the vehicle application; distributing the monitor module with monitor data describing the monitor module to a connected vehicle via a wireless network, wherein the connected vehicle includes an engine and a battery; and installing the monitor module in the connected vehicle to modify an object code of the vehicle application to include the monitor module so that the observed behavior of the vehicle application conforms to the desired behavior of the vehicle application; wherein the monitor module with the monitor data is received and installed in the connected vehicle while the connected vehicle is powered off and the battery of the connected vehicle is not being charged; and wherein the monitor module is written in an aspect language so that the connected vehicle receives the monitor module and the monitor data from the wireless network while also leaving a sufficient charge in the battery to start the engine. - View Dependent Claims (11, 12, 13)
-
-
14. A method comprising:
-
receiving, by a wireless antenna of a connected vehicle, a runtime monitoring software and digital data that describes the runtime monitoring software that is operable to patch a vehicle application stored in a non-transitory memory of the connected vehicle, wherein the runtime monitoring software includes a patch that is configured based on user input, and the connected vehicle includes an engine and a battery; applying the patch to correct an error that caused an observed behavior of the vehicle application to fail to correspond to desired behavior of the vehicle application; installing the runtime monitoring software in the vehicle application of the connected vehicle by modifying an object code of the vehicle application to include the runtime monitoring software in the vehicle application of the connected vehicle; wherein the runtime monitoring software configures the vehicle application so that the observed behavior of the vehicle application conforms to the desired behavior of the vehicle application as specified by runtime rules data; wherein the runtime monitoring software is received and installed in the vehicle application of the connected vehicle while the connected vehicle is powered off and the battery of the connected vehicle is not being charged; and wherein the runtime monitoring software with the digital data is written in an aspect language in a file size that is configured based on an engine size of the connected vehicle so that the battery of the connected vehicle has sufficient charge to start the connected vehicle after receiving and installing the runtime monitoring software in the vehicle application.
-
-
15. A method comprising:
-
analyzing, by a processor of a computing device, a specification of a vehicle application to generate a runtime monitoring software for the vehicle application; receiving user input data describing user instructions for configuring the runtime monitoring software to generate a software patch that is operable to correct an error that caused observed behavior of the vehicle application to fail to correspond to desired behavior of the vehicle application; transmitting the runtime monitoring software with digital data describing the runtime monitoring software to a connected vehicle via a wireless network, wherein the connected vehicle includes an engine and a battery; installing the runtime monitoring software in the connected vehicle by modifying an object code of the vehicle application to include the runtime monitoring software, wherein the runtime monitoring software modifies and configures the vehicle application so that the observed behavior of the vehicle application conforms to the desired behavior of the vehicle application as specified by runtime rules data; wherein the runtime monitoring software with the digital data is transmitted and installed in the vehicle application of the connected vehicle while the connected vehicle is powered off and the battery of the connected vehicle is not being charged; and wherein the runtime monitoring software with the digital data is written in an aspect language in a file size that is configured based on an engine size of the connected vehicle so that the battery of the connected vehicle has sufficient charge to start the connected vehicle after receiving and installing the runtime monitoring software in the vehicle application. - View Dependent Claims (16, 17)
-
-
18. A connected vehicle comprising:
-
an engine; a battery; a non-transitory memory storing a vehicle application; a wireless antenna that is powered by the battery and operable to receive a monitor module from a wireless network, the monitor module being configured based on user input data describing user instructions for configuring the monitor module to generate a software patch, the software patch is operable to correct an error that caused observed behavior of the vehicle application to fail to correspond to desired behavior; and a processor installs the monitor module in the vehicle application stored in the non-transitory memory, and the monitor module provides the software patch for the vehicle application; wherein the processor is communicatively coupled to the battery, the wireless antenna and the non-transitory memory; wherein the wireless antenna receives a monitor module from the wireless network and the processor installs the monitor module in the vehicle application while the battery is not being charged and the engine is powered off; and wherein the monitor module is written in an aspect language and includes the software patch so that after the wireless antenna receives the monitor module from the wireless network and the processor installs the monitor module in the vehicle application while also leaving a sufficient charge in the battery to enable the battery to start the engine. - View Dependent Claims (19)
-
Specification