Back to results
US 11,144,301 B2Granted
Over-the-air (OTA) update for firmware of a vehicle component
AssigneeMicron Technology, Inc.
InventorsAlberto Troia, Robert Richard Noel Bielby
Life of this patent
Estimating the term…
Abstract
Executable code is part of an over-the-air (OTA) update received by, for example, a computing device in a vehicle. In one example, the update is a secure over-the-air (SOTA) update of software that is stored in firmware of a vehicle component (e.g., firmware stored in memory of a storage device or a boot device that are mounted in a vehicle).
Claims16
A method comprising:
- collecting data from at least one sensor of a first vehicle;
- providing the data from the sensor of the first vehicle as an input to a computer model stored in memory of the first vehicle;
- determining, based on an output from the computer model, at least one desired characteristic;
- detecting a malfunction on a first computing device of the first vehicle;
- in response to detecting the malfunction, requesting a first update from a second computing device, wherein the requesting includes the first computing device sending the desired characteristic to the second computing device, and the second computing device collects and stores data from sensors of vehicles other than the first vehicle;
- receiving, by the first computing device, the first update from the second computing device, wherein the first update is selected by the second computing device based on the desired characteristic, and the first update includes the data from sensors of vehicles other than the first vehicle;
- determining authenticity of the first update by calculating a digest using a message authentication code, wherein the first update and a secret key are inputs to the message authentication code, and wherein the secret key is stored in memory of the first computing device;
- in response to determining authenticity of the first update, training, using the first update, the computer model;
- and
- updating firmware using the received first update, wherein updating the firmware modifies at least one action performed during execution of the firmware.
7 more elements
A non-transitory computer storage medium storing instructions that, when executed by a controller of a first vehicle, cause the controller to perform a method comprising:
- collecting data from at least one sensor of the first vehicle;
- providing the data from the sensor of the first vehicle as an input to a computer model stored in memory of the first vehicle;
- determining, based on an output from the computer model, at least one desired characteristic;
- detecting a malfunction on the controller;
- in response to detecting the malfunction, requesting a first update from at least one server, wherein the requesting includes the controller sending the desired characteristic to the server, and the server collects and stores data from sensors of vehicles other than the first vehicle;
- receiving, by the first vehicle via wireless transmission, the first update from the server, wherein the server is configured to select the first update based on the desired characteristic, and the first update includes the data from sensors of vehicles other than the first vehicle;
- determining a cryptographic measurement of the first update;
- determining, based on the cryptographic measurement, whether to accept or reject the first update;
- determining to accept the first update;
- in response to determining to accept the first update, training, using the first update, the computer model;
- and
- updating firmware using the received first update, wherein updating the firmware modifies at least one action performed during execution of the firmware.
9 more elements
A system comprising:
- at least one controller of a first vehicle;
- and
- memory containing instructions configured to instruct the at least one controller to:
- collect data from at least one sensor of the first vehicle;
- provide the data from the sensor of the first vehicle as an input to a computer model;
- determine, based on an output from the computer model, at least one desired characteristic;
- send the desired characteristic to a first server;
- detect a malfunction on the controller;
- in response to detecting the malfunction, request a first update from the first server, wherein the first server collects and stores data from sensors of vehicles other than the first vehicle;
- receive, via wireless transmission, the first update from the first server, wherein the first update is selected by the first server based on the desired characteristic, and the first update includes the data from sensors of vehicles other than the first vehicle;
- determine a cryptographic measurement of the first update;
- determine, based on the cryptographic measurement, whether to accept or reject the first update;
- in response to determining to reject the first update, request a second update from a second server;
- receive the second update from the second server;
- in response to receiving the second update, train, using the second update, the computer model;
- and
- update firmware using the received second update, wherein updating the firmware modifies at least one action performed during execution of the firmware.
14 more elements
Dependencies are inferred from the claim text.