Vehicle upgrading method, electronic equipment, vehicle and computer readable storage medium

By upgrading the ECU that supports sensing-free flash writing during the vehicle driving, and upgrading the ECU that does not support sensing-free flash writing when the vehicle stops, the problem of low vehicle upgrade efficiency in the existing technology is solved, and a more efficient OTA upgrade process is achieved.

CN119946610AActive Publication Date: 2025-05-06ZHEJIANG ZEEKR INTELLIGENT TECH CO LTD +1
View PDF 12 Cites 0 Cited by

Patent Information

Application Number
CN202510019674.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-06
Publication Date
2025-05-06
Estimated Expiration
2045-01-06

AI Technical Summary

Technical Problem

In the prior art, when a vehicle upgrades the entire vehicle ECU through an OTA, some electronic controller units and external devices cannot be upgraded independently, resulting in the vehicle being able to upgrade when it is stopped, which is relatively inefficient.

Method used

A vehicle upgrade method is proposed, and an upgrade package is transmitted to the first slave node controller and the second slave node controller through the master node controller. When the vehicle is driving, the backup partition of the first slave node controller is installed with an upgrade package; when the vehicle is stopped driving, the second slave node controller is installed with an upgrade package.

Benefits of technology

It improves the efficiency of the vehicle upgrading the entire vehicle ECU through OTA, ensures the user experience, and balances the user experience and OEM processing needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119946610A_ABST
    Figure CN119946610A_ABST
Patent Text Reader

Abstract

The invention provides a vehicle upgrading method, electronic equipment, a vehicle and a computer readable storage medium, and belongs to the technical field of vehicles, and the method comprises the steps: controlling a master node controller of the vehicle to transmit an upgrade package to a first slave node controller and a second slave node controller of the vehicle; the first slave node controller is a controller with a system partition and a backup partition, and the second slave node controller is a controller which is not partitioned; under the condition that the vehicle runs, the upgrade package received by the first slave node controller is installed in the backup partition of the first slave node controller; under the condition that the second slave node controller is in the idle state, installing the upgrade package received by the second slave node controller in the second slave node controller; and switching the running partition of the first slave node controller from the system partition to the backup partition under the condition of determining that each second slave node controller completes installation of the upgrade package. According to the method and the device, the efficiency of upgrading the ECU of the whole vehicle through the OTA can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of vehicle technology, and in particular to a vehicle upgrade method, an electronic device, a vehicle, and a computer-readable storage medium. Background Art

[0002] With the maturity and mass promotion of Internet of Vehicles technology, Over-the-Air Technology (OTA) is gradually being regarded as one of the essential functions of vehicle OEMs. In related technologies, since there are still some Electronic Control Units (ECU) on the vehicle or the external devices do not have the ability to upgrade independently, the vehicle can only upgrade the ECU of the whole vehicle through OTA when the vehicle is not driving, which leads to poor efficiency of vehicle upgrade. Summary of the invention

[0003] The main purpose of the embodiments of the present application is to propose a vehicle upgrade method, an electronic device, a vehicle, and a computer-readable storage medium, aiming to improve the efficiency of upgrading the vehicle's entire ECU through OTA, thereby ensuring the user's experience of the vehicle.

[0004] To achieve the above-mentioned purpose, a first aspect of an embodiment of the present application proposes a vehicle upgrade method, which is applied to an electronic device, wherein the electronic device belongs to a vehicle, and the method comprises:

[0005] In response to a vehicle upgrade instruction, the master node controller controlling the vehicle transmits an upgrade package to at least one first slave node controller and at least one second slave node controller of the vehicle respectively; the vehicle upgrade instruction is used to instruct to upgrade the control programs in the at least one first slave node controller and the at least one second slave node controller; the first slave node controller is a node controller with a system partition and a backup partition, and the second slave node controller is a node controller without partitions;

[0006] When the vehicle is driving, installing the upgrade package received by the first slave node controller in the backup partition of each of the first slave node controllers;

[0007] When each of the second slave node controllers is in an idle state, installing the upgrade package received by the second slave node controller in the second slave node controller; the idle state includes: the state of the second slave node controller when the vehicle stops driving;

[0008] When it is determined that each of the second slave node controllers has completed the installation of the received upgrade package, the partition run by each of the first slave node controllers is switched from the system partition to the backup partition to complete the upgrade of the vehicle.

[0009] In some embodiments, the at least one first slave node controller includes a target first slave node controller, the target first slave node controller is connected to at least one private node controller of the vehicle, the upgrade package received by the target first slave node controller includes a first upgrade package and a second upgrade package, the first upgrade package is used for upgrading the target first slave node controller, and the second upgrade package is used for upgrading the at least one private node controller;

[0010] The step of installing the upgrade package received by the first slave node controller in the backup partition of each of the first slave node controllers includes:

[0011] Installing the first upgrade package in the backup partition of the target first slave node controller, and storing the second upgrade package in the backup partition of the target first slave node controller;

[0012] Before switching the partition run by each of the first slave node controllers from the system partition to the backup partition, the method further includes:

[0013] When each of the private node controllers is in the idle state, controlling the target first slave node controller to transfer the second upgrade package to the private node controller;

[0014] The second upgrade package is installed in each of the private node controllers.

[0015] In some embodiments, when the second upgrade package is stored in the backup partition of the target first slave node controller, when each of the second slave node controllers is in an idle state, installing the upgrade package received by the second slave node controller in the second slave node controller includes:

[0016] When each of the second slave node controllers is in an idle state and each of the private node controllers is in the idle state, the upgrade package received by the second slave node controller is installed in the second slave node controller, and the target first slave node controller is controlled to pass the second upgrade package to the private node controller, and the second upgrade package is installed in each of the private node controllers.

[0017] In some embodiments, after storing the second upgrade package in the backup partition of the target first slave node controller, the method further includes:

[0018] Storing the first original installation package of each of the private node controllers in the backup partition of the target first slave node controller;

[0019] After switching the partition run by each of the first slave node controllers from the system partition to the backup partition, the method further includes:

[0020] In response to the vehicle upgrade rollback instruction, controlling the target first slave node controller to transfer the first original installation package to the private node controller;

[0021] The first original installation package is installed in each of the private node controllers.

[0022] In some embodiments, the method further comprises:

[0023] Controlling the master node controller to store the second original installation package of each of the second slave node controllers;

[0024] After switching the partition run by each of the first slave node controllers from the system partition to the backup partition, the method further includes:

[0025] In response to the vehicle upgrade rollback instruction, controlling the master node controller to transmit the second original installation package to each of the second slave node controllers;

[0026] The second original installation package is installed in each of the second slave node controllers.

[0027] In some embodiments, the idle state further includes: a state in which the second node controller stops operating while the vehicle is driving;

[0028] The step of installing, in the second slave node controller, the upgrade package received by the second slave node controller comprises:

[0029] Obtaining the installation duration of the upgrade package of the second slave node controller;

[0030] Based on the installation duration, while the vehicle is driving, the upgrade package received by the second slave node controller is installed in the second slave node controller.

[0031] In some embodiments, the method further comprises:

[0032] Based on historical operation data of the second slave node controller, determining a time period during which the second slave node controller stops operating when the vehicle is driving;

[0033] The step of installing the upgrade package received by the second slave node controller in the second slave node controller based on the installation duration while the vehicle is driving includes:

[0034] Determining an estimated remaining time that the second slave node controller is in the idle state based on the current system time of the vehicle and the time segment;

[0035] When the estimated remaining time is greater than or equal to the installation time, the upgrade package received by the second slave node controller is installed in the second slave node controller.

[0036] To achieve the above-mentioned purpose, a second aspect of an embodiment of the present application provides a vehicle upgrade device, which is applied to an electronic device, and the electronic device belongs to a vehicle. The device includes:

[0037] A master node control module, configured to control the master node controller of the vehicle to transmit an upgrade package to at least one first slave node controller and at least one second slave node controller of the vehicle respectively in response to a vehicle upgrade instruction; the vehicle upgrade instruction is used to instruct to upgrade the control programs in the at least one first slave node controller and the at least one second slave node controller; the first slave node controller is a node controller with a system partition and a backup partition, and the second slave node controller is a node controller without partitions;

[0038] A first slave node control module, configured to install the upgrade package received by the first slave node controller in the backup partition of each of the first slave node controllers when the vehicle is driving;

[0039] A second slave node control module, used for the node control module, is used to install the upgrade package received by the second slave node controller in the second slave node controller when each of the second slave node controllers is in an idle state; the idle state includes: the state of the second slave node controller when the vehicle stops driving;

[0040] An upgrade switching module is used to switch the partition run by each of the first slave node controllers from the system partition to the backup partition when it is determined that each of the second slave node controllers has completed the installation of the received upgrade package, so as to complete the upgrade of the vehicle.

[0041] To achieve the above objectives, a third aspect of an embodiment of the present application proposes an electronic device, which includes a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the method described in the first aspect is implemented.

[0042] To achieve the above-mentioned purpose, the fourth aspect of an embodiment of the present application proposes a vehicle, which is equipped with an electronic device, the electronic device includes a memory and a processor, the memory stores a computer program, and the processor implements the method described in the first aspect when executing the computer program.

[0043] To achieve the above objectives, the fifth aspect of an embodiment of the present application proposes a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method described in the first aspect is implemented.

[0044] To achieve the above objectives, the sixth aspect of the embodiments of the present application proposes a computer program product, wherein the computer program product includes a computer program, and when the computer program is executed by a processor, the steps of the method provided in the first aspect above are implemented.

[0045] The vehicle upgrade method, device, electronic device, vehicle, computer-readable storage medium and computer program product proposed in the present application, by responding to the vehicle upgrade instruction, the master node controller of the vehicle controls the vehicle to transmit the upgrade package to at least one first slave node controller and at least one second slave node controller of the vehicle respectively; wherein the vehicle upgrade instruction is used to instruct the control program in at least one first slave node controller and at least one second slave node controller to be upgraded; the first slave node controller is a node controller with a system partition and a backup partition, and the second slave node controller is a node controller without partition. Thereafter, when the vehicle is driving, the upgrade package received by the first slave node controller is installed in the backup partition of each first slave node controller; and when each second slave node controller is in an idle state, the upgrade package received by the second slave node controller is installed in the second slave node controller; the idle state includes: the state of the second slave node controller when the vehicle stops driving. Finally, when it is determined that at least one second slave node controller has completed the installation of the received upgrade package, the partition run by each first slave node controller is switched from the system partition to the backup partition to complete the upgrade of the vehicle.

[0046] The embodiment of the present application directly installs the upgrade package on the node controller with system partition and backup partition during the driving process of the vehicle, thereby completing the non-sensing flashing of the upgrade package of this part of ECU, and then installs the upgrade package on the node controller without partition when the vehicle stops running, so as to perform the sensible flashing of the upgrade package of this part of ECU. In this way, compared with the sensible flashing of the upgrade package of the whole vehicle ECU through OTA when the vehicle is not driving, the embodiment of the present application divides the non-sensing flashing upgrade and the sensible flashing upgrade, upgrades the software of some ECUs that support non-sensing flashing during the driving process of the vehicle, and then upgrades the software of some ECUs that do not support non-sensing flashing when the vehicle stops running, thereby improving the efficiency of upgrading the whole vehicle ECU through OTA, thereby ensuring the user experience of the vehicle.

[0047] In addition, the embodiment of the present application divides the senseless flash upgrade and the sensed flash upgrade so that in the event of upgrading the vehicle ECU through OTA, the master node Master can perform senseless flashing on some slave nodes Slave and sensed flashing on some slave nodes Slave. This can not only meet the senseless flash strategy, but also meet the upgrade requirements of controllers or components that are not partitioned. Without the need for the Original Equipment Manufacturer (OEM) to process and produce all controllers or components that support partitioning, the user experience of the vehicle can be ensured when the vehicle is upgraded, thereby balancing the user experience and OEM processing needs. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] Figure 1 A schematic diagram of the steps of the vehicle upgrade method provided in some embodiments of the present application;

[0049] Figure 2 A schematic diagram of a system framework involved in the vehicle upgrade method provided in an embodiment of the present application;

[0050] Figure 3 for Figure 1 Schematic diagram of detailed process flow of step S103;

[0051] Figure 4 for Figure 3 Schematic diagram of detailed process flow of step S302;

[0052] Figure 5 A schematic diagram of the structure of a vehicle upgrade device provided in an embodiment of the present application;

[0053] Figure 6 It is a schematic diagram of the hardware structure of the electronic device provided in the embodiment of the present application. DETAILED DESCRIPTION

[0054] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0055] It should be noted that, although the functional modules are divided in the device schematic diagram and the logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first", "second", etc. in the specification, claims and the above drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0056] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.

[0057] First, the overall concept of the vehicle upgrading method provided in the embodiment of the present application is explained.

[0058] With the maturity and large-scale promotion and application of Internet of Vehicles technology, OTA technology is gradually being regarded as one of the essential functions of vehicle OEMs. Due to the update and iteration of electronic and electrical architecture, the traditional distributed architecture cannot meet the high performance requirements of OTA and other applications. Therefore, in order to optimize the user experience, the central supercomputing architecture has become the mainstream direction of new energy vehicle architecture. Many car companies have also migrated the OTA master node Master and slave node Slave functions to more powerful chips based on the operating system (such as 8155 / 8295 / S32G / ORIN, etc.).

[0059] In addition, in order to pursue a higher user experience, senseless flashing is also the goal pursued by various OEMs. The core parts of the vehicle (such as cockpit systems, intelligent driving systems, and gateway systems) all have the opportunity to achieve senseless flashing. Senseless flashing refers to flashing the upgrade package of the control program when the ECU is running, and then switching when the vehicle is safe. The underlying technology that this technology relies on is the AB partition technology. However, if the ECU on the vehicle currently fully supports the AB partition technology, it will bring about the impact of cost, technology and historical background. Therefore, there will always be some internal chips or external devices that cannot support the AB partition technology, and there is no standard on-board diagnostic (Unified Diagnostic Services, UDS) upgrade capability, so they all need to be upgraded through the master node. In this way, in the relevant technology, considering that there are still some ECUs or external devices on the vehicle that do not have the ability to upgrade independently, the vehicle can only upgrade the ECU of the whole vehicle through OTA when the vehicle is not driving, which also leads to poor efficiency of vehicle upgrades.

[0060] Based on this, the embodiments of the present application provide a vehicle upgrade method, device, electronic device, vehicle, computer-readable storage medium and computer program product, which aim to improve the efficiency of upgrading the vehicle's ECU through OTA, thereby ensuring the user's experience of the vehicle.

[0061] In the embodiment of the present application, the master node controller of the vehicle controls the vehicle to transmit the upgrade package to at least one first slave node controller and at least one second slave node controller of the vehicle respectively in response to the vehicle upgrade instruction; wherein the vehicle upgrade instruction is used to instruct the control program in at least one first slave node controller and at least one second slave node controller to be upgraded; the first slave node controller is a node controller with a system partition and a backup partition, and the second slave node controller is a node controller without partition. After that, when the vehicle is driving, the upgrade package received by the first slave node controller is installed in the backup partition of each first slave node controller; and when each second slave node controller is in an idle state, the upgrade package received by the second slave node controller is installed in the second slave node controller; the idle state includes: the state of the second slave node controller when the vehicle stops driving. Finally, when it is determined that at least one second slave node controller has completed the installation of the received upgrade package, the partition run by each first slave node controller is switched from the system partition to the backup partition to complete the upgrade of the vehicle.

[0062] In this way, by directly installing the upgrade package on the node controller with system partition and backup partition while the vehicle is driving, the upgrade package of this part of ECU is flashed without feeling, and then when the vehicle stops running, the upgrade package is installed on the node controller that is not partitioned, so as to perform a sensitive flashing of the upgrade package of this part of ECU. In this way, compared with the sensitive flashing of the upgrade package of the whole vehicle ECU through OTA when the vehicle is not driving, the embodiment of the present application divides the non-feeling flashing upgrade and the sensitive flashing upgrade, upgrades the software of some ECUs that support non-feeling flashing while the vehicle is driving, and then upgrades the software of some ECUs that do not support non-feeling flashing when the vehicle stops running, thereby improving the efficiency of upgrading the whole vehicle ECU through OTA, thereby ensuring the user experience of the vehicle.

[0063] In addition, the embodiment of the present application divides the seamless flash upgrade and the conscious flash upgrade so that in the event of upgrading the vehicle ECU through OTA, the master node Master can perform seamless flashing on some slave nodes Slave and conscious flashing on some slave nodes Slave. This can not only meet the strategy of seamless flashing, but also meet the upgrade requirements of controllers or components that are not partitioned, thereby balancing the user experience and OEM processing needs.

[0064] It should be noted that the vehicle stopping mentioned in the embodiment of the present application may be a state in which the vehicle is parked and not driving, and the maintenance time of this state is at least greater than or equal to the time required to upgrade some ECUs that do not support contactless flashing.

[0065] Next, the vehicle upgrade method, device, electronic device and storage medium provided in the embodiments of the present application are specifically described through the following embodiments, and the vehicle upgrade method provided in the embodiments of the present application is first described in detail.

[0066] It should be noted that the vehicle upgrade method provided in the embodiment of the present application relates to the field of vehicle technology. The vehicle upgrade method provided in the embodiment of the present application can be applied to a terminal, can also be applied to a server side, and can also be software running in a terminal or a server side. In some embodiments, the terminal can be an on-board terminal on a vehicle, or can be an electronic device such as a smart phone, a tablet computer, a laptop computer, a desktop computer, etc. associated with the vehicle, and the terminal and the vehicle are associated with each other, which means that the terminal can communicate and interact with the vehicle based on the network. The server side can be a backend server terminal device of the vehicle, which can be configured as an independent physical server, or a server cluster or distributed system composed of multiple physical servers, and can also be configured to provide cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (Content Delivery Network, CDN) and cloud servers that provide basic cloud computing services such as big data and artificial intelligence platforms. The software can be an application that implements the vehicle upgrade method, a computer program, and a storage medium that carries the computer program. It should be understood that based on different design requirements of actual applications, in different feasible embodiments, the terminal, server, and software of the vehicle upgrade method provided in the embodiments of the present application may of course also be in other forms not listed here, and the vehicle upgrade method provided in the embodiments of the present application does not specifically limit this.

[0067] In addition, the present application can also be used in many general or special computer system environments or configurations. For example: vehicles, personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronic devices, personal computers (PCs), minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, etc. The present application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application can also be practiced in distributed computing environments, in which tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.

[0068] For ease of understanding and explanation, the following text takes the electronic device configured on the vehicle applying the vehicle upgrade method provided by the embodiment of the present application as an example to explain in detail each specific embodiment of the present application. The implementation of the vehicle upgrade method provided by the embodiment of the present application in any of the above-mentioned forms of subject matter can refer to the process of the electronic device applying the vehicle upgrade method described later.

[0069] It should be noted that in each specific implementation of the present application, when it comes to the need to perform relevant processing based on data related to user identity or characteristics such as user information, user behavior data, user historical data, and user location information, the user's permission or consent will be obtained first, and the collection, use, and processing of these data will comply with relevant laws, regulations, and standards. In addition, when the embodiment of the present application needs to obtain the user's sensitive personal information, the user's separate permission or consent will be obtained through a pop-up window or by jumping to a confirmation page. After clearly obtaining the user's separate permission or consent, the necessary user-related data for the normal operation of the embodiment of the present application will be obtained.

[0070] Please refer to Figure 1 , Figure 1 The following is a flow chart of the steps of the vehicle upgrade method provided in some embodiments of the present application. It should be understood that although Figure 1 The subsequent flowcharts of other steps show the execution order of some method steps, but based on different design requirements of actual applications, the vehicle upgrade method provided in the embodiment of the present application can certainly adopt an execution order different from the method steps shown in the figure. That is, Figure 1 The order of the steps in the method shown does not constitute a limitation on the execution logic order of the vehicle upgrade method provided in the embodiment of the present application. Figure 1 Reasonable changes in the order of the method steps shown should be included in the scope of protection of the vehicle upgrade method provided in the embodiments of the present application.

[0071] like Figure 1 As shown, in some embodiments, the vehicle upgrade method provided by the embodiments of the present application may include steps S101 to S104.

[0072] Step S101, in response to a vehicle upgrade instruction, the master node controller controlling the vehicle transmits the upgrade package to at least one first slave node controller and at least one second slave node controller of the vehicle respectively; the first slave node controller is a node controller with a system partition and a backup partition, and the second slave node controller is a node controller without partitions.

[0073] It should be noted that the vehicle upgrade instruction is used to instruct the upgrade of the control program in at least one first slave node controller and at least one second slave node controller. After the electronic device of the vehicle receives the data for upgrading the ECU on the vehicle through OTA technology, it can generate a vehicle upgrade instruction to instruct the upgrade of the control program in at least one first slave node controller and at least one second slave node controller on the vehicle. Among them, the first slave node controller refers to a node controller on the vehicle with a system partition and a backup partition (supporting AB partition technology), while the second slave node controller is a node controller that is not partitioned (does not support AB partition technology).

[0074] When the electronic device upgrades the ECU on the vehicle based on the OTA technology, in response to the vehicle upgrade instruction, the master node controller of the vehicle is controlled to transfer the upgrade package to the first slave node controller of the vehicle. Among them, the upgrade package transferred from the master node controller to the first slave node controller is an upgrade package used to upgrade the control program in the first slave node controller among the data received by the electronic device through the OTA technology. In addition, the electronic device also controls the master node controller of the vehicle to transfer the upgrade package to the second slave node controller of the vehicle in response to the vehicle upgrade instruction. Among them, the upgrade package transferred from the master node controller to the second slave node controller is an upgrade package used to upgrade the control program in the second slave node controller among the data received by the electronic device through the OTA technology.

[0075] Step S102, when the vehicle is driving, installing the upgrade package received by the first slave node controller in the backup partition of each of the first slave node controllers.

[0076] After the electronic device controls the master node controller to transfer the upgrade package to the first slave node controller, since the first slave node controller has a system partition and a backup partition, the electronic device can control each first slave node controller to install the upgrade package received from the master node controller in the backup partition while the vehicle is driving.

[0077] Step S103, when each of the second slave node controllers is in an idle state, installing the upgrade package received by the second slave node controller in the second slave node controller; the idle state includes: the state of the second slave node controller when the vehicle stops driving.

[0078] After the electronic device controls the master node controller to transfer the upgrade package to the second slave node controller, since the second slave node controllers are not partitioned, the electronic device can control each second slave node controller to locally install the upgrade package received from the master node controller when the vehicle stops to ensure that the second slave node controllers are in an idle state.

[0079] In some embodiments, the electronic device can confirm whether each second slave node controller is in an idle state by collecting the state information of each second slave node controller when the vehicle stops driving. Thus, when it is confirmed that one or more target second slave node controllers among the second slave node controllers are in an idle state, the target second slave node controller is controlled to locally install the upgrade package received from the master node controller.

[0080] In some embodiments, the electronic device can also send instructions to each second slave node controller to control each second slave node controller to enter an idle state when the vehicle is stopped, and then control each second slave node controller to locally install the upgrade package received from the master node controller.

[0081] Step S104, when it is determined that each of the second slave node controllers has completed the installation of the received upgrade package, the partition run by each of the first slave node controllers is switched from the system partition to the backup partition to complete the upgrade of the vehicle.

[0082] In the process of controlling each second slave node controller to install the upgrade package, the electronic device continuously collects the status of each second slave node controller installing the upgrade package. In this way, when the electronic device indicates that each second slave node controller has completed the installation of the received upgrade package based on the collected status of the second slave node controller installing the upgrade package, when the subsequent vehicle is started again, the electronic device can control each first node controller to switch the partition where the control program is located from the system partition before the upgrade package is installed to the backup partition after the upgrade package has been installed, thereby completing the current upgrade of the ECU of the whole vehicle through OTA technology.

[0083] It should be noted that since each first node controller can usually complete the installation of the upgrade package in the backup partition before each second slave node controller installs the upgrade package in the idle state, when the electronic device confirms that each second slave node controller has completed the installation of the received upgrade package, it can be assumed that each first node controller has also completed the installation of the received upgrade package in the backup partition.

[0084] In some embodiments, the electronic device can also continuously collect the status of each first slave node controller installing the upgrade package during the process of controlling each first slave node controller to install the upgrade package, thereby indicating that each first slave node controller has completed the installation of the received upgrade package based on the collected status of the first slave node controller installing the upgrade package, and based on the collected status of the second slave node controller installing the upgrade package indicating that each second slave node controller has completed the installation of the received upgrade package, controlling each first node controller to switch the partition where the control program it is running is located from the system partition to the backup partition.

[0085] In some embodiments, after the electronic device confirms that each first slave node controller has completed the installation of the received upgrade package and each second slave node controller has also completed the installation of the received upgrade package, while ensuring the safety of the vehicle while the vehicle is driving again, it controls each first node controller to switch the partition where the control program it is running is located from the system partition to the backup partition.

[0086] In some embodiments, when the electronic device controls the master node controller to transfer the upgrade package to each first slave node controller so as to install the upgrade package in the backup partition of each first slave node controller during the driving process of the vehicle, the routine ID: 0254 (non-distributed) instruction can be used to check the programming conditions of the OTA domain object (Session) of the first slave node controller that supports the non-sense flashing of the upgrade package during the driving process of the vehicle, and then the electronic device initiates a physical addressing request for the OTA domain object. After that, the electronic device uses the DID: 22F186 (non-distributed) instruction to confirm the session mode of each first slave node controller, and then uses the 01 / 02 (non-distributed) instruction containing the PINCode decryption to unlock the service of each first slave node controller. After that, the electronic device requests the distributed first slave node controller to start installation, and periodically obtains the installation status of each first slave node controller at a preset installation period (such as 1 minute). Based on the read installation status, the electronic device reads the breakpoint position of each first slave node controller based on the DID: 22D103 instruction, and uses the RID: FF00 instruction to control each first slave node controller to erase from the breakpoint position. Then, the electronic device controls the master node controller to send the upgrade package to each first slave node controller, so that each first slave node controller writes the upgrade package in the backup partition from the breakpoint position to install the upgrade package. Finally, the electronic device also uses the RID:0212 instruction to perform signature verification on each first slave node controller, and uses the RID:0205 instruction to perform data integrity and compatibility verification on each first slave node controller.

[0087] In the embodiment of the present application, when the electronic device is upgrading the ECU on the vehicle based on the OTA technology, in response to the vehicle upgrade instruction, the master node controller of the vehicle is controlled to transfer the upgrade package to the first slave node controller of the vehicle. Afterwards, since the first slave node controller has a system partition and a backup partition, the electronic device can control each first slave node controller to install the upgrade package received from the master node controller in the backup partition when the vehicle is driving, and since the second slave node controller is not partitioned, the electronic device can control each second slave node controller to install the upgrade package received from the master node controller locally when the vehicle is parked and driving to ensure that the second slave node controller is in an idle state. Finally, when the electronic device indicates that each second slave node controller has completed the installation of the received upgrade package based on the state of the second slave node controller installing the upgrade package collected, when the subsequent vehicle is started again, it can control each first node controller to switch the partition where the control program is located, from the system partition before the upgrade package is installed to the backup partition after the upgrade package has been installed, thereby completing the current upgrade of the ECU of the whole vehicle through OTA technology.

[0088] In this way, the embodiment of the present application directly installs the upgrade package on the node controller with system partition and backup partition during the driving process of the vehicle, thereby completing the non-sensing flashing of the upgrade package of this part of ECU, and then installs the upgrade package on the node controller that is not partitioned when the vehicle stops running, so as to perform the sensible flashing of the upgrade package of this part of ECU. In this way, compared with the traditional vehicle upgrade solution, regardless of whether the vehicle's ECU supports partitioning, the upgrade package of the whole vehicle ECU is sensibly flashed through OTA when the vehicle stops running. The embodiment of the present application divides the non-sensing flashing upgrade and the sensible flashing upgrade, upgrades the software of some ECUs that support non-sensing flashing during the driving process of the vehicle, and then upgrades the software of some ECUs that do not support non-sensing flashing when the vehicle stops running, thereby improving the efficiency of upgrading the whole vehicle ECU through OTA, thereby ensuring the user experience of the vehicle.

[0089] In addition, the embodiment of the present application can realize both the senseless flashing and the sensed flashing by the master node Master to some slave nodes Slave and the sensed flashing by the master node Master to some slave nodes Slave in one event of upgrading the vehicle ECU through OTA by dividing the senseless flashing and the sensed flashing by the master node Master to some slave nodes Slave in one event. In other words, the embodiment of the present application can meet the senseless flashing strategy and the upgrade requirements of the controller or components that are not partitioned in one vehicle upgrade event, thereby balancing the user experience and OEM processing requirements.

[0090] In the case that the vehicle also includes a private node controller that is not partitioned and does not have independent upgrade capabilities, the electronic device can first store the upgrade package of the private node controller in a backup partition through a slave node controller (supporting AB partitioning technology) connected to the private node controller, and then, when the private node controller is in an idle state, the slave node controller can actively flash the upgrade package of the private node controller.

[0091] It should be noted that the private node controller of the vehicle can be an electronic component controller unit in the vehicle's external device. This type of controller usually does not support AB partitions and does not have standard UDS upgrade capabilities. It needs to use the slave node controller connected to it to upgrade the control program. In addition, the private node controller of the vehicle can also be connected to the master node controller, so that it can be upgraded with the help of the master node controller. In the embodiment of the present application, the electronic device controls the master node controller to perform a responsive flash on the upgrade package of the private node controller, which is consistent with the principle of controlling the slave node controller to perform a responsive flash on the upgrade package of the private node controller. Here, only the part of the slave node controller performing a responsive flash on the upgrade package of the private node controller in the same content is explained.

[0092] Please refer to Figure 2 , Figure 2 A schematic diagram of the system framework involved in the vehicle upgrade method provided in an embodiment of the present application.

[0093] like Figure 2 As shown, any master node controller OTA Master of the vehicle can be connected to at least one first slave node controller OTA Slave1 to 3, and to at least one second slave node controller OTA Slave4. The Storage in the master node controller OTA Master can store upgrade packages for transmitting to the first slave node controllers OTA Slave1 to 3 and the second slave node controller OTA Slave4, and can also store the original installation package (second original installation package) of the second slave node controller OTA Slave4.

[0094] In addition, each of the first slave node controllers OTA Slave1 to 3 has a system partition A and a backup partition B, and both the system partition A and the backup partition B may include Storage. At least one first slave node controller OTA Slave1 to 3 includes at least one target first slave node controller OTASlave3. The target first slave node controller OTASlave3 is connected to at least one private node controller (private nodes 1 to 3) of the vehicle. Moreover, the target first slave node controller OTA Slave3 itself may also include a private node controller (private node 4) of the vehicle. The storage of the backup partition B of the target first slave node controller OTASlave3 may store upgrade packages for delivery to private node controllers (private nodes 1 to 4), and may also store the original installation package (first original installation package) of the private node controller (private nodes 1 to 4).

[0095] In some embodiments, when the electronic device controls the master node controller to transfer an upgrade package to the first slave node controller in response to a vehicle upgrade instruction, the upgrade package received by the target first slave node controller among the first slave node controllers includes a first upgrade package and a second upgrade package, wherein the first upgrade package is an upgrade package for the target first slave node controller to upgrade its own control program, and the second upgrade package is an upgrade package for upgrading the control program of at least one private node controller.

[0096] Based on this, the above step S102, installing the upgrade package received by the first slave node controller in the backup partition of each of the first slave node controllers, may include the following steps:

[0097] The first upgrade package is installed in the backup partition of the target first slave node controller, and the second upgrade package is stored in the backup partition of the target first slave node controller.

[0098] The electronic device controls each first slave node controller during vehicle driving, and when installing the upgrade package received by the autonomous node controller in the backup partition, for the target first slave node controller connected to the vehicle's private node controller in each first slave node controller, the electronic device controls the target first slave node controller to install the received first upgrade package in its own backup partition on the one hand, and to store the second upgrade package for upgrading the private node controller in the backup partition on the other hand.

[0099] like Figure 2As shown, after the electronic device responds to the vehicle upgrade command controller master node controller OTA Master passing the upgrade package to each first slave node controller OTASlave1 to 3, the target first slave node controller OTASlave3 installs the first upgrade package in the received upgrade package in its own backup partition B during vehicle driving, and stores each second upgrade package in the received upgrade package in the Storage in the backup partition B, so as to subsequently pass each second upgrade package to the private node controller (private nodes 1 to 4) for installation when the private node controller is idle.

[0100] In some embodiments, before executing the above step S104 of switching the partition run by each of the first slave node controllers from the system partition to the backup partition, the electronic device may further include the following steps:

[0101] When each of the private node controllers is in the idle state, controlling the target first slave node controller to transfer the second upgrade package to the private node controller;

[0102] The second upgrade package is installed in each of the private node controllers.

[0103] It should be noted that, when the second slave node controller is in an idle state when the vehicle stops driving, the private node controller of the vehicle is usually also in an idle state.

[0104] When the electronic device controls the master node controller to pass the upgrade package to the first slave node controller, and the target first slave node controller in the first slave node controller installs the first upgrade package in the received upgrade package in the backup partition, and stores the second upgrade package in the received upgrade package in the backup partition, since the private node controller is not partitioned either, the electronic device can control the target first slave node controller to pass the second upgrade package stored in the backup partition to the private node controller, and control each private node controller to install the received second upgrade package locally when the vehicle is parked to ensure that the private node controller is in an idle state like the second slave node controller.

[0105] Afterwards, after the electronic device confirms that each first slave node controller has completed the installation of the received upgrade package, and each second slave node controller and each private node controller have completed the installation of the received upgrade package, while ensuring the safety of the vehicle during driving again, it controls each first node controller to switch the partition where the control program they are running is located from the system partition to the backup partition.

[0106] In this embodiment, when there is a private node controller in the vehicle, the target first slave node controller connected to the private node controller is controlled by the electronic device during the driving process of the vehicle. On the one hand, a first upgrade package for upgrading its own control program is installed in the backup partition, and on the other hand, a second upgrade package for upgrading the control program in the private node controller is stored in the backup partition. Thereafter, when the private node controller is in an idle state, the electronic device controls the target first slave node controller to pass the second upgrade package to the private node controller for installation.

[0107] In this way, by performing a seamless flashing of the first upgrade package during the driving of the vehicle, the second upgrade package is placed in the storage medium of the backup partition for storage, and then when the vehicle stops driving and the private node controller is idle, the second upgrade package is controlled to be visibly flashed to the private node controller. In this way, in an event of upgrading the vehicle ECU through OTA, the master node Master can perform a seamless flashing of some slave nodes Slave, and a visibly flashing of some slave nodes Slave, which can meet the strategy of seamless flashing and the upgrade requirements of non-partitioned controllers or components, thereby balancing the user experience and OEM processing needs.

[0108] When the target first slave node controller installs the first upgrade package in the received upgrade packages in the backup partition, and stores the second upgrade package in the received upgrade packages in the backup partition, the electronic device can also control the target first slave node controller to pass the second upgrade package to the private node controller for installation in parallel while controlling the second slave node controller to install the received upgrade package.

[0109] In some embodiments, when the backup partition of the target first slave node controller stores the second upgrade package, the above step S103, when each of the second slave node controllers is in an idle state, installing the upgrade package received by the second slave node controller in the second slave node controller may include the following steps:

[0110] When each of the second slave node controllers is in an idle state and each of the private node controllers is in the idle state, the upgrade package received by the second slave node controller is installed in the second slave node controller, and the target first slave node controller is controlled to pass the second upgrade package to the private node controller, and the second upgrade package is installed in each of the private node controllers.

[0111] When the electronic device controls the master node controller to transfer the upgrade package to the first slave node controller, and the target first slave node controller in the first slave node controller installs the first upgrade package in the received upgrade package in the backup partition, and stores the second upgrade package in the received upgrade package in the backup partition, since the electronic device also controls the master node controller to transfer the upgrade package to the second slave node controller when responding to the vehicle upgrade instruction, the electronic device can control each second slave node controller to locally install the upgrade package received from the master node controller when the vehicle is parked and driving to ensure that the second slave node controller is in an idle state and the private node controller is also in an idle state, and at the same time control the target first slave node controller to transfer the second upgrade package stored in the backup partition to the private node controller, and control each private node controller to locally install the received second upgrade package.

[0112] In some embodiments, when the electronic device controls the second slave node controller and the private node controller to install the upgrade package in an idle state, it can specifically request the non-distributed ECU AB partition switching condition check first, and request the non-distributed target ECU (A / B partition) to send a switching instruction. Then, the programming condition of the programming session of the target ECU (second slave node controller) that supports the flashing is checked, and the target ECU is requested to enter the programming session through functional addressing (sending 16 frames, one frame every second). After that, the electronic device confirms the session mode of all target ECUs that support sensory flashing, unlocks all sensory flashing target decryption through the ECU27 01 / 02 instruction containing the decryption PINCODE, and completes the installation and activation of all sensory flashing target ECUs through the SBL (34 / 36 / 37 / 0212 / 0301) (Optional) instruction. Then, the electronic device transmits the upgrade package to the sensory flashing target ECU for upgrading in parallel through the FF00 / 34 / 36 / 37 / 0212 / 0205 instruction, and upgrades the private node controller in parallel through the RID 31 01 0294 01 instruction to perform sensory flashing of the upgrade package (second upgrade package) of the private node controller. In addition, the electronic device periodically obtains the upgrade status of each private node controller according to a preset period (such as 5 seconds), so that when the private node controller is confirmed to have completed the installation of the upgrade package based on the upgrade status, the vehicle ECU is restarted to complete the vehicle upgrade while ensuring the safety of the vehicle.

[0113] In this embodiment, when the target first slave node controller installs the first upgrade package in the received upgrade package in the backup partition, and stores the second upgrade package in the received upgrade package in the backup partition, the electronic device can also control the target first slave node controller to pass the second upgrade package to the private node controller for installation in parallel while controlling the second slave node controller to install the received upgrade package.

[0114] That is to say, this embodiment can flash the upgrade packages of the second slave node controller that does not support AB partition technology and the private node controller that does not support AB partition technology in parallel during an OTA upgrade of the vehicle. In this way, compared with the traditional vehicle upgrade method, when the vehicle stops running, the upgrade packages of the first slave node controller that supports AB partition technology, the second slave node controller that does not support AB partition technology, and the private node controller are flashed in turn, this embodiment completes the flashing of the upgrade package of the first slave node controller without feeling during the driving process of the vehicle, and flashes the upgrade packages of the second slave node controller and the private node controller in parallel when the vehicle stops driving, which can greatly improve the efficiency of vehicle upgrades and thus improve user experience.

[0115] Taking into account the possibility of failure in vehicle upgrades, the electronic device can also control the target first slave node controller connected to the private node control to store the first original installation package of the private node controller in the backup partition, so that in the event of an upgrade failure, the target first slave node controller is controlled to pass the first original installation package to the private node for rollback flashing.

[0116] Based on this, in some embodiments, after storing the second upgrade package in the backup partition of the target first slave node controller, the vehicle upgrade method provided in the embodiment of the present application may further include the following steps:

[0117] The first original installation package of each of the private node controllers is stored in the backup partition of the target first slave node controller.

[0118] When the vehicle is driving, the electronic device controls the target first slave node controller to install the first upgrade package in the backup partition and stores the second upgrade package in the backup partition. It also controls the target first slave node controller to obtain the first original installation package of at least one private node controller connected to itself, and stores the obtained first original installation package in its own backup partition.

[0119] Based on this, in the above step S104, after the partition run by each of the first slave node controllers is switched from the system partition to the backup partition, the vehicle upgrade method provided in the embodiment of the present application may further include the following steps:

[0120] In response to the vehicle upgrade rollback instruction, controlling the target first slave node controller to transfer the first original installation package to the private node controller;

[0121] The first original installation package is installed in each of the private node controllers.

[0122] The electronic device generates a vehicle upgrade rollback instruction when detecting a vehicle upgrade failure, and in response to the vehicle upgrade rollback instruction, controls the target first slave node controller to pass the first original installation package stored in the backup partition to the private node controller when the private node controller is in an idle state, and controls each private node controller to reinstall its own first original installation package locally.

[0123] In some embodiments, the vehicle upgrade method provided in the embodiments of the present application may further include the following steps:

[0124] Control the master node controller to store the second original installation package of each of the second slave node controllers.

[0125] When the electronic device controls the master node controller to transmit the upgrade package to each second slave node controller in response to the vehicle upgrade instruction, it can control the master node controller to obtain the second original installation package of each second slave node controller, and then store the second original installation package in its own backup partition.

[0126] Based on this, in the above step S104, after the partition run by each of the first slave node controllers is switched from the system partition to the backup partition, the vehicle upgrade method provided in the embodiment of the present application may further include the following steps:

[0127] In response to the vehicle upgrade rollback instruction, controlling the master node controller to transmit the second original installation package to each of the second slave node controllers;

[0128] The second original installation package is installed in each of the second slave node controllers.

[0129] In response to a vehicle upgrade rollback instruction generated in the event of a vehicle upgrade failure, the electronic device controls the master node controller to transfer the second original installation package stored in the backup partition to the second slave node controller when the second slave node controller is in an idle state, and controls each second slave node controller to reinstall its own second original installation package locally.

[0130] In some embodiments, when the electronic device controls the second slave node controller and the private node controller to install the original installation package in an idle state, it can specifically request the non-distributed ECU AB partition switching condition check first, and request the non-distributed target ECU (A / B partition) to send a switching instruction. Then, the programming condition of the programming session of the target ECU (second slave node controller) that supports sensitive flashing is checked, and the target ECU is requested to enter the programming session through functional addressing (sending 16 frames, one frame every second). After that, the electronic device confirms the session mode of all target ECUs that support sensory flashing, unlocks the decryption of all sensory flashing targets through the ECU27 01 / 02 instruction containing the decryption PINCODE, and completes the installation and activation of all sensory flashing target ECUs through the SBL (34 / 36 / 37 / 0212 / 0301) (Optional) instruction. Then, the electronic device transmits the original VBF package (the second original installation package) to the sensory flashing target ECU for installation in parallel through the FF00 / 34 / 36 / 37 / 0212 / 0205 instruction, and upgrades the private node controller in parallel through the RID 31 01 0294 01 instruction to perform sensory flashing of the first original installation package of the private node controller. In addition, the electronic device can still periodically obtain the upgrade status of each private node controller according to a preset period (such as 5 seconds), and report the installation progress to the OTA server (target first slave node controller) and HMI (assignmentStatus: ROLLBACK-SENSIBLE-), and then restart the vehicle ECU to complete the vehicle upgrade when the vehicle safety is ensured.

[0131] In this embodiment, the target first slave node controller connected to the private node controller is controlled by an electronic device to store the first original installation package of the private node controller in the backup partition, so that in the event of an upgrade failure, the target first slave node controller is controlled to pass the first original installation package to the private node for rollback flashing. Also, the master node controller is controlled to obtain the second original installation package of each second slave node controller, and then the second original installation package is stored in its own backup partition, so that in the event of an upgrade failure, the master node controller is controlled to pass the second original installation package to the second slave node for rollback flashing. In this way, during an OTA upgrade of the vehicle, the rollback flashing of the ECU and private nodes of the vehicle that do not support the AB partitioning technology can be completed, thereby improving the safety and reliability of the OTA process.

[0132] The electronic device can also control the second slave node controller and / or the private node controller to locally install the upgrade package received from the master node controller during the driving process of the vehicle. Since the principle of the second slave node controller and the private node controller of the electronic device installing the upgrade package in the idle state is the same, only the control of the second slave node controller to locally install the upgrade package is described here.

[0133] It should be noted that, in addition to the state when the vehicle stops running, the idle state of the second slave node controller may also include a state when the second slave node controller is not called and stops running during the driving process of the vehicle.

[0134] Please refer to Figure 3 , Figure 3 for Figure 1 Schematic diagram of the detailed process flow of step S103.

[0135] like Figure 3 As shown, in some embodiments, the above-mentioned step S103, installing the upgrade package received by the second slave node controller in the second slave node controller, may include steps S301 to S302 as shown below.

[0136] Step S301, obtaining the installation duration of the upgrade package of the second slave node controller.

[0137] After the electronic device controls the master node controller to transmit the upgrade package to the second slave node controller in response to the vehicle upgrade instruction, it can first obtain the installation duration of the upgrade package used to upgrade the control program in the second slave node controller.

[0138] In some embodiments, the electronic device may obtain the data volume of the upgrade package of the second slave node controller, and then calculate the installation time of the upgrade package based on the data volume and the data installation speed of the second slave node controller.

[0139] In other embodiments, the electronic device may also obtain the time taken for the same second slave node controller on other vehicles to install the upgrade package through a cloud server, and then use the time as the installation time for the upgrade package of the second slave node controller on the current vehicle.

[0140] Step S302: installing the upgrade package received by the second slave node controller in the second slave node controller based on the installation duration while the vehicle is driving.

[0141] After obtaining the installation time of the upgrade package of the second slave node controller, the electronic device compares the installation time with the time when the second slave node controller is in an idle state while the vehicle is driving. If the installation time is less than or equal to the time when the second slave node controller is in an idle state, the electronic device controls the second slave node controller to locally install the upgrade package received from the master node controller while the vehicle is driving.

[0142] In some embodiments, the vehicle upgrade method provided in the embodiments of the present application may further include the following steps:

[0143] Based on the historical operation data of the second slave node controller, a time period during which the second slave node controller stops operating when the vehicle is driving is determined.

[0144] The electronic device collects historical operation data of the second slave node controller on the vehicle to determine, based on the historical operation data, a time period during which the second slave node controller is in a stopped operation state during the driving process of the vehicle.

[0145] It should be noted that during the driving process of the vehicle, there may be some controllers in the ECU of the whole vehicle that are not called. For example, if the user does not control the vehicle windows (especially the rear windows of the vehicle) during the driving process of the vehicle, then the controller used to control the vehicle windows can be identified as a controller that is in an idle state during the driving process of the vehicle.

[0146] Please refer to Figure 4 , Figure 4 for Figure 3 Schematic diagram of the detailed step flow of step S302.

[0147] like Figure 4 As shown, in some embodiments, the above-mentioned step S302, based on the installation duration, installs the upgrade package received by the second slave node controller in the second slave node controller when the vehicle is driving, and may include steps S401 to S402 as shown below.

[0148] Step S401, based on the current system time of the vehicle and the time period, determine the estimated remaining time that the second slave node controller is in the idle state.

[0149] When the electronic device obtains one or more time periods in which the second slave node controller is in an idle state, it first detects whether the current system time of the vehicle is within the time period, and when it is determined that the system time is within the time period, it calculates the estimated remaining time that the second slave node controller will continue to remain in an idle state from the current moment during vehicle driving.

[0150] Step S402: When the estimated remaining time is greater than or equal to the installation time, the upgrade package received by the second slave node controller is installed in the second slave node controller.

[0151] After determining the estimated remaining time that the second slave node controller remains in an idle state during vehicle driving, the electronic device compares the acquired installation time of the upgrade package of the second slave node controller with the estimated remaining time. If it is confirmed that the estimated remaining time is greater than or equal to the installation time, the master node controller is controlled to re-transmit the upgrade package to the second slave node controller during vehicle driving, so as to install the received upgrade package in the second slave node controller.

[0152] In this embodiment, in combination with the user's vehicle usage habits, it is determined that some second slave node controllers on the vehicle that do not support the AB partitioning technology are not operated during the driving process of the vehicle. Based on the installation time required for installing the upgrade package on the second slave node controller and the length of time the second slave node controller continues to remain idle, it is determined whether it is safe to install the upgrade package on the second slave node controller during the driving process of the vehicle, and if it is determined to be safe (the installation time is less than or equal to the length of time the second slave node controller continues to remain idle), the second slave node controller is controlled by the electronic device to install the upgrade package. In this way, for the ECU in the vehicle that does not support the AB partitioning technology, it is also possible to realize the senseless flashing of the upgrade package during the driving process of the vehicle, thereby further improving the vehicle upgrade efficiency and user experience.

[0153] See also Figure 5 The embodiment of the present application also provides a vehicle upgrade device, which can implement the above vehicle upgrade method and is applied to an electronic device, wherein the electronic device belongs to a vehicle, and the device includes a master node control module 501, a first slave node control module 502, a second slave node control module 503, and an upgrade switching module 504.

[0154] The master node control module 501 is used to control the master node controller of the vehicle to transmit the upgrade package to at least one first slave node controller and at least one second slave node controller of the vehicle respectively in response to the vehicle upgrade instruction; the vehicle upgrade instruction is used to instruct to upgrade the control program in the at least one first slave node controller and the at least one second slave node controller; the first slave node controller is a node controller with a system partition and a backup partition, and the second slave node controller is a node controller without partition;

[0155] A first slave node control module 502, configured to install the upgrade package received by the first slave node controller in the backup partition of each first slave node controller when the vehicle is driving;

[0156] The second slave node control module 503 is used as a node control module, and is used to install the upgrade package received by the second slave node controller in the second slave node controller when each of the second slave node controllers is in an idle state; the idle state includes: the state of the second slave node controller when the vehicle stops driving;

[0157] The upgrade switching module 504 is used to switch the partition run by each of the first slave node controllers from the system partition to the backup partition to complete the upgrade of the vehicle when it is determined that each of the second slave node controllers has completed the installation of the received upgrade package.

[0158] The specific implementation of the vehicle upgrade device provided in the embodiment of the present application is basically the same as the specific implementation of the above-mentioned vehicle upgrade method, and will not be repeated here.

[0159] The embodiment of the present application also provides an electronic device, the electronic device includes a memory and a processor, the memory stores a computer program, and the processor implements the above vehicle upgrade method when executing the computer program. The electronic device can be any smart terminal including a tablet computer, a vehicle-mounted computer, etc.

[0160] See also Figure 6 , Figure 6 The hardware structure of an electronic device of another embodiment is illustrated, and the electronic device includes:

[0161] The processor 601 may be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application;

[0162] The memory 602 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 602 can store an operating system and other applications. When the technical solution provided in the embodiment of this specification is implemented by software or firmware, the relevant program code is stored in the memory 602, and the processor 601 is called to execute the vehicle upgrade method of the embodiment of this application;

[0163] Input / output interface 603, used to implement information input and output;

[0164] Communication interface 604, used to realize communication interaction between the device and other devices, which can be realized by wired mode (such as USB, network cable, etc.) or wireless mode (such as mobile network, WIFI, Bluetooth, etc.);

[0165] Bus 1105 , which transmits information between the various components of the device (e.g., processor 601 , memory 602 , input / output interface 603 , and communication interface 604 );

[0166] The processor 601 , the memory 602 , the input / output interface 603 and the communication interface 604 are connected to each other in communication within the device via the bus 1105 .

[0167] An embodiment of the present application also provides a vehicle, which is equipped with an electronic device, the electronic device includes a memory and a processor, the memory stores a computer program, and the above-mentioned vehicle upgrade method is implemented when the processor executes the computer program.

[0168] An embodiment of the present application also provides a computer-readable storage medium, which stores a computer program, and when the computer program is executed by a processor, the above-mentioned vehicle upgrade method is implemented.

[0169] The memory, as a non-transient computer-readable storage medium, can be used to store non-transient software programs and non-transient computer executable programs. In addition, the memory may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory may optionally include a memory remotely disposed relative to the processor, and these remote memories may be connected to the processor via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0170] The embodiment of the present application also provides a computer program product, including a computer program. The steps implemented when the computer program is executed by a processor are basically the same as the specific embodiment of the above-mentioned vehicle upgrade method, and will not be repeated here.

[0171] The vehicle upgrade method, vehicle upgrade device, electronic device, vehicle, computer-readable storage medium and computer program product provided in the embodiments of the present application directly install the upgrade package on the node controller with system partition and backup partition during the driving process of the vehicle, thereby completing the non-sensing flashing of the upgrade package of this part of ECU, and then installing the upgrade package on the node controller without partition when the vehicle stops running, so as to perform the sensed flashing of the upgrade package of this part of ECU. In this way, compared with the sensed flashing of the upgrade package of the whole vehicle ECU through OTA when the vehicle is not driving, the embodiments of the present application divide the sensed flashing upgrade and the sensed flashing upgrade, upgrade the software of some ECUs that support senseless flashing during the driving process of the vehicle, and then upgrade the software of some ECUs that do not support senseless flashing when the vehicle stops running, thereby improving the efficiency of the vehicle to upgrade the whole vehicle ECU through OTA, thereby ensuring the user's experience of the vehicle.

[0172] In addition, the embodiment of the present application divides the seamless flash upgrade and the conscious flash upgrade so that in the event of upgrading the vehicle ECU through OTA, the master node Master can perform seamless flashing on some slave nodes Slave and conscious flashing on some slave nodes Slave. This can not only meet the strategy of seamless flashing, but also meet the upgrade requirements of controllers or components that are not partitioned, thereby balancing the user experience and OEM processing needs.

[0173] The embodiments described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. Those skilled in the art will appreciate that with the evolution of technology and the emergence of new application scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.

[0174] Those skilled in the art will appreciate that the technical solutions shown in the figures do not constitute a limitation on the embodiments of the present application, and may include more or fewer steps than shown in the figures, or a combination of certain steps, or different steps.

[0175] The device embodiments described above are merely illustrative, and the units described as separate components may or may not be physically separated, that is, they may be located in one place or distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0176] Those skilled in the art will appreciate that all or some of the steps in the methods disclosed above, and the functional modules / units in the systems and devices may be implemented as software, firmware, hardware, or a suitable combination thereof.

[0177] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0178] It should be understood that in the present application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the objects associated before and after are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0179] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the above units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0180] The units described above as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0181] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0182] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including multiple instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, referred to as ROM), random access memory (Random Access Memory, referred to as RAM), disk or optical disk and other media that can store programs.

[0183] The preferred embodiments of the present invention are described above with reference to the accompanying drawings, but the scope of the rights of the present invention is not limited thereto. Any modification, equivalent substitution and improvement made by a person skilled in the art without departing from the scope and essence of the present invention should be within the scope of the rights of the present invention.

Claims

1. A vehicle upgrading method, characterized in that: The method is applied to an electronic device, the electronic device belongs to a vehicle, and the method comprises: In response to a vehicle upgrade instruction, the master node controller controlling the vehicle transmits an upgrade package to at least one first slave node controller and at least one second slave node controller of the vehicle respectively; the first slave node controller is a node controller with a system partition and a backup partition, and the second slave node controller is a node controller without partitions; When the vehicle is driving, installing the upgrade package received by the first slave node controller in the backup partition of each of the first slave node controllers; When each of the second slave node controllers is in an idle state, installing the upgrade package received by the second slave node controller in the second slave node controller; the idle state includes: the state of the second slave node controller when the vehicle stops driving; When it is determined that each of the second slave node controllers has completed the installation of the received upgrade package, the partition run by each of the first slave node controllers is switched from the system partition to the backup partition to complete the upgrade of the vehicle.

2. The method according to claim 1, characterized in that The at least one first slave node controller includes a target first slave node controller, the target first slave node controller is connected to at least one private node controller of the vehicle, the upgrade package received by the target first slave node controller includes a first upgrade package and a second upgrade package, the first upgrade package is used for upgrading the target first slave node controller, and the second upgrade package is used for upgrading the at least one private node controller; The step of installing the upgrade package received by the first slave node controller in the backup partition of each of the first slave node controllers includes: Installing the first upgrade package in the backup partition of the target first slave node controller, and storing the second upgrade package in the backup partition of the target first slave node controller; Before switching the partition run by each of the first slave node controllers from the system partition to the backup partition, the method further includes: When each of the private node controllers is in the idle state, controlling the target first slave node controller to transfer the second upgrade package to the private node controller; The second upgrade package is installed in each of the private node controllers.

3. The method according to claim 2, characterized in that In a case where the second upgrade package is stored in the backup partition of the target first slave node controller, the step of installing the upgrade package received by the second slave node controller in the second slave node controller when each of the second slave node controllers is in an idle state includes: When each of the second slave node controllers is in an idle state and each of the private node controllers is in the idle state, the upgrade package received by the second slave node controller is installed in the second slave node controller, and the target first slave node controller is controlled to pass the second upgrade package to the private node controller, and the second upgrade package is installed in each of the private node controllers.

4. The method according to claim 2, characterized in that: After storing the second upgrade package in the backup partition of the target first slave node controller, the method further includes: Storing the first original installation package of each of the private node controllers in the backup partition of the target first slave node controller; After switching the partition run by each of the first slave node controllers from the system partition to the backup partition, the method further includes: In response to the vehicle upgrade rollback instruction, controlling the target first slave node controller to transfer the first original installation package to the private node controller; The first original installation package is installed in each of the private node controllers.

5. The method according to claim 4, characterized in that The method further comprises: Controlling the master node controller to store the second original installation package of each of the second slave node controllers; After switching the partition run by each of the first slave node controllers from the system partition to the backup partition, the method further includes: In response to the vehicle upgrade rollback instruction, controlling the master node controller to transmit the second original installation package to each of the second slave node controllers; The second original installation package is installed in each of the second slave node controllers.

6. The method according to any one of claims 1 to 5, characterized in that The idle state also includes: a state in which the second node controller stops operating when the vehicle is driving; The step of installing, in the second slave node controller, the upgrade package received by the second slave node controller comprises: Obtaining the installation duration of the upgrade package of the second slave node controller; Based on the installation duration, while the vehicle is driving, the upgrade package received by the second slave node controller is installed in the second slave node controller.

7. The method according to claim 6, characterized in that The method further comprises: Based on historical operation data of the second slave node controller, determining a time period during which the second slave node controller stops operating when the vehicle is driving; The step of installing the upgrade package received by the second slave node controller in the second slave node controller based on the installation duration while the vehicle is driving includes: Determining an estimated remaining time that the second slave node controller is in the idle state based on the current system time of the vehicle and the time segment; When the estimated remaining time is greater than or equal to the installation time, the upgrade package received by the second slave node controller is installed in the second slave node controller during driving of the vehicle.

8. An electronic device, characterized in that: The electronic device includes a memory and a processor, the memory stores a computer program, and the processor implements the vehicle upgrade method according to any one of claims 1 to 7 when executing the computer program.

9. A vehicle, characterized in that: The vehicle includes an electronic device, the electronic device includes a memory and a processor, the memory stores a computer program, and the processor implements the vehicle upgrade method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the vehicle upgrading method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Upgrading method and device of vehicle controller, vehicle and storage medium

    CN115277413A

  • OTA upgrading method and device, electronic equipment and storage medium

    CN115951914A

  • Brushing method and device of vehicle system, electronic equipment, vehicle and storage medium

    CN116400944A

  • Vehicle OTA upgrading method and system, electronic equipment and storage medium

    CN116506840A

  • OTA upgrading system and upgrading method

    CN117295055A