Application upgrading method and device, controller, vehicle and storage medium

By downloading and storing upgrade files in the target controller of the vehicle, and performing invisible transmission and upgrading when specific conditions are met, the problem of the vehicle being unable to operate during the upgrade process in the prior art is solved, and the upgrade experience and efficiency are improved.

CN119781789AActive Publication Date: 2025-04-08BYD CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411412353.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-10
Publication Date
2025-04-08
Estimated Expiration
2044-10-10

AI Technical Summary

Technical Problem

When upgrading the vehicle electronic controller (ECU) software, the ECU will be switched to the upgrade state during the upgrade process, resulting in the driver being unable to operate the vehicle, the upgrade experience is poor and the efficiency is inefficient.

Method used

By downloading and storing the upgrade file in the target controller, the running status of the target device is detected. When the preset transfer conditions are met, the upgrade file is transferred to the data storage space of the target controller through the target application, and the upgrade is performed based on the file.

Benefits of technology

The target applications running in the target controller are realized without any sense upgrade, avoiding the impact of the upgrade process on the operation of the target equipment, and improving the application upgrade experience and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119781789A_ABST
    Figure CN119781789A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses an application upgrading method and device, a controller, a vehicle and a storage medium. The method is applied to a target controller of target equipment, and comprises the following steps: downloading and storing an upgrading file of a target application running in the target controller; detecting the running state of the target equipment; if the running state meets a preset transmission condition, transmitting a stored upgrading file to a data storage space corresponding to the target controller through the target application; and upgrading the target application based on the upgrading file in the data storage space. Therefore, the running state of the target equipment is detected through the target controller, and when the running state meets the preset transmission condition, the stored upgrading file is transmitted to the data storage space corresponding to the target controller through the target application, so that the target application is upgraded based on the upgrading file in the data storage space. The target application running in the target controller is subjected to non-inductive upgrading, the application upgrading experience is effectively improved, and then the application upgrading efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to an application upgrading method, device, controller, vehicle and storage medium. Background Art

[0002] After a vehicle is launched, there are often new functions to be updated in the electronic control unit (ECU) of the vehicle, or the ECU software needs to be upgraded for production line maintenance. In the existing software update method, over-the-air (OTA) technology is often used for upgrading. The updated software is uploaded to the OTA center through OTA, and then wirelessly transmitted to the vehicle through the OTA center for software update. Finally, the vehicle computer guides the corresponding controller to update the software through the CAN protocol.

[0003] However, when using OTA for application upgrades, the vehicle will switch the ECU to an upgrade state, so that during the entire upgrade process, the driver cannot perform any operations on the vehicle, resulting in a poor application upgrade experience and, in turn, low application upgrade efficiency. Summary of the invention

[0004] The embodiments of the present application provide an application upgrade method, device, controller, vehicle and storage medium, which can realize a seamless upgrade of a target application running in a target controller, effectively improve the application upgrade experience, and further improve the efficiency of the application upgrade.

[0005] In order to achieve the above object, according to a first aspect of the present application, there is provided an application upgrade method, which is applied to a target controller of a target device, and the method comprises:

[0006] Downloading and storing an upgrade file of a target application running in the target controller;

[0007] Detecting the operating status of the target device;

[0008] If the running state meets the preset transmission condition, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application;

[0009] The target application is upgraded based on the upgrade file in the data storage space.

[0010] In some embodiments, the upgrade file includes multiple data packets, and if the running status meets the preset transmission conditions, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application, including: if the running status meets the preset transmission conditions, a data packet is transmitted to the data storage space corresponding to the target controller through the target application; the method also includes: returning to execute the step of detecting the running status of the target device until all data packets of the upgrade file are transmitted to the data storage space corresponding to the target controller.

[0011] In some embodiments, after the step of transmitting a data packet to the data storage space corresponding to the target controller through the target application if the operating state meets the preset transmission condition, the method further includes: if it is detected that the operating state does not meet the preset transmission condition, recording the storage address information of the target data packet, the target data packet being the last data packet transmitted to the data storage space; returning to the step of detecting the operating state of the target device;

[0012] The method further includes: in the process of returning to execute detection of the operating status of the target device, if it is detected that the operating status satisfies the preset transmission condition, then based on the storage address information, continuing to transmit the untransmitted data packets to the data storage space corresponding to the target controller.

[0013] In some embodiments, the downloading and storing of the upgrade file of the target application running in the target controller includes: receiving upgrade file path information of the upgrade file for the target application running in the target controller issued by the first server; and downloading the upgrade file corresponding to the target application from the second server through the target application based on the upgrade file path information.

[0014] In some embodiments, the target device includes an online storage module, and the downloading and storing of the upgrade file of the target application running in the target controller includes: receiving, through the online storage module, upgrade file path information for the upgrade file of the target application running in the target controller, which is sent by the first server; detecting whether the upgrade file path information exists in the online storage module; and when the existence of the upgrade file path information is detected, downloading, through the target application, the upgrade file of the target application based on the upgrade file path information, and storing it in the online storage module.

[0015] In some embodiments, the preset transmission condition includes the target device being in a first preset operating state and / or the target controller being in a second preset operating state.

[0016] In some embodiments, the first preset operating state includes at least one of the target device being in a normal driving state and the operating speed of the target device being no greater than a preset speed threshold.

[0017] In some embodiments, the second preset operating state includes that the target task is not included in the tasks currently running by the target controller, and the memory occupancy rate of the target controller is less than at least one of the preset thresholds, the target task is a task whose priority meets the conditions and / or the target task is a task whose running time is greater than a preset duration.

[0018] In some embodiments, the data storage space is an internal storage space corresponding to the target controller, and the upgrading of the target application based on the upgrade file in the data storage space includes: receiving a power-off instruction; based on the power-off instruction, setting the starting storage address of the upgrade file in the data storage space to the starting running address of the target application, and controlling the target device to be in a power-off state; when it is detected that the target device switches from the power-off state to the power-on state, upgrading the target application based on the starting running address of the target application.

[0019] In some embodiments, the data storage space is an external storage space corresponding to the target controller, and the upgrading of the target application based on the upgrade file in the data storage space includes: receiving a power-off instruction; based on the power-off instruction, obtaining the starting running address of the target application; based on the starting running address of the target application, burning the upgrade file in the data storage space to the internal storage space of the target controller; when it is detected that the target device switches from the power-off state to the power-on state, upgrading the target application based on the upgrade file in the internal storage space.

[0020] According to a second aspect of the present application, there is provided an application upgrade device, which is configured with a target controller of a target device, and the device comprises:

[0021] A download module, used for downloading and storing the upgrade file of the target application running in the target controller;

[0022] A detection module, used to detect the operating status of the target device;

[0023] A transmission module, configured to transmit the stored upgrade file to a data storage space corresponding to the target controller through the target application if the operating state meets a preset transmission condition;

[0024] An upgrade module is used to upgrade the target application based on the upgrade file in the data storage space.

[0025] According to a third aspect of the present application, a target controller is provided, including a processor and a memory, wherein the memory stores an application program, and the processor is used to run the application program in the memory to implement the application upgrade method provided in an embodiment of the present application.

[0026] According to a fourth aspect of the present application, a vehicle is provided, comprising the target controller provided by the third aspect of the present application.

[0027] According to a fifth aspect of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, and the computer program is suitable for loading by a processor to execute the steps in any application upgrade method provided in the embodiments of the present application.

[0028] According to the sixth aspect of the present application, a computer program product is provided, which includes a computer program, and the computer program is stored in a computer-readable storage medium; when the processor of the target controller reads the computer program from the computer-readable storage medium, the processor executes the computer program, so that the target controller executes the steps in the application upgrade method provided in the embodiment of the present application.

[0029] In the application upgrade method, device, controller, vehicle and storage medium of the embodiment of the present application, the target controller applied to the target device downloads and stores the upgrade file of the target application running in the target controller; detects the operating status of the target device; if the operating status meets the preset transmission conditions, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application; and the target application is upgraded based on the upgrade file in the data storage space. In this way, the operating status of the target device is detected by the target controller, and when the operating status meets the preset transmission conditions, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application, thereby upgrading the target application based on the upgrade file in the data storage space, and the upgrade process of the target application is actively controlled by the target controller, so as to realize the non-sensing upgrade of the target application running in the target controller, avoid the impact of the upgrade process of the target application on the operation of the target device, effectively improve the application upgrade experience, and then improve the efficiency of application upgrade. BRIEF DESCRIPTION OF THE DRAWINGS

[0030] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.

[0031] Figure 1 This is a schematic diagram of an implementation scenario of an application upgrade method provided in an embodiment of the present application;

[0032] Figure 2 It is a flowchart of an application upgrade method provided in an embodiment of the present application;

[0033] Figure 3 It is a schematic diagram of the overall architecture of an application upgrade method provided in an embodiment of the present application;

[0034] Figure 4 It is a specific flow chart of an application upgrade method provided in an embodiment of the present application;

[0035] Figure 5 is a structural diagram of an application upgrade device provided in an embodiment of the present application;

[0036] Figure 6 It is a schematic diagram of the structure of the target controller provided in an embodiment of the present application. DETAILED DESCRIPTION

[0037] The technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present application.

[0038] In the description of this application, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more features. In the description of this application, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.

[0039] The embodiment of the present application provides an application upgrade method, device, controller, vehicle and storage medium. The application upgrade device can be integrated in an electronic device, which can be a server or a terminal.

[0040] Among them, the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, network acceleration services (Content Delivery Network, CDN), and basic cloud computing services such as big data and artificial intelligence platforms. Terminals may include but are not limited to mobile phones, computers, intelligent voice interaction devices, smart home appliances, target controllers, aircraft, etc. Terminals and servers can be directly or indirectly connected via wired or wireless communications, and this application does not limit this.

[0041] The target controller may be integrated into a vehicle, which may be a fuel vehicle, a plug-in hybrid vehicle, or a new energy vehicle, etc. This application does not make any specific limitation on this.

[0042] See also Figure 1 , taking the application upgrade device integrated into the target controller as an example, Figure 1 A schematic diagram of an implementation scenario of the application upgrade method provided in an embodiment of the present application, wherein the target controller may be integrated in a vehicle, and the target controller may download and store an upgrade file of a target application running in the target controller; detect the operating status of the target device; if the operating status meets a preset transmission condition, transfer the stored upgrade file to a data storage space corresponding to the target controller through the target application; and upgrade the target application based on the upgrade file in the data storage space.

[0043] It should be noted that Figure 1 The implementation environment scenario diagram of the application upgrade method shown is only an example. The implementation environment scenario of the application upgrade method described in the embodiment of the present application is to more clearly illustrate the technical solution of the embodiment of the present application, and does not constitute a limitation on the technical solution provided by the embodiment of the present application. It is known to those skilled in the art that with the evolution of data processing and the emergence of new business scenarios, the technical solution provided by the present application is also applicable to similar technical problems.

[0044] The solutions provided by the embodiments of the present application are specifically described by the following embodiments. It should be noted that the description order of the following embodiments is not intended to limit the preferred order of the embodiments.

[0045] This embodiment will be described from the perspective of an application upgrade device, which may be specifically integrated in a target controller.

[0046] See also Figure 2 , Figure 2: is a flow chart of an application upgrade method provided in an embodiment of the present application. The application upgrade method is applied to a target controller of a target device, and includes:

[0047] Step S101 : downloading and storing an upgrade file of a target application running in a target controller.

[0048] The target controller may be an electronic control unit (ECU) in a target device, the target device may be a vehicle or other equipment, and the target controller may be an onboard controller in the vehicle, for example, a battery management controller (BMC), a motor control ECU or other controller. The upgrade file may be a file for upgrading a target application running on the target controller, and the target application may be an application running on the target controller.

[0049] Among them, there can be multiple ways to download and store the upgrade file of the target application running in the target controller. For example, you can receive the upgrade file path information of the upgrade file for the target application running in the target controller sent by the first server; through the target application, based on the upgrade file path information, download the upgrade file corresponding to the target application from the second server.

[0050] Among them, the first server can be a server that establishes communication with the target controller. For example, the target controller can establish a communication connection with the first server through the target application, or can establish a communication connection with the first server through a data transmission unit such as an online storage module (DTU). The specific connection method is not limited in this embodiment of the present application. Optionally, the first server can be a cloud platform that can be used to communicate with the target controller. The upgrade file path information can be a path for obtaining the upgrade file of the target application, and the second server can be a server that stores the upgrade file of the target application.

[0051] In this way, by setting up a server that communicates with the target controller and a server that stores upgrade files separately, the security of data transmission and application upgrades can be improved and the risk of application upgrades can be reduced.

[0052] Optionally, there may be multiple ways to download and store the upgrade file of the target application running in the target controller. For example, the target device may include an online storage module, which may receive upgrade file path information for the upgrade file of the target application running in the target controller sent by the first server through the online storage module, detect whether the upgrade file path information exists in the online storage module, and when the existence of the upgrade file path information is detected, download the upgrade file of the target application based on the upgrade file path information through the target application and store it in the online storage module.

[0053] The online storage module may be a module that establishes a communication connection with the first server and is used for data transmission of the upgrade file, for example, it may be a storage module used by a remote communication terminal (TBOX) or other related vehicle-mounted terminals. Optionally, the online storage module may be a supplier module, and the target controller may control the online storage module to communicate with the first server through a preset control instruction protocol (such as AT instructions, a dedicated instruction set of a DTU module).

[0054] In one embodiment, the target controller is a battery management controller (BMC_MCU) as an example, please refer to Figure 3 , Figure 3 It is a schematic diagram of the overall architecture of an application upgrade method provided in an embodiment of the present application, wherein the target controller runs a target application (BMC_APP), and a seamless upgrade program (APP_OTA) is added to the target application, which is used to execute the application upgrade method provided in an embodiment of the present application to achieve seamless upgrade of the target application. When there is an upgrade file that needs to be upgraded in the target application of the target controller, the second server (FTP File Server) storing the upgrade file can notify the first server (cloud platform) to send information such as the upgrade file path information of the upgrade file that needs to be upgraded in the target application to the first server, so that the first server can send the upgrade file path information and other information to the online storage module (DTU module) corresponding to the target controller in JSON (JavaScript Object Notation, a lightweight data exchange format) format through the transmission control protocol (TCP), so that the target controller can use the universal asynchronous receiver and transmitter (UART) and AT instructions to detect whether the upgrade file path information and other information of the upgrade file that needs to be upgraded is stored in the online storage module. When the upgrade file path information and other information of the upgrade file that needs to be upgraded is detected, the online storage module can be triggered to download the upgrade file to the second server based on the upgrade file path information through the file transfer protocol (File Transfer Protocol, FTP for short), and cache it in the online storage module.

[0055] In one embodiment, before downloading the upgrade file of the target application running in the target controller, it can be determined whether the version of the upgrade file to be upgraded is a new version, so as to prevent the reverse upgrade or the upgrade of the same version file, which causes a waste of central processing unit (CPU) resources. For example, when the server sends the upgrade file path information, it can also send the version number of the corresponding upgrade file, so that the version number of the upgrade file to be upgraded can be compared with the version number of the currently running target application, so that when the version number of the upgrade file to be upgraded is greater than the version number of the currently running target application, the upgrade file of the target application running in the target controller can be downloaded to upgrade the target application.

[0056] Optionally, file information of the upgrade file to be upgraded of the target application can also be obtained. The file information may include the version number of the upgrade file to be upgraded and some predetermined check values ​​(CRC32) and other information. The check value can be used to determine whether the current upgrade file is reliable, so as to identify whether there is any difference between the upgrade file and the file currently running on the target controller based on the file information, thereby confirming whether the upgrade file to be upgraded is the file that needs to be upgraded, thereby preventing reverse upgrades or upgrades of the same version of files, which would cause a waste of CPU resources.

[0057] Step S102, detecting the operating status of the target device.

[0058] Among them, the operating status can indicate the task occupancy, driving status and other information of the target device. For example, it can include the operating status of the target device and the operating status of the target controller. The operating status of the target device can include information such as driving status and vehicle speed. The operating status of the target controller can include task occupancy, whether it is busy and other information.

[0059] Step S103: if the running state meets the preset transmission condition, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application.

[0060] The preset transmission condition may be a condition that satisfies the transmission of the upgrade file, and the data storage space may be a storage space corresponding to the target controller for storing the upgrade file.

[0061] Optionally, the preset transmission condition may include the target device being in a first preset operating state and / or the target controller being in a second preset operating state. The first preset operating state may be an operating state that the target device is in when the upgrade file is transmitted. For example, the first preset operating state may include at least one of the target device being in a normal driving state and the target device's operating speed being no greater than a preset speed threshold. The normal driving state may be a driving state in which the target device does not experience a collision, insulation failure, emergency deceleration, or rapid acceleration. The preset speed threshold may be a pre-set critical value of the speed. When the target device's operating speed is greater than the critical value, it may be considered that the target device is running too fast, and the application upgrade is not performed at this time to avoid affecting the normal operation of the target device.

[0062] When the target device is not in the first preset operating state and / or the target controller is not in the second preset operating state, for example, the target device is speeding too fast, the user is performing urgent acceleration and deceleration operations, or the target application is running an algorithm with high CPU usage and encounters an emergency failure, etc., because these situations are tasks that require a large amount of resources to be invested by the target controller to process, the conditions for upgrading file transmission are not met at this time, and it is necessary to suspend the upgrading file transmission first, and continue the upgrading file transmission after the emergency task processing is completed, so as to achieve seamless transmission of the upgrading file.

[0063] The second preset running state may include that the target controller does not include the target task in the tasks currently running, and the memory occupancy rate of the target controller is less than at least one of the preset thresholds. The target task may be a task whose priority meets the conditions and / or the target task is a task whose running time is greater than the preset time. The task that meets the priority conditions may be a task with a higher task priority among the tasks running the target controller. The target task whose running time is greater than the preset time may be a task with a longer running time. The running of the target task will cause the CPU load of the target device or the target controller to be too high. During the running of the target task, the application upgrade of the target application will not be performed to prevent the target controller from being overloaded and causing the program to run stuck, so as to avoid affecting the normal operation of the target device, so as to achieve a seamless upgrade of the target application and improve the efficiency of application upgrade.

[0064] Among them, if the operating status meets the preset transmission conditions, there can be multiple ways to transfer the stored upgrade file to the data storage space corresponding to the target controller through the target application. For example, the upgrade file may include multiple data packets. If the operating status meets the preset transmission conditions, a data packet can be transmitted to the data storage space corresponding to the target controller through the target application. Then, the step of detecting the operating status of the target device can be returned until all data packets of the upgrade file are transferred to the data storage space corresponding to the target controller.

[0065] In this way, after downloading the upgrade file, the operating status of the target device can be detected in real time through the target application. When the operating status meets the preset transmission conditions, a data packet of the upgrade file can be transmitted to the data storage space corresponding to the target controller through the target application. During the process of transmitting the data packet, the target controller is still monitoring the operating status of the target device. When the operating status meets the preset transmission conditions, the next data packet of the upgrade file is transmitted to the data storage space corresponding to the target controller through the target application until all data packets of the upgrade file are transmitted to the data storage space corresponding to the target controller.

[0066] Optionally, if the running status meets the preset transmission conditions, after a data packet is transmitted to the data storage space corresponding to the target controller through the target application, if it is detected that the running status does not meet the preset transmission conditions, the storage address information of the target data packet is recorded, and then, the step of detecting the running status of the target device can be returned. In the process of returning to detect the running status of the target device, if it is detected that the running status meets the preset transmission conditions, the untransmitted data packets continue to be transmitted to the data storage space corresponding to the target controller based on the storage address information.

[0067] The storage address information may be information indicating the storage address of a target data packet, and the target data packet may be a data packet that is last transmitted to the data storage space, that is, a data packet that is last successfully stored in the data storage space.

[0068] Among them, based on the storage address information, there may be multiple ways to continue to transmit the untransmitted data packet to the data storage space corresponding to the target controller. For example, the address offset of the next data packet may be performed on the storage address information and the length of the data packet to obtain the storage address of the next data packet, that is, the storage address of the next untransmitted data packet, which is recorded in the data storage unit (Dflash). Therefore, when it is detected that the operating status meets the preset transmission conditions, the transmission completion flag of the transmission process of transferring the upgrade file to the data storage space of the target controller can be read. When the transmission completion flag is not set, it may indicate that there is a transmission interruption in the transmission process of transferring the upgrade file to the data storage space of the target controller. Therefore, the storage address of the next untransmitted data packet corresponding to the upgrade file can be obtained in Dflash, so that according to the storage address of the next data packet, the untransmitted data packet can continue to be transmitted to the data storage space corresponding to the target controller.

[0069] In one embodiment, when the upgrade file transmission is interrupted or fails, the storage address of the most recently successfully transmitted data packet can be obtained, so that the address offset can be performed according to the storage address of the most recently successfully transmitted data packet and the length of the data packet, so that the storage address of the next data packet that has not been transmitted can be recorded and recorded in Dflash, so that when the preset transmission condition is met next time, the untransmitted data packet can continue to be transmitted to the data storage space corresponding to the target controller according to the storage address of the next data packet. In this way, the upgrade file transmission process that occupies the most CPU and is the most time-consuming can be performed in a senseless state, and when there is an interruption or failure in the transmission process, the interruption point, that is, the storage address information of the target data packet, is recorded, so that the next time the preset transmission condition is met, the breakpoint is resumed according to the storage address information, and the data transmission method of the upgrade file based on the breakpoint-resume transmission realizes the senseless upgrade of the target application and greatly improves the upgrade efficiency of the target application.

[0070] Optionally, when the upgrade file is stored in an online storage module, during the transmission process of the upgrade file to the data storage space of the target controller, the target controller can obtain data packets of the upgrade file from the online storage module in segments, and transmit the data packets to the data storage space corresponding to the target controller. Then, the integrity of the upgrade file stored in the data storage space corresponding to the target controller can be verified. When the upgrade file meets the integrity requirements, you can wait for subsequent application upgrades.

[0071] In a specific embodiment, take the target controller downloading the upgrade file through the online storage module as an example, please refer to Figure 4 , Figure 4 It is a specific flow diagram of an application upgrade method provided by an embodiment of the present application. In step S1, the target controller detects whether there is an upgrade file of the application to be upgraded in the online storage module. When there is an upgrade file, the application to be upgraded corresponding to the upgrade file can be detected through step S2 to determine whether it is consistent with the currently running application. In the case of inconsistency, the upgrade file can be downloaded through the online storage module, and the running state of the target device can be detected to determine whether the state of the target device meets the preset transmission condition through step S3, so that when the preset transmission condition is met, the first data packet of the upgrade file can be obtained from the online storage module through step S4, and the data packet is transmitted to the data storage space corresponding to the target controller, and the integrity of each data packet is verified. When the transmission is completed, based on step S5, continue to detect whether the preset transmission condition is met at present. When the preset transmission condition is met, based on step S6, the next data packet in the upgrade file is obtained from the online storage module for transmission. When the preset transmission condition is not met, the transmission of the upgrade file is temporarily stopped until the running state of the target device meets the preset transmission condition, and the transmission of the next data packet is continued. Based on step S7, steps S5 and S6 are repeated until all data packets of the upgrade file are transmitted. Then, based on step S8, the transmitted upgrade file may be checked for integrity, and when the upgrade file meets the integrity requirements, the subsequent application upgrade process may be performed.

[0072] Step S104: upgrading the target application based on the upgrade file in the data storage space.

[0073] Among them, there can be multiple ways to upgrade the target application based on the upgrade file in the data storage space. For example, when the internal storage space of the target controller is large enough, the data storage space can be the internal storage space corresponding to the target controller, so that it can receive a power-off instruction. Based on the power-off instruction, the starting storage address of the upgrade file in the data storage space is set to the starting running address of the target application, and the target device is controlled to be in a power-off state. When it is detected that the target device switches from the power-off state to the power-on state, the target application is upgraded based on the starting running address of the target application.

[0074] The power-off instruction may be an instruction to turn off the power of the target device. For example, when the vehicle is locked, the power-off instruction will be triggered to power off the vehicle. The starting storage address may be the starting storage address of the upgrade file in the data storage space, and the starting running address may be the starting address for running the target application. The power-on state may be the state in which the target device is powered on. For example, after the vehicle is started, the vehicle will switch from the power-off state to the power-on state.

[0075] Among them, there are many ways to set the starting storage address of the upgrade file in the data storage space as the starting running address of the target application based on the power-off instruction, and control the target device to be in a power-off state. For example, when a power-off instruction is received, the starting storage address of the upgrade file in the data storage space can be set as the starting running address of the target application through a boot program, and then the target device is controlled to be in a power-off state based on the power-off instruction.

[0076] Optionally, when a power-off command is received, the sleep state of the target device can be briefly delayed. During the delayed sleep period, the starting storage address of the upgrade file in the data storage space can be set to the starting running address of the target application through the boot program, so that the target application can be upgraded without the user noticing, thereby improving the efficiency of application upgrades.

[0077] In this way, when a power-off command is received for the target device, the starting storage address of the upgrade file in the data storage space is quickly set to the starting running address of the target application. Then, when it is detected that the target device switches from a power-off state to a power-on state, the target application is run based on the starting running address of the target application through the boot loader (Bootloader), so that the new version of the target application is run with the new version of the upgrade file, thereby completing the upgrade of the target application without the user noticing, thereby improving the application upgrade efficiency of the target controller.

[0078] Optionally, there may be multiple ways to upgrade the target application based on the upgrade files in the data storage space. For example, when the internal storage space of the target controller is not large enough, the data storage space may be the external storage space corresponding to the target controller, so that a power-off instruction may be received. Based on the power-off instruction, the starting running address of the target application may be obtained. Based on the starting running address of the target application, the upgrade files in the data storage space may be burned into the internal storage space of the target controller. When it is detected that the target device switches from a power-off state to a power-on state, the target application may be upgraded based on the upgrade files in the internal storage space.

[0079] Among them, the external storage space can be an external memory outside the target controller and set for the target controller, and the internal storage space can be an application (APP) area of ​​the target controller. The APP area can be an area divided in the internal memory of the microcontroller for storing application code and data. In this area, the microcontroller can store and execute the user's application code and data, thereby realizing specific functions.

[0080] Among them, there are many ways to burn the upgrade file in the data storage space into the internal storage space of the target controller based on the starting running address of the target application. For example, a boot program can be used to burn the upgrade file into the APP area of ​​the target application in the target controller based on the starting running address of the target application.

[0081] In this way, when it is detected that the target device switches from a power-off state to a power-on state, the program of the upgrade file stored in the APP area of ​​the internal storage space can be run based on the starting running address of the target application, thereby running the new target application and upgrading the target application without the user noticing.

[0082] For example, please refer to Figure 3, an external storage space (ExternFlash IC) can be added to the target controller BMC_MCU, and the external storage space and the online storage module can be communicated and managed through the controller driver (BMC_DRV). The controller driver includes a flash driver (Flash Drv) and a storage module manager (DtuM). The flash driver Flash Drv is used to manage the external storage space Extern Flash IC through the serial bus protocol (SPI), and the storage module manager DtuM is used to manage the online storage space. Therefore, the App_OTA program in the target application can be used to obtain the data packet of the upgrade file from the online storage module, and then transmitted to the external storage space Extern Flash IC. When a power-off instruction is received, the starting running address of the target application can be obtained through the App_OTA program in the target application based on the power-off instruction. Based on the starting running address of the target application, the upgrade file in the external storage space Extern Flash IC is burned to the internal storage space of the target controller through the boot program. Therefore, when it is detected that the target device switches from the power-off state to the power-on state, the upgrade file in the internal storage space can be run through the boot program to run the new target application corresponding to the upgrade file, so as to realize the non-sensing upgrade of the target application.

[0083] Optionally, after the target application is upgraded, the version number of the currently running target application may be uploaded to the cloud platform through the target application to notify the cloud platform whether the application upgrade is successful.

[0084] In one embodiment, if an upgrade failure occurs during the upgrade process of the target application, the target controller can perform autonomous upgrade diagnosis, and then the diagnosed cause can be uploaded to the cloud platform. In this way, the problems encountered during the upgrade process can be intuitively obtained through the background server, and the problems generated during the target application upgrade process can be quickly resolved, thereby improving the efficiency of the application upgrade.

[0085] In the existing application upgrade method for the target controller, the Over-the-Air Technology (OTA) is often used for upgrading. The updated software is uploaded to the OTA center through OTA, and then the software is wirelessly transmitted to the vehicle end through the OTA center for software update. Finally, the vehicle end guides the corresponding controller to update the software through the CAN protocol. However, under this application upgrade method, after receiving the upgrade command, the vehicle computer will put the target ECU that needs to be upgraded in the upgrade state, so that the target ECU is in BootLoader mode, and the rest of the ECUs are in a silent state, which means that the user cannot perform any operation on the vehicle during the entire application upgrade process. The time for a complete upgrade is calculated in minutes, which basically takes more than ten minutes, and may take longer. It is undoubtedly a long wait for the user. In addition, the vehicle controller needs to be upgraded and guided by the vehicle computer or some equipment throughout the process, relying on the traditional automotive universal diagnostic protocol (UDS). The ECU is in a passive state during the entire transmission process. The vehicle computer will send all the corresponding upgrade messages to the ECU that needs to be upgraded at one time and the transmission process cannot be interrupted. Once interrupted, the application upgrade will fail. Therefore, when using OTA for application upgrades, the vehicle will switch the ECU to an upgrade state, so that during the entire upgrade process, the driver cannot perform any operations on the vehicle, resulting in a poor application upgrade experience and, in turn, low application upgrade efficiency.

[0086] To this end, an embodiment of the present application provides an application upgrade method, in which an upgrade file is interactively stored through a server such as a cloud platform and an online storage module corresponding to a target controller ECU. Then, the target application inside the target controller ECU communicates with the online storage module to complete the upgrade of the target application. The cloud platform only needs to send the path-related information of the upgrade file to the online storage module, and the subsequent application upgrade process is fully implemented by the target controller itself. When the target controller detects that there are files in the online storage module that need to be updated, the target controller can judge whether the currently executed task is busy, whether the operating status is normal, etc. according to its own and the running status of the whole vehicle, and actively obtain the data of the upgrade file from the online storage module, without relying on the upper computer or T-BOX (related on-board diagnostic instrument) to issue related upgrade instructions. If the whole vehicle needs to perform some urgent tasks or some tasks that are not suitable for upgrading during the transmission process, the transmission is stopped at this time, and the transmission is continued until the conditions are met until completion, thereby realizing a seamless upgrade of the target application. The application upgrade method provided in the embodiment of the present application is used to upgrade the application of the target controller. It is an autonomous and seamless upgrade process. The entire process is carried out in the target application, which means that the user can perform any operations such as discharging and charging the vehicle, and there is no need to wait for the application upgrade process. The upgrade duration is short, and the user will not feel anything during the entire process, thereby improving the customer experience.

[0087] Furthermore, in the existing application upgrade method using OTA, once a failure occurs during the transmission of the upgrade file, the transmission has to start from the beginning in real time. However, the autonomous and seamless application upgrade method provided in the embodiment of the present application can record the failure breakpoint when the upgrade file transmission fails, so that the transmission can be resumed from the breakpoint when the preset transmission conditions are met, greatly improving the application upgrade efficiency.

[0088] In addition, in the existing application upgrade method using OTA, multiple modules are required to cooperate, relying on the CAN bus, the upgrade time is long, the ECU is passively updated throughout the process and the vehicle cannot operate normally during the entire process. The autonomous and senseless application upgrade method provided in the embodiment of the present application can be upgraded spontaneously by the ECU, without relying on the guidance of any device, and the vehicle can be used normally during the application upgrade process, making the application upgrade of the target controller more flexible and intelligent, and able to autonomously respond to various complex working conditions, thereby effectively improving the success rate of application upgrades and user experience.

[0089] As can be seen from the above, the embodiment of the present application downloads and stores the upgrade file of the target application running in the target controller; detects the operating status of the target device; if the operating status meets the preset transmission conditions, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application; and the target application is upgraded based on the upgrade file in the data storage space. In this way, the operating status of the target device is detected by the target controller, and when the operating status meets the preset transmission conditions, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application, thereby upgrading the target application based on the upgrade file in the data storage space, and the upgrade process of the target application is actively controlled by the target controller, so as to realize the non-sensing upgrade of the target application running in the target controller, avoid the impact of the upgrade process of the target application on the operation of the target device, effectively improve the application upgrade experience, and then improve the efficiency of application upgrade.

[0090] In order to better implement the application upgrade method provided in the embodiment of the present application, the embodiment of the present application also provides a device based on the above application upgrade method. The meanings of the terms are the same as those in the above application upgrade method, and the specific implementation details can refer to the description in the method embodiment.

[0091] For example, Figure 5 As shown, it is a schematic diagram of the structure of the application upgrade device provided in an embodiment of the present application. The application upgrade device may include a download module 201, a detection module 202, a transmission module 203 and an upgrade module 204, and is configured with a target controller of a target device, specifically as follows:

[0092] The download module 201 is used to download and store the upgrade file of the target application running in the target controller;

[0093] A detection module 202, used to detect the operating status of the target device;

[0094] The transmission module 203 is used to transmit the stored upgrade file to the data storage space corresponding to the target controller through the target application if the running state meets the preset transmission condition;

[0095] The upgrade module 204 is used to upgrade the target application based on the upgrade file in the data storage space.

[0096] In one embodiment, the upgrade file includes multiple data packets, and the transmission module 203 is used to:

[0097] If the running state satisfies the preset transmission condition, a data packet is transmitted to the data storage space corresponding to the target controller through the target application;

[0098] The application upgrade device further includes:

[0099] Return to the step of detecting the operating status of the target device until all data packets of the upgrade file are transferred to the data storage space corresponding to the target controller.

[0100] In one embodiment, the application upgrade device further includes a transmission status recording module, which is used to:

[0101] If it is detected that the running state does not meet the preset transmission condition, the storage address information of the target data packet is recorded, and the target data packet is the data packet last transmitted to the data storage space;

[0102] Return to the step of executing the detection of the running status of the target device;

[0103] The application upgrade device also includes a breakpoint transmission module for:

[0104] In the process of returning to execute the detection of the running status of the target device, if it is detected that the running status meets the preset transmission condition, the untransmitted data packets continue to be transmitted to the data storage space corresponding to the target controller based on the storage address information.

[0105] In one embodiment, the download module 201 is used to:

[0106] Receiving upgrade file path information of an upgrade file for a target application running in a target controller, sent by the first server;

[0107] Through the target application, based on the upgrade file path information, the upgrade file corresponding to the target application is downloaded from the second server.

[0108] In one embodiment, the target device includes an online storage module, a download module 201, for:

[0109] Receiving, through the online storage module, upgrade file path information of an upgrade file for a target application running in a target controller, which is sent by the first server;

[0110] Check whether the upgrade file path information exists in the online storage module;

[0111] When the existence of the upgrade file path information is detected, the upgrade file of the target application is downloaded through the target application based on the upgrade file path information and stored in the online storage module.

[0112] In one embodiment, the preset transmission condition includes that the target device is in a first preset operating state and / or the target controller is in a second preset operating state.

[0113] In one embodiment, the first preset operating state includes at least one of the target device being in a normal driving state and the operating speed of the target device being no greater than a preset speed threshold.

[0114] In one embodiment, the second preset operating state includes that the target task is not included in the tasks currently running by the target controller, and the memory occupancy rate of the target controller is less than at least one of the preset thresholds, the target task is a task whose priority meets the conditions and / or the target task is a task whose running time is greater than a preset duration.

[0115] In one embodiment, the data storage space is an internal storage space corresponding to the target controller, and the upgrade module 204 is used to:

[0116] receiving a power-off instruction;

[0117] Based on the power-off instruction, the starting storage address of the upgrade file in the data storage space is set as the starting running address of the target application, and the target device is controlled to be in a power-off state;

[0118] When it is detected that the target device switches from a power-off state to a power-on state, the target application is upgraded based on a start execution address of the target application.

[0119] In one embodiment, the data storage space is an external storage space corresponding to the target controller, and the upgrade module 204 is used to:

[0120] receiving a power-off instruction;

[0121] Based on the power-off instruction, obtain the starting running address of the target application;

[0122] Based on the starting running address of the target application, burn the upgrade file in the data storage space to the internal storage space of the target controller;

[0123] When it is detected that the target device switches from a power-off state to a power-on state, the target application is upgraded based on the upgrade file in the internal storage space.

[0124] As can be seen from the above, the embodiment of the present application is configured with a target controller of a target device, and the upgrade file of the target application running in the target controller is downloaded and stored through the download module 201; the detection module 202 detects the running state of the target device; the transmission module 203 transmits the stored upgrade file to the data storage space corresponding to the target controller through the target application if the running state meets the preset transmission conditions; the upgrade module 204 upgrades the target application based on the upgrade file in the data storage space. In this way, the running state of the target device is detected by the target controller, and when the running state meets the preset transmission conditions, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application, thereby upgrading the target application based on the upgrade file in the data storage space, and actively controlling the upgrade process of the target application through the target controller, so as to realize the non-sensing upgrade of the target application running in the target controller, avoid the impact of the upgrade process of the target application on the operation of the target device, effectively improve the application upgrade experience, and then improve the efficiency of application upgrade.

[0125] Accordingly, the embodiment of the present application also provides a target controller, such as Figure 6 As shown, Figure 6 A schematic diagram of the structure of the target controller provided in an embodiment of the present application. The target controller 300 includes a processor 301 having one or more processing cores, a memory 302 having one or more computer-readable storage media, and a computer program stored in the memory 302 and executable on the processor. The processor 301 is electrically connected to the memory 302. It will be understood by those skilled in the art that the target controller structure shown in the figure does not constitute a limitation on the target controller, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0126] The processor 301 is the control center of the target controller 300, and uses various interfaces and lines to connect various parts of the entire target controller 300. It executes various functions and processes data of the target controller 300 by running or loading software programs and / or units stored in the memory 302, and calling data stored in the memory 302. The processor 301 can be a processor CPU, a graphics processor GPU, a network processor (Network Processor, NP), etc., and can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiments of the present application.

[0127] In the embodiment of the present application, the processor 301 in the target controller 300 will load instructions corresponding to the processes of one or more application programs into the memory 302 according to the following steps, and the processor 301 will run the application programs stored in the memory 302 to implement various functions, such as:

[0128] Download and store the upgrade file of the target application running in the target controller; detect the operating status of the target device; if the operating status meets the preset transmission conditions, transfer the stored upgrade file to the data storage space corresponding to the target controller through the target application; upgrade the target application based on the upgrade file in the data storage space.

[0129] Furthermore, various functions implemented by running the application program stored in the memory 302 can also be found in the description of the aforementioned embodiment, which will not be repeated here.

[0130] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.

[0131] Optional, such as Figure 6 As shown, the target controller 300 also includes: a touch screen 303, a radio frequency circuit 304, an audio circuit 305, an input unit 306 and a power supply 307. Among them, the processor 301 is electrically connected to the touch screen 303, the radio frequency circuit 304, the audio circuit 305, the input unit 306 and the power supply 307 respectively. Those skilled in the art can understand that Figure 6 The target controller structure shown in the figure does not constitute a limitation on the target controller, and may include more or less components than shown in the figure, or combine certain components, or arrange the components differently.

[0132] The touch display screen 303 can be used to display a graphical user interface and receive operation instructions generated by the user acting on the graphical user interface. The touch display screen 303 may include a display panel and a touch panel. Among them, the display panel may be used to display information input by the user or information provided to the user and various graphical user interfaces of the target controller, and these graphical user interfaces may be composed of graphics, text, icons, videos and any combination thereof. Optionally, the display panel may be configured in the form of a liquid crystal display (LCD, Liquid Crystal Display), an organic light emitting diode (OLED, Organic Light-EmittingDiode) and the like. The touch panel may be used to collect the user's touch operation on or near it (such as the user using any suitable object or attachment such as a finger, a stylus, etc. on the touch panel or near the touch panel), and generate corresponding operation instructions, and the operation instructions execute corresponding programs. Optionally, the touch panel may include two parts, a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch direction, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into the touch point coordinates, and then sends it to the processor 301, and can receive the command sent by the processor 301 and execute it. The touch panel can cover the display panel. When the touch panel detects a touch operation on or near it, it is transmitted to the processor 301 to determine the type of touch event, and then the processor 301 provides a corresponding visual output on the display panel according to the type of touch event. In an embodiment of the present application, the touch panel and the display panel can be integrated into the touch display screen 303 to realize the input and output functions. However, in some embodiments, the touch panel and the touch panel can be used as two independent components to realize the input and output functions. That is, the touch display screen 303 can also be used as a part of the input unit 306 to realize the input function.

[0133] The RF circuit 304 may be used to send and receive RF signals, so as to establish wireless communication with a network device or other target controller through wireless communication, and to send and receive signals with the network device or other target controller.

[0134] The audio circuit 305 can be used to provide an audio interface between the user and the target controller through a speaker and a microphone. The audio circuit 305 can transmit the electrical signal converted from the received audio data to the speaker, which is converted into a sound signal for output; on the other hand, the microphone converts the collected sound signal into an electrical signal, which is received by the audio circuit 305 and converted into audio data, and then the audio data is output to the processor 301 for processing, and then sent to another target controller through the radio frequency circuit 304, or the audio data is output to the memory 302 for further processing. The audio circuit 305 may also include an earplug jack to provide communication between an external headset and the target controller.

[0135] The input unit 306 may be used to receive input target video and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control.

[0136] The power supply 307 is used to supply power to various components of the target controller 300. Optionally, the power supply 307 can be logically connected to the processor 301 through a power management system, so that the power management system can manage charging, discharging, and power consumption. The power supply 307 can also include one or more DC or AC power supplies, recharging systems, power failure detection circuits, power converters or inverters, power status indicators, and other arbitrary components.

[0137] although Figure 6 Not shown in the figure, the target controller 300 may also include a camera, a sensor, a wireless fidelity module, a Bluetooth module, etc., which will not be described in detail here.

[0138] In the above embodiments, the description of each embodiment has its own emphasis. For the part not described in detail in a certain embodiment, please refer to the relevant description of other embodiments. It should be noted that the target controller provided in the embodiment of the present application belongs to the same concept as the method for application upgrade in the above embodiment. The specific implementation process is detailed in the above method embodiment and will not be repeated here.

[0139] As can be seen from the above, the target controller provided in the embodiment of the present application can download and store the upgrade file of the target application running in the target controller; detect the running status of the target device; if the running status meets the preset transmission conditions, the stored upgrade file is transferred to the data storage space corresponding to the target controller through the target application; and the target application is upgraded based on the upgrade file in the data storage space. In this way, the running status of the target device is detected by the target controller, and when the running status meets the preset transmission conditions, the stored upgrade file is transferred to the data storage space corresponding to the target controller through the target application, thereby upgrading the target application based on the upgrade file in the data storage space, and the upgrade process of the target application is actively controlled by the target controller, so as to realize the non-sensing upgrade of the target application running in the target controller, avoid the impact of the upgrade process of the target application on the operation of the target device, effectively improve the application upgrade experience, and then improve the efficiency of application upgrade.

[0140] A person of ordinary skill in the art will appreciate that all or part of the steps in the various methods of the above embodiments may be completed by instructions, or by controlling related hardware through instructions. The instructions may be stored in a computer-readable storage medium and loaded and executed by a processor.

[0141] To this end, an embodiment of the present application provides a computer-readable storage medium, which includes a computer program. When the computer program is run on a target controller, the computer program is used to enable the target controller to execute any application upgrade method provided in the embodiment of the present application. For example, the computer program can execute the following steps of the application upgrade method:

[0142] Download and store the upgrade file of the target application running in the target controller; detect the operating status of the target device; if the operating status meets the preset transmission conditions, transfer the stored upgrade file to the data storage space corresponding to the target controller through the target application; upgrade the target application based on the upgrade file in the data storage space.

[0143] Furthermore, for the detailed steps of the above method steps, reference can be made to the description in the above embodiments, which will not be repeated here.

[0144] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.

[0145] The computer-readable storage medium may include: a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0146] Since the computer program stored in the computer-readable storage medium can execute any application upgrade method provided in the embodiments of the present application, the beneficial effects that can be achieved by any application upgrade method provided in the embodiments of the present application can be achieved. Please refer to the previous embodiments for details and will not be repeated here.

[0147] According to one aspect of the present application, a computer program product is also provided, including a computer program, which is stored in a computer-readable storage medium; when a processor of a target controller reads the computer program from the computer-readable storage medium, the processor executes the computer program, so that the target controller executes the methods provided in various optional implementations of the above embodiments.

[0148] In the above-mentioned application upgrade device, computer-readable storage medium, target controller, and computer program product embodiments, the description of each embodiment has its own emphasis. For parts not described in detail in a certain embodiment, reference can be made to the relevant description of other embodiments. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working process and beneficial effects of the above-described application upgrade device, computer-readable storage medium, computer program product, target controller, and corresponding units can refer to the description of the application upgrade method in the above embodiment, and will not be repeated here.

[0149] The above is a detailed introduction to an application upgrade method, device, target controller, vehicle, computer-readable storage medium and computer program product provided in an embodiment of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for technical personnel in this field, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. An application upgrade method, characterized in that: The target controller for the target device includes: Downloading and storing an upgrade file of a target application running in the target controller; Detecting the operating status of the target device; If the running state meets the preset transmission condition, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application; The target application is upgraded based on the upgrade file in the data storage space.

2. The application upgrade method according to claim 1, characterized in that: The upgrade file includes a plurality of data packets, and if the running state meets the preset transmission condition, the stored upgrade file is transmitted to the data storage space corresponding to the target controller through the target application, including: If the operating state satisfies a preset transmission condition, transmitting a data packet to a data storage space corresponding to the target controller through the target application; The method further comprises: Return to the step of detecting the operating status of the target device until all data packets of the upgrade file are transmitted to the data storage space corresponding to the target controller.

3. The application upgrade method according to claim 2, characterized in that: After the target application transmits a data packet to the data storage space corresponding to the target controller if the running state meets the preset transmission condition, the method further includes: If it is detected that the running state does not satisfy the preset transmission condition, the storage address information of the target data packet is recorded, and the target data packet is the data packet last transmitted to the data storage space; Returning to the step of detecting the operating status of the target device; The method further comprises: In the process of returning to execute detection of the operating status of the target device, if it is detected that the operating status satisfies the preset transmission condition, the untransmitted data packets continue to be transmitted to the data storage space corresponding to the target controller based on the storage address information.

4. The application upgrade method according to claim 1, characterized in that: The downloading and storing of the upgrade file of the target application running in the target controller includes: receiving upgrade file path information of an upgrade file of a target application running in the target controller, sent by the first server; The upgrade file corresponding to the target application is downloaded from the second server through the target application based on the upgrade file path information.

5. The application upgrade method according to claim 1, characterized in that: The target device includes an online storage module, and the downloading and storing of the upgrade file of the target application running in the target controller includes: Receiving, through the online storage module, upgrade file path information of an upgrade file for a target application running in the target controller, which is sent by the first server; Detecting whether there is upgrade file path information in the online storage module; When the existence of the upgrade file path information is detected, the upgrade file of the target application is downloaded based on the upgrade file path information through the target application and stored in the online storage module.

6. The application upgrade method according to claim 1, characterized in that: The preset transmission condition includes that the target device is in a first preset operating state and / or the target controller is in a second preset operating state.

7. The application upgrade method according to claim 6, characterized in that: The first preset running state includes at least one of the following: the target device is in a normal driving state and the running speed of the target device is not greater than a preset speed threshold.

8. The application upgrade method according to claim 6, characterized in that: The second preset operating state includes that the target task is not included in the tasks currently running by the target controller, and the memory occupancy rate of the target controller is less than at least one of the preset thresholds, the target task is a task whose priority meets the conditions and / or the target task is a task whose running time is greater than a preset duration.

9. The application upgrade method according to any one of claims 1 to 8, characterized in that: The data storage space is an internal storage space corresponding to the target controller, and the upgrading of the target application based on the upgrade file in the data storage space includes: receiving a power-off instruction; Based on the power-off instruction, setting the starting storage address of the upgrade file in the data storage space as the starting running address of the target application, and controlling the target device to be in a power-off state; When it is detected that the target device switches from the power-off state to the power-on state, the target application is upgraded based on a starting execution address of the target application.

10. The application upgrade method according to any one of claims 1 to 8, characterized in that: The data storage space is an external storage space corresponding to the target controller, and the upgrading of the target application based on the upgrade file in the data storage space includes: receiving a power-off instruction; Based on the power-off instruction, obtaining a starting running address of the target application; Based on the starting running address of the target application, burning the upgrade file in the data storage space into the internal storage space of the target controller; When it is detected that the target device switches from the power-off state to the power-on state, the target application is upgraded based on the upgrade file in the internal storage space.

11. An application upgrade device, characterized in that: A target controller configured with a target device, including: A download module, used for downloading and storing the upgrade file of the target application running in the target controller; A detection module, used to detect the operating status of the target device; A transmission module, configured to transmit the stored upgrade file to a data storage space corresponding to the target controller through the target application if the operating state meets a preset transmission condition; An upgrade module is used to upgrade the target application based on the upgrade file in the data storage space.

12. A target controller, characterized in that: The method comprises a processor and a memory, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor executes the steps of any one of the methods of claims 1 to 10.

13. A vehicle, characterized in that: The vehicle includes the target controller of claim 12.

14. A computer-readable storage medium, characterized in that: The method comprises a computer program. When the computer program is run on a target controller, the computer program is used to make the target controller execute the steps of any one of the methods of claims 1 to 10.

Citation Information

Patent Citations

  • Remote upgrading method for vehicle control unit of new energy bus

    CN110995724A

  • Vehicle upgrading method and device, electronic device and storage medium

    CN113094072A

  • Vehicle-mounted controller software upgrading method and device, electronic equipment and storage medium

    CN114398060A