Self-healing learning system for one or more controllers
First Claim
1. A non-transitory computer readable medium including instructions that, when executed by at least one processor, cause the at least one processor to perform operations for automatically providing software changes, comprising:
- identifying controller activity data from a first controller;
identifying a software vulnerability affecting the first controller, the software vulnerability being identified based on a deviation between the identified controller activity data and expected controller activity data;
identifying a controller software change based on the identified software vulnerability, wherein the identified controller software change is configured to adjust the first controller from executing a first version of controller software to a second version of controller software;
sending, to the first controller, a multi-dimensional delta file configured based on the identified controller software change;
configuring the first version of controller software on the first controller to become non-executable;
determining that a memory of the first controller is utilized above a threshold;
deleting content from the memory based on the determination that the memory is utilized above the threshold;
identifying a second controller determined to be similar to the first controller; and
sending the multi-dimensional delta file to the second controller based on the determined similarity.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed embodiments relate to automatically providing updates to at least one vehicle. Operations may include receiving, at a server remote from the at least one vehicle, Electronic Control Unit (ECU) activity data from the at least one vehicle, the ECU activity data corresponding to actual operation of the ECU in the at least one vehicle; determining, at the server and based on the ECU activity data, a software vulnerability affecting the at least one vehicle, the software vulnerability being determined based on a deviation between the received ECU activity data and expected ECU activity data; identifying, at the server, an ECU software update based on the determined software vulnerability; and sending, from the server, a delta file configured to update software on the ECU with a software update corresponding to the identified ECU software update.
21 Citations
16 Claims
-
1. A non-transitory computer readable medium including instructions that, when executed by at least one processor, cause the at least one processor to perform operations for automatically providing software changes, comprising:
-
identifying controller activity data from a first controller; identifying a software vulnerability affecting the first controller, the software vulnerability being identified based on a deviation between the identified controller activity data and expected controller activity data; identifying a controller software change based on the identified software vulnerability, wherein the identified controller software change is configured to adjust the first controller from executing a first version of controller software to a second version of controller software; sending, to the first controller, a multi-dimensional delta file configured based on the identified controller software change; configuring the first version of controller software on the first controller to become non-executable; determining that a memory of the first controller is utilized above a threshold; deleting content from the memory based on the determination that the memory is utilized above the threshold; identifying a second controller determined to be similar to the first controller; and sending the multi-dimensional delta file to the second controller based on the determined similarity. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for performing operations for automatically providing software changes, the method comprising:
-
identifying controller activity data from a first controller; identifying a software vulnerability affecting the first controller, the software vulnerability being identified based on a deviation between the identified controller activity data and expected controller activity data; identifying a controller software change based on the identified software vulnerability, wherein the identified controller software change is configured to adjust the first controller from executing a first version of controller software to a second version of controller software; sending, to the first controller, a multi-dimensional delta file configured based on the identified controller software change; configuring the first version of controller software on the first controller to become non-executable; determining that a memory of the first controller is utilized above a threshold; deleting content from the memory based on the determination that the memory is utilized above the threshold; identifying a second controller determined to be similar to the first controller; and sending the multi-dimensional delta file to the second controller based on the determined similarity. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification