Software version updating method for vehicle components and electronic device

CN122653676APending Publication Date: 2026-08-28VOYAH AUTOMOBILE TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610554860.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-04-24
Publication Date
2026-08-28

AI Technical Summary

Technical Problem

[0005]本申请提供一种车辆的元器件的软件版本更新方法及电子设备,用于解决现有技术中车辆也会频繁下载并更新至少一个电子控制单元的软件,占用计算资源,且由于整车环境不稳定,可能会导致每次因获取的各个元器件的软件版本集合不全,而使得更新结果的可靠性低,且需要运营人员介入,浪费人力成本的问题

Benefits of technology

[0021] This application provides a method and electronic device for updating software versions of vehicle components. When the real-time baseline version is lower than the preset latest baseline version, the difference between the software version set of each component under the real-time baseline version and the software version set of each component under the latest baseline version is extracted as the software version set of the component to be upgraded. The number of version stability cycles associated with the vehicle identifier is obtained. Since the number of version stability cycles refers to the number of times the real-time baseline version is the same as the preset latest baseline version under preset conditions, if the number of version stability cycles experienced by the vehicle exceeds a set threshold, it indicates that the vehicle's recent baseline version has not been frequently updated and is relatively stable. Only then is the update operation performed on the software version set of the vehicle's components to be upgraded. This avoids frequently downloading and updating the software of at least one electronic control unit, saving computing resources. Furthermore, the obtained software version sets of each component are comprehensive and complete, resulting in high reliability of the update results. Moreover, no operational personnel intervention is required, saving labor costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122653676A_ABST
    Figure CN122653676A_ABST
Patent Text Reader

Abstract

The application provides a software version updating method of components of a vehicle and an electronic device. When a real-time baseline version is lower than a preset latest baseline version, a difference set of a software version set of each component under the real-time baseline version and a software version set of each component under the latest baseline version is extracted as a software version set of a component to be upgraded. The number of experienced version stable periods associated with the vehicle identification is obtained. When the number of experienced version stable periods of the vehicle is greater than a set number threshold, an updating operation on the software version set of the component to be upgraded of the vehicle is performed, so that frequent downloading and updating of software of at least one electronic control unit are avoided, calculation resources are saved, the obtained software version set of each component is comprehensive and complete, the reliability of the updating result is high, and the labor cost is saved without the intervention of operation personnel.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of over-the-air (OTA) software technology, and more particularly to a method for updating software versions of vehicle components and an electronic device. Background Technology

[0002] With the development of vehicle intelligence, vehicles now include not only basic electronic components such as resistors and capacitors, but also electronic control units with microcontrollers. These electronic control units can run software and can read or refresh program modules through diagnostic tools.

[0003] Typically, the software installed in electronic control units (ECUs) is subject to frequent updates. Currently, the method for updating the software in ECUs involves operators determining whether the vehicle's baseline version needs updating due to an upgrade of the baseline version on the over-the-air (OTA) platform (i.e., there is software for at least one ECU that needs updating). If the OTA baseline version is upgraded, the operators trigger the vehicle to download and update the software of at least one ECU from the OTA platform.

[0004] However, developers may frequently update the baseline version of the over-the-air (OTA) download platform, which would cause the vehicle to frequently download and update the software of at least one electronic control unit, consuming computing resources. Furthermore, due to the instability of the vehicle environment, the software versions of each component may be incomplete each time, resulting in low reliability of the update results and requiring intervention from operations personnel, thus wasting human resources. Summary of the Invention

[0005] This application provides a method and electronic device for updating the software version of vehicle components, which solves the problems in the prior art where vehicles frequently download and update the software of at least one electronic control unit, consuming computing resources, and due to the instability of the vehicle environment, the software version set of each component may be incomplete each time, resulting in low reliability of the update results, and requiring the intervention of operation personnel, which wastes human resources costs.

[0006] Firstly, this application provides a method for updating the software version of vehicle components, applied to an over-the-air (OTA) download platform. The method provided by this application includes: The system receives software version update requests for components sent by the vehicle under preset conditions. The update requests carry the vehicle identifier, the real-time baseline version, and the set of software versions for each component under the real-time baseline version. If the real-time baseline version is lower than the preset latest baseline version, the difference between the software version set of each component under the real-time baseline version and the software version set of each component under the latest baseline version is extracted as the software version set of the component to be upgraded. The number of version stability cycles associated with the vehicle identifier is obtained. The number of version stability cycles refers to the number of times the real-time baseline version is the same as the preset latest baseline version under preset conditions. If the number of stable version cycles that the vehicle has gone through exceeds a set threshold, an update operation will be performed on the software version set of the components to be upgraded in the vehicle.

[0007] In some implementations, performing an update operation on the set of software versions of the vehicle's components to be upgraded includes: Generate tasks to be executed, which include vehicle identification, a set of software versions of the vehicle's components to be upgraded, and the number of version stability cycles that have been completed. Add the tasks to be executed to the version update task queue. In the version update task queue, the higher the number of version stability cycles that the task has gone through, the higher it will be ranked. Based on the order of the tasks to be executed in the version update task queue, the tasks to be executed are executed to complete the update of the software version set of the vehicle's components to be upgraded.

[0008] In some implementations, tasks are executed based on their order in the version update task queue, including: Based on the sorting in the version update task queue, when it is the turn of the task to be executed, extract the vehicle identifier and the set of software versions of the components to be upgraded from the task to be executed; From the software version set of each component under the latest baseline version, determine the latest software version set corresponding to the software version set of the component to be upgraded; Based on the latest software version set, update the software version set of the components to be upgraded for the vehicle corresponding to the vehicle identifier.

[0009] In some implementations, based on the latest software version set, the software version set of the vehicle corresponding to the vehicle identifier to be upgraded is updated, including: Send an upgrade notification to the vehicle corresponding to the vehicle identifier to wake up the vehicle; Receive software upgrade requests sent by the vehicle based on upgrade notifications; Based on the latest software version set, update the software version set of the components to be upgraded for the vehicle corresponding to the vehicle identifier.

[0010] In some implementations, tasks are executed based on their order in the version update task queue, including: In the version update task queue, when it is the turn of the task to be executed, obtain the current operating load of the vehicle associated with the vehicle identifier; If the current operating load of the vehicle exceeds the set second load threshold, the next task to be executed will be executed based on the order in the version update task queue. After the next pending task is completed, return to the step of obtaining the current operating load of the vehicle associated with the vehicle identifier until the current operating load of the vehicle is less than or equal to the second load threshold. Execute pending tasks.

[0011] In some implementations, the method provided in this application further includes, before performing an update operation on the set of software versions of the vehicle's components to be upgraded: Detect the current operating load of the over-the-air download platform; If the current operating load of the over-the-air download platform is greater than the set first load threshold, then wait for a first preset time and return to the step of detecting the current operating load of the over-the-air download platform until the current operating load of the over-the-air download platform is less than or equal to the first load threshold.

[0012] In some embodiments, after receiving a software version update request for a component sent by the vehicle under preset conditions, the method provided in this application includes: If the real-time baseline version is the same as the latest preset baseline version, then the number of version stabilization cycles that have been experienced is counted.

[0013] In some embodiments, after receiving a software version update request for a component sent by the vehicle under preset conditions, the method provided in this application includes: If the real-time baseline version is lower than the preset latest baseline version, the number of stable version cycles associated with the vehicle identification will be reset to zero.

[0014] In some implementations, after performing an update operation on the set of software versions of the vehicle's components to be upgraded, the method provided in this application further includes: Receive the update results of the software version set of components to be upgraded sent by the vehicle.

[0015] In some implementations, the preset condition is that the vehicle reaches a second preset time after ignition or receives a component version update command sent by the user.

[0016] In some implementations, the components include at least the vehicle's functional domain controller, battery management module, camera, and radar.

[0017] In some implementations, the set threshold number of times is greater than or equal to 3 and less than or equal to 8.

[0018] In a second aspect, this application provides an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the electronic device performs the method provided in the first aspect of this application.

[0019] Thirdly, this application also provides a storage medium storing a computer program, which, when executed by a processor, causes the computer to perform the method provided in the first aspect of this application.

[0020] Fourthly, this application provides a computer program product, including a computer program that, when run, causes an electronic device to perform the method provided in the first aspect of this application.

[0021] This application provides a method and electronic device for updating software versions of vehicle components. When the real-time baseline version is lower than the preset latest baseline version, the difference between the software version set of each component under the real-time baseline version and the software version set of each component under the latest baseline version is extracted as the software version set of the component to be upgraded. The number of version stability cycles associated with the vehicle identifier is obtained. Since the number of version stability cycles refers to the number of times the real-time baseline version is the same as the preset latest baseline version under preset conditions, if the number of version stability cycles experienced by the vehicle exceeds a set threshold, it indicates that the vehicle's recent baseline version has not been frequently updated and is relatively stable. Only then is the update operation performed on the software version set of the vehicle's components to be upgraded. This avoids frequently downloading and updating the software of at least one electronic control unit, saving computing resources. Furthermore, the obtained software version sets of each component are comprehensive and complete, resulting in high reliability of the update results. Moreover, no operational personnel intervention is required, saving labor costs. Attached Figure Description

[0022] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0023] Figure 1 A schematic diagram illustrating the interaction between the over-the-air download platform provided in this application embodiment and a vehicle and a project management terminal, respectively. Figure 2 A flowchart illustrating a method for updating the software version of vehicle components, provided as an embodiment of this application; Figure 3A flowchart illustrating the specific update operation of the software version set of the vehicle's components to be upgraded, as provided in this embodiment of the application. Figure 4 A schematic diagram of a version update task queue provided in an embodiment of this application; Figure 5 A functional unit block diagram of a software version update device for vehicle components provided in an embodiment of this application; Figure 6 This is a module block diagram of an electronic device provided in an embodiment of this application. Detailed Implementation

[0024] Embodiments of the present disclosure will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the disclosure. Furthermore, descriptions of well-known structures and technologies are omitted in the following description to avoid unnecessarily obscuring the concepts of the present disclosure.

[0025] The accompanying drawings illustrate various structural schematics according to embodiments of the present disclosure. These drawings are not to scale, and some details have been enlarged for clarity, and some details may have been omitted. The shapes of the various regions and layers shown in the drawings, as well as their relative sizes and positional relationships, are merely exemplary and may deviate from reality due to manufacturing tolerances or technical limitations. Furthermore, those skilled in the art can design regions / layers with different shapes, sizes, and relative positions as needed.

[0026] In the context of this disclosure, when a layer / element is referred to as being "above" another layer / element, the layer / element may be directly above the other layer / element, or there may be an intermediate layer / element between them. Additionally, if a layer / element is "above" another layer / element in one orientation, then when the orientation is reversed, the layer / element may be "below" the other layer / element.

[0027] Explanation of technical terms used in this application: Over-the-air (OTA) download platforms refer to cloud-based management platforms that use wireless networks (such as 4G / 5G and Wi-Fi) to remotely transmit data packets to sold connected devices (mainly vehicles, smartphones, and IoT terminals) to update their system firmware or application software. The core technology allows devices to automatically complete software upgrades, vulnerability fixes, or feature additions through a "cloud-pipeline-terminal" architecture without requiring physical cables or return to a service center. This technology significantly reduces manufacturers' after-sales maintenance costs and users' return-to-factory waiting time, and is a key technological support for the continuous evolution and functional iteration of intelligent connected vehicles and smart hardware.

[0028] The technical solutions of this application and how they solve the aforementioned technical problems will be described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.

[0029] This application provides a method for updating the software version of vehicle components, applied to an over-the-air (OTA) platform. For example... Figure 1 As shown, the over-the-air (OTA) download platform communicates with both the vehicle and the project management terminal. Developers can, based on the development progress of each vehicle component, release the latest baseline version and a set of software versions for each component under that baseline version to the OTA download platform via the project management terminal. For example... Figure 2 As shown, the method provided in this application embodiment includes: S201: Receive a software version update request for a component sent by the vehicle under preset conditions. The update request carries the vehicle identifier, the real-time baseline version, and the set of software versions of each component under the real-time baseline version.

[0030] For example, the preset condition is that the vehicle reaches a second preset time (such as 3 minutes, 4 minutes, or 5 minutes) after ignition or receives a component version update command sent by the user. The vehicle identifier can be, but is not limited to, the vehicle identification number (VIN). The real-time baseline version can be baseline version 1.0.0, baseline version 1.0.1, or baseline version 1.0.2. Baseline version 1.0.0 can include component A of software version 1.0.0, component B of software version 1.0.0, and component C of software version 0.0.9; baseline version 1.0.1 can include component A of software version 1.0.1, component B of software version 1.0.0, component C of software version 0.0.9, and component D of software version 1.0.0; baseline version 1.0.2 can include component A of software version 1.0.2 and component B of software version 1.0.2.

[0031] It should be noted that the aforementioned components include, at a minimum, the vehicle's functional domain controller, battery management module, camera, and radar, etc., but are not limited to these components.

[0032] S202: If the real-time baseline version is lower than the preset latest baseline version, then extract the difference between the software version set of each component under the real-time baseline version and the software version set of each component under the latest baseline version, and use it as the software version set of the component to be upgraded.

[0033] For example, if the real-time baseline version is 1.0.0 and the latest baseline version is 1.01, then the real-time baseline version is lower than the preset latest baseline version.

[0034] For example, baseline version 1.0.0 includes component A of software version 1.0.0, component B of software version 1.0.0, and component C of software version 0.0.9; baseline version 1.0.1 includes component A of software version 1.0.1, component B of software version 1.0.0, component C of software version 0.0.9, and component D of software version 1.0.0. Then the difference between baseline version 1.0.0 and baseline version 1.0.1 is component A of software version 1.0.0 and component D of software version 1.0.0 (i.e., the set of software versions of the components to be upgraded).

[0035] It should be noted that if the real-time baseline version is the same as the preset latest baseline version, then the number of version stabilization cycles that have been experienced will be counted once.

[0036] Additionally, if the real-time baseline version is lower than the preset latest baseline version, the number of stable version cycles associated with the vehicle identification will be reset to zero.

[0037] S203: Obtain the number of stable version cycles associated with the vehicle identifier.

[0038] The number of version stability cycles refers to the number of times, under preset conditions, the real-time baseline version is the same as the preset latest baseline version.

[0039] For example, if the obtained real-time baseline version is the same as the preset latest baseline version, it counts once.

[0040] S204: If the number of stable version cycles that the vehicle has gone through exceeds a set threshold, perform an update operation on the software version set of the components to be upgraded in the vehicle.

[0041] For example, the set number of times threshold is greater than or equal to 3 and less than or equal to 8. For instance, the set number of times threshold can be 3, 5, or 8.

[0042] Specifically, such as Figure 3 As shown, S204 can be specifically implemented as follows: S301: Generate tasks to be executed, which include vehicle identification, a set of software versions of the vehicle's components to be upgraded, and the number of version stability cycles that have been completed.

[0043] S302: Add the task to be executed to the version update task queue. In the version update task queue, the higher the number of version stability cycles that the task has gone through, the higher its ranking.

[0044] For example, such as Figure 4 As shown, the version update task queue can be sorted as follows: Sequence 1, Vehicle 2 - VIN code: VIN2, Components to be upgraded: Component A and Component C, Number of version stability cycles already experienced: 6; Sequence 2, Vehicle 1 - VIN code: VIN1, Components to be upgraded: Component A and Component B, Number of version stability cycles already experienced: 3; Sequence 3, Vehicle 3 - VIN code: VIN3, Components to be upgraded: Component B, Number of version stability cycles already experienced: 1. Understandably, in... Figure 4 In the middle, the version update task is further to the right and appears earlier.

[0045] S303: Based on the order of the tasks to be executed in the version update task queue, execute the tasks to be executed to complete the update of the software version set of the vehicle's components to be upgraded.

[0046] Specifically, the above-mentioned S303 can be implemented as follows: Step A1: Based on the sorting in the version update task queue, when it is the turn of the task to be executed, extract the vehicle identifier and the set of software versions of the components to be upgraded from the task to be executed.

[0047] Step A2: From the software version set of each component under the latest baseline version, determine the latest software version set corresponding to the software version set of the component to be upgraded.

[0048] Step A3: Based on the latest software version set, update the software version set of the components to be upgraded for the vehicle corresponding to the vehicle identifier.

[0049] For example, an upgrade notification can be sent to the vehicle corresponding to the vehicle identifier to wake up the vehicle. For instance, the upgrade notification can be sent to the vehicle corresponding to the vehicle identifier via Message Queuing Telemetry Transmission (MQTT); the software upgrade request sent by the vehicle based on the upgrade notification can be received; and then, based on the latest software version set, the software version set of the components to be upgraded for the vehicle corresponding to the vehicle identifier can be updated. It should be noted that steps A1-A3 above can accurately and reliably update the software version set of the components to be upgraded for the vehicle corresponding to the vehicle identifier.

[0050] Furthermore, the aforementioned S203 can also be specifically implemented as follows: Step B1: Sort the tasks in the version update task queue. Is it the turn of the task to be executed? If so, proceed to step B2.

[0051] Step B2: Obtain the current operating load of the vehicle associated with the vehicle identifier.

[0052] Step B3: Determine whether the current operating load of the vehicle is greater than the set second load threshold. If yes, proceed to step B4; otherwise, proceed to step B5.

[0053] For example, when the vehicle is operating under conditions such as having the air conditioning on, the current operating load of the vehicle exceeds the set second load threshold.

[0054] Step B4: Execute the next task to be executed based on the order in the version update task queue, and return to step B2 after the next task has been executed.

[0055] Step B5: Execute the task to be executed.

[0056] Based on steps B1-B5 above, tasks can be executed when the vehicle is under low operating load, which can improve the reliability of updating the software version set of the vehicle's components to be upgraded corresponding to the vehicle identifier.

[0057] In summary, the software version update method for vehicle components provided in this application, when the real-time baseline version is lower than the preset latest baseline version, extracts the difference between the software version set of each component under the real-time baseline version and the software version set of each component under the latest baseline version, as the software version set of the component to be upgraded. The method also obtains the number of version stability cycles associated with the vehicle identifier. Since the number of version stability cycles refers to the number of times the real-time baseline version is the same as the preset latest baseline version under preset conditions, if the number of version stability cycles experienced by the vehicle exceeds a set threshold, it indicates that the vehicle's recent baseline version has not been frequently updated and is relatively stable. Only then is the update operation performed on the software version set of the vehicle's components to be upgraded. This avoids frequently downloading and updating the software of at least one electronic control unit, saving computing resources. Furthermore, the obtained software version sets of each component are comprehensive and complete, resulting in high reliability of the update results. Moreover, no operational personnel intervention is required, saving labor costs.

[0058] Furthermore, the above-mentioned S204 can be specifically implemented as follows: Step C1: Detect the current operating load of the over-the-air download platform.

[0059] Step C2: Determine whether the current operating load of the over-the-air download platform is greater than the set first load threshold. If yes, proceed to step C3; otherwise, proceed to step C4.

[0060] Step C3: Wait for the first preset time and then return to the step C1.

[0061] For example, the first preset duration can be, but is not limited to, 5 minutes, 8 minutes, or 10 minutes.

[0062] Step C4: Perform an update operation on the set of software versions of the vehicle's components to be upgraded.

[0063] It should be noted that, based on the above steps C1-C4, the safe and stable operation of the over-the-air download platform can be guaranteed, and the accuracy of the software version set of the downloaded components to be upgraded can be ensured.

[0064] In addition, the method provided in this application embodiment further includes: receiving the update result of the software version set of the components to be upgraded sent by the vehicle. For example, the update result is either successful or failed.

[0065] Please see Figure 5 This application also provides a software version update device for vehicle components, configured on an over-the-air (OTA) download platform. It should be noted that the basic principle and technical effects of the software version update device for vehicle components provided in this application are the same as those in the above embodiments. For the sake of brevity, any parts not mentioned in this application can be referred to the corresponding content in the above embodiments. The device provided in this application includes a data receiving unit, a data extraction unit, a stable cycle count determination unit, and an update operation execution unit, wherein... The data receiving unit is used to receive software version update requests for components sent by the vehicle under preset conditions. The update request carries the vehicle identifier, the real-time baseline version, and the set of software versions of each component under the real-time baseline version. The data extraction unit is used to extract the difference between the software version set of each component under the real-time baseline version and the software version set of each component under the latest baseline version when the real-time baseline version is lower than the preset latest baseline version, and use this difference as the software version set of the component to be upgraded. The stable cycle count determination unit is used to obtain the number of version stable cycles that the vehicle identification association has experienced. The number of version stable cycles refers to the number of times that the real-time baseline version is the same as the preset latest baseline version under the preset conditions. The update operation execution unit is used to perform an update operation on the software version set of the vehicle's components to be upgraded when the number of stable version cycles that the vehicle has already gone through exceeds a set threshold.

[0066] In some implementations, the update operation execution unit is specifically used to generate tasks to be executed, wherein the tasks to be executed include a vehicle identifier, a set of software versions of the vehicle's components to be upgraded, and the number of version stability cycles already experienced; the tasks to be executed are added to a version update task queue, wherein in the version update task queue, the higher the number of version stability cycles experienced for the tasks to be executed, the higher the ranking; based on the ranking of the tasks to be executed in the version update task queue, the tasks to be executed are executed to complete the update of the set of software versions of the vehicle's components to be upgraded.

[0067] In some implementations, the update operation execution unit is specifically used to extract the vehicle identifier and the software version set of the components to be upgraded from the tasks to be executed when sorted in the version update task queue; determine the latest software version set corresponding to the software version set of the components to be upgraded from the software version set of each component under the latest baseline version; and update the software version set of the components to be upgraded of the vehicle corresponding to the vehicle identifier based on the latest software version set.

[0068] In some implementations, the update operation execution unit is specifically used to send an upgrade notification to the vehicle corresponding to the vehicle identifier to wake up the vehicle; receive a software upgrade request sent by the vehicle based on the upgrade notification; and update the software version set of the components to be upgraded for the vehicle corresponding to the vehicle identifier based on the latest software version set.

[0069] In some implementations, the update operation execution unit is specifically used for sorting in the version update task queue, and when it is the turn of the task to be executed, it obtains the current operating load of the vehicle associated with the vehicle identifier. If the current operating load of the vehicle is greater than the set second load threshold, the next task to be executed is executed based on the order in the version update task queue. After the next task to be executed is completed, the process returns to the step of obtaining the current operating load of the vehicle associated with the vehicle identifier until the current operating load of the vehicle is less than or equal to the second load threshold. The task to be executed is then executed.

[0070] In some embodiments, the apparatus provided in this application further includes: a load detection unit, used to detect the current operating load of the over-the-air download platform; if the current operating load of the over-the-air download platform is greater than a set first load threshold, then wait for a first preset time period and return to the step of detecting the current operating load of the over-the-air download platform until the current operating load of the over-the-air download platform is less than or equal to the first load threshold.

[0071] In some implementations, the stabilization cycle count determination unit is specifically used to count the number of version stabilization cycles that have already been experienced when the real-time baseline version is the same as the preset latest baseline version.

[0072] In some implementations, the stabilization cycle count determination unit is also used to reset the count of the stabilization cycles of the vehicle identification associated with the previous version to zero if the real-time baseline version is lower than the preset latest baseline version.

[0073] In some implementations, the data receiving unit is also used to receive update results of the software version set of the components to be upgraded sent by the vehicle.

[0074] In some implementations, the preset condition is that the vehicle reaches a second preset time after ignition or receives a component version update command sent by the user.

[0075] In some implementations, the components include at least the vehicle's functional domain controller, battery management module, camera, and radar.

[0076] In some implementations, the set threshold number of times is greater than or equal to 3 and less than or equal to 8.

[0077] Figure 6 This is a schematic diagram of the structure of an electronic device according to one embodiment of this application. Please refer to it. Figure 6 At the hardware level, the electronic device can be, but is not limited to, the over-the-air (OTA) download platform mentioned in the above embodiments. This electronic device includes a processor, and optionally also includes an internal bus, a network interface, and memory. The memory may include RAM, such as high-speed random-access memory (RAM), or non-volatile memory, such as at least one disk drive. Of course, the electronic device may also include other hardware required for other services. It should be noted that the electronic device can communicate with the vehicle via the network interface.

[0078] The processor, network interface, and memory can be interconnected via an internal bus, which can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus, etc. This bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 6 The symbol is represented by a single double-headed arrow, but this does not mean that there is only one bus or one type of bus.

[0079] Memory is used to store programs. Specifically, programs may include program code, which includes computer operation instructions. Memory may include main memory and non-volatile memory, and provides instructions and data to the processor.

[0080] The processor reads the corresponding computer program from non-volatile memory into memory and then runs it, forming a software version update device for vehicle components at the logical level. The processor executes the program stored in memory and performs the method provided in the above embodiments of this application.

[0081] The methods described in the embodiments of this application can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The processor can be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it can also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly manifested as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software module can reside in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.

[0082] The electronic device can also perform Figure 2 The method, and implements the software version update device for vehicle components in Figure 2 The functions of the embodiments shown are not described in detail here.

[0083] Of course, in addition to the software implementation, the electronic device in the embodiments of this application does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0084] In addition, embodiments of this application also propose a computer-readable storage medium that stores one or more programs, the one or more programs including instructions that, when executed by an electronic device including multiple applications, enable the electronic device to perform the methods provided in the above embodiments of this application.

[0085] Computer-readable media, including both permanent and non-permanent, removable and non-removable media, can store information using any method or technology. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transfer medium that can be used to store information accessible by a computing device.

[0086] In addition, this application also provides a computer program product, including a computer program that, when run, causes an electronic device to perform the method provided in the above embodiments of this application.

[0087] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0088] In summary, the above descriptions are merely preferred embodiments of this application and are not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of protection of this application.

Claims

1. A method for updating the software version of vehicle components, characterized in that, Applied to an over-the-air (OTA) download platform, the method includes: The system receives software version update requests for components sent by the vehicle under preset conditions. The update requests carry a vehicle identifier, a real-time baseline version, and a set of software versions for each component under the real-time baseline version. If the real-time baseline version is lower than the preset latest baseline version, the difference between the software version set of each component under the real-time baseline version and the software version set of each component under the latest baseline version is extracted as the software version set of the component to be upgraded. The number of version stability cycles associated with the vehicle identifier is obtained, wherein the number of version stability cycles refers to the number of times the real-time baseline version is the same as the preset latest baseline version under the preset conditions. If the number of stable version cycles that the vehicle has gone through exceeds a set threshold, an update operation is performed on the software version set of the components to be upgraded in the vehicle.

2. The method according to claim 1, characterized in that, The step of performing an update operation on the software version set of the components to be upgraded in the vehicle includes: Generate a task to be executed, wherein the task to be executed includes the vehicle identifier, the set of software versions of the vehicle's components to be upgraded, and the number of version stability cycles that have been completed; The task to be executed is added to the version update task queue, wherein the higher the number of version stability cycles that the task to be executed has gone through, the higher its ranking. Based on the order of the tasks to be executed in the version update task queue, the tasks to be executed are executed to complete the update of the software version set of the components to be upgraded in the vehicle.

3. The method according to claim 2, characterized in that, The step of executing the tasks based on their order in the version update task queue includes: Based on the sorting in the version update task queue, when it is the turn of the task to be executed, extract the vehicle identifier and the software version set of the components to be upgraded from the task to be executed; From the software version set of each component under the latest baseline version, determine the latest software version set corresponding to the software version set of the component to be upgraded; Based on the latest software version set, update the software version set of the components to be upgraded for the vehicle corresponding to the vehicle identifier.

4. The method according to claim 3, characterized in that, The step of updating the software version set of the vehicle to be upgraded components corresponding to the vehicle identifier based on the latest software version set includes: Send an upgrade notification to the vehicle corresponding to the vehicle identifier to wake up the vehicle; Receive the software upgrade request sent by the vehicle based on the upgrade notification; Based on the latest software version set, update the software version set of the components to be upgraded for the vehicle corresponding to the vehicle identifier.

5. The method according to claim 2, characterized in that, The step of executing the tasks based on their order in the version update task queue includes: In the sorting of the version update task queue, when it is the turn of the task to be executed, obtain the current operating load of the vehicle associated with the vehicle identifier; If the current operating load of the vehicle is greater than the set second load threshold, the next task to be executed will be executed based on the order in the version update task queue. After the next task to be executed is completed, return to the step of obtaining the current operating load of the vehicle associated with the vehicle identifier until the current operating load of the vehicle is less than or equal to the second load threshold. Execute the task to be executed.

6. The method according to claim 1, characterized in that, Before performing the update operation on the software version set of the components to be upgraded in the vehicle, the method further includes: Detect the current operating load of the over-the-air download platform; If the current operating load of the over-the-air download platform is greater than the set first load threshold, then wait for a first preset time and return to the step of detecting the current operating load of the over-the-air download platform until the current operating load of the over-the-air download platform is less than or equal to the first load threshold.

7. The method according to claim 1, characterized in that, After the receiving vehicle sends a software version update request for a component under preset conditions, the method includes: If the real-time baseline version is the same as the preset latest baseline version, then the number of version stabilization cycles that have been experienced is counted.

8. The method according to claim 1, characterized in that, After the receiving vehicle sends a software version update request for a component under preset conditions, the method includes: If the real-time baseline version is lower than the preset latest baseline version, the number of version stabilization cycles associated with the vehicle identifier is reset to zero.

9. The method according to claim 1, characterized in that, After performing the update operation on the set of software versions of the components to be upgraded in the vehicle, the method further includes: Receive the update results of the software version set of the components to be upgraded sent by the vehicle.

10. The method according to claim 1, characterized in that, The preset conditions are that the vehicle reaches a second preset time after ignition or receives a component version update command sent by the user.

11. The method according to claim 1, characterized in that, The components include at least the vehicle's functional domain controller, battery management module, camera, and radar.

12. The method according to any one of claims 1-11, characterized in that, The set threshold number of times is greater than or equal to 3 and less than or equal to 8.

13. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it causes the electronic device to perform the method as described in any one of claims 1 to 12.

14. A storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it causes the computer to perform the method as described in any one of claims 1 to 12.

15. A computer program product, comprising a computer program, characterized in that, When the computer program is run, it causes the electronic device to perform the method as described in any one of claims 1 to 12.