Opportunistic software updates during select operational modes
Abstract
Disclosed embodiments relate to opportunistically updating Electronic Control Unit (ECU) software in a vehicle. Operations may include receiving, at a controller in a vehicle, a wireless transmission indicating a need to update software running on at least one ECU in the vehicle; monitoring an operational status of the vehicle to determine whether the vehicle is in a first mode of operation in which an ECU software update is prohibited; delaying the ECU software update when the operational status is prohibited; continuing to monitor the operational status of the vehicle to determine whether the vehicle is in a second mode of operation in which the ECU software update is permitted; and enabling updating of the at least one ECU with the delayed ECU software update when it is determined that the vehicle is in the second mode of operations.
Claims
exact text as granted — not AI-modified1 - 20 . (canceled)
21 . 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 opportunistically updating controller software, the operations comprising:
determining a device is in a first mode of operation; accessing a controller software change based on the device being determined to be in the first mode of operation, the controller software change comprising a delta file; and implementing the controller software change on the controller when the device is in the first mode of operation, wherein implementing the controller software change comprises updating a program counter of the controller, and wherein updating the program counter causes the controller to skip a portion of current controller software and to execute code of the delta file instead of the skipped portion of the current controller software.
22 . The non-transitory computer-readable medium of claim 21 , wherein the controller software change is implemented without rebooting the controller.
23 . The non-transitory computer-readable medium of claim 21 , wherein the delta file includes startup code configured to initialize a runtime library of the delta file.
24 . The non-transitory computer-readable medium of claim 21 , wherein the delta file includes a plurality of deltas corresponding to different memory addresses of the controller.
25 . The non-transitory computer-readable medium of claim 21 , the operations further comprising:
determining that the controller is in a second mode of operation; and based on the determination that the controller is in the second mode of operation, delaying the implementing of the controller software change.
26 . The non-transitory computer-readable medium of claim 21 , wherein the first mode of operation comprises a power-down status of the device.
27 . The non-transitory computer-readable medium of claim 21 , wherein the first mode of operation comprises a period of wireless communications strength above a threshold of strength.
28 . The non-transitory computer-readable medium of claim 21 , wherein the first mode of operation comprises an environmental condition of the device.
29 . The non-transitory computer-readable medium of claim 21 , wherein the first mode of operation comprises a network connection with an error rate below a threshold.
30 . The non-transitory computer-readable medium of claim 21 , the operations further comprising generating the delta file.
31 . The non-transitory computer-readable medium of claim 21 , wherein the device is a vehicle.
32 . The non-transitory computer-readable medium of claim 21 , wherein the delta file is generated based on comparisons of first dimensions of a first version of controller software and second dimensions of a second version of controller software.
33 . The non-transitory computer-readable medium of claim 21 , wherein implementing the controller software change on the controller comprises storing the delta file adjacent to the current controller software.
34 . A computer-implemented method for opportunistically updating controller software, the method comprising:
determining a device is in a first mode of operation; accessing a controller software change based on the device being determined to be in the first mode of operation, the controller software change comprising a delta file; and implementing the controller software change on the controller when the device is in the first mode of operation, wherein implementing the controller software change comprises updating a program counter of the controller, and wherein updating the program counter causes the controller to skip a portion of current controller software and to execute code of the delta file instead of the skipped portion of the current controller software.
35 . The method of claim 34 , further comprising:
determining that the controller is in a second mode of operation; and based on the determination that the controller is in the second mode of operation, delaying the implementing of the controller software change.
36 . The method of claim 34 , wherein the first mode of operation comprises at least one of a power-down status of the device, a period of wireless communications strength above a threshold of strength, an environmental condition of the device, or a network connection with an error rate below a threshold.
37 . The method of claim 34 , further comprising generating the delta file.
38 . The method of claim 34 , wherein the device is a vehicle.
39 . The method of claim 34 , wherein the delta file is generated based on comparisons of first dimensions of a first version of controller software and second dimensions of a second version of controller software.
40 . The method of claim 34 , wherein implementing the controller software change on the controller comprises storing the delta file adjacent to the current controller software.Join the waitlist — get patent alerts
Track US2024004643A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.