Method for software updating of vehicle components
First Claim
1. A method for real-time widespread distribution of software to a plurality of vehicles, to update vehicle components comprising flash memory, said method comprising:
- providing a client server to originate distribution of said software updates;
providing a distributed network comprising a plurality of communication servers, each communication server of said plurality of communication servers operable to communicate with apparatus in each vehicle of a corresponding one group of vehicles of a plurality of groups of vehicles;
providing an arbitration server disposed between said client server and said distributed network, said arbitration server operable to arbitrate communications between said client server and said plurality of servers, said arbitration server operable to provide concurrent communication between said client server and one or more subsets of said plurality of communication servers, said arbitration server receiving said software updates from said client server and concurrently distributing said software updates to said one or more subsets of said plurality of communication servers said arbitration server receiving filtering terms for predetermined communication servers of said plurality of servers and operable to establish connections to all of said communications servers for which said filtering terms apply;
each said communication server receives said software updates from said client server via said arbitration server and distributes said software updates to said corresponding one group of vehicles;
operating each said apparatus to communicate via a wireless network with a corresponding one communication server of said plurality of communication servers to receive and deploy said software updates to electronic control units (ECUs) within its said corresponding vehicle to update said ECUs;
operating each said apparatus to generate real time status updates for said software updates and to communicate said real time status updates to said corresponding one communication server via said wireless network;
operating each said communication server of said plurality of communication servers to concurrently receive said data messages comprising said real time status updates from said corresponding group of vehicles;
operating each said communication server to generate a data stream comprising said data messages from said corresponding one group of vehicles, said data stream being sent to said arbitration server; and
operating said arbitration server to utilize said filtering terms on each said communication server generated data stream to reduce each said communication server generated data stream, and to combine all such reduced communication server data streams into a filtered data stream transmitted to said client server.
4 Assignments
0 Petitions
Accused Products
Abstract
A method for real-time widespread distribution of software updates of vehicle components comprising flash memory is provided. The method comprises: providing a client server for originating said software updates; providing an arbitration server operable to communicate with the client server; providing a distributed network comprising a plurality of communication servers, each of said communication servers operable to communicate with apparatus in a plurality of corresponding vehicles; operating each apparatus to communicate via a wireless network with one of the plurality of communication servers to receive and deploy software updates to electronic control units (ECUs) within its corresponding vehicle; operating each apparatus to generate status updates and to communicate the status updates to one communication server via the wireless network; and operating each communication server to generate a data stream comprising the data messages from the plurality of corresponding vehicles, and sending the data stream to the arbitration server.
8 Citations
18 Claims
-
1. A method for real-time widespread distribution of software to a plurality of vehicles, to update vehicle components comprising flash memory, said method comprising:
-
providing a client server to originate distribution of said software updates; providing a distributed network comprising a plurality of communication servers, each communication server of said plurality of communication servers operable to communicate with apparatus in each vehicle of a corresponding one group of vehicles of a plurality of groups of vehicles; providing an arbitration server disposed between said client server and said distributed network, said arbitration server operable to arbitrate communications between said client server and said plurality of servers, said arbitration server operable to provide concurrent communication between said client server and one or more subsets of said plurality of communication servers, said arbitration server receiving said software updates from said client server and concurrently distributing said software updates to said one or more subsets of said plurality of communication servers said arbitration server receiving filtering terms for predetermined communication servers of said plurality of servers and operable to establish connections to all of said communications servers for which said filtering terms apply; each said communication server receives said software updates from said client server via said arbitration server and distributes said software updates to said corresponding one group of vehicles; operating each said apparatus to communicate via a wireless network with a corresponding one communication server of said plurality of communication servers to receive and deploy said software updates to electronic control units (ECUs) within its said corresponding vehicle to update said ECUs; operating each said apparatus to generate real time status updates for said software updates and to communicate said real time status updates to said corresponding one communication server via said wireless network; operating each said communication server of said plurality of communication servers to concurrently receive said data messages comprising said real time status updates from said corresponding group of vehicles; operating each said communication server to generate a data stream comprising said data messages from said corresponding one group of vehicles, said data stream being sent to said arbitration server; and operating said arbitration server to utilize said filtering terms on each said communication server generated data stream to reduce each said communication server generated data stream, and to combine all such reduced communication server data streams into a filtered data stream transmitted to said client server. - View Dependent Claims (2, 3, 4)
-
-
5. A method for real-time monitoring widely distributed software updates of vehicle components in a plurality of vehicles, comprising:
-
providing a client server originating distribution of said software updates; providing an arbitration server to receive said software updates from said client server and to distribute said software updates to said plurality of vehicles; providing a distributed network comprising a plurality of communication servers; providing an arbitration server disposed between said client server and said distributed network, said arbitration server operable to arbitrate communications between said client server and said plurality of communication servers, said arbitration server operable to provide concurrent communication between said client server and one or more subsets of said plurality of communication servers, said arbitration server receiving said software updates from said client server and concurrently distributing said software updates to said one or more subsets of said plurality of communication servers, said arbitration server receiving filtering terms for predetermined communication servers of said plurality of servers and operable to establish connections to said communications servers for which said filtering terms apply; operating each said communication server to communicate with a corresponding group of vehicles of a plurality of groups of vehicles, each said communication server operable to receive said software updates from said arbitration server and to distribute said software updates to vehicles in said corresponding group of vehicles; each vehicle of said corresponding plurality of vehicles comprising; apparatus operable to communicate with a corresponding one communication server of said plurality of communication servers via a wireless network, said apparatus operable to communicate with electronic control units (ECUs) in said each vehicle; operating each said communication server to download selected software updates for one or more predetermined ECUs in each vehicle of said corresponding group of vehicles to each said vehicle apparatus in said corresponding group of vehicles via said wireless network; operating each said vehicle apparatus to selectively deploy said selected software updates to said one or more predetermined ECUs within said vehicle, to monitor status of said selected software updates, and to generate real time status updates for deployment of said software updates; operating each said vehicle apparatus to communicate said real time status updates to its corresponding communication server via said wireless network; operating each said corresponding communication server to receive data messages comprising said real time status updates from each said vehicle apparatus in its said corresponding group of vehicles;
to utilize said data messages from said corresponding group of vehicles to generate a corresponding data stream, and to send said data stream to said arbitration server; andoperating said arbitration server to utilize said filtering terms on each said communication server generated data stream to reduce each said communication server generated data stream, and to combine all such reduced communication server data streams into a filtered data stream transmitted to said client server. - View Dependent Claims (6, 7, 8)
-
-
9. A method for real-time concurrent distribution of software updates of vehicle components disposed in a plurality of vehicles and each comprising flash memory, said method comprising:
-
determining that a vehicle owner has requested a software update for the owner'"'"'s vehicle; providing a client server originating said software updates; providing a distributed network comprising a plurality of communication servers, each of said communication servers operable to concurrently communicate with apparatus in a corresponding group of vehicles of a plurality of vehicles via a wireless network; providing an arbitration server disposed between said client server and said distributed network, said arbitration server operable to arbitrate communications between said client server and said plurality of communication servers, said arbitration server operable to provide concurrent communication between said client server and one or more subsets of said plurality of communication servers, said arbitration server receiving said software updates from said client server and concurrently distributing said software updates to said one or more subsets of said plurality of communication servers, said arbitration server receiving filtering terms for predetermined communication servers of said plurality of communication servers and operable to establish connections to all of said communications servers for which said filtering terms apply; operating each said communication server to receive said software updates from said arbitration server and to concurrently distribute said software updates to a corresponding group of vehicles of said plurality of vehicles; concurrently operating each said apparatus in said owner'"'"'s vehicle to communicate with a corresponding one communication server of said plurality of communication servers via said wireless network to receive and deploy said software updates to electronic control units (ECU) within said owner'"'"'s vehicle; operating said apparatus in said owner'"'"'s vehicle to generate real time status updates for said received and deployed software updates and to communicate said real time status updates to said corresponding one communication server via said wireless network; operating each communication server of said plurality of communication servers to concurrently receive said data messages comprising status updates from said corresponding group of vehicles via said wireless network; operating each said communication server to generate a data stream comprising said data messages from said corresponding group of vehicles and said status update from said owner'"'"'s vehicle, said data stream being sent to said arbitration server via said wireless network; and operating said arbitration server to utilize said filtering terms on each said communication server generated data stream to reduce each said communication server generated data stream, and to combine all such reduced communication server data streams into a filtered data stream transmitted to said client server. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for real-time monitoring widely distributed concurrent software updates of vehicle components in a plurality of vehicles, comprising:
-
providing a distributed network comprising a plurality of communication servers to concurrently distribute said software updates; operating each said communication server to concurrently communicate with a corresponding group of vehicles of a plurality of groups of vehicles; each vehicle of said corresponding group of vehicles comprising; apparatus operable to communicate with a corresponding one communication server of said plurality of communication servers over a wireless network, said apparatus operable to communicate with electronic control units (ECUs) in said each vehicle; providing an arbitration server disposed between said client server and said distributed network, said arbitration server operable to arbitrate communications between said client server and said plurality of communication servers, said arbitration server operable to provide concurrent communication between said client server and one or more subsets of said plurality of communication servers, said arbitration server receiving said software updates from said client server and concurrently distributing said software updates to said one or more subsets of said plurality of communication servers, said arbitration server receiving filtering terms for predetermined communication servers of said plurality of communication servers and operable to establish connections to all of said communications servers for which said filtering terms apply; initiating a software update to said apparatus in a predetermined one vehicle of said plurality of vehicles; operating one corresponding communication server of said plurality of communication servers to download selected software updates for a predetermined one or more ECUs in said predetermined one vehicle; operating each said predetermined one vehicle apparatus to selectively deploy said selected software updates to said one or more predetermined ECUs within said predetermined one vehicle, to monitor status of said software updates and to generate real time status updates for deployment of said software updates; operating said apparatus of said predetermined one vehicle to communicate said real time status updates to said corresponding communication server; operating said corresponding communication server to receive data messages comprising said real time status updates from said predetermined one vehicle apparatus and to utilize said data messages to generate a corresponding data stream, and operating said arbitration server to utilize said filtering terms on each said communication server generated data stream to reduce each said communication server generated data stream, and to combine all such reduced communication server data streams into a filtered data stream transmitted to said client server. - View Dependent Claims (15, 16, 17, 18)
-
Specification