DETAILED ACTION
Remarks
Applicant presents a request for continued examination dated 9 October 2025 responsive to the 9 July 20225 final office action (the “Final Office Action” as well as the 7 October 2025 advisory action.
With the request, Applicant amends claims 1, 6 and 9.
Claim 1-11 remain pending in this application and have been fully considered by the examiner. Claims 1, 6 and 9 are the independent claims.
Any unpersuasive arguments are addressed in the “Response to Arguments” section below.
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 9 October 2025 has been entered.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Examiner Notes
Examiner cites particular columns, paragraphs, figures and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner.
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Response to Arguments
Applicant requests with respect to claims 1, 6 and 9 that the claims should not be interpreted in accordance with 35 U.S.C. § 112(f) or (pre-AIA ) § 112 sixth paragraph. Applicant reasons that “the language used in these claims specifies how the components interact and are configured, providing sufficient structural context…without resorting to purely functional claiming.” (Remarks, p. 8 last par. – p. 9 par. 1).
Examiner respectfully disagrees that anything claimed modifies the claimed “control component” placeholders with sufficient structure, material or acts for performing their corresponding claimed functions. Applicant does specifically identify any claim elements that would constitute such structure, material or acts, and the memory, instructions and processor recited in each of the claims have no relationship with any of the identified placeholders. In the examiner’s view, the identified limitations meet the three-prong test set forth in M.P.E.P. § 2181(I) and should be interpreted in accordance with 35 U.S.C. § 112(f) or (pre-AIA ) § 112 sixth paragraph for that reason.
Applicant’s arguments with respect to the § 103 rejections are moot in view of the new ground(s) of rejection below, necessitated by Applicant’s amendments.
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitation(s) uses a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitation(s) is/are:
“one upgrade control component configured to control a component in the first component group to perform an over the air (OTA) upgrade” in claim 1;
“a first upgrade control component to control a component in the first component group to perform OTA upgrade” in claim 6;
“a second upgrade control component to control a component in the second component group to perform OTA upgrade” in claim 6
“one upgrade control component to control a component in the component group to perform an over the air (OTA) upgrade” in claim 9.
Because this/these claim limitation(s) is/are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof.
If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-3 and 5 are rejected under 35 U.S.C. 103 as being unpatentable over Lin et al. (WO 2019/182509) (art of record – hereinafter Lin) in view of Abe et al. (US 2021/0157573) (art made of record – hereinafter Abe) in view of Acharya et al. (US 2019/02684720) (art made of record – hereinafter Acharya) in view of Carcerano et al. (US 2010/0037216) (art of record – hereinafter Carcerano) in view of Armour et al. (US 2013/0344802) (art made of record – hereinafter Armour).
As to claim 1, Lin discloses a server, (e.g., Lin, p. 16 last par.: the administration module may be provided in a server) comprising:
at least one processor; (e.g., Lin, p. 16 last par.: the administration module 110 comprises a processor) and
at least one memory; (see immediately below)
wherein the at least one memory stores program instructions, and the at least one processor is coupled to the at least one memory to execute the instructions (e.g., Lin, p. 17 par. 1: the processor may be a dedicated processor for executing any if the methods and/or algorithms according to the invention; p. 25 last par.: methods may be implemented in a computer program. The computer program is included in a computer readable medium. The computer readable medium may comprise of essentially any memory) to:
receive a first message, from an over the air (OTA) upgrade master node, comprising version information corresponding to at least two component groups; (e.g., Lin, p. 1 par. 1: to update firmware/software over-the-air; p. 5 par. 5: the context information may be provided by the remote network, such as by a policy verification module [master node], to the administration module; p. 16 last par.: the administration module may be provided in a server; p. 24 par. 3: context information about each of the groups of controllers would be provided to the administration unit. The context information may specify which controller can be updated with which version)
determine the at least two component groups in a vehicle, (e.g., Lin, p. 24 par. 3: context information about each of the groups would be provided to the administration unit [in a server, see above]; abstract: the administrative module formulates a policy based on the context information; p. 19 par. 3: update policies may specify a group of controllers [components]; p. 3 par. 3: a group of controllers in a remote network in a vehicle) wherein each of the at least two component groups comprises one upgrade control component (e.g., Lin, p. 4 last par.: a plurality of groups of controllers may exist, each with their own respective domain controller and optionally agent module) configured to control a component in the component group to perform an over the air (OTA) upgrade; (e.g., Lin, p. 22 par. 1: agent modules 130 are deployed in domain controllers; p. 17 par. 1: the administration module 110 [again, in the server] is configured to communicate with the other controllers, and ultimately with the agent module, via wireless communication interfaces [i.e., over the air]; p. 9 par. 1: the server is configured to send the policy and the update together in a package; p. 19 par. 4: the downloaded package is communicated to the central controller 240 and subsequently to the agent module 130; p. 11 par. 1: it will be understood that the administration module [in the server] and the agent module are configured to communicate with each other, and by receiving the policy and update the agent module can implement the update according to the policy)
generate a first upgrade package for a first component group in the at least two component groups, (e.g., Lin, p. 9 par. 1: the server is configured to send the policy and the update together in a package; p. 7 par. 3: the policy comprises an installation policy comprising update installation instructions; p. 7 par. 4: the update installation instructions may specify which controllers are to undergo update, in which groups, and which version of the update should be applied to each controller or group of controllers) wherein the first component group includes a first upgrade control component; (e.g., Lin, p. 4 last par.: a plurality of groups of controllers may exist, each with their own respective domain controller and optionally agent module)
wherein the second component group includes a second upgrade control component (see immediately above)
the OTA upgrade master node (see above)
the first upgrade package is used to upgrade a component in the first component group (e.g., Lin, p. 9 par. 1: the server is configured to send the policy and the update together in a package; p. 7 par. 3: the policy comprises an installation policy comprising update installation instructions; p. 7 par. 4: the update installation instructions may specify which controllers are to undergo update, in which groups, and which version of the update should be applied to each controller or group of controllers).
Lin does not explicitly disclose to: generate a second upgrade package for a second component group in the at least two component groups, send the first upgrade package and the second upgrade package to the first upgrade control component and the second upgrade control component, respectively, while bypassing the OTA upgrade master node; the second upgrade package is used to upgrade a component in the first component group; and the first upgrade package and the second upgrade package are sent to the first upgrade control component and the second upgrade control component, respectively, based on the first message received from the OTA upgrade master node.
However, in an analogous art, Abe discloses:
to generate a second upgrade package for a second component group in the at least two component groups (e.g., Abe, par. [01337]: one package is generated for one group. For example, the package “pkg_001_1 includes the ECUs belonging to group 1, and the package “pkg_001_2” includes an ECU belonging to group 2; par. [1338]: specification data and a distribution package are individually generated for each group).
the second upgrade package is used to upgrade a component in the second component group; (e.g., Abe, par. [1084]: a distribution package including update data of rewrite target ECUs [components. See immediately above also, there is one package for each group and each package includes ECUs belong to each group])
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the component groups and generation of upgrade packages for those groups taught by Lin to incorporate generating a second upgrade package for a second component group in the at least two component groups and using that second package to upgrade a component in the second component group, as taught by Abe. Updates for the different groups can only either be packaged together or separately and as Abe shows, one of ordinary skill could have substituted one for the other and the results would have been predictable. (See Abe, pars. [0732], [1337] and M.P.E.P. § 2143(I)(B)).
Further, in an analogous art, Acharya discloses to:
send the first upgrade package and the second upgrade package to the first upgrade control component and the second upgrade control component, respectively, (e.g., Acharya, Fig. 13B and associated text, par. [0277]: each of the critical domain 1230 and user domain 1250 may include a respective eSync Client [control component]; par. [0279]: both eSync Client—1 and eSync Client—2 may request downloads; par. [0131]: the functions performed by the eSycn Client Modules in the different domains are entirely separate and not dependent at all on one another. Example functions that an eSync Client may perform include receiving the update from the external server; par. [0276]: functions performed by one domain are entirely independent of the other domain. Functions include downloading software updates (such as software delta(s))); and
the first upgrade package and the second upgrade package are sent to the first upgrade control component and the second upgrade control component, respectively, (see immediately above).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the sending of upgrade packages to a control component taught by Lin to incorporate sending a first package to a first control component and a second package to a second component, as taught by Acharya, as Acharya would provide the advantage of a means of updating each group independently of the others. (See Acharya, pars. [0131]).
Further still, in an analogous art, Carcerano discloses:
to send while bypassing the upgrade master node (e.g., Carcerano, Fig. 9 and associated text, par. [0158]: in the third example embodiment, an agent device [component] downloads updates from the internet directly, without using the controller [master node]; par. [0160]: the agent device sends a download request to the repository to downloaded the files specified in the received checkForUpdates request message (step 608) and then downloads the files (step 609 [i.e., the files are sent from the repository]; par. [0084]: an executable Microsoft Installer (MSI) installation utility that contains the file update [i.e., the updates are msi files (packages)]).
It would have been obvious to modify the sending of upgrade packages taught by Lin/Abe/Acharya, such that the information is sent while bypassing the upgrade master node, as taught by Carcerano, as Carcerano would provide avoid the extra processing associated with the master node having to download the upgrade first and then transfer it to the component. (See Carcerano, pars. [0140] and [0160]).
Finally, in an analogous art, Armour discloses:
the first update package and the second upgrade package are sent based on the first message received from the upgrade master node; (e.g., Armour, Fig. 2 and associated text, par. [0046]: Master Terminals (MTs) 208 and trailer car communications units, called Satellite Terminals (STs) 210 and 212; par. [0078]: master control station 1134 may include one or more servers; Fig. 11 and associated text, par. [0117]: each MT is configured with respect to the number of cars and STs provided therewith. The MT communicates such configuration information [message] to the master control station, as per Operation 1112; par. [0118]: as per Operation 1114, those packages [i.e., at least a first and second] downloads are identified by the master control station for communication to the MT and any STs connected thereto).
It would have been obvious to modify the sending of multiple upgrade packages and sending of a package based on a first message taught by Lin/Abe/Acharya, such that the two packages are received based on a single message, as taught by Armour, as Armour would avoid the need to send a message for each package. (See Armour, pars. [0117-0118]).
As to claim 2, Lin/Abe/Acharya/Carcerano/Armour discloses the server according to claim 1 (see rejection of claim 1 above), Lin further discloses wherein the at least one processor is coupled to the at least one memory to execute the instructions to perform the operations (see rejection of claim 1 above) but does not explicitly disclose wherein the at least one processor is coupled to the at least one memory to execute the instructions to allocate a first download address for downloading the first upgrade package; and send the first download address to the OTA upgrade master node in the vehicle; and establish, with the first upgrade control component, a first secure channel for downloading the first upgrade package; and send the first upgrade package to the first upgrade control component through the first secure channel.
However, in an analogous art, Cacerano discloses to:
allocate a first download address for downloading the first upgrade package; (e.g., Cacerano, par. [0044]: repository 107 is, for example, a server; par. [0012]: file update locations can include locations on [i.e., allocated on] the repository; par. [0120]: the getFiles request will include locationURIs pointing to locations; par. [0121]: in response to receiving the getFiles request, the controller sends a request to download the files) and
send the first download address to the OTA upgrade master node in the vehicle; (e.g., Carcerano, Fig. 1 and associated text, par. [0044]: repository 107 is, for example, a server; par. [0009]: the repository sends file update information for discovered file updates to the controller [master node]. The file update information includes file update locations, which are locations on the Internet of each file update; par. [0078]: the file update locations are Universal Resource Locators (URL)).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the server, master node and first upgrade control component of Lin, such that the server allocates an address for downloading the packages, the master node receives the download address from the server, as taught by Cacerano, as Cacerano would provide the advantage of a means for the vehicle to download the update packages (See Cacerano, par. [0121]).
Further, in an analogous art, Acharya discloses to:
establish, with the first upgrade control component, a first secure channel for downloading the first upgrade package; (e.g., Acharya, Fig. 8 and associated text, par. [0183]: FIG. 8 is a diagram 800 of security from the cloud to within the vehicle. Server 810 may include eSync engine 820. eSync Client Module 832 [upgrade control component] communicates with eSync engine 820 such as via HTTPS [i.e., secure HTTP]; par. [0131]: example functions that an eSync Client may perform include receiving the update from the external server;) and
send the first upgrade package to the first upgrade control component through the first secure channel (see immediately above).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the server, first upgrade control component and sending of an upgrade package of Lin/Cacerano, such the server establishes, with the first upgrade control component, a first secure channel for downloading the first upgrade package and send the first upgrade package to the first upgrade control component through the first secure channel, as taught by Acharya, as Acharya would provide the advantage of a means of a means of protecting against interception by third parties. (See US 2021/0243184 at par. [0067]).
As to claim 3, Lin/Abe/Acharya/Carcerano/Armour discloses the server according to claim 1 (see rejection of claim 1 above), Lin further discloses
wherein the at least one processor is coupled to the at least one memory to execute the instructions (see rejection of claim 1 above) to:
receive, from the OTA upgrade master node, group information for indicating the at least two component groups. (e.g., Lin, p. 5 par. 5: the context information may be provided by the remote network, such as by a policy verification module, to the administration module; p. 22 par. 1: the verification module 12 is deployed within a central controller (not shown); p. 24 par. 3: context information about each of the groups would be provided to the administration unit. The context information may specify whether each group is homogeneous or heterogenous, whether there are sub groups, whether each group undergoes atomic or one-way dependency type update).
As to claim 5, Lin/Abe/Acharya/Carcerano/Armour discloses the server according to claim 1 (see rejection of claim 1 above), Lin further discloses wherein the at least one processor is coupled to the at least one memory to execute the instructions (see rejection of claim 1 above) to:
receive, the first message from the OTA upgrade master node, wherein the first message comprises version information for indicating components in the at least two component groups; (e.g., Lin, p. 5 par. 5: the context information may be provided by the remote network, such as by a policy verification module, to the administration module; p. 22 par. 1: the verification module 12 is deployed within a central controller (not shown); p. 24 par. 3: context information about each of the groups of controllers would be provided to the administration unit. The context information may specify which controller can be updated with which version) and
generate the first upgrade package for the first component group in the at least two component groups based on the version information of the components in the at least two component groups (e.g., Lin, abstract: the administration module formulates a policy based on the context information; p. 9 par. 1: the server is configured to send the policy and the update together in a package).
Claim 4 is rejected under 35 U.S.C. 103 as being unpatentable over Lin (WO 2019/182509) in view of Abe (US 2021/0157573) in view of Acharya (US 2019/02684720) in view of Carcerano (US 2010/0037216) in view of Armour (US 2013/0344802) in further view of Kiyama et al. (JP 2018045515) (art of record – hereinafter Kiyama).
Note: The Kiyama document is not in English. Citations herein refer to the machine translation of Kiyama in the file record.
As to claim 4, Lin/Abe/Acharya/Carcerano/Armour discloses the server according to claim 1 (see rejection of claim 1 above), but does not explicitly disclose wherein the at least one processor is coupled to the at least one memory to execute the instructions to: query, based on an identifier of the vehicle, component group information preconfigured in the server; and determine the at least two component groups in the vehicle based on a query result.
However, in an analogous art, Kiyama discloses:
wherein the at least one processor is coupled to the at least one memory to execute the instructions (e.g., Kiyama, par. [0012]: central processing unit 110 performs processing to realize the functions of telematics center 100 by executing a predetermined operation program [necessarily in memory coupled to the cpu]) to:
query, based on an identifier of the vehicle, component group information preconfigured in the server; (e.g., Kiyaman, par. [0010]: telematics center 100, which is a server; par. [0011]: telematics center 100 includes storage device 120; par. [0014]: the data group stored in storage device 120 includes vehicle model configuration DB 122; par. [par. [0048]: the vehicle configuration DB 122 is searched for a record in which the same value as the vehicle model ID 401 is receded in vehicle model ID 410 ) and
determine the at least two component groups in the vehicle based on a query result (e.g., Kiyama, par. [0048]: by extracting each of the data records searched in configuration DB 122, vehicle model configuration information corresponding to the requesting vehicle 200 are extracted; par. [0033]: the ECU category 412 in the vehicle model configuration DB 122 reflects the network configuration of each ECU in the vehicle. The ECU category 412 represents the ECUs mounted on the vehicle divided into a plurality of groups in accordance with this network topology; par. [0034]: functional categories 413 represent the differences in functions of each ECU and represents the ECUS installed in the vehicle 200 by dividing them into a plurality of groups in a manner that does not necessarily coincide with ECU categories 412; par. [0032]: the ECU category 412 is information indicating a category to which the ECU specified by ECU type 411 belongs. The function category 413 is information indicating the category of the function that the ECU performs in controlling the vehicle).
It would have been obvious to one of ordinary art before the effective filing date of the claimed invention to modify the system of Li/Carcerano to incorporate querying, based on an identifier of the vehicle, component group information preconfigured in the server; and determining the at least two component groups in the vehicle based on a query result, as taught by Kiyama, as Kiyama would avoid need for the server to access the previously provided group information specific to the vehicle, as suggested by Lin. (See Kiyama, par. [0048], Lin at p. 12 par. 1).
Claims 6-7 are rejected under 35 U.S.C. 103 as being unpatentable over Lin (WO 2019/182509) in view of Carcerano (US 2010/0037216) in view of Abe (US 2021/0157573) in view of Acharya (US 2019/02684720) in view of Mukherjee et al. (US 2019/0235850) (art made of record – hereinafter Mukherjee).
As to claim 6, Lin discloses a system comprising:
at least one processor; (e.g., Lin, p. 25 last par.: methods may be implemented in a computer program run by processing means) and
at least one memory; (e.g., Lin, p. 25 last par.: the computer program is in a computer readable medium. The computer readable medium may comprise any memory)
wherein the at least one memory stores program instructions, and the at least one processor is coupled to the at least one memory to execute the instructions (see immediately above) to:
send a first message to a server from an over the air (OTA) upgrade master node in a vehicle, wherein the first message indicates version information of components in at least two component groups in the vehicle; (e.g., Lin, p. 1 par. 1: to update firmware/software over-the-air; p. 5 par. 5: the context information may be provided by the remote network, such as by a policy verification module [master node], to the administration module; p. 18 last par: a remote network in a vehicle; p. 16 last par.: the administration module may be provided in a server; p. 24 par. 3: context information about each of the groups of controllers would be provided to the administration unit. The context information may specify which controller can be updated with which version)
wherein
the first upgrade package is used to upgrade a first component group in the at least two component groups in the vehicle, (e.g., Lin, p. 9 par. 1: the server is configured to send the policy and the update together in a package; p. 7 par. 3: the policy comprises an installation policy comprising update installation instructions; p. 7 par. 4: the update installation instructions may specify which controllers are to undergo update, in which groups, and which version of the update should be applied to each controller or group of controllers) and the first component group comprises a first upgrade control component (e.g., Lin, p. 4 last par.: a plurality of groups of controllers may exist, each with their own respective domain controller and optionally agent module) to control a component in the first component group to perform OTA upgrade; (e.g., Lin, p. 22 par. 1: agent modules 130 are deployed in domain controllers; p. 17 par. 1: the administration module 110 [again, in the server] is configured to communicate with the other controllers, and ultimately with the agent module, via wireless communication interfaces [i.e., over the air]; p. 9 par. 1: the server is configured to send the policy and the update together in a package; p. 19 par. 4: the downloaded package is communicated to the central controller 240 and subsequently to the agent module 130; p. 11 par. 1: it will be understood that the administration module [in the server] and the agent module are configured to communicate with each other, and by receiving the policy and update the agent module can implement the update according to the policy)
the second component group comprises a second upgrade control component to control a component in the second component group to perform OTA upgrade; (see immediately above)
the OTA upgrade master node (see above).
Lin does not explicitly disclose to receive, from the server, a first download address for downloading a first upgrade package and a second download address for downloading a second upgrade package, the second upgrade package is used to upgrade a second component group in the at least two component groups in the vehicle; to send, the first download address and the second download address to the first upgrade control component and the second upgrade control component, respectively; and establish a first channel between the server and the first upgrade control component that bypasses the OTA upgrade master node, wherein the server provides the first upgrade package to the first upgrade control component through the first channel; and establish a second channel between the server and the second upgrade control component that bypasses the OTA upgrade master node, wherein the server provides the second upgrade package to the second upgrade control component through the second channel concurrently with when the server provides the first upgrade package to the first upgrade control component through the first channel.
However, in an analogous art, Carcerano
receive, from the server, a first download address for downloading a first upgrade package and a second download address for downloading a second upgrade package, (e.g., Carcerano, par. [0084]: an executable Microsoft Installer (MSI) installation utility that contains the file update [i.e., the updates are msi files (packages)]; Fig. 1 and associated text, par. [0044]: repository 107 is, for example, a server; par. [0009]: the repository sends file update information for discovered file updates [first and second upgrade packages] to the controller [master node]. The file update information includes file update locations, which are locations on the Internet of each file update; par. [0078]: the file update locations are Universal Resource Locators (URL);)
send, the first download address and the second download address to the first upgrade control component and the second control component, respectively (e.g., Cacerano, par. [0009]: file update information for discovered file updates [first and second upgrade packages, see above]. The file update information includes file update locations [first and second download addresses], which are locations on the Internet of each file update [each package]; Fig. 1 and associated text, par. [0009]: a software agent. The controller sends the file update information to the agent; par. [0092]: the agent device installs the file updates; par. [0032]: agent devices each include a software agent [so there are multiple control components]) and
establish a first channel that bypasses the upgrade master node, (e.g., Carcerano, Fig. 9 and associated text, par. [0158]: in the third example embodiment, an agent device downloads updates from the internet directly, without using the controller [master node]; par. [0160]: the agent device sends a download request to the repository to downloaded the files specified in the received checkForUpdates request message (step 608) and then downloads the files (step 609 [the channel being the connection(s) between the agent device and repository (server) shown in the figure]; par. [0084]: an executable Microsoft Installer (MSI) installation utility that contains the file update [i.e., the updates are msi files (packages)]) and
establish a second channel that bypasses the upgrade master node, (see immediately above)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the server, OTA master node and first and second upgrade control components of Lin, such that a first download address for downloading a first upgrade package and a second download address for downloading a second upgrade package is received, the first download address and the second download address are respectively sent to the first upgrade control component and the second control component, and first and second channels bypassing the master node are established, as taught by Cacerano, as Carcerano would provide a means to download the update packages without the extra processing associated with the master node having to download the upgrade first and then transfer it to a control component. (See Carcerano, pars. [0140] and [0160]).
Further, in an analogous art, Abe discloses:
the second upgrade package is used to upgrade a second component group in the at least two component groups in the vehicle, (e.g, Abe, par. [1084]: a distribution package including update data of rewrite target ECU; par. [01337]: one package is generated for one group. For example, the package “pkg_001_1 includes the ECUs belonging to group 1, and the package “pkg_001_2” includes an ECU belonging to group 2; par. [1338]: specification data and a distribution package are individually generated for each group)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the component groups and generation of upgrade packages for those groups taught by Lin to incorporate generating a second upgrade package for a second component group in the at least two component groups and using that second package to upgrade a component in the second component group, as taught by Abe. Updates for the different groups can only either be packaged together or separately and as Abe shows, one of ordinary skill could have substituted one for the other and the results would have been predictable. (See Abe, pars. [0732], [1337] and M.P.E.P. § 2143(I)(B)).
Further still, in an analogous art, Acharya discloses:
to establish a first channel between the server and the first upgrade control component, wherein the server provides the first upgrade package to the first upgrade control component through the first channel (e.g., Acharya, Fig. 13B and associated text, par. [0277]: each of the critical domain 1230 and user domain 1250 may include a respective eSync Client [upgrade control component]; par. [0131]: the functions performed by the eSycn Client Modules in the different domains are entirely separate and not dependent at all on one another. Example functions that an eSync Client may perform include receiving the update from the external server; [i.e., a connection (channel) is formed between the Client and the server] par. [0276]: functions performed by one domain are entirely independent of the other domain. Functions include downloading software updates (such as software delta(s)));
establish a second channel between the server and the second upgrade control component, wherein the server provides the second upgrade package to the second upgrade control component through the second channel (see immediately above) the server provides the first upgrade package to the first upgrade control component through the first channel (see immediately above).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the sending of upgrade packages to a control component and channels bypassing the master OTA node taught by Lin/Cacerano/Abe by incorporating establishing a first channel between the server and the first upgrade control component, wherein the server provides the first upgrade package to the first upgrade control component through the first channel, and establishing a second channel between the server and the second upgrade control component, wherein the server provides the second upgrade package to the second upgrade control component through the second channel, as taught by Acharya, as Acharya would provide the advantage of a means of updating each group independently of the others. (See Acharya, pars. [0131]).
Finally, in an analogous art, Mukherjee discloses:
wherein the server provides the second package through the second channel concurrently with when the server provides the first upgrade package through the first channel (e.g., Mukherjee, Fig. 1 and associated text, par. [0065]: A device or server may push the package transmissions onto the one or more clients. The package transmissions may be transmitted to the client devices in parallel [i.e., concurrently. There are multiple channels as shown in the figure and because there are multiple client devices, each connection between the device or server and a client is a channel]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the sending of first and second upgrade packages through a first and second channel taught by Lin/Cacerano/Abe/Acharya such that the packages are send concurrently, as taught by Mukherjee. The packages can either be sent in series or in parallel and Mukherjee shows that either could be done and predictably achieve the same result. (See Mukherjee, par. [0065] and M.P.E.P. § 2143(I)(B)). Sending the packages at the same time would also be faster than sending the packages one after the other.
As to claim 7, Lin/Cacerano/Abe/Acharya/Mukherjee discloses the system according to claim 6 (see rejection of claim 6 above), Lin further discloses:
wherein the first message further indicates group information of the at least two component groups (e.g., Lin, p. 24 par. 3: context information about each of the groups would be provided to the administration unit. The context information may specify whether each group is homogeneous or heterogenous, whether there are sub groups, whether each group undergoes atomic or one-way dependency type update).
Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over Lin (WO 2019/182509) in view of Carcerano (US 2010/0037216) in view of Abe (US 2021/0157573) in view of Acharya (US 2019/02684720) in view of Mukherjee (US 2019/0235850) in further view of Shimonura (US 2019/0265966) (art of record – hereinafter Shimonura).
As to claim 8, Lin/Cacerano/Abe/Acharya/Mukherjee discloses the system according to claim 6 (see rejection of claim 6 above), and further discloses wherein the at least one processor is coupled to the at least one memory to execute the instructions to perform the recited operations (see rejection of claim 6 above) but does not explicitly disclose wherein the at least one processor is coupled to the at least one memory to execute the instructions to: receive version information of the component in the first component group from the first upgrade control component.
However, in an analogous art, Shimonura discloses:
receive version information of the component in the first component group from the first upgrade control component (e.g., Shimonura, par. [0029]: an update process performed by the gateway [first upgrade control component]; par. [0039]: the identification information of the ECU 2 [the component] may include version information; Figs. 1, 3 and associated text, par. [0070]: when the reception of identification information is completed for all ECUs, the identification information transmitting unit 41b of the processing unit 41 [on the gateway (first upgrade control component), see figure 3] transmits the identification information to the server 9 via the wireless communication device 5 [master node]; par. [040]: the wireless communication device can relay communication between the gateway 4 and the server 9. The wireless communication device 5 transmits, to the server 9, the data received from the gateway).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the instructions, version information, master node and first upgrade control component of Lin, such that the master node receives receive version information of the component in the first component group from the first upgrade control component, as taught by Shimonura, as Shimonura would provide the advantage of a means for the master node to acquire up to date version information, as suggested by Lin. (See Shimonura, par. [0039], Lin, p. 11 last par – p. 12 par. 1).
Claims 9-10 are rejected under 35 U.S.C. 103 as being unpatentable over Lin (WO 2019/182509) in view of Acharya (US 2019/02684720) in view of Carcerano (US 2010/0037216) in view of Abe (US 2021/0157573).
As to claim 9, Lin discloses a vehicle (e.g., Lin, p. 18 last par: a remote network in a vehicle), comprising:
at least two component groups; (e.g., Lin, p. 24 par. 3: controllers in a remote network [in vehicle, see above]; p. 4 last par.: a plurality of groups of controllers may exist)
at least one processor; (e.g., Lin, p. 25 last par.: methods according to the invention may be implemented in a computer program, which when run by processing means cause the processing means to execute the steps of the method) and
at least one memory; (e.g., Lin, p. 25 last par.: the computer program is included in a computer readable medium. The computer readable medium may comprise of essentially any memory)
wherein each of the at least two component groups comprises one upgrade control component (e.g., Lin, p. 4 last par.: a plurality of groups of controllers may exist, each with their own respective domain controller and optionally agent module) to control a component in the component group to perform an over the air (OTA) upgrade, (e.g., Lin, p. 1 par. 1: to update firmware/software over-the-air; p. 22 par. 1: agent modules 130 are deployed in domain controllers; p. 17 par. 1: the administration module 110 [again, in the server] is configured to communicate with the other controllers, and ultimately with the agent module, via wireless communication interfaces [i.e., over the air]; p. 9 par. 1: the server is configured to send the policy and the update together in a package; p. 19 par. 4: the downloaded package is communicated to the central controller 240 and subsequently to the agent module 130; p. 11 par. 1: it will be understood that the administration module [in the server] and the agent module are configured to communicate with each other, and by receiving the policy and update the agent module can implement the update according to the policy) the at least one memory stores program instructions, and the at least one processor is coupled to the at least one memory to execute the instructions (see the citations with respect to the memory and processor above) to:
send a first message to a server, from an OTA upgrade master node, wherein the first message indicates version information of components in the at least two component groups in the vehicle; (e.g., Lin, p. 18 last par: a remote network in a vehicle; p. 3 par. 3: a group of controllers in a remote network in a vehicle; p. 16 last par.: the administration module may be provided in a server; p. 19 par. 3: the remote network may provide context information to the administration module 110; p. 5 par. 5: the context information may be provided by the remote network, such as by a policy verification module [master node], to the administration module; p. 24 par. 3: context information may specify which controller can be updated with which version) and
the OTA upgrade master node (see above) wherein
the first upgrade package is used to upgrade a first component group corresponding to the first upgrade control component in the at least two component groups (e.g., Lin, p. 9 par. 1: the server is configured to send the policy and the update together in a package; p. 7 par. 3: the policy comprises an installation policy comprising update installation instructions; p. 7 par. 4: the update installation instructions may specify which controllers are to undergo update, in which groups, and which version of the update should be applied to each controller or group of controllers; p. 11 par. 1: by receiving the policy and update the agent module can implement the update according to the policy).
a second component group corresponding to the second upgrade control component in the at least two component groups (see immediately above).
Lin does not explicitly disclose to download a first upgrade package and a second upgrade package from the server to a first upgrade control component and a second upgrade control component, respectfully, while bypassing the upgrade OTA upgrade master node; and the second upgrade package is used to upgrade a second component group corresponding to the second upgrade control component in the at least two component groups.
However, in an analogous art, Acharya discloses:
to download a first upgrade package and a second upgrade package from the server to a first upgrade control component and a second upgrade control component, respectfully, (e.g., Acharya, Fig. 13B and associated text, par. [0277]: each of the critical domain 1230 and user domain 1250 may include a respective eSync Client [control component]; par. [0279]: both eSync Client—1 and eSync Client—2 may request downloads; par. [0131]: the functions performed by the eSycn Client Modules in the different domains are entirely separate and not dependent at all on one another. Example functions that an eSync Client may perform include receiving the update from the external server; par. [0276]: functions performed by one domain are entirely independent of the other domain. Functions include downloading software updates (such as software delta(s)));
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the sending of upgrade packages to a control component taught by Lin to incorporate sending a first package to a first control component and a second package to a second component, as taught by Acharya, as Acharya would provide the advantage of a means of updating each group independently of the others. (See Acharya, pars. [0131]).
Further, in an analogous art, Carcerano discloses:
to download while bypassing the upgrade master node (e.g., Carcerano, Fig. 9 and associated text, par. [0158]: in the third example embodiment, an agent device [component] downloads updates from the internet directly, without using the controller [master node]; par. [0160]: the agent device sends a download request to the repository to downloaded the files specified in the received checkForUpdates request message (step 608) and then downloads the files (step 609 [i.e., the files are sent from the repository]; par. [0084]: an executable Microsoft Installer (MSI) installation utility that contains the file update [i.e., the updates are msi files (packages)]).
It would have been obvious to modify the sending of upgrade packages taught by Lin/Acharya such that the information is sent while bypassing the upgrade master node, as taught by Carcerano, as Carcerano would provide avoid the extra processing associated with the master node having to download the upgrade first and then transfer it to the component. (See Carcerano, pars. [0140] and [0160]).
Finally, in an analogous art Abe discloses:
the second upgrade package is used to upgrade a second component group (e.g., Abe, par. [01337]: one package is generated for one group. For example, the package “pkg_001_1 includes the ECUs [components] belonging to group 1, and the package “pkg_001_2” includes an ECU belonging to group 2; par. [1338]: specification data and a distribution package are individually generated for each group; par. [1084]: a distribution package including update data of rewrite target ECUs).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the component groups and generation of upgrade packages for those groups taught by Lin to incorporate generating a second upgrade package for a second component group, as taught by Abe. Updates for the different groups can only either be packaged together or separately and as Abe shows, one of ordinary skill could have substituted one for the other and the results would have been predictable. (See Abe, pars. [0732], [1337] and M.P.E.P. § 2143(I)(B)).
As to claim 10, Lin/Acharya/Carcerano/Abe discloses the vehicle according to claim 9 (see rejection of claim 9 above),
wherein the first message further indicates group information of the at least two component groups (e.g., Lin, p. 24 par. 3: context information about each of the groups would be provided to the administration unit. The context information may specify whether each group is homogeneous or heterogenous, whether there are sub groups, whether each group undergoes atomic or one-way dependency type update).
Claims 11 is rejected under 35 U.S.C. 103 as being unpatentable over in Lin (WO 2019/182509) in view of Acharya (US 2019/02684720) in view of Carcerano (US 2010/0037216) in view of Abe (US 2021/0157573) in further view of Shimonura (US 2019/0265966).
As to claim 11, Lin/Acharya/Cacerano/Abe discloses the vehicle according to claim 9 (see rejection of claim 9 above), and further discloses wherein the at least one processor is coupled to the at least one memory to execute the instructions to perform the recited operations (see rejection of claim 9 above) but does not explicitly disclose wherein the at least one processor is coupled to the at least one memory to execute the instructions to: receive version information of the component in the first component group from the first upgrade control component.
However, in an analogous art, Shimonura discloses to:
receive version information of the component in the first component group from the first upgrade control component (e.g., Shimonura, par. [0029]: an update process performed by the gateway [first upgrade control component]; par. [0039]: the identification information of the ECU 2 [the component] may include version information; Figs. 1, 3 and associated text, par. [0070]: when the reception of identification information is completed for all ECUs [the group], the identification information transmitting unit 41b of the processing unit 41 [on the gateway (first upgrade control component), see figure 3] transmits the identification information to the server 9 via the wireless communication device 5 [master node]; par. [040]: the wireless communication device can relay communication between the gateway 4 and the server 9. The wireless communication device 5 transmits, to the server 9, the data received from the gateway).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the instructions, version information, master node and first upgrade control component of Lin, such that the master node receives receive version information of the component in the first component group from the first upgrade control component, as taught by Shimonura, as Shimonura would provide the advantage of a means for the master node to acquire up to date version information, as suggested by Lin. (See Shimonura, par. [0039], Lin, p. 11 last par – p. 12 par. 1).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to TODD AGUILERA whose telephone number is (571)270-5186. The examiner can normally be reached M-F 11AM - 7:30PM EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Hyung S Sough can be reached at (571)272-6799. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/TODD AGUILERA/Primary Examiner, Art Unit 2192