IP Library Granted Patent US 12705043
Granted Patent B2
US 12705043 · App. 18/334,716 · Granted Aug 11, 2026

Vehicle software deployment service

Inventors: Roland Mesde (Cupertino, CA); Michael Kenneth Dosenbach (Renton, WA); Alex Bessonov (San Jose, CA); David Joseph Mifsud (Lake Stevens, WA); George Sherif Kamal Hanna (Toronto, CA)
Assignee: Amazon Technologies, Inc.
G06F8/65B60R16/0231
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12705043
App. No.
18/334,716
Granted
Aug 11, 2026
Kind
B2
Abstract

A vehicle software deployment management system generates a modifiable deployment plan and one or more associated vehicle software modules that is sent to an edge device at a vehicle activity site. The edge device stores the modifiable deployment plan and the one or more vehicle software modules for updating a given vehicle at a future time. In some embodiments, the vehicle may have insufficient network connectivity to perform the update remotely from the vehicle activity site. In some embodiments, the modifiable deployment plan may be modified by the edge device at the future time when the vehicle is present at the vehicle activity site, based on vehicle information obtained by the edge device and based on vehicle user/technician input obtained by the edge device.

Claims (66)

1 . A system, comprising:

one or more computing devices configured to implement a cloud-based vehicle software deployment management system configured to:

determine a vehicle activity is to be performed for a vehicle at a vehicle activity site at a future time, wherein:

the vehicle comprises one or more electronic control units (ECUs) to be updated; and

the vehicle has insufficient network connectivity to perform the updating of the ECUs remotely from the vehicle activity site;

generate, prior to the future time, a deployment plan for deploying one or more software modules on the one or more ECUs via a connection to be established between an edge device located at the vehicle activity site and the vehicle; and

provide, prior to the future time, the generated deployment plan to the edge device located at the vehicle activity site, wherein the generated deployment plan is configured to be modified based, at least in part, on one or more inputs determined at the future time when the vehicle is at the vehicle activity site.

2 . The system of claim 1 , further comprising:

the edge device located at the vehicle activity site, wherein the edge device is configured to:

obtain the one or more inputs, wherein the one or more inputs comprise vehicle information or vehicle user inputs, relevant to the deployment plan;

modify the deployment plan received from the cloud-based vehicle software management system based on the obtained vehicle information or vehicle user inputs; and

orchestrate deployment of the one or more software modules on the one or more ECUs.

3 . The system of claim 1 , wherein the edge device is configured to:

receive, at the edge device, prior to the future time, the deployment plan, wherein the deployment plan comprises instructions for deploying the one or more software modules on the one or more ECUs of the vehicle; and

store, at the edge device, prior to the future time, the one or more software modules, wherein the one or more software modules are received with the deployment plan, or have been previously cached at the edge device.

4 . The system of claim 1 , wherein, to determine that the vehicle activity is to be performed at the vehicle activity site at the future time, the cloud-based vehicle software deployment management system is configured to:

receive an indication that a vehicle activity appointment has been scheduled for the vehicle at the activity site; and

wherein the cloud-based vehicle software deployment management system is configured to:

perform the generating of the deployment plan prior to the future time based on a date or time of the scheduled vehicle activity appointment included in the indication.

5 . The system of claim 1 , wherein the cloud-based vehicle software deployment management system configured to:

receive or access, prior to the future, vehicle information indicating:

a vehicle model, a year of the vehicle model, a selected vehicle software application for deployment, ECU types or configurations of the vehicle, or parameter settings for the ECUs of the vehicles

wherein the generation of the deployment plan is performed based, at least in part, on the received or accessed vehicle information.

6 . The system of claim 1 , wherein the cloud-based vehicle software deployment management system is configured to:

generate a forecast of one or more vehicles forecast to be at the vehicle activity site at the future time; and

select one or more software modules to pre-cache at the edge device based on the generated forecast.

7 . A method, comprising:

receiving, at an edge device located at a vehicle activity site, a deployment plan generated by a cloud-based vehicle software deployment management system for deploying one or more software modules on one or more electronic control units (ECUs) of a vehicle, wherein the deployment plan is received at the edge device prior to the vehicle arriving at the vehicle activity site;

establishing, while the vehicle is located at the vehicle activity site, a connection between the edge device and the vehicle;

modifying the received deployment plan based, at least in part, on one or more inputs determined while the vehicle is at the vehicle activity site, wherein the received deployment plan is configured to be modified based, at least in part, on the one or more inputs determined at the vehicle activity site; and

orchestrating deployment of the one or more software modules on the one or more ECUs using the modified deployment plan.

8 . The method of claim 7 , further comprising:

obtaining, while the vehicle is located at the vehicle activity site, vehicle information or vehicle user inputs, relevant to the deployment plan received from the cloud-based vehicle software management system; and

wherein:

said modifying the received deployment plan is based on the obtained vehicle information or vehicle user inputs.

9 . The method of claim 7 , further comprising:

receiving at the edge device, prior to the vehicle arriving at the vehicle activity site, one or more software artifacts required for deploying the one or more software modules on the ECUs of the vehicle based on the deployment plan; and

storing at the edge device, prior to the vehicle arriving at the vehicle activity site, the one or more received software artifacts, wherein the edge device orchestrates the deployment of the one or more software on the one or more ECUs using the stored one or more software artifacts at the future time.

10 . The method of claim 7 , wherein at least a portion of the modified deployment plan is generated by the edge device in addition to the deployment plan received from the cloud-based vehicle software deployment management system.

11 . The method of claim 7 , further comprising:

obtaining vehicle user inputs relevant to the deployment plan via a user interface of the edge device, wherein the user interface is configured to:

indicate one or more ECUs available for update in the vehicle, receive permission to overcome security restrictions of the ECUs, and

indicate steps for a technician to perform a workflow of the deployment plan.

12 . The method of claim 7 , wherein the edge device is configured to connect wirelessly to one or more handheld devices and the connection to be established between the edge device and the vehicle occurs via the one or more handheld devices.

13 . The method of claim 7 , further comprising:

determining, using the edge device and the connection between the edge device and the vehicle, respective deployment progress of deployment of the one or more software modules on the one or more ECUs of the vehicle.

14 . The method of claim 13 , further comprising:

receiving one or more deployment failures identified in the respective deployment progress; and

modifying the deployment plan based on the one or more deployment failures identified in the respective deployment progress.

15 . The method of claim 7 , further comprising:

receiving, at the cloud-based vehicle software deployment management system, one or more instances of vehicle information provided by a user of the vehicle the one or more instances of vehicle information comprising: a vehicle model, a year of the vehicle model, selected vehicle software application for deployment, ECUs of the vehicle, or parameter settings for the ECUs of the vehicles.

16 . The method of claim 7 , wherein the activity site is a vehicle service station, and wherein the edge device is configured to provide connectivity to the vehicle.

17 . The method of claim 7 , wherein the activity site is a charging station, and wherein the edge device is configured to provide connectivity to the vehicle.

18 . The method of claim 7 , wherein the edge device is configured to perform one or more of:

preventing out-of-sequence deployment of a component of the software module based on the deployment plan;

presenting a certified deployment sequence for the component of the software module; or

providing an alternate deployment plan.

19 . One or more non-transitory, computer-readable storage media, storing program instructions that when executed on or across one or more processors cause the one or more processors to:

determine a vehicle activity is to be performed for a vehicle at a vehicle activity site at a future time, wherein:

the vehicle activity comprises updating one or more electronic control units (ECUs) of the vehicle;

generate, prior to the future time, a deployment plan for deploying one or more software modules on the one or more ECUs of the vehicle via a connection to be established between an edge device located at the vehicle activity site and the vehicle; and

provide, prior to the future time, the generated deployment plan to the edge device located at the vehicle activity site, wherein the generated deployment plan is configured to be modified based, at least in part, on one or more inputs determined at the future time when the vehicle is at the vehicle activity site.

20 . The one or more non-transitory, computer-readable storage media of claim 19 , wherein the program instructions, when executed on or across the one or more processors, cause the one or more processors to:

determine, using the edge device connected to the vehicle, a vehicle configuration comprising one or more of a software configuration of the vehicle or a hardware configuration of the vehicle;

provide the vehicle configuration to be sent to the cloud-based vehicle software deployment management system; and

generate or update, using the cloud-based vehicle software deployment management system, a vehicle configuration graph for the vehicle based on the vehicle configuration.