Vehicle ECU software upgrading method and device, storage medium and diagnostic equipment
By selecting the appropriate OBD, WIFI, or USB upgrade mode using diagnostic equipment and optimizing the upgrade path based on the ECU software package configuration information, the problem of low efficiency in vehicle ECU software upgrades is solved, achieving a more efficient upgrade effect.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2026-03-31
AI Technical Summary
In existing technologies, vehicle ECU software upgrades are inefficient, especially when upgrading large software packages, which is slow and cannot meet the needs of intelligent and connected development.
The upgrade mode of the target vehicle's ECU is determined by diagnostic equipment. At least one of the following upgrade modes is adopted: OBD upgrade mode, WIFI upgrade mode, and USB flash drive upgrade mode. The appropriate upgrade method is selected based on the configuration information of the ECU software package, including the size and upgrade mode fields, and the upgrade path is optimized.
It improves the efficiency of vehicle ECU software upgrades, especially when upgrading large software packages. By rationally allocating multiple upgrade modes, it enhances the upgrade speed and overall efficiency.
Smart Images

Figure CN121764487A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of vehicle manufacturing technology, and in particular to a vehicle ECU software upgrade method, a vehicle ECU software upgrade device, a storage medium, and a diagnostic device. Background Technology
[0002] With the deepening development of vehicle intelligence and connectivity, vehicle ECU software upgrades will become increasingly widespread and important. With the popularization of new energy vehicles and the development of autonomous driving technology, vehicle ECU software upgrades will become a crucial means of improving vehicle performance and functionality. In conclusion, vehicle ECU software upgrades are an important component of the development of vehicle intelligence and connectivity. Through software upgrades, vehicle performance and user experience can be improved. Summary of the Invention
[0003] In view of this, embodiments of this application aim to provide a vehicle ECU software upgrade method, a vehicle ECU software upgrade device, a storage medium, and a diagnostic device.
[0004] The technical solution of this application is implemented as follows:
[0005] Firstly, this application provides a method for upgrading vehicle ECU software.
[0006] The vehicle ECU software upgrade method provided in this application embodiment is used to upgrade the software of a vehicle ECU through diagnostic equipment, including:
[0007] When the diagnostic equipment receives a vehicle ECU software upgrade command, it determines the target upgrade mode for the target vehicle ECU software upgrade. The target upgrade mode is one of multiple upgrade modes, including OBD upgrade mode, WIFI upgrade mode and / or USB flash drive upgrade mode.
[0008] According to the target upgrade mode, the target vehicle ECU is upgraded with software.
[0009] In some embodiments, determining the target upgrade mode for software upgrade of the target vehicle ECU includes:
[0010] Identify the target vehicle ECU and obtain the configuration information of the ECU software package for the target vehicle ECU, wherein the ECU software package is used to upgrade the software of the target vehicle ECU;
[0011] Based on the configuration information in the ECU software package, the target upgrade mode for software upgrade of the ECU software package is determined.
[0012] In some embodiments, the configuration information includes at least the size of the ECU software package;
[0013] The step of determining the target upgrade mode for software upgrade of the ECU software package based on the configuration information in the ECU software package includes:
[0014] Based on the size of the ECU software package, determine the target upgrade mode for software upgrade of the ECU software package;
[0015] If the size of the ECU software package is less than a predetermined threshold, then the target upgrade mode for the ECU software package to be upgraded is determined to be the OBD upgrade mode.
[0016] If the size of the ECU software package is greater than or equal to a predetermined threshold, then the target upgrade mode for the ECU software package to be upgraded is determined to be either the WIFI upgrade mode or the USB flash drive upgrade mode.
[0017] In some embodiments, the configuration information includes at least the upgrade mode field of the ECU software package;
[0018] The step of determining the target upgrade mode for software upgrade of the ECU software package based on the configuration information in the ECU software package includes:
[0019] Based on the upgrade mode field of the ECU software package, the target upgrade mode for the ECU software package to be upgraded is determined.
[0020] In some embodiments, the WIFI upgrade mode is determined as follows: the diagnostic device sends the ECU software package to the vehicle's infotainment system via the vehicle's WIFI hotspot, so that the infotainment system can parse the ECU software package to obtain the flashing data, and then perform the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
[0021] The OBD upgrade mode is determined to be that the diagnostic device parses the ECU software package to obtain the flashing data, and then performs the software upgrade flashing of the target vehicle ECU through the vehicle OBD port;
[0022] The USB flash drive upgrade mode is defined as follows: the diagnostic device transmits the ECU software package to the USB flash drive, and the vehicle's infotainment system then obtains and parses the ECU software package by accessing the USB flash drive to get the flashing data, and then performs the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
[0023] In some embodiments, before receiving a vehicle ECU software upgrade instruction, the diagnostic device acquires and stores the ECU software package locally via the cloud;
[0024] Alternatively, after receiving a vehicle ECU software upgrade instruction, the diagnostic device may obtain and store the ECU software package locally via the cloud.
[0025] In some embodiments, the configuration information of the ECU software package includes a first software ID, a first software version information, and a first hardware version information; before the diagnostic device receives the vehicle ECU software upgrade instruction, the method includes:
[0026] The diagnostic device establishes a wired communication connection with the vehicle ECU through the vehicle's OBD port and obtains ECU information through the vehicle's OBD port; wherein, the ECU information includes a second software ID, second software version information, and second hardware version information;
[0027] The acquired ECU information is compared one by one with the configuration information of the ECU software package. If it is determined that the software IDs of the two are the same and the hardware version information is the same, and the first software version information is an upgraded version relative to the second software version information, then a software update prompt is issued according to the configuration information of the ECU software package.
[0028] In some embodiments, when it is determined that the vehicle ECU software upgrade is performed according to the WIFI upgrade mode, the diagnostic device establishes a wireless communication connection with the vehicle's WIFI hotspot and sends an authentication request to the vehicle's WIFI, so that the vehicle's WIFI sends a random number to the diagnostic device according to the authentication request.
[0029] The system receives the random number and calculates a key based on the random number to determine the verification code. The verification code is then sent to the vehicle's infotainment system for verification. If the verification is successful, the system sends the ECU software package to the vehicle's infotainment system via the vehicle's Wi-Fi hotspot. The vehicle's infotainment system then parses the ECU software package to obtain the flashing data and performs the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
[0030] Secondly, this application provides a vehicle ECU software upgrade device, which is used to upgrade the software of a vehicle ECU through diagnostic equipment, including:
[0031] The configuration information determination module is used to determine the target upgrade mode for the target vehicle ECU software upgrade when the diagnostic device receives the vehicle ECU software upgrade instruction. The target upgrade mode is one of a variety of upgrade modes, including OBD upgrade mode, WIFI upgrade mode and / or USB flash drive upgrade mode.
[0032] The upgrade mode determination module is used to perform software upgrades on the target vehicle ECU according to the target upgrade mode.
[0033] Thirdly, this application provides a computer-readable storage medium storing a vehicle ECU software upgrade program thereon, which, when executed by a processor, implements the vehicle ECU software upgrade method described in the first aspect above.
[0034] Fourthly, this application provides a diagnostic device, including a memory, a processor, and a vehicle ECU software upgrade program stored in the memory and executable on the processor. When the processor executes the vehicle ECU software upgrade program, it implements the vehicle ECU software upgrade method described in the first aspect above.
[0035] According to an embodiment of this application, a vehicle ECU software upgrade method is used to upgrade the software of a vehicle ECU using a diagnostic device. The method includes: when the diagnostic device receives a vehicle ECU software upgrade instruction, determining a target upgrade mode for the target vehicle ECU, wherein the target upgrade mode is one of multiple upgrade modes; wherein the multiple upgrade modes include an OBD upgrade mode, a WIFI upgrade mode, and / or a USB flash drive upgrade mode; and upgrading the software of the target vehicle ECU according to the target upgrade mode. This application adds a WIFI upgrade mode and / or a USB flash drive upgrade mode to the software upgrade modes, and determines which software upgrade mode to use among the OBD upgrade mode, WIFI upgrade mode, and USB flash drive upgrade mode through configuration information in the ECU software package. The reasonable allocation and use of multiple software upgrade modes helps to improve the software upgrade efficiency of the vehicle ECU.
[0036] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0037] Figure 1 This is a flowchart illustrating a vehicle ECU software upgrade method according to an exemplary embodiment;
[0038] Figure 2 This is a schematic diagram of a vehicle ECU software upgrade system according to an exemplary embodiment;
[0039] Figure 3 This is a schematic diagram of a vehicle ECU software upgrade device according to an exemplary embodiment. Detailed Implementation
[0040] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.
[0041] With the deepening development of vehicle intelligence and connectivity, vehicle ECU software upgrades will become increasingly widespread and important. With the popularization of new energy vehicles and the development of autonomous driving technology, vehicle ECU software upgrades will become a crucial means of improving vehicle performance and functionality. In conclusion, vehicle ECU software upgrades are an important component of the development of vehicle intelligence and connectivity. Through software upgrades, vehicle performance and user experience can be improved.
[0042] In view of the above situation, this application provides a vehicle ECU software upgrade method, which is used to upgrade the software of a vehicle ECU through diagnostic equipment. Figure 1 This is a flowchart illustrating a vehicle ECU software upgrade method according to an exemplary embodiment. Figure 1 As shown, the vehicle ECU software upgrade method includes:
[0043] Step 10: When the diagnostic equipment receives the vehicle ECU software upgrade instruction, it determines the target upgrade mode for the target vehicle ECU software upgrade. The target upgrade mode is one of multiple upgrade modes; wherein, the multiple upgrade modes include OBD upgrade mode, WIFI upgrade mode and / or USB flash drive upgrade mode.
[0044] Step 11: Perform a software upgrade on the target vehicle ECU according to the target upgrade mode.
[0045] In this exemplary embodiment, Figure 2 This is a schematic diagram of a vehicle ECU software upgrade system according to an exemplary embodiment. Figure 2 As shown, the vehicle ECU software upgrade system comprises a cloud platform, diagnostic equipment, a vehicle infotainment system, ECUs connected to the CAN bus (ECU1, ECU2, ECU3), domain controllers with Ethernet communication (domain controller 1, domain controller 2), ECUs with CANFD communication (ECU4, ECU5), and a standard CAN / CANFD gateway. The cloud stores the ECU software packages that need upgrading for each ECU. Each software package is uploaded to the cloud after testing and approval. The diagnostic equipment can access and synchronously download the packages to its local machine.
[0046] In this exemplary embodiment, the diagnostic device connects to the cloud via an external network to download software packages to the local machine. It can also connect to the vehicle's Wi-Fi hotspot to send software packages to the vehicle's infotainment system or connect to the OBD via a hard wire to directly flash the vehicle's ECU.
[0047] In this exemplary embodiment, multiple upgrade modes include an OBD upgrade mode, a WIFI upgrade mode, and / or a USB flash drive upgrade mode. This means that multiple upgrade modes include an OBD upgrade mode, and at least one of a WIFI upgrade mode and a USB flash drive upgrade mode. For example, multiple upgrade modes include an OBD upgrade mode and a WIFI upgrade mode; or, multiple upgrade modes include an OBD upgrade mode and a USB flash drive upgrade mode; or, multiple upgrade modes include an OBD upgrade mode, a WIFI upgrade mode, and a USB flash drive upgrade mode. In this exemplary embodiment, the method of determining the target upgrade mode, in addition to determining the target upgrade mode based on the configuration information in the ECU software package among the above-mentioned upgrade modes, may also include other upgrade modes. For example, multiple upgrade modes include an OBD upgrade mode and a WIFI upgrade mode, plus other upgrade modes; or, multiple upgrade modes include an OBD upgrade mode and a USB flash drive upgrade mode, plus other upgrade modes; or, multiple upgrade modes include an OBD upgrade mode, a WIFI upgrade mode, and a USB flash drive upgrade mode, plus other upgrade modes. This facilitates the selection of a more suitable upgrade mode from multiple upgrade modes, thereby improving the efficiency of software package upgrades.
[0048] In this exemplary embodiment, vehicle ECU software upgrades are generally performed via OBD upgrade mode, i.e., through the OBD port and CAN bus. However, not all ECUs are suitable for OBD upgrade mode. For example, domain controllers or UI processors, or processors with large processing volumes, may experience slower upgrade speeds via OBD. Therefore, this application adds a WIFI upgrade mode and / or a USB flash drive upgrade mode. This application can employ multiple upgrade modes, such as WIFI upgrade mode, USB flash drive upgrade mode, and / or OBD upgrade mode, to allocate and use these modes. Software upgrades suitable for OBD upgrade mode are performed using OBD upgrade mode, while those suitable for WIFI upgrade mode or USB flash drive upgrade mode are performed using either WIFI or USB flash drive upgrade mode. This reasonable allocation and use of multiple software upgrade modes helps improve the efficiency of vehicle ECU software upgrades. For example, WIFI upgrade mode can be used for domain controllers or UI processors to improve software upgrade efficiency.
[0049] In some embodiments, determining the target upgrade mode for software upgrade of the target vehicle ECU includes:
[0050] Identify the target vehicle ECU and obtain the configuration information of the ECU software package for the target vehicle ECU, wherein the ECU software package is used to upgrade the software of the target vehicle ECU;
[0051] Based on the configuration information in the ECU software package, the target upgrade mode for software upgrade of the ECU software package is determined.
[0052] In this exemplary embodiment, when determining the specific upgrade mode, the target upgrade mode for the ECU software package can be determined through the configuration information in the ECU software package. The configuration information contains specific instructions on the upgrade method for the ECU software package. Thus, the upgrade method can be quickly determined through the configuration information in the ECU software package, thereby improving the efficiency of software package upgrades.
[0053] In this exemplary embodiment, the method for determining the target upgrade mode may include not only determining the target upgrade mode based on the configuration information in the ECU software package among the aforementioned upgrade modes, but also other upgrade modes. The selection of the target upgrade mode can be based on configuration information or manually selected by the user. For example, an upgrade mode selection option can be provided on the diagnostic device's operation page. The user selects the upgrade mode from multiple options, choosing the target upgrade mode. For example, selecting the WIFI upgrade mode as the target upgrade mode from multiple options, and so on. Each option can correspond to one upgrade mode.
[0054] In some embodiments, the configuration information includes at least the size of the ECU software package;
[0055] The step of determining the target upgrade mode for software upgrade of the ECU software package based on the configuration information in the ECU software package includes:
[0056] Based on the size of the ECU software package, determine the target upgrade mode for software upgrade of the ECU software package;
[0057] If the size of the ECU software package is less than a predetermined threshold, then the target upgrade mode for the ECU software package to be upgraded is determined to be the OBD upgrade mode.
[0058] If the size of the ECU software package is greater than or equal to a predetermined threshold, then the target upgrade mode for the ECU software package to be upgraded is determined to be either the WIFI upgrade mode or the USB flash drive upgrade mode.
[0059] In this exemplary embodiment, the volume of the ECU software package is used to characterize the package size, such as 20M, 100M, etc. The predetermined threshold can be set according to the specific software package upgrade requirements. For example, it can be set to 200M or 300M. For example, when upgrading a software package smaller than 200M, it can be successfully completed through the OBD upgrade mode. Therefore, the target upgrade mode for the ECU software package upgrade is determined to be the OBD upgrade mode, and the software package upgrade can be performed through the OBD upgrade mode.
[0060] If the package size is greater than or equal to a predetermined threshold, it indicates that upgrading the package via OBD upgrade mode may affect software upgrade efficiency. In this case, the target upgrade mode for the ECU package can be determined to be either the WIFI upgrade mode or the USB flash drive upgrade mode. Since the data transmission efficiency of the WIFI upgrade mode or the USB flash drive upgrade mode is much faster than the OBD upgrade mode, when the package size is large, data transmission can be performed via WIFI upgrade mode or the USB flash drive upgrade mode to achieve package download and upgrade. Thus, a reasonable allocation and use of OBD upgrade mode, WIFI upgrade mode, and USB flash drive upgrade mode is beneficial to improving the software upgrade efficiency of vehicle ECU software. For example, ECU1, ECU2, and ECU3, which are connected to the vehicle's CAN bus, are typical ECUs (upgrade packages are usually less than 20MB) and can be upgraded via OBD upgrade mode.
[0061] In some embodiments, the configuration information includes at least the upgrade mode field of the ECU software package;
[0062] The step of determining the target upgrade mode for software upgrade of the ECU software package based on the configuration information in the ECU software package includes:
[0063] Based on the upgrade mode field of the ECU software package, the target upgrade mode for the ECU software package to be upgraded is determined.
[0064] In this exemplary embodiment, the configuration information includes at least an upgrade mode field for the ECU software package. The upgrade mode field of the ECU software package determines that the target upgrade mode for the software upgrade is one of the OBD upgrade mode, WIFI upgrade mode, and USB flash drive upgrade mode. The upgrade mode field of the ECU software package has field information indicating or specifying the upgrade mode for which the package is being upgraded. For example, the upgrade mode field may be a first preset field indicating that the target upgrade mode for the software upgrade is the OBD upgrade mode; a second preset field indicating that the target upgrade mode is the WIFI upgrade mode; or a third preset field indicating that the target upgrade mode is the USB flash drive upgrade mode. Thus, the upgrade mode of the package can be directly determined through the upgrade mode field in the ECU software package, thereby improving the overall upgrade efficiency of the vehicle software system. Each preset field can be a custom string. For example, the first preset field could be qwe, the second preset field rty, the third preset field yui, and so on. When the upgrade mode field is qwe, the target upgrade mode for the ECU software package is indicated as the OBD upgrade mode; when the upgrade mode field is rty, the target upgrade mode is indicated as the WIFI upgrade mode; and when the upgrade mode field is yui, the target upgrade mode is indicated as the USB flash drive upgrade mode. Thus, by distinguishing the upgrade mode field in the ECU software package, the upgrade mode of the ECU software package can be directly determined, thereby improving the upgrade efficiency of the ECU software package.
[0065] In other embodiments, the first preset field is used to indicate that the target of the software upgrade of the ECU software package is a vehicle ECU connected to the CAN bus, in which case the OBD upgrade mode can be used; the second preset field is used to indicate that the target of the software upgrade of the ECU software package is a vehicle ECU that communicates with the vehicle's infotainment system via the vehicle Ethernet, in which case the WIFI upgrade mode / USB flash drive upgrade mode can be used.
[0066] In some implementations, the upgrade mode field can be a first preset field, while in other implementations, the upgrade mode field can be a second or third preset field.
[0067] In some embodiments, the WIFI upgrade mode is determined as follows: the diagnostic device sends the ECU software package to the vehicle's infotainment system via the vehicle's WIFI hotspot, so that the infotainment system can parse the ECU software package to obtain the flashing data, and then perform the software upgrade flashing of the target vehicle ECU via the vehicle's Ethernet. The vehicle's infotainment system communicates with the domain controller via the vehicle's Ethernet, and the domain controller communicates with the target vehicle ECU via CANFD. Since the data transmission speed of the vehicle's Ethernet and CANFD is fast, the software upgrade flashing speed of the WIFI upgrade mode is relatively fast.
[0068] The OBD upgrade mode involves the diagnostic device parsing the ECU software package to obtain flashing data, and then performing a software upgrade flash on the target vehicle ECU via the vehicle's OBD port. The diagnostic device communicates with the target vehicle ECU through the vehicle's OBD port and the CAN bus. Due to the slow data transmission speed of the CAN bus, the software upgrade flashing speed of this OBD upgrade mode is relatively slow.
[0069] The USB flash drive upgrade mode involves the diagnostic device transmitting the ECU software package to a USB flash drive. The vehicle's infotainment system then accesses and parses the ECU software package via the USB flash drive to obtain the flashing data. Finally, it performs the software upgrade flashing of the target vehicle ECU via the vehicle's Ethernet network. The vehicle's infotainment system communicates with the domain controller via Ethernet, and the domain controller communicates with the target vehicle ECU via CANFD. Due to the high data transmission speeds of Ethernet and CANFD, the software upgrade flashing speed using the USB flash drive upgrade mode is relatively fast.
[0070] In this exemplary embodiment, the OBD upgrade mode, WIFI upgrade mode, and USB flash drive upgrade mode represent three different software upgrade and flashing methods. In the OBD upgrade mode, the diagnostic device parses the ECU software package to obtain flashing data, and then performs the software upgrade and flashing of the target vehicle ECU via the vehicle's OBD port. In the WIFI upgrade mode, the diagnostic device sends the ECU software package to the vehicle's infotainment system via the vehicle's WIFI hotspot, allowing the system to parse the package and obtain flashing data, and then performs the software upgrade and flashing of the target vehicle ECU via the vehicle's Ethernet. In the USB flash drive upgrade mode, the diagnostic device transmits the ECU software package to a USB flash drive, allowing the vehicle's infotainment system to access and parse the package, obtain flashing data, and then perform the software upgrade and flashing of the target vehicle ECU via the vehicle's Ethernet. The software upgrade and flashing speed of the OBD upgrade mode is slower than that of the WIFI and USB flash drive upgrade modes. Therefore, the OBD upgrade mode can be used when upgrading smaller ECU software packages, while the WIFI or USB flash drive upgrade modes can be used when upgrading larger packages. This will help improve the overall upgrade efficiency of the vehicle software system.
[0071] In some embodiments, before receiving a vehicle ECU software upgrade instruction, the diagnostic device acquires and stores the ECU software package locally via the cloud;
[0072] Alternatively, after receiving a vehicle ECU software upgrade instruction, the diagnostic device may obtain and store the ECU software package locally via the cloud.
[0073] In this exemplary embodiment, the diagnostic device acquires and stores the ECU software package locally via the cloud, and then verifies and upgrades the ECU software package. Specifically, the diagnostic device may acquire and store the ECU software package locally via the cloud before receiving the vehicle ECU software upgrade instruction; or, the diagnostic device may acquire and store the ECU software package locally via the cloud after receiving the vehicle ECU software upgrade instruction. This improves the convenience of the diagnostic device in acquiring the software package to be upgraded.
[0074] In some embodiments, the configuration information of the ECU software package includes a first software ID, a first software version information, and a first hardware version information; before the diagnostic device receives the vehicle ECU software upgrade instruction, the method includes:
[0075] The diagnostic device establishes a wired communication connection with the vehicle ECU through the vehicle's OBD port and obtains ECU information through the vehicle's OBD port; wherein, the ECU information includes a second software ID, second software version information, and second hardware version information;
[0076] The acquired ECU information is compared one by one with the configuration information of the ECU software package. If it is determined that the software IDs of the two are the same and the hardware version information is the same, and the first software version information is an upgraded version relative to the second software version information, then a software update prompt is issued according to the configuration information of the ECU software package.
[0077] In this exemplary embodiment, before upgrading the vehicle ECU software, the diagnostic device needs to confirm that the ECU software package is the software package corresponding to the hardware that needs to be upgraded. At this time, the configuration information of the ECU software package and ECU information can be obtained; wherein, the configuration information of the ECU software package is the configuration information of the software package to be upgraded, and the ECU information is the configuration information already existing in the vehicle hardware; wherein, the configuration information of the ECU software package includes a first software ID, a first software version information, and a first hardware version information; the ECU information includes a second software ID, a second software version information, and a second hardware version information. Then, the obtained ECU information is compared one by one with the configuration information of the ECU software package. The software ID identifies the software identity, indicating which hardware it supports. For example, a software ID of APP001 identifies a software package for a UI processor. Therefore, the hardware to be updated by the ECU software package can be determined through the software ID of the ECU software package. Then, the software version information and hardware version information of the ECU software package are read to determine whether the ECU software package is a compatible version software package that can be used for software updates.
[0078] For example, if it is determined that the software IDs of the two software packages are identical, and their hardware version information is also identical, and the first software version information is an upgraded version relative to the second software version information, then a software update prompt is issued based on the configuration information of the ECU software package. This helps to reduce the possibility of accidental software package updates.
[0079] In some embodiments, when it is determined that the vehicle ECU software upgrade is performed according to the WIFI upgrade mode, the diagnostic device establishes a wireless communication connection with the vehicle's WIFI hotspot and sends an authentication request to the vehicle's WIFI, so that the vehicle's WIFI sends a random number to the diagnostic device according to the authentication request.
[0080] The system receives the random number and calculates a key based on the random number to determine the verification code. The verification code is then sent to the vehicle's infotainment system for verification. If the verification is successful, the system sends the ECU software package to the vehicle's infotainment system via the vehicle's Wi-Fi hotspot. The vehicle's infotainment system then parses the ECU software package to obtain the flashing data and performs the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
[0081] In this exemplary embodiment, when upgrading the software package via the Wi-Fi upgrade mode, to enhance security, a communication security verification can be performed using random numbers before sending the ECU software package to the vehicle's infotainment system via the in-vehicle Wi-Fi hotspot. After successful verification, the ECU software package is sent to the vehicle's infotainment system via the in-vehicle Wi-Fi hotspot, allowing the system to parse the package to obtain the flashing data, and then execute the software upgrade flashing of the target vehicle ECU via the in-vehicle Ethernet. This improves the data communication security of the Wi-Fi upgrade mode.
[0082] This application provides a vehicle ECU software upgrade device, which is used to upgrade the software of a vehicle ECU through diagnostic equipment. Figure 3 This is a schematic diagram of a vehicle ECU software upgrade device structure according to an exemplary embodiment, such as... Figure 3 As shown, the vehicle ECU software upgrade device includes:
[0083] The configuration information determination module 30 is used to determine the target upgrade mode for the target vehicle ECU software upgrade when the diagnostic device receives the vehicle ECU software upgrade instruction. The target upgrade mode is one of a variety of upgrade modes, including OBD upgrade mode, WIFI upgrade mode and / or USB flash drive upgrade mode.
[0084] The upgrade mode determination module 31 is used to perform software upgrade on the target vehicle ECU according to the target upgrade mode.
[0085] In this exemplary embodiment, as Figure 2 As shown, the vehicle ECU software upgrade system comprises a cloud platform, diagnostic equipment, a vehicle infotainment system, ECUs connected to a standard CAN bus (ECU1, ECU2, ECU3), domain controllers with Ethernet communication (domain controller 1, domain controller 2), ECUs with CANFD communication (ECU4, ECU5), and a standard CAN / CANFD gateway. The cloud platform stores the ECU software packages that need upgrading for each ECU. After testing and approval, each software package is uploaded to the cloud. The diagnostic equipment can access and synchronously download the packages to its local machine.
[0086] In this exemplary embodiment, the diagnostic device can be an automotive diagnostic tool or a smart terminal device with automotive diagnostic functions (such as a laptop, desktop computer, or tablet computer). It can download the ECU software package to the local machine via an external network connection to the cloud, or connect to the vehicle's Wi-Fi hotspot to send the ECU software package to the vehicle's infotainment system, or connect via a hardwired connection to the OBD system to directly flash the vehicle's ECU.
[0087] In this exemplary embodiment, vehicle ECU software upgrades are generally performed via OBD upgrade mode, i.e., through the OBD port and CAN bus. However, not all ECUs are suitable for OBD upgrade mode. For example, domain controllers or UI processors, or processors with large processing volumes, may experience slower upgrade speeds via OBD. Therefore, this application adds a WIFI upgrade mode and / or a USB flash drive upgrade mode. This application can employ multiple upgrade modes, such as WIFI upgrade mode, USB flash drive upgrade mode, and / or OBD upgrade mode, to allocate and use these modes. Software upgrades suitable for OBD upgrade mode are performed using OBD upgrade mode, while those suitable for WIFI upgrade mode or USB flash drive upgrade mode are performed using either WIFI or USB flash drive upgrade mode. This reasonable allocation and use of multiple software upgrade modes helps improve the efficiency of vehicle ECU software upgrades. For example, WIFI upgrade mode can be used for domain controllers or UI processors to improve software upgrade efficiency.
[0088] In some embodiments, the configuration information determining module 30 is used for
[0089] Identify the target vehicle ECU and obtain the configuration information of the ECU software package for the target vehicle ECU, wherein the ECU software package is used to upgrade the software of the target vehicle ECU;
[0090] Based on the configuration information in the ECU software package, the target upgrade mode for software upgrade of the ECU software package is determined.
[0091] In this exemplary embodiment, when determining the specific upgrade mode, the target upgrade mode for the ECU software package can be determined through the configuration information in the ECU software package. The configuration information contains specific instructions on the upgrade method for the ECU software package. Thus, the upgrade method can be quickly determined through the configuration information in the ECU software package, thereby improving the efficiency of software package upgrades.
[0092] In some embodiments, the configuration information includes at least the size of the ECU software package;
[0093] The configuration information determination module 30 is used for
[0094] Based on the size of the ECU software package, determine the target upgrade mode for software upgrade of the ECU software package;
[0095] If the size of the ECU software package is less than a predetermined threshold, then the target upgrade mode for the ECU software package to be upgraded is determined to be the OBD upgrade mode.
[0096] If the size of the ECU software package is greater than or equal to a predetermined threshold, then the target upgrade mode for the ECU software package to be upgraded is determined to be either the WIFI upgrade mode or the USB flash drive upgrade mode.
[0097] In this exemplary embodiment, the volume of the ECU software package is used to characterize the package size, such as 20M, 100M, etc. The predetermined threshold can be set according to the specific software package upgrade requirements. For example, it can be set to 200M or 300M. For example, when upgrading a software package smaller than 200M, it can be successfully completed through the OBD upgrade mode. Therefore, the target upgrade mode for the ECU software package upgrade is determined to be the OBD upgrade mode, and the software package upgrade can be performed through the OBD upgrade mode.
[0098] If the package size is greater than or equal to a predetermined threshold, it indicates that upgrading the package via OBD upgrade mode may affect software upgrade efficiency. In this case, the target upgrade mode for the ECU package can be determined to be either the WIFI upgrade mode or the USB flash drive upgrade mode. Since the data transmission efficiency of the WIFI upgrade mode or the USB flash drive upgrade mode is much faster than the OBD upgrade mode, when the package size is large, data transmission can be performed via WIFI upgrade mode or the USB flash drive upgrade mode to achieve package download and upgrade. Thus, a reasonable allocation and use of OBD upgrade mode, WIFI upgrade mode, and USB flash drive upgrade mode is beneficial to improving the software upgrade efficiency of vehicle ECU software. For example, ECU1, ECU2, and ECU3, which are connected to the vehicle's CAN bus, are typical ECUs (upgrade packages are usually less than 20MB) and can be upgraded via OBD upgrade mode.
[0099] In some embodiments, the configuration information includes at least the upgrade mode field of the ECU software package;
[0100] The configuration information determination module 30 is used for
[0101] Based on the upgrade mode field of the ECU software package, the target upgrade mode for the ECU software package to be upgraded is determined.
[0102] In this exemplary embodiment, the configuration information includes at least an upgrade mode field for the ECU software package. The upgrade mode field of the ECU software package determines that the target upgrade mode for the software upgrade is one of the OBD upgrade mode, WIFI upgrade mode, and USB flash drive upgrade mode. The upgrade mode field of the ECU software package has field information indicating or specifying the upgrade mode for which the package is being upgraded. For example, the upgrade mode field may be a first preset field indicating that the target upgrade mode for the software upgrade is the OBD upgrade mode; a second preset field indicating that the target upgrade mode is the WIFI upgrade mode; or a third preset field indicating that the target upgrade mode is the USB flash drive upgrade mode. Thus, the upgrade mode of the package can be directly determined through the upgrade mode field in the ECU software package, thereby improving the overall upgrade efficiency of the vehicle software system. Each preset field can be a custom string. For example, the first preset field could be qwe, the second preset field rty, the third preset field yui, and so on. When the upgrade mode field is qwe, the target upgrade mode for the ECU software package is indicated as the OBD upgrade mode; when the upgrade mode field is rty, the target upgrade mode is indicated as the WIFI upgrade mode; and when the upgrade mode field is yui, the target upgrade mode is indicated as the USB flash drive upgrade mode. Thus, by distinguishing the upgrade mode field in the ECU software package, the upgrade mode of the ECU software package can be directly determined, thereby improving the upgrade efficiency of the ECU software package.
[0103] In some embodiments, the WIFI upgrade mode is determined as follows: the diagnostic device sends the ECU software package to the vehicle's infotainment system via the vehicle's WIFI hotspot, so that the infotainment system can parse the ECU software package to obtain the flashing data, and then perform the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
[0104] The OBD upgrade mode is determined to be that the diagnostic device parses the ECU software package to obtain the flashing data, and then performs the software upgrade flashing of the target vehicle ECU through the vehicle OBD port;
[0105] The USB flash drive upgrade mode is defined as follows: the diagnostic device transmits the ECU software package to the USB flash drive, and the vehicle's infotainment system then obtains and parses the ECU software package by accessing the USB flash drive to get the flashing data, and then performs the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
[0106] In this exemplary embodiment, the OBD upgrade mode, WIFI upgrade mode, and USB flash drive upgrade mode represent three different software upgrade and flashing methods. In the OBD upgrade mode, the diagnostic device parses the ECU software package to obtain flashing data, and then performs the software upgrade and flashing of the target vehicle ECU via the vehicle's OBD port. In the WIFI upgrade mode, the diagnostic device sends the ECU software package to the vehicle's infotainment system via the vehicle's WIFI hotspot, allowing the system to parse the package and obtain flashing data, and then performs the software upgrade and flashing of the target vehicle ECU via the vehicle's Ethernet. In the USB flash drive upgrade mode, the diagnostic device transmits the ECU software package to a USB flash drive, allowing the vehicle's infotainment system to access and parse the package, obtain flashing data, and then perform the software upgrade and flashing of the target vehicle ECU via the vehicle's Ethernet. The data transmission rate of the OBD upgrade mode is slower than that of the WIFI and USB flash drive upgrade modes. Therefore, the OBD upgrade mode can be used when upgrading smaller ECU software packages, while the WIFI or USB flash drive upgrade modes can be used when upgrading larger packages. This improves the overall upgrade efficiency of the vehicle software system.
[0107] In some embodiments, before receiving a vehicle ECU software upgrade instruction, the diagnostic device acquires and stores the ECU software package locally via the cloud;
[0108] Alternatively, after receiving a vehicle ECU software upgrade instruction, the diagnostic device may obtain and store the ECU software package locally via the cloud.
[0109] In this exemplary embodiment, the diagnostic device acquires and stores the ECU software package locally via the cloud, and then verifies and upgrades the ECU software package. Specifically, the diagnostic device may acquire and store the ECU software package locally via the cloud before receiving the vehicle ECU software upgrade instruction; or, the diagnostic device may acquire and store the ECU software package locally via the cloud after receiving the vehicle ECU software upgrade instruction. This improves the convenience of the diagnostic device in acquiring the software package to be upgraded.
[0110] In some embodiments, the configuration information of the ECU software package includes a first software ID, a first software version information, and a first hardware version information; before the diagnostic device receives the vehicle ECU software upgrade instruction, the configuration information determination module 30 is used to...
[0111] The diagnostic device establishes a wired communication connection with the vehicle ECU through the vehicle's OBD port and obtains ECU information through the vehicle's OBD port; wherein, the ECU information includes a second software ID, a second software version information, and a second hardware version information;
[0112] The acquired ECU information is compared one by one with the configuration information of the ECU software package. If it is determined that the software IDs of the two are the same and the hardware version information is the same, and the first software version information is an upgraded version relative to the second software version information, then a software update prompt is issued according to the configuration information of the ECU software package.
[0113] In this exemplary embodiment, before upgrading the vehicle ECU software, the diagnostic device needs to confirm that the ECU software package is the software package corresponding to the hardware that needs to be upgraded. At this time, the configuration information of the ECU software package and ECU information can be obtained; wherein, the configuration information of the ECU software package is the configuration information of the software package to be upgraded, and the ECU information is the configuration information already existing in the vehicle hardware; wherein, the configuration information of the ECU software package includes a first software ID, a first software version information, and a first hardware version information; the ECU information includes a second software ID, a second software version information, and a second hardware version information. Then, the obtained ECU information is compared one by one with the configuration information of the ECU software package. The software ID identifies the software identity, indicating which hardware it supports. For example, a software ID of APP001 identifies a software package for a UI processor. Therefore, the hardware to be updated by the ECU software package can be determined through the software ID of the ECU software package. Then, the software version information and hardware version information of the ECU software package are read to determine whether the ECU software package is a compatible version software package that can be used for software updates.
[0114] For example, if it is determined that the software IDs of the two software packages are identical, and their hardware version information is also identical, and the first software version information is an upgraded version relative to the second software version information, then a software update prompt is issued based on the configuration information of the ECU software package. This helps to reduce the possibility of accidental software package updates.
[0115] In some embodiments, when it is determined that the vehicle ECU software upgrade is performed according to the WIFI upgrade mode, the diagnostic device establishes a wireless communication connection with the vehicle's WIFI hotspot and sends an authentication request to the vehicle's WIFI, so that the vehicle's WIFI sends a random number to the diagnostic device according to the authentication request.
[0116] The system receives the random number and calculates a key based on the random number to determine the verification code. The verification code is then sent to the vehicle's infotainment system for verification. If the verification is successful, the system sends the ECU software package to the vehicle's infotainment system via the vehicle's Wi-Fi hotspot. The vehicle's infotainment system then parses the ECU software package to obtain the flashing data and performs the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
[0117] In this exemplary embodiment, when upgrading the software package via the Wi-Fi upgrade mode, to enhance security, a communication security verification can be performed using random numbers before sending the ECU software package to the vehicle's infotainment system via the in-vehicle Wi-Fi hotspot. After successful verification, the ECU software package is sent to the vehicle's infotainment system via the in-vehicle Wi-Fi hotspot, allowing the system to parse the package to obtain the flashing data, and then execute the software upgrade flashing of the target vehicle ECU via the in-vehicle Ethernet. This improves the data communication security of the Wi-Fi upgrade mode.
[0118] This application provides a computer-readable storage medium storing a vehicle ECU software upgrade program thereon. When the vehicle ECU software upgrade program is executed by a processor, it implements the vehicle ECU software upgrade method described in the above embodiments.
[0119] This application provides a diagnostic device, including a memory, a processor, and a vehicle ECU software upgrade program stored in the memory and executable on the processor. When the processor executes the vehicle ECU software upgrade program, it implements the vehicle ECU software upgrade method described in the above embodiments.
[0120] It should be noted that the logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Furthermore, computer-readable media can even be paper or other suitable media on which programs can be printed, because programs can be obtained electronically, for example, by optically scanning the paper or other media, followed by editing, interpreting, or otherwise processing as necessary, and then stored in computer memory.
[0121] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
Claims
1. A method for upgrading vehicle ECU software, wherein the method is used to upgrade the software of a vehicle ECU using diagnostic equipment, characterized in that, include: When the diagnostic equipment receives a vehicle ECU software upgrade command, it determines the target upgrade mode for the target vehicle ECU software upgrade. The target upgrade mode is one of multiple upgrade modes, including OBD upgrade mode, WIFI upgrade mode and / or USB flash drive upgrade mode. According to the target upgrade mode, the target vehicle ECU is upgraded with software.
2. The vehicle ECU software upgrade method according to claim 1, characterized in that, The determination of the target upgrade mode for software upgrade of the target vehicle ECU includes: Identify the target vehicle ECU and obtain the configuration information of the ECU software package for the target vehicle ECU, wherein the ECU software package is used to upgrade the software of the target vehicle ECU; Based on the configuration information in the ECU software package, the target upgrade mode for software upgrade of the ECU software package is determined.
3. The vehicle ECU software upgrade method according to claim 2, characterized in that, The configuration information includes at least the size of the ECU software package; The step of determining the target upgrade mode for software upgrade of the ECU software package based on the configuration information in the ECU software package includes: Based on the size of the ECU software package, determine the target upgrade mode for software upgrade of the ECU software package; If the size of the ECU software package is less than a predetermined threshold, then the target upgrade mode for the ECU software package to be upgraded is determined to be the OBD upgrade mode. If the size of the ECU software package is greater than or equal to a predetermined threshold, then the target upgrade mode for the ECU software package to be upgraded is determined to be either the WIFI upgrade mode or the USB flash drive upgrade mode.
4. The vehicle ECU software upgrade method according to claim 2, characterized in that, The configuration information includes at least the upgrade mode field of the ECU software package; The step of determining the target upgrade mode for software upgrade of the ECU software package based on the configuration information in the ECU software package includes: Based on the upgrade mode field of the ECU software package, the target upgrade mode for the ECU software package to be upgraded is determined.
5. The vehicle ECU software upgrade method according to claim 1, characterized in that, The WIFI upgrade mode is determined to be that the diagnostic device sends the ECU software package to the vehicle's computer via the vehicle's WIFI hotspot, so that the vehicle's computer can parse the ECU software package to obtain the flashing data, and then perform the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet. The OBD upgrade mode is determined to be that the diagnostic device parses the ECU software package to obtain the flashing data, and then performs the software upgrade flashing of the target vehicle ECU through the vehicle OBD port; The USB flash drive upgrade mode is defined as follows: the diagnostic device transmits the ECU software package to the USB flash drive, and the vehicle's infotainment system then obtains and parses the ECU software package by accessing the USB flash drive to get the flashing data, and then performs the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
6. The vehicle ECU software upgrade method according to claim 1, characterized in that, Before receiving the vehicle ECU software upgrade instruction, the diagnostic device obtains and stores the ECU software package locally via the cloud. Alternatively, after receiving a vehicle ECU software upgrade instruction, the diagnostic device may obtain and store the ECU software package locally via the cloud.
7. The vehicle ECU software upgrade method according to claim 6, characterized in that, The configuration information of the ECU software package includes a first software ID, a first software version, and a first hardware version; before the diagnostic device receives the vehicle ECU software upgrade command, the method includes: The diagnostic device establishes a wired communication connection with the vehicle ECU through the vehicle's OBD port and obtains ECU information through the vehicle's OBD port; wherein, the ECU information includes a second software ID, second software version information, and second hardware version information; The acquired ECU information is compared one by one with the configuration information of the ECU software package. If it is determined that the software IDs of the two are the same and the hardware version information is the same, and the first software version information is an upgraded version relative to the second software version information, then a software update prompt is issued according to the configuration information of the ECU software package.
8. The vehicle ECU software upgrade method according to claim 1, characterized in that, When it is determined that the vehicle ECU software upgrade will be performed according to the WIFI upgrade mode, the diagnostic device establishes a wireless communication connection with the vehicle's WIFI hotspot and sends an authentication request to the vehicle's WIFI, so that the vehicle's WIFI sends a random number to the diagnostic device according to the authentication request. The system receives the random number and calculates a key based on the random number to determine the verification code. The verification code is then sent to the vehicle's infotainment system for verification. If the verification is successful, the system sends the ECU software package to the vehicle's infotainment system via the vehicle's Wi-Fi hotspot. The vehicle's infotainment system then parses the ECU software package to obtain the flashing data and performs the software upgrade flashing of the target vehicle's ECU via the vehicle's Ethernet.
9. A vehicle ECU software upgrade device, characterized in that, The vehicle ECU software upgrade device is used to upgrade the software of the vehicle ECU through diagnostic equipment, including: The configuration information determination module is used to determine the target upgrade mode for the target vehicle ECU software upgrade when the diagnostic device receives the vehicle ECU software upgrade instruction. The target upgrade mode is one of a variety of upgrade modes, including OBD upgrade mode, WIFI upgrade mode and / or USB flash drive upgrade mode. The upgrade mode determination module is used to perform software upgrades on the target vehicle ECU according to the target upgrade mode.
10. A computer-readable storage medium, characterized in that, It stores a vehicle ECU software upgrade program, which, when executed by the processor, implements the vehicle ECU software upgrade method according to any one of claims 1-8.
11. A diagnostic device, characterized in that, The system includes a memory, a processor, and a vehicle ECU software upgrade program stored in the memory and executable on the processor. When the processor executes the vehicle ECU software upgrade program, it implements the vehicle ECU software upgrade method according to any one of claims 1-8.