A method and apparatus for updating an ECU

By dividing the ECU into multiple ECU groups and limiting the number of parallel updates based on bus bandwidth, the problem of insufficient bus bandwidth utilization in the existing technology is solved, and the efficiency and smoothness of OTA upgrades are improved.

CN116527501BActive Publication Date: 2026-07-21ZHEJIANG ZEEKR INTELLIGENT TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ZHEJIANG ZEEKR INTELLIGENT TECH CO LTD
Filing Date
2023-05-12
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

Existing technologies fail to fully utilize bus bandwidth during automotive OTA upgrades, resulting in low upgrade efficiency and potential data congestion issues that affect the smoothness of the upgrade process.

Method used

By dividing the ECUs to be updated into multiple ECU groups, with each group of ECUs connected to the same bus, and determining the upper limit of the number of ECUs that can be updated in parallel based on the bus bandwidth, the central gateway ECU sends matching ECU update data to ensure that the number of ECUs updated in parallel in each group reaches or equals the upper limit supported by the bus bandwidth.

Benefits of technology

It improves ECU update efficiency, reduces OTA upgrade time, avoids data congestion, and ensures a smooth upgrade process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116527501B_ABST
    Figure CN116527501B_ABST
Patent Text Reader

Abstract

The application provides an ECU updating method and device, the method comprises the following steps: in response to the obtained ECU updating data, determining n normal ECUs corresponding to the ECU updating data; wherein the n normal ECUs are divided into m ECU groups, and the buses connected by the normal ECUs in any ECU group are the same; sending the ECU updating data matched with the corresponding updating upper limit value to the m ECU groups through the central gateway ECU, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding updating upper limit value or reaches the total number of normal ECUs to be updated in the corresponding ECU group; wherein the updating upper limit value is the upper limit value of the number of ECUs updated in parallel in the corresponding ECU group, and the updating upper limit value is positively correlated with the bandwidth of the bus corresponding to the corresponding ECU group.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the automotive field, and more particularly to a method and apparatus for updating an ECU. Background Technology

[0002] Over-the-Air (OTA) technology is a technology that enables remote management of mobile terminal devices through the air interface of mobile communication. In the case of automobiles, OTA upgrades refer to the process where the OTA master node deployed on the vehicle obtains ECU (Electronic Control Unit) update data from a remote server and sends the obtained ECU update data to each ECU that needs to be updated, so that the ECU can update and upgrade according to the received ECU update data.

[0003] During OTA (Over-The-Air) updates, the car is unusable, so improving the efficiency of OTA updates can reduce the impact of the update on the car owner. Summary of the Invention

[0004] In view of this, the present invention provides an ECU update method and apparatus to address the shortcomings of related technologies.

[0005] Specifically, the present invention is achieved through the following technical solution:

[0006] According to a first aspect of the present invention, an ECU update method is provided, applied to a master node, the master node being connected to a central gateway ECU, the central gateway ECU being used to connect the master node to multiple buses, each bus being directly or indirectly connected to at least one ordinary ECU, the method comprising:

[0007] In response to the acquired ECU update data, n ordinary ECUs corresponding to the ECU update data are determined; wherein, the n ordinary ECUs are divided into m ECU groups, and the ordinary ECUs in any ECU group are connected to the same bus;

[0008] The central gateway ECU sends ECU update data matching the corresponding update upper limit to the m ECU groups, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding update upper limit or the total number of ordinary ECUs to be updated in the corresponding ECU group; wherein, the update upper limit is the upper limit of the number of ECUs updated in parallel in the corresponding ECU group, and the update upper limit is positively correlated with the bandwidth of the bus corresponding to the corresponding ECU group.

[0009] According to a second aspect of the present invention, an ECU update device is provided, applied to a master node, the master node being connected to a central gateway ECU, the central gateway ECU being used to connect the master node to multiple buses, each bus being directly or indirectly connected to at least one ordinary ECU, the device comprising:

[0010] First determining unit: In response to the acquired ECU update data, determine the n ordinary ECUs corresponding to the ECU update data; wherein, the n ordinary ECUs are divided into m ECU groups, and the ordinary ECUs in any ECU group are connected to the same bus;

[0011] Sending unit: Sends ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding update upper limit value or the total number of ordinary ECUs to be updated in the corresponding ECU group; wherein, the update upper limit value is the upper limit value of the number of ECUs updated in parallel in the corresponding ECU group, and the update upper limit value is positively correlated with the bandwidth of the bus corresponding to the corresponding ECU group.

[0012] According to a third aspect of the present invention, an electronic device is provided, comprising:

[0013] processor;

[0014] Memory used to store processor-executable instructions;

[0015] The processor implements the method as described in any one of the first aspects by executing the executable instructions.

[0016] According to a fourth aspect of the present invention, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of any of the methods described in the first aspect.

[0017] The technical solutions provided by the embodiments of the present invention may include the following beneficial effects:

[0018] In embodiments of the present invention, considering the impact of bus bandwidth on data transmission, during the transmission of ECU update data, the n ordinary ECUs to be updated are divided into m ECU groups, and the ordinary ECUs in any ECU group are connected to the same bus. The master node sends ECU update data matching the corresponding update upper limit to the m ECU groups through the central gateway ECU, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding update upper limit or reaches the total number of ordinary ECUs to be updated in the corresponding ECU group, thereby making full use of the bandwidth of the bus in which each ECU group is located, improving ECU update efficiency, and further improving OTA upgrade efficiency. Attached Figure Description

[0019] To more clearly illustrate the technical solutions of the present invention, the accompanying drawings used in the description of the embodiments or prior art will be briefly introduced below. Obviously, the drawings described below are merely some embodiments of the present invention, and those skilled in the art can obtain other drawings based on these drawings without any creative effort.

[0020] Figure 1 This is a schematic diagram of the architecture of an automotive OTA upgrade system shown in an embodiment of the present invention;

[0021] Figure 2 This is a schematic diagram of an in-vehicle network structure shown in an embodiment of the present invention;

[0022] Figure 3 This is a flowchart illustrating an ECU update method according to an embodiment of the present invention;

[0023] Figure 4 This is a schematic diagram of another vehicle network structure shown in the disclosed embodiments of the present invention;

[0024] Figure 5 This is a schematic diagram of another vehicle network structure shown in the disclosed embodiments of the present invention;

[0025] Figure 6 This is a schematic diagram illustrating an update result according to an embodiment of the present invention;

[0026] Figure 7 This is a schematic structural diagram of an electronic device shown in an embodiment of the present invention;

[0027] Figure 8 This is a block diagram of an ECU update device shown in an embodiment of the present invention. Detailed Implementation

[0028] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the present invention.

[0029] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular forms “a,” “the,” and “the” used in this invention and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any or all possible combinations of one or more of the associated listed items.

[0030] It should be understood that although the terms first, second, third, etc., may be used in this invention to describe various information, this information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first information may also be referred to as second information without departing from the scope of this invention, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."

[0031] An embodiment of an ECU update method according to the present invention will be described in detail below with reference to the accompanying drawings.

[0032] Figure 1 This is a schematic diagram of the architecture of an automotive OTA upgrade system according to an embodiment of the present invention. The system may include a server 10, a master node 11, and ECUs 12-15.

[0033] Server 10 can be a physical server containing a single host, or it can be a virtual server hosted in a host cluster. Server 10 can obtain ECU update data and send it to master node 11, so that master node 11 can distribute the ECU update data.

[0034] Specifically, when the vehicle system needs to be updated or upgraded, the administrator can package the ECU update data required for the version upgrade and upload it to server 10, so that server 10 maintains the ECU update data corresponding to each version.

[0035] The master node 11 is the processing unit for automotive OTA upgrades. It retrieves ECU update data from the connected server 10, identifies the ECU corresponding to the retrieved update data, and sends the update data to the identified ECU. The master node 11 is connected to a central gateway ECU, ECU 12, which can connect to multiple ordinary ECUs (ECU 13-ECU 15). During data transmission, the master node 11 can transmit the ECU update data to each ordinary ECU via ECU 12, and ECUs 13-ECU 15 can complete the update based on the received ECU update data.

[0036] As mentioned earlier, a car cannot be used while it is undergoing an OTA upgrade, so improving the efficiency of OTA upgrades can reduce the impact of the upgrade on car owners.

[0037] Figure 2 This is a schematic diagram of an in-vehicle network structure disclosed in an embodiment of the present invention. The network may include a master node 21, buses 22-25, and ECU01-ECU13. The master node 21 is connected to the buses 22-25 through ECU01. ECU02-ECU13 are directly or indirectly connected to the buses 22-25. ECU01 is a central gateway ECU, and ECU02-ECU13 are ordinary ECUs.

[0038] In related technologies, the master node sends ECU update data to multiple ECUs, enabling multiple ECUs to update in parallel, thereby improving OTA upgrade efficiency. Figure 2 For example, based on four buses, ordinary ECUs are divided into four ECU groups. The ECU group corresponding to bus 22 includes ECU02-ECU06; the ECU group corresponding to bus 23 includes ECU07-ECU08; the ECU group corresponding to bus 24 includes ECU09-ECU12; and the ECU group corresponding to bus 25 includes ECU13. The master node 21 can send ECU update data to each of the four ECU groups via ECU01, allowing the ordinary ECUs in these four groups to be updated in parallel. For example, the master node 21 can send ECU update data to ECU02, ECU07, ECU09, and ECU13 via ECU01, enabling these four ECUs to be updated in parallel.

[0039] However, this method does not take into account the impact of bus bandwidth on data transmission. Not only does it fail to fully utilize bus bandwidth, limiting OTA upgrade efficiency, but it may also lead to a situation where the number of ECUs being updated in parallel exceeds the bus bandwidth's capacity, resulting in data congestion and further interfering with OTA upgrades.

[0040] To address the problems existing in related technologies, this specification proposes a new ECU update method.

[0041] Figure 3 This is a flowchart illustrating an exemplary embodiment of the present invention for updating an ECU. The method is applied to a master node, which is connected to a central gateway ECU. The central gateway ECU connects the master node to multiple buses, each bus directly or indirectly connected to at least one ordinary ECU. Specifically, the method may include the following steps:

[0042] Step 302: In response to the acquired ECU update data, determine the n ordinary ECUs corresponding to the ECU update data; wherein the n ordinary ECUs are divided into m ECU groups, and the ordinary ECUs in any ECU group are connected to the same bus.

[0043] The master node is the processing unit for automotive OTA upgrades, possessing the functions of acquiring ECU update data, identifying the ECU corresponding to the ECU update data, and sending the ECU update data to the corresponding ECU. This master node is deployed in the vehicle and connected to the vehicle's central gateway ECU.

[0044] There are many ways for the master node to obtain ECU update data. For example, a scheduled task can be deployed on the master node to retrieve ECU update data. Every so often, the master node will send an update data retrieval request to a remote server. This request contains the version number of the current vehicle version. The remote server can determine whether an update is needed based on the version number in the request. If so, it will return the ECU update data for that version to the master node. Of course, the acquisition method is not limited to this. For example, the remote server can proactively send the version number of the latest version to the master node, which will then determine whether an update is needed. If so, the master node will send an update data retrieval request to the remote server to obtain the latest version of the ECU update data. This manual does not limit the specific acquisition method.

[0045] After obtaining the ECU update data, the master node can determine the ECU corresponding to the update data. Specifically, the ECU update data can include data update packages corresponding to each ECU. The data update packages are named according to a preset naming rule, and the master node can determine the corresponding ECU based on the name of the data update package. For example, if the name of the data update package is "xx100-01", it means that the version corresponding to this data update package is "xx100", and the corresponding ECU is "ECU01".

[0046] by Figure 4For example, the central gateway ECU01 connects the master node 41 to buses 42-45. Opposite to the central gateway ECU01 are the ordinary ECUs, including ordinary ECUs 02-13 located on buses 42-45. Assume the ordinary ECUs corresponding to the ECU update data are ECUs 02-13. Ordinary ECUs on the same bus are grouped into the same ECU group. In this vehicle network structure, ECUs 02-13 are the ordinary ECUs to be updated. There are four buses connected to the central gateway ECU01, each corresponding to one of four ECU groups. The ECU group corresponding to bus 32 includes ECUs 02-06; the ECU group corresponding to bus 33 includes ECUs 07-08; the ECU group corresponding to bus 34 includes ECUs 09-12; and the ECU group corresponding to bus 35 includes ECU 13. It is worth noting that ECU06 is indirectly connected to bus 32 via ECU05, therefore ECU06 is also classified as ECU group 1 (hereinafter, the ECU group corresponding to bus 32 is referred to as ECU group 1, the ECU group corresponding to bus 33 is referred to as ECU group 2, the ECU group corresponding to bus 34 is referred to as ECU group 3, and the ECU group corresponding to bus 35 is referred to as ECU group 4). Similarly, ECU11 and ECU12 are classified as ECU group 3.

[0047] Step 304: The central gateway ECU sends ECU update data matching the corresponding update upper limit value to the m ECU groups, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding update upper limit value or the total number of ordinary ECUs to be updated in the corresponding ECU group; wherein, the update upper limit value is the upper limit value of the number of ECUs updated in parallel in the corresponding ECU group, and the update upper limit value is positively correlated with the bandwidth of the bus corresponding to the corresponding ECU group.

[0048] Figure 4 The illustrated in-vehicle network architecture includes different types of buses, including Ethernet, CAN, CAN FD, and LIN. These buses have varying bandwidths, and the bandwidth is positively correlated with the maximum number of ECUs that can be updated in parallel; the higher the bandwidth, the higher the maximum number of ECUs that can be updated in parallel. Ethernet is generally used as the backbone network, with bandwidths up to 1000Mbps, supporting a very high maximum number of ECUs, with no default upper limit. CAN bus has a bandwidth of 0.5Mbps, and CAN FD bus has a bandwidth of 1Mbps; these two buses are generally used as secondary buses, supporting parallel updates of two ECUs. The LIN bus has a bandwidth of 19.2kbps. Due to bandwidth limitations, the LIN bus does not support parallel updates; that is, only one ECU can be updated in parallel.

[0049] like Figure 4As shown, the bus connecting the master node 41 and the central gateway ECU01 is Ethernet, buses 42 and 44 are CAN FD, buses 43 and 45 are CAN, and buses 46 and 47 are LIN. Based on the bus bandwidth, the update limit for each of the four ECU groups is 2. The master node 41 can send ECU update data to the four ECU groups through the central gateway ECU01, ensuring that the number of ECUs updated in parallel in ECU group 1, ECU group 2, and ECU group 3 reaches 2. For example, the master node 41 can send ECU update data to ECU02 and ECU03 in ECU group 1, ECU07 and ECU08 in ECU group 2, and ECU09 and ECU10 in ECU group 3. Since only ECU13 is a regular ECU to be updated in ECU group 4, the number of ECUs updated in ECU group 4 reaches the total number of regular ECUs to be updated in ECU group 4.

[0050] It is worth noting that because bus 47 is of the LIN type, ECU11 and ECU12 cannot be updated in parallel, and ECU12 can only be updated after ECU11 has been updated. This part will be explained in detail later and will not be repeated here.

[0051] In this embodiment, considering the impact of bus bandwidth on data transmission, during the transmission of ECU update data, the n ordinary ECUs to be updated are divided into m ECU groups, and the ordinary ECUs in any ECU group are connected to the same bus. The master node sends ECU update data matching the corresponding update limit to the m ECU groups through the central gateway ECU, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding update limit or reaches the total number of ordinary ECUs to be updated in the corresponding ECU group, thereby making full use of the bandwidth of the bus in which each ECU group is located, improving ECU update efficiency, and further improving OTA upgrade efficiency.

[0052] In one embodiment, the n ordinary ECUs include an ordinary gateway ECU. The ordinary gateway ECU is connected to a first bus and a second bus. The first bus is the bus corresponding to the ECU group to which the ordinary gateway ECU belongs. The ordinary ECU to be updated on the second bus is indirectly connected to the first bus through the ordinary gateway ECU. The method further includes: determining whether the ordinary gateway ECU has routing capability, wherein the routing capability is the ability to simultaneously perform ECU updates and transmit ECU update data; sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: sending the corresponding ECU update data to the ordinary ECU to be updated on the second bus when it is determined that the ordinary gateway ECU has routing capability or the ordinary gateway ECU update is completed.

[0053] by Figure 4 For example, there are ordinary gateway ECU05 and ECU10 in ordinary ECU02-ECU13. Taking ECU05 as an example, this ordinary gateway ECU is connected to a first bus 42 and a second bus 46. The first bus 42 is the bus corresponding to the ECU group where the ordinary gateway ECU05 is located. The ordinary ECU06 to be updated on the second bus is indirectly connected to the first bus 42 through ECU05.

[0054] Routing capability refers to the ability to simultaneously update ECUs and transmit ECU update data. When a regular gateway ECU has routing capability, it can be updated in parallel with regular ECUs on the second bus. For example, if ECU05 has routing capability, ECU05 and ECU06 can be updated in parallel; otherwise, ECU06 can only be updated after ECU05 has been updated.

[0055] The master node can send a routing information retrieval request to the ordinary gateway ECU to be updated to determine whether it has routing capabilities; alternatively, the master node maintains routing information for each ordinary gateway ECU in the vehicle, and can determine whether each ordinary gateway ECU has routing capabilities based on the routing information it maintains. This manual does not restrict the method of determining routing capabilities.

[0056] In this embodiment, the master node determines whether the ordinary gateway ECU has routing capabilities and whether the ordinary gateway ECU can be updated in parallel with the ordinary ECU on the second bus. This avoids data congestion caused by sending ECU update data to the corresponding ordinary ECU on the second bus before the ordinary gateway ECU without routing capabilities has completed its update, thereby ensuring the smoothness of vehicle OTA upgrades.

[0057] Furthermore, the method further includes: determining the transmission upper limit of the ordinary gateway ECU, wherein the transmission upper limit is the number of ECUs corresponding to the upper limit threshold of the ECU update data transmitted in parallel by the ordinary gateway ECU; the step of sending ECU update data matching the corresponding update upper limit to the m ECU groups through the central gateway ECU includes: when the update upper limit of the ECU group to which the ordinary gateway ECU is located is greater than the transmission upper limit of the ordinary gateway ECU, sending ECU update data matching the transmission upper limit of the ordinary gateway ECU to the ordinary gateway ECU, so that the number of ECUs updating in parallel on the second bus does not exceed the transmission upper limit of the ordinary gateway ECU.

[0058] In addition to considering the impact of routing capabilities on automotive OTA upgrades, the transmission limit of the ordinary gateway also needs to be taken into account. The transmission limit of an ordinary gateway ECU is the number of ECUs corresponding to the upper limit threshold of ECU update data that can be transmitted in parallel by the ordinary gateway ECU. Since the transmission limit of each ordinary gateway ECU is limited, if the update limit of the ECU group to which the ordinary gateway ECU belongs exceeds its transmission limit, ECU update data matching the ordinary gateway ECU's transmission limit is sent to the ordinary gateway ECU to ensure that the number of ECUs updating in parallel on the second bus does not exceed the ordinary gateway ECU's transmission limit.

[0059] Taking ECU10 as an example, when the transmission limit of ECU10 is 2 and the update limit of ECU group 3 to which ECU10 belongs is also 2 (ignoring the bandwidth of bus 47), ECU10 can transmit ECU update data in parallel for ECU11 and ECU12, that is, it supports parallel updates of ECU11 and ECU12; when the transmission limit of ECU10 is 1 (less than the update limit of ECU group 3), ECU10 cannot transmit ECU update data in parallel, ECU10 cannot support parallel updates of ECU11 and ECU12, and can only transmit ECU update data for one of them.

[0060] As for how to determine the transmission limit of a regular gateway ECU, it is similar to how to determine the routing capability. It can be done by sending a request or querying the gateway information maintained locally. This manual does not impose any restrictions on this.

[0061] In this embodiment, the master node determines the transmission limit of the ordinary gateway ECU and whether the transmission limit of the ordinary gateway ECU is less than the update limit of the ECU group to which the ordinary gateway ECU belongs. This ensures that the number of ECUs updated in parallel on the second bus does not exceed the transmission limit of the ordinary gateway ECU, avoiding data congestion caused by exceeding the transmission limit and thus ensuring the smoothness of OTA upgrades for automobiles.

[0062] In one embodiment, the ECU update data further includes the update data of the central gateway ECU; the method further includes: determining whether the central gateway ECU has routing capability, wherein the routing capability is the ability to simultaneously perform ECU updates and transmit ECU update data; the step of sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: when the central gateway ECU has the routing capability or the central gateway ECU has completed the update, sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU.

[0063] Furthermore, the method further includes: determining the transmission upper limit of the central gateway ECU; sending ECU update data matching the corresponding update upper limit to the m ECU groups through the central gateway ECU includes: when the transmission upper limit of the central gateway ECU is less than the sum of the update upper limits of the m ECU groups, sending ECU update data matching the transmission upper limit of the central gateway ECU to the m ECU groups through the central gateway ECU, so that the number of ECUs updating in parallel in the m ECU groups does not exceed the transmission upper limit of the central gateway ECU.

[0064] Similar to regular ECUs, the central gateway ECU can also be upgraded and updated. In this case, the routing capabilities and transmission limits of the central gateway ECU need to be considered.

[0065] by Figure 4 For example, if the central gateway ECU01 lacks routing capabilities, the master node 41 will only send ECU update data to the four ECU groups after ECU01 has completed its update. After the ECUs have finished updating, they can send an update completion notification back to the master node 41, thus informing the master node 41 that the update is complete. Assuming the transmission limit of ECU01 is 4, the total number of ECUs updating in parallel across the four ECU groups cannot exceed four; for example, these could be ECU02, ECU07, ECU09, and ECU13.

[0066] In this embodiment, considering the need for upgrades to the central gateway ECU, the routing capability and transmission limit of the central gateway ECU are determined to ensure that the number of ECUs updated in parallel in each ECU group does not exceed the transmission limit of the central gateway ECU, thereby avoiding data congestion.

[0067] In one embodiment, the method further includes: determining the update duration of the n ordinary ECUs based on the ECU update data, and determining the update order of the n ordinary ECUs in the corresponding ECU group based on the update duration of each ordinary ECU; the step of sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: sending ECU update data to the m ECU groups according to the update order of the ordinary ECUs in each ECU group, so that the ordinary ECUs in the m ECU groups are updated sequentially according to the corresponding update order.

[0068] There are many ways to determine the update duration. For example, the ECU update data may contain a data packet that records the ECUs to be updated in this version update and their corresponding update durations. The master node can parse this data packet to obtain the update duration. Alternatively, the ECU update data may contain multiple update data packets, each with its own update duration in its name. This manual does not restrict the method for determining the update duration.

[0069] like Figure 5 As shown, this vehicle network structure is in Figure 4 The update duration for each ECU has been added (displayed in parentheses within each ECU box). For example, the update duration for ECU01 is 5 minutes, and the update duration for ECU02 is 2 minutes. The longer the update duration, the higher the update priority, and the higher the update order.

[0070] Ignoring the bandwidth of the second bus for now, in ECU group 1, the update order for ECU06 is ECU06, ECU03, ECU04, ECU02, or ECU05. Considering the update limit of 2 for ECU group 1, the ECUs updated first in ECU group 1 are ECU06 and ECU03. Similarly, the update order for ECU group 2 is ECU08 and ECU07; the update order for ECU group 3 is ECU09 and ECU10 or ECU12 and ECU11.

[0071] In this embodiment, considering the impact of update duration on vehicle OTA upgrades, the update order of ECUs within the ECU group is sorted according to the update duration of the ECUs, so that ECUs with longer update durations are updated first, thereby improving the efficiency of OTA upgrades.

[0072] In one embodiment, sending ECU update data matching the corresponding update limit value to the m ECU groups through the central gateway ECU includes: on a target bus where the update limit value is one ECU, sending the corresponding ECU update data to the ordinary ECUs to be updated on the target bus according to the connection order of the ordinary ECUs on the target bus, so that the ordinary ECUs on the target bus are updated sequentially according to the connection order.

[0073] Taking bus 47 as an example, since bus 47 is of type LIN, the update limit for LIN is one ECU. Therefore, ECU11 and ECU12 cannot be updated in parallel. The connection order of ordinary ECUs on bus 47 is ECU11-ECU12. Therefore, ECU12 can only be updated after ECU11 has been updated. That is, the master node 41 sends the ECU update data to ECU11 first.

[0074] In this embodiment, considering the special nature of the bus with an update limit of one ECU, the corresponding ECU update data is sent to the ordinary ECU to be updated on the target bus according to the connection order of the ordinary ECUs on the target bus, so that the ordinary ECUs on the target bus are updated sequentially according to the connection order, ensuring the smoothness of OTA upgrade.

[0075] Taking into account the routing capabilities and transmission limits of both ordinary gateway ECUs and central gateway ECUs, as well as the update time of each ECU, and the special case where the update limit is a bus of one ECU, this approach is designed to address the following: Figure 5 The in-vehicle network structure shown (ECU01 has no routing capability and a transmission limit of 4; ECU05 and ECU10 have routing capabilities) yields the following order in which the master node sends ECU update data: Figure 6 As shown in the diagram, the horizontal axis represents the update time, and the vertical axis represents the name of the updated ECU. Taking ECU01 as an example, the update time for ECU01 is 1-5 minutes. After ECU01 is updated, ECU09, ECU06, ECU08, and ECU03 begin their parallel updates. In this embodiment, considering the routing capabilities and transmission limits of ordinary gateway ECUs and the central gateway ECU, as well as the update time of each ECU and the special case of a bus with an update limit of one ECU, the efficiency of OTA upgrades is improved while ensuring the smoothness of OTA upgrades.

[0076] Corresponding to the embodiments of the foregoing methods, the present invention also provides embodiments of devices, electronic devices, and vehicles.

[0077] Figure 7 This is a schematic structural diagram of an electronic device according to an embodiment of the present invention. Please refer to it. Figure 7 At the hardware level, the device includes a processor 701, a network interface 702, memory 703, non-volatile memory 704, and an internal bus 705, and may also include other hardware required for business operations. One or more embodiments of the present invention can be implemented in software, for example, the processor 701 reads the corresponding computer program from the non-volatile memory 704 into the memory 703 and then runs it. Of course, in addition to software implementation, one or more embodiments of the present invention do not exclude other implementation methods, such as logic devices or a combination of hardware and software, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0078] Figure 8 This invention illustrates a block diagram of an ECU update device according to an embodiment of the present invention. Please refer to... Figure 8 This device can be applied to, for example Figure 8The device shown is used to implement the technical solution described in this invention and is applied to a master node. The master node is connected to a central gateway ECU, which is used to connect the master node to multiple buses. Each bus is directly or indirectly connected to at least one ordinary ECU. The device includes:

[0079] The first determining unit 802 is used to determine n ordinary ECUs corresponding to the acquired ECU update data in response to the acquired ECU update data; wherein the n ordinary ECUs are divided into m ECU groups, and the ordinary ECUs in any ECU group are connected to the same bus;

[0080] The sending unit 804 is used to send ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding update upper limit value or reaches the total number of ordinary ECUs to be updated in the corresponding ECU group; wherein, the update upper limit value is the upper limit value of the number of ECUs updated in parallel in the corresponding ECU group, and the update upper limit value is positively correlated with the bandwidth of the bus corresponding to the corresponding ECU group.

[0081] Optionally, the n ordinary ECUs include an ordinary gateway ECU. The ordinary gateway ECU is connected to a first bus and a second bus. The first bus is the bus corresponding to the ECU group to which the ordinary gateway ECU is located. The ordinary ECU to be updated on the second bus is indirectly connected to the first bus through the ordinary gateway ECU.

[0082] The method further includes: a second determining unit 806, used to determine whether the ordinary gateway ECU has routing capability, wherein the routing capability is the ability to simultaneously perform ECU updates and transmit ECU update data;

[0083] The sending unit 804 is specifically used to: send corresponding ECU update data to the ordinary ECU to be updated on the second bus when it is determined that the ordinary gateway ECU has routing capability or the ordinary gateway ECU has been updated.

[0084] Optional,

[0085] The method further includes: a third determining unit 808, used to determine the transmission upper limit value of the ordinary gateway ECU, wherein the transmission upper limit value is the number of ECUs corresponding to the upper limit threshold of the ECU update data transmitted in parallel by the ordinary gateway ECU;

[0086] The sending unit 804 is specifically used to: send ECU update data matching the transmission upper limit of the ordinary gateway ECU to the ordinary gateway ECU when the update upper limit of the ECU group to which the ordinary gateway ECU is located is greater than the transmission upper limit of the ordinary gateway ECU, so that the number of ECUs updating in parallel on the second bus does not exceed the transmission upper limit of the ordinary gateway ECU.

[0087] Optionally, the ECU update data may also include update data for the central gateway ECU;

[0088] The method further includes: a fourth determining unit 810, used to determine whether the central gateway ECU has routing capability, wherein the routing capability is the ability to simultaneously perform ECU updates and transmit ECU update data;

[0089] The sending unit 804 is specifically used to: send ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU when the central gateway ECU has the routing capability or the central gateway ECU has been updated.

[0090] Optional,

[0091] The method further includes: a fifth determining unit 812, used to determine the transmission upper limit value of the central gateway ECU;

[0092] The sending unit 804 is specifically used to: when the transmission upper limit of the central gateway ECU is less than the sum of the update upper limits of the m ECU groups, send ECU update data matching the transmission upper limit of the central gateway ECU to the m ECU groups through the central gateway ECU, so that the number of ECUs updating in parallel in the m ECU groups does not exceed the transmission upper limit of the central gateway ECU.

[0093] Optional,

[0094] The method further includes: a sixth determining unit 814, used to determine the update duration of the n ordinary ECUs based on the ECU update data, and to determine the update order of the n ordinary ECUs in the corresponding ECU group based on the update duration of each ordinary ECU;

[0095] The sending unit 804 is specifically used to: send ECU update data to the m ECU groups according to the update order of the ordinary ECUs in each ECU group, so that the ordinary ECUs in the m ECU groups are updated sequentially according to the corresponding update order.

[0096] Optionally, the transmitting unit 804 is specifically used for:

[0097] On a target bus where the update limit is one ECU, corresponding ECU update data is sent to the ordinary ECUs to be updated on the target bus according to the connection order of the ordinary ECUs on the target bus, so that the ordinary ECUs on the target bus are updated sequentially according to the connection order.

[0098] While this invention contains numerous specific details, these should not be construed as limiting the scope of any invention or the scope of the claims, but rather are primarily intended to describe features of specific embodiments of particular inventions. Certain features described in the multiple embodiments of this invention may also be implemented in combination in a single embodiment. On the other hand, various features described in a single embodiment may also be implemented separately in multiple embodiments or in any suitable sub-combination. Furthermore, while features may function in certain combinations as described above and even initially claimed in this way, one or more features from a claimed combination may be removed from that combination in some cases, and a claimed combination may refer to a sub-combination or a variation of a sub-combination.

[0099] Similarly, although the operations are depicted in a specific order in the accompanying drawings, this should not be construed as requiring these operations to be performed in the specific order shown or sequentially, or requiring all illustrated operations to be performed to achieve the desired result. In some cases, multitasking and parallel processing may be advantageous. Furthermore, the separation of various system modules and components in the above embodiments should not be construed as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

[0100] Thus, specific embodiments of the subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recited in the claims may be performed in a different order and still achieve the desired result. Furthermore, the processes depicted in the drawings are not necessarily shown in a specific order or sequence to achieve the desired result. In some implementations, multitasking and parallel processing may be advantageous.

[0101] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for updating an ECU, characterized in that, The method is applied to a master node, which is the processing unit for automotive OTA upgrades. The master node is connected to a central gateway ECU, which connects the master node to multiple buses. Each bus is directly or indirectly connected to at least one ordinary ECU. The method includes: In response to the acquired ECU update data, n ordinary ECUs corresponding to the ECU update data are determined; wherein, the n ordinary ECUs are divided into m ECU groups, and the ordinary ECUs in any ECU group are connected to the same bus; the n ordinary ECUs include ordinary gateway ECUs, and the ordinary gateway ECUs are connected to a first bus and a second bus, wherein the first bus is the bus corresponding to the ECU group to which the ordinary gateway ECU is located, and the ordinary ECU to be updated on the second bus is indirectly connected to the first bus through the ordinary gateway ECU; Determine whether the ordinary gateway ECU has routing capability, wherein the routing capability is the ability to simultaneously perform ECU updates and transmit ECU update data; The central gateway ECU sends ECU update data matching the corresponding update upper limit to the m ECU groups, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding update upper limit or the total number of ordinary ECUs to be updated in the corresponding ECU group; wherein, the update upper limit is the upper limit of the number of ECUs updated in parallel in the corresponding ECU group, and the update upper limit is positively correlated with the bandwidth of the bus corresponding to the corresponding ECU group. The step of sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: when it is determined that the ordinary gateway ECU has routing capability or the ordinary gateway ECU has completed its update, sending the corresponding ECU update data to the ordinary ECU to be updated on the second bus.

2. The method according to claim 1, characterized in that, The method further includes: determining the transmission upper limit value of the ordinary gateway ECU, wherein the transmission upper limit value is the number of ECUs corresponding to the upper limit threshold of the ECU update data transmitted in parallel by the ordinary gateway ECU; Sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: when the update upper limit value of the ECU group to which the ordinary gateway ECU is located is greater than the transmission upper limit value of the ordinary gateway ECU, sending ECU update data matching the transmission upper limit value of the ordinary gateway ECU to the ordinary gateway ECU, so that the number of ECUs updating in parallel on the second bus does not exceed the transmission upper limit value of the ordinary gateway ECU.

3. The method according to claim 1, characterized in that, The ECU update data also includes the update data of the central gateway ECU; The method further includes: determining whether the central gateway ECU has routing capability, wherein the routing capability is the ability to simultaneously perform ECU updates and transmit ECU update data; Sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: when the central gateway ECU has the routing capability or the central gateway ECU has been updated, sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU.

4. The method according to claim 3, characterized in that, The method further includes: determining the transmission upper limit value of the central gateway ECU; The step of sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: when the transmission upper limit value of the central gateway ECU is less than the sum of the update upper limit values ​​of the m ECU groups, sending ECU update data matching the transmission upper limit value of the central gateway ECU to the m ECU groups through the central gateway ECU, so that the number of ECUs updating in parallel in the m ECU groups does not exceed the transmission upper limit value of the central gateway ECU.

5. The method according to claim 1, characterized in that, The method further includes: determining the update duration of the n ordinary ECUs based on the ECU update data, and determining the update order of the n ordinary ECUs in the corresponding ECU group based on the update duration of each ordinary ECU; The step of sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: sending ECU update data to the m ECU groups according to the update order of the ordinary ECUs in each ECU group, so that the ordinary ECUs in the m ECU groups are updated sequentially according to the corresponding update order.

6. The method according to claim 1, characterized in that, The step of sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: On a target bus where the update limit is one ECU, corresponding ECU update data is sent to the ordinary ECUs to be updated on the target bus according to the connection order of the ordinary ECUs on the target bus, so that the ordinary ECUs on the target bus are updated sequentially according to the connection order.

7. An ECU update device, characterized in that, The device is applied to a master node, which is the processing unit for automotive OTA upgrades. The master node is connected to a central gateway ECU, which connects the master node to multiple buses. Each bus is directly or indirectly connected to at least one ordinary ECU. The device includes: First determining unit: In response to the acquired ECU update data, determines n ordinary ECUs corresponding to the ECU update data; wherein, the n ordinary ECUs are divided into m ECU groups, and the ordinary ECUs in any ECU group are connected to the same bus; the n ordinary ECUs include ordinary gateway ECUs, and the ordinary gateway ECUs are connected to a first bus and a second bus, the first bus is the bus corresponding to the ECU group to which the ordinary gateway ECU is located, and the ordinary ECU to be updated on the second bus is indirectly connected to the first bus through the ordinary gateway ECU; The second determining unit: determines whether the ordinary gateway ECU has routing capability, wherein the routing capability is the ability to simultaneously perform ECU updates and transmit ECU update data; Sending unit: Sends ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU, so that the number of ECUs updated in parallel in each ECU group reaches the corresponding update upper limit value or the total number of ordinary ECUs to be updated in the corresponding ECU group; wherein, the update upper limit value is the upper limit value of the number of ECUs updated in parallel in the corresponding ECU group, and the update upper limit value is positively correlated with the bandwidth of the bus corresponding to the corresponding ECU group. Sending ECU update data matching the corresponding update upper limit value to the m ECU groups through the central gateway ECU includes: sending the corresponding ECU update data to the ordinary ECUs to be updated on the second bus when it is determined that the ordinary gateway ECU has routing capability or the ordinary gateway ECU has completed its update.

8. An electronic device, characterized in that, include: processor; Memory used to store processor-executable instructions; The processor implements the method as described in any one of claims 1 to 6 by executing the executable instructions.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 6.