CN112099845A - Software version updating method, server, vehicle, and computer storage medium - Google Patents

Software version updating method, server, vehicle, and computer storage medium Download PDF

Info

Publication number
CN112099845A
CN112099845A CN202010997117.7A CN202010997117A CN112099845A CN 112099845 A CN112099845 A CN 112099845A CN 202010997117 A CN202010997117 A CN 202010997117A CN 112099845 A CN112099845 A CN 112099845A
Authority
CN
China
Prior art keywords
software
target ecu
version
new
vehicle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010997117.7A
Other languages
Chinese (zh)
Inventor
丁磊
杨威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Human Horizons Shanghai Internet Technology Co Ltd
Original Assignee
Human Horizons Shanghai Internet Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Human Horizons Shanghai Internet Technology Co Ltd filed Critical Human Horizons Shanghai Internet Technology Co Ltd
Priority to CN202010997117.7A priority Critical patent/CN112099845A/en
Publication of CN112099845A publication Critical patent/CN112099845A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

The application discloses a software version updating method, a server, a vehicle and a computer storage medium. The specific implementation scheme comprises the following steps: uploading the software versions of the N ECUs to a server; wherein N is an integer greater than or equal to 1; downloading a new version of software of the target ECU from a server; the target ECU is an ECU with a new upgrading task on the server side in the N ECUs; performing flash upgrading on the target ECU based on the new version software of the target ECU; and under the condition that the target ECU is successfully updated based on the new version of software, saving the new version of software of the target ECU as new backup software of the target ECU, and updating the backup software version of the target ECU into the version of the new backup software.

Description

Software version updating method, server, vehicle, and computer storage medium
Technical Field
The present application relates to the field of vehicle control, and in particular, to a software version updating method, a server, a vehicle, and a computer storage medium.
Background
With the development of information technology, information processing technology in the vehicle field is also more and more intelligent, and currently, in the intelligent processing for a vehicle, information processing is generally required to be performed through the cooperation of a cloud and the vehicle, for example, in the software upgrading process of the vehicle, an upgrade package is required to be acquired, and then the vehicle performs processing such as flash upgrading according to the upgrade package. However, in the software flashing and upgrading of the vehicle, the current software version and the backup software version of the ECU may be inconsistent due to the situation of replacing parts and the like, and how to solve the problem of inconsistent software versions needs to be solved.
Disclosure of Invention
In order to solve at least one of the above problems in the prior art, embodiments of the present application provide a software version updating method, a server, a vehicle, and a computer storage medium.
In a first aspect, an embodiment of the present application provides a software version updating method, where the method includes:
uploading the software versions of the N ECUs to a server; wherein N is an integer greater than or equal to 1;
downloading a new version of software of the target ECU from a server; the target ECU is an ECU with a new upgrading task on the server side in the N ECUs;
performing flash upgrading on the target ECU based on the new version software of the target ECU;
and under the condition that the target ECU is successfully updated based on the new version of software, saving the new version of software of the target ECU as new backup software of the target ECU, and updating the backup software version of the target ECU into the version of the new backup software.
In a second aspect, an embodiment of the present application provides a software version updating method, where the method includes:
acquiring software versions of N ECUs transmitted by a target vehicle; wherein N is an integer greater than or equal to 1;
determining an ECU with a new upgrade task from the N ECUs as a target ECU, and determining new software for the target ECU based on the software version of the target ECU;
providing the target vehicle with a new version of software for the target ECU.
In a third aspect, an embodiment of the present application provides a vehicle, including:
the sending unit is used for uploading the software versions of the N ECUs to the server; wherein N is an integer greater than or equal to 1;
a downloading unit for downloading a new version of software of the target ECU from the server; the target ECU is an ECU with a new upgrading task on the server side in the N ECUs;
the upgrading unit is used for performing flash upgrading on the target ECU based on the new version software of the target ECU;
and the updating unit is used for saving the new version software of the target ECU as the new backup software of the target ECU and updating the backup software version of the target ECU into the version of the new backup software under the condition that the target ECU is successfully updated and written based on the new version software.
In a fourth aspect, an embodiment of the present application provides a server, including:
the communication unit is used for acquiring software versions of the N ECUs transmitted by the target vehicle; and providing a new version of software for the target ECU for the target vehicle; wherein N is an integer greater than or equal to 1;
and the processing unit is used for determining an ECU with a new upgrading task from the N ECUs as a target ECU and determining new software for the target ECU based on the software version of the target ECU.
In a fifth aspect, an embodiment of the present application provides a vehicle, including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to cause the at least one processor to perform a method provided by any one of the embodiments of the present application.
In a sixth aspect, an embodiment of the present application provides a server, including:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to cause the at least one processor to perform a method provided by any one of the embodiments of the present application.
In a seventh aspect, embodiments of the present application provide a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform a method provided in any one of the embodiments of the present application.
One embodiment in the above application has the following advantages or benefits: the vehicle can send the software version of the current in-vehicle ECU to the server; then, new software of a target ECU with a new upgrade task currently can be downloaded from a server side; after the downloaded new version of software of the target ECU is subjected to software flashing, namely upgrading, the backup software version of the target ECU can be replaced by the version of the new version of software. Therefore, the versions of the software and the backup software of the target ECU can be the same, and the effect of aligning the flash software version and the backup software version of the target ECU is realized; in addition, in the scheme of this embodiment, only the software version used in the current flash upgrade and the backup software version need to be pulled to the ECU having the new upgrade task, so that the processing of the new upgrade task and the pull of the version are combined, the processing efficiency is improved, and the extra communication consumption is reduced.
Other effects of the above-described alternative will be described below with reference to specific embodiments.
Drawings
The drawings are included to provide a better understanding of the present solution and are not intended to limit the present application. Wherein:
FIG. 1 is a first flowchart illustrating a software version updating method according to an embodiment of the present application;
FIG. 2 is a diagram illustrating a process of downloading software in a software version updating method according to an embodiment of the present application;
FIG. 3 is a flowchart illustrating a software version updating method according to another embodiment of the present application;
FIG. 4 is a third flowchart illustrating a software version updating method according to another embodiment of the present application;
FIG. 5 is a flow chart illustrating a process for non-inductive downloading according to another embodiment of the present application;
FIG. 6 is a schematic illustration of a vehicle component structure according to another embodiment of the present application;
FIG. 7 is a schematic diagram of a server component structure according to another embodiment of the present application;
fig. 8 is a schematic diagram of a hardware component structure according to another embodiment of the present application.
Detailed Description
The following description of the exemplary embodiments of the present application, taken in conjunction with the accompanying drawings, includes various details of the embodiments of the application for the understanding of the same, which are to be considered exemplary only. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present application. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
In a first aspect, an embodiment of the present application provides a software version updating method, which is applied to a vehicle, and as shown in fig. 1, the method includes:
s101: uploading the software versions of the N ECUs to a server; wherein N is an integer greater than or equal to 1;
s102: downloading a new version of software of the target ECU from a server; the target ECU is an ECU with a new upgrading task on the server side in the N ECUs;
s103: performing flash upgrading on the target ECU based on the new version software of the target ECU;
s104: and under the condition that the target ECU is successfully updated based on the new version of software, saving the new version of software of the target ECU as new backup software of the target ECU, and updating the backup software version of the target ECU into the version of the new backup software.
In the above S101, the N ECUs may be all ECUs in the vehicle.
Of course, it may also be part of the ECUs in the vehicle, since there may be a portion of the ECUs that may not be version-updated all the time, and then the portion of ECUs that do not have version-updated may not need to be uploaded. The specific processing can be set according to actual conditions, and is within the protection scope of the embodiment, and is not exhaustive.
Executing S101 may be triggering execution S101 when performing after-market maintenance of the vehicle; or, the version detection of the ECU can be periodically performed for the vehicle, and the execution of S101 is triggered every period; alternatively, S101 may be performed as needed when the vehicle is on the production line.
Alternatively, performing S101 may also be detecting a network communication condition; and under the condition that the network communication condition meets a preset condition, acquiring current software versions and backup software versions of the N ECUs, and uploading the current software versions and the backup software versions of the N ECUs to a server. Here, the preset condition may be: establishing communication connection between the vehicle and the server; alternatively, it may be that a communication connection is established between the vehicle and the server and the quality of the communication signal is greater than a preset threshold value. The preset threshold value is set according to an actual situation, and this embodiment is not exhaustive.
The get backup software version may be obtained from an OTA master node of the vehicle. The acquiring of the current software version may be from the N ECUs, respectively.
The vehicle needs to acquire the current software version and the backup software version before executing S101.
It should be noted that if there is no backup software package in the current vehicle, the backup software package versions of the N ECUs may be set to be null or set to be corresponding indication codes, such as "0", when the backup software package versions of the N ECUs are uploaded.
Correspondingly, after acquiring the current software versions and the backup software versions of the N ECUs, the vehicle executes S101, and after uploading the software versions of the N ECUs to a server, the server can also detect whether a new upgrade task for any one or more ECUs in the N ECUs of the vehicle exists currently; in the case where there is a new upgrade task for one or more ECUs of the vehicle, the ECU for which there is a new upgrade task is taken as the target ECU in S102. The software version comprises the current software version and the backup software version.
The target ECU may be one ECU or a plurality of ECUs, and the specific acquisition of one or a plurality of ECUs in each process may be determined according to a new upgrade task on the server side (operator).
For example, an operator sets a new upgrade task for one or more ECUs on the server side, and then determines, based on the N ECUs reported by the vehicle and a preset new upgrade task, that one ECU of the N ECUs of the vehicle is an ECU corresponding to the preset new upgrade task, and then the one ECU is the target ECU in this embodiment. And if a plurality of ECUs are in a new upgrading task set by the server, all the ECUs of the vehicle are target ECUs.
The present embodiment does not describe the specific number of target ECUs, that is, the same method can be used to perform the processing of upgrading and version updating on each target ECU regardless of the number of target ECUs.
Note that, before executing S102 to download the new version of software of the target ECU from the server, the processing of the server may further include: the server judges whether the current software version of the target ECU is consistent with the backup software version;
if the current software version of the target ECU is consistent with the backup software version, the new version of software of the target ECU can be sent to the target vehicle only; accordingly, the vehicle downloads a new version of software for the target ECU from the server.
If the current software version of the target ECU is inconsistent with the backup software version, the new software version of the target ECU and the candidate backup software version can be sent to the vehicle;
correspondingly, the vehicle downloads the candidate backup software of the target ECU from a server while downloading the new version software of the target ECU from the server; wherein the candidate backup software of the target ECU is: and under the condition that the current software version and the backup software version of the target ECU saved by the vehicle are inconsistent, the backup software provided for the vehicle by the server.
Here, the inconsistency between the current software version and the backup software version stored in the vehicle may be mainly caused by the following two scenarios: one is that when the vehicle is assembled in a production line, the (OTA) master control node of the vehicle has no backup software package; and the other is that when the vehicle is changed after sale, the software version of the new changed piece is possibly inconsistent with the original backup version in the main control node.
Further, the server can indicate the download address of the new software of the target ECU and the upgrading constraint condition corresponding to the new software by sending task configuration information to the vehicle; or, the server may indicate the download address of the new version software of the target ECU, the download address of the candidate backup software, and the upgrade constraint condition corresponding to the new version software and the upgrade constraint condition of the candidate backup software by sending task configuration information to the vehicle.
The upgrade constraint condition may include at least one of a priority of the ECU, whether parallel flash is possible, and a sequence of the ECU flash.
The processing of the vehicle may include:
receiving task configuration information sent by the server; wherein the task configuration information includes: and the download address of the new version of software of the target ECU.
In S102, the downloading of the new version of software of the target ECU from the server includes:
and downloading the new version software of the target ECU from the server based on the download address of the new version software of the target ECU contained in the task configuration information.
Alternatively, the processing of the vehicle may include:
receiving task configuration information sent by the server; wherein the task configuration information includes: the download address of the new version of software of the target ECU and the download address of the candidate backup software of the target ECU;
in S102, the downloading of the new version of software of the target ECU from the server further includes:
downloading the new version software of the target ECU from the server based on the download address of the new version software of the target ECU contained in the task configuration information; and downloading the candidate backup software of the target ECU from the server based on the download address of the candidate backup software of the target ECU contained in the task configuration information.
Further, upon completion of the download of the new version of software of the target ECU, the vehicle further performs the following processing:
verifying the new version software of the target ECU;
generating and outputting prompt information under the condition that the verification is passed; and the prompt information is used for prompting the target ECU to be updated based on the new version software.
Here, the process of verifying may include: at least one of validity check and validity check.
The validity check may be performed on the new software version according to a preset validity check policy. For example, the time validity check can be included, and the release time, the use duration and the like of the new software version are checked. The validity check may be to check whether the new software version meets a preset validity policy, for example, whether the new software version is a software legally used by a vehicle, where the legality may be whether a user registers a user legally using the software in advance, or whether the user purchases the software, and the like, and of course, the validity check may also include whether the software content meets a preset requirement, and the like, and is not exhaustive here.
Further, if the verification is successful, prompt information is generated and output, and the prompt information can be audio prompt information and/or text prompt information. For example, the prompt may be output through an audio output unit, and/or may be presented through a display screen in the vehicle, so that the user knows that the current software is updated as soon as possible, and/or may be sent to a terminal device (e.g., a mobile phone) and output by the mobile phone or the terminal device.
If the verification fails, no prompt may be made, or feedback information of the verification failure may be sent to the server, or prompt information of the software verification failure may be generated, and the like.
Similarly, if the candidate backup software of the target ECU is also downloaded from the server, the check processing is also performed, and the processing and the manner of generating the output prompt information may be the same, and will not be described again.
The processing in S103 and S104 may include:
if only the new version software of the target ECU is downloaded from the server, performing flash upgrading on the target ECU based on the new version software of the target ECU;
and under the condition that the target ECU is successfully updated based on the new version of software, saving the new version of software of the target ECU as new backup software of the target ECU, and updating the backup software version of the target ECU into the version of the new backup software.
It should be noted that, in the case that the target ECU fails to be updated based on the new version of software, the update process is not performed, that is, the currently downloaded new version of software may be discarded, and the original version of software and the original backup software may be retained to wait for the next update.
In addition, when the target ECU fails to be updated and refreshed based on the new software, the notification of the current new software failure can be fed back to the server, and then the notification of the software failure can be summarized on the server side, so that the processes such as debugging and the like can be further performed.
That is, based on the foregoing processing, in a case that the current software version and the backup software version of the target ECU are the same, the vehicle only downloads the new software, and then, at this time, the target ECU is updated based on the new software, and then, after the update is successful, the version of the new software is saved, and the new software of the target ECU is saved as the new backup software (for example, the new software may be saved inside the ECU or at the main control node). Therefore, the effect of aligning the software versions of the target ECU in the upgrading process of the target ECU is achieved, namely the current software version and the backup software version of the target ECU are stored into the same version.
Alternatively, the first and second electrodes may be,
if the new version software and the candidate backup software of the target ECU are downloaded from a server, performing flash upgrading on the target ECU based on the new version software of the target ECU;
under the condition that the target ECU is successfully updated based on the new version of software, the new version of software of the target ECU is used as new backup software of the target ECU to be stored; at this point, the candidate backup software may be deleted or not saved.
And under the condition that the target ECU is failed to be updated and rewritten based on the new version of software, saving the candidate backup software of the target ECU as the new backup software of the target ECU and performing rollback recovery.
The method can also comprise the following steps: and updating the backup software version of the ECU into the version of the candidate backup software.
That is, based on the foregoing processing, in the case where the current software version and the backup software version of the target ECU are different, the vehicle downloads the new version software and the candidate backup software. The vehicle performs the flash upgrade of the target ECU based on the new version software, then stores the version of the new software after the upgrade is successful, and stores the new version software of the target ECU as new backup software (for example, the new version software may be stored inside the ECU or at the main control node). If the new version of software fails to be written, rolling back to the candidate backup software, and updating the current software version and the backup software version of the target ECU into the candidate backup software version for storage.
It should be further noted that, the manner of determining that the target ECU fails to be updated and upgraded in the flash process based on the new version of software of the target ECU may specifically be: after the kth flash upgrading fails, judging whether k reaches a preset flash time threshold value, and if so, determining whether the target ECU is subjected to flash upgrading by the new version of software based on the target ECU; and if not, performing the (k + 1) th flash of the new version of software on the target ECU. Wherein k is an integer greater than or equal to 1; the preset threshold value of the number of times of flashing may be set according to actual situations, for example, may be 5 times, or 10 times, and may also be set to other values, which are not exhaustive here.
When the target ECU fails to be refreshed by adopting the new software for multiple times, the new backup software can be saved and rollback recovery can be performed based on the new backup software based on the candidate backup software serving as the new backup software of the target ECU.
The process of performing rollback recovery on the target ECU based on the new backup software may also determine whether the failure occurs and may also increase the preset rollback number. For example, after the target ECU is executed for the ith time and is subjected to rollback recovery failure based on new backup software, whether i reaches a preset rollback number is judged, and if so, the target ECU is determined to be subjected to rollback failure; otherwise, executing the (i + 1) th rollback recovery of the target ECU based on the new backup software. Wherein i is an integer greater than or equal to 1, the preset rollback number may be set according to an actual situation, for example, 2 or 7, and the specific numerical values are not exhaustive.
Further, in the case where it is determined that the target ECU has failed to rollback, the method may further include: initiating a reminder notification; for example, a reminder notification may be sent to the after-market system for reminding the target ECU of the target vehicle of a rollback failure based on the new backup software. Correspondingly, the after-sales system may display the reminder notification in a display interface of the after-sales monitoring device, and the after-sales person performs manual intervention, for example, the software may be manually repaired, or new software for the target ECU may be manually selected and sent to the target vehicle, and so on, which is not described herein again.
Thus, the vehicle can send the software version of the current in-vehicle ECU to the server; then, new software of a target ECU with a new upgrade task currently can be downloaded from a server side; after the downloaded new version of software of the target ECU is subjected to software flashing, namely upgrading, the backup software version of the target ECU can be replaced by the version of the new version of software. Therefore, the versions of the software and the backup software of the target ECU can be the same, and the effect of aligning the flash software version and the backup software version of the target ECU is realized; in addition, in the scheme of this embodiment, only the software version used in the current flash upgrade and the backup software version need to be pulled to the ECU having the new upgrade task, so that the processing of the new upgrade task and the pull of the version are combined, the processing efficiency is improved, and the extra communication consumption is reduced.
In another embodiment of this embodiment, in the process of downloading software (downloading new software or downloading new software and candidate backup software), the software may be downloaded from a server according to an instruction of a user or a click operation of the user; or the user can control the vehicle through the terminal equipment to download software from a server and the like.
In another embodiment of this embodiment, the process of downloading the software (downloading the new software or downloading the new software and the candidate backup software) may be downloading the software from the server side automatically without the user's feeling. For the description of the non-inductive download, the following details are provided in conjunction with fig. 2:
s201: detecting a network communication condition;
s202: detecting whether the software which is not downloaded is present under the condition that the network communication condition meets a preset condition; wherein the software which is not downloaded completely comprises new software and/or candidate backup software of the target ECU;
s203: and if the software which is not downloaded exists, performing breakpoint continuous transmission on the software which is not downloaded, and acquiring the software which is not downloaded.
Here, the software that is not downloaded may include a new version of software and/or candidate backup software of the target ECU.
That is, when the vehicle has the network communication condition, the software can be automatically downloaded from the server side without user perception or user control, and if the downloading is not completed and the network is disconnected or the downloading of the software is stopped due to other reasons, the software can be regarded as the software which is not downloaded. When the network communication condition is met again, whether the software which is not downloaded exists can be judged firstly, if yes, the part of the software is downloaded firstly until the software downloading is completed.
In addition, based on the determination of S202, as shown in fig. 2, the method may further include S204: and if the software which is not downloaded completely does not exist, acquiring the software versions of the N ECUs, and uploading the software versions of the N ECUs to a server. The foregoing steps S101-S104 may be performed subsequently and will not be repeated.
It should be further noted that after the software that is not downloaded is completed, the process may return to continuously determine whether the software that is not downloaded exists, and if the software does not exist, the current software versions and the backup software versions of the N ECUs may also be acquired, and the current software versions and the backup software versions of the N ECUs are uploaded to the server, so as to perform the processing in S101 to S104.
Further, after completing downloading the software that is not downloaded completely, or completing the software downloading according to the task configuration information, that is, completing the foregoing processing of S102, and downloading to the new version software and/or the candidate backup software for the target ECU, the method may further include:
under the condition that the downloading of the new software and/or the candidate backup software is completed, the new software and/or the candidate backup software are verified;
generating and outputting prompt information under the condition that the verification is passed; and the prompt information is used for prompting the update of the new software and/or the candidate backup software.
Then, the user can control the vehicle to start the software flashing upgrade through a terminal device (such as a mobile phone) or in the vehicle, that is, execute the foregoing processing of S103-S104, and the description is not repeated.
That is, the downloaded software (such as new software or candidate backup software of the target ECU) is verified, and if the verification is successful, a prompt message may be generated and output to prompt the user that the software may be updated. Here, the processing of the prompt information and the verification is the same as that of the foregoing embodiment, and is not described again.
In a second aspect, an embodiment of the present application provides a software version updating method, which is applied to a server, and as shown in fig. 3, the method includes:
s301: acquiring software versions of N ECUs transmitted by a target vehicle; wherein N is an integer greater than or equal to 1;
s302: determining an ECU with a new upgrade task from the N ECUs as a target ECU, and determining new software for the target ECU based on the software version of the target ECU;
s303: providing the target vehicle with a new version of software for the target ECU.
In this embodiment, the server may be a download server, for example, may be set locally, or may be a server in the cloud. The present embodiment does not limit it.
Executing S301 may be triggering the vehicle to execute S101 and then the server to execute S301 when performing after-market maintenance of the vehicle; alternatively, the version detection of the ECU may be performed periodically for the vehicle, each cycle triggering the vehicle to execute S101 and then the server to execute S301. The software versions may include a current software version and a backup software version.
It should be noted that if there is no backup software package in the current vehicle, the backup software package versions of the N ECUs may be set to be null or set to be corresponding indication codes, such as "0", when the backup software package versions of the N ECUs are uploaded.
Correspondingly, after the vehicle uploads the current software versions and the backup software versions of the N ECUs to the server, the step S302 is executed, which may specifically include:
the server may detect whether a new upgrade task for any one or more of the N ECUs of the target vehicle exists in the current new upgrade tasks; in the case where there is a new upgrade task for one or more ECUs of the target vehicle, an ECU for which there is a new upgrade task is taken as the target ECU.
The target ECU may be one ECU or a plurality of ECUs, and the specific acquisition of one or a plurality of ECUs in each process may be determined according to a new upgrade task on the server side (operator).
For example, an operator configures a new upgrade task for one or more ECUs on a server side, and then the server determines, based on the N ECUs reported by the target vehicle and a preset new upgrade task, that one ECU of the N ECUs of the target vehicle is an ECU corresponding to the preset new upgrade task, and then the one ECU is the target ECU in this embodiment. And if a plurality of ECUs are in a new upgrading task set by the server, all the ECUs of the target vehicle are target ECUs.
The present embodiment does not describe the specific number of target ECUs, that is, the same method can be used to perform the processing of upgrading and version updating on each target ECU regardless of the number of target ECUs.
It should be noted that before executing S303 to provide the new version of software of the target ECU for the target vehicle, the method may further include: and determining whether the current software version and the backup software version of the target ECU are consistent or not based on the current software version and the backup software version of the N ECUs.
Accordingly, the step S303 of providing the target ECU to the target vehicle further includes:
and under the condition that the current software version and the backup software version of the target ECU in the target vehicle are consistent, providing the target vehicle with new software of the target ECU.
That is, the server determines whether the current software version of the target ECU and the backup software version are consistent;
if the current software version of the target ECU is consistent with the backup software version, the new version of software of the target ECU can be sent to the target vehicle only; accordingly, the target vehicle downloads a new version of software for the target ECU from the server.
In S303, providing the new version of software of the target ECU for the target vehicle may further include:
and under the condition that the current software version and the backup software version of the target ECU in the target vehicle are inconsistent, providing new software and candidate backup software of the target ECU for the target vehicle.
That is, the server determines that if the current software version of the target ECU is inconsistent with the backup software version, the server may send the new version software and the candidate backup software of the target ECU to the target vehicle;
correspondingly, the vehicle downloads the candidate backup software of the target ECU from the server; wherein the candidate backup software of the target ECU is: and under the condition that the current software version and the backup software version of the target ECU saved by the vehicle are inconsistent, the backup software provided for the vehicle by the server.
Further, the method further comprises:
sending task configuration information to the target vehicle; wherein the task configuration information includes: and the download address of the new version of software of the target ECU.
Alternatively, the method further comprises:
sending task configuration information to the target vehicle; wherein the task configuration information includes: the download address of the new version of software of the target ECU, and the download address of the candidate backup software of the target ECU.
That is, the server may indicate a download address of the new version of software of the target ECU and an upgrade constraint condition corresponding to the new version of software by sending task configuration information to the target vehicle; or, the server may indicate the download address of the new version software of the target ECU, the download address of the candidate backup software, and the upgrade constraint condition corresponding to the new version software and the upgrade constraint condition of the candidate backup software by sending task configuration information to the target vehicle.
The upgrade constraint condition may include at least one of a priority of the ECU, whether parallel flash is possible, and a sequence of the ECU flash.
In a third aspect, with reference to fig. 4 in conjunction with the foregoing first and second aspects of the processing on the vehicle and server side, an exemplary description is provided for the software version updating method of the present embodiment:
s41: the vehicle acquires current software versions and the backup software versions of N ECUs; here, the processes of acquiring the current software version and the backup software version are not in sequence, and may be executed simultaneously, or may acquire the current software version first and then acquire the backup software version, or may acquire the backup software version first and then acquire the current software version.
S42: the vehicle uploads the software versions of the N ECUs to a server;
s43: the server judges whether a new upgrading task exists or not, and if not, the processing is finished; if yes, go to S44; here, the determining whether there is a new upgrade task may be determining whether there is a new upgrade task for N ECUs reported by the vehicle.
S44: the server judges whether the current software version and the backup software version of the ECU of the vehicle corresponding to the new upgrade task are consistent; if yes, go to S45; otherwise, S46 is executed.
S45: the vehicle downloads the candidate backup software from the server; here, it may be performed simultaneously with S46 or sequentially. Here, the step S45 may further include replacing the backup software with the candidate backup software, that is, updating the backup software of the vehicle to the candidate backup software; then S46 is executed.
S46: the vehicle downloads the new software from the server;
s47: the vehicle writes new software;
s48: and judging whether the vehicle is successfully refreshed, if so, executing S49, otherwise, executing a rollback flow. The rollback processing may specifically include processing to perform rollback recovery on the target ECU based on the backup software, and may also determine whether the rollback recovery fails and may also increase the preset rollback number. For example, after the target ECU is executed for the ith time and is subjected to rollback recovery failure based on backup software, whether i reaches a preset rollback number is judged, and if yes, the target ECU is determined to be subjected to rollback failure; otherwise, executing the (i + 1) th rollback recovery of the target ECU based on the new backup software. Wherein i is an integer of 1 or more. Further, in the case where it is determined that the target ECU has failed to rollback, the method may further include: initiating a reminder notification; for example, a reminder notification may be sent to the after-market system for reminding the target ECU of the target vehicle of a rollback failure based on the new backup software. The processing here is similar to the previous embodiment and is not described again.
S49: the vehicle adopts new software to replace backup software; for example, the new version of software is saved as new backup software, and the version of the new backup software is updated to the version of the new version of software.
The above processing is described in a non-inductive download manner with reference to fig. 5, and includes:
s501: self-checking when the vehicle is electrified;
s502: the vehicle judges whether software which is not downloaded is available; new versions of software and/or candidate backup software that may be the aforementioned target ECUs; if yes, executing S503; otherwise, S507 is executed.
S503: the vehicle carries out breakpoint continuous transmission on the software which is not downloaded;
s504: the vehicle judges whether the downloading result is successful, if so, the S505 is executed, otherwise, the downloading is determined to be abnormal, and the server downloading abnormality (which may include the reason of the abnormality) can be reported, or no processing is performed;
s505: and the vehicle verifies the software, if the software passes the verification, S506 is executed, otherwise, the abnormality is determined. Wherein, the check can comprise validity check and/or validity check; the specific verification process has been described in detail in the foregoing embodiments and will not be repeated. In addition, the determination exception may report a server upgrade exception (which may include a reason for the upgrade exception), or may not be processed.
S506: the vehicle notifies the update, and ends the non-sensory processing. That is, the prompt information may be generated, the new version of software of the current target ECU may be updated, and the like, and the specific processing has been described in the foregoing embodiments and will not be described again.
S507: the vehicle acquires and uploads version information; the processing of the aforementioned S41 and S42 may be included, that is, the vehicle acquires and uploads the current software versions of the N ECUs and the backup software versions to the server;
s508: the server judges whether a new upgrade task exists, if so, executes S509, otherwise, ends the processing.
Here, the processing of S43 and S44 may be included, that is, the server determines whether a new upgrade task exists in N ECUs of the vehicle, and if so, may further determine whether the versions match. If the current software version of the target ECU is consistent with the target ECU version of the target; if not, the server can issue task configuration information containing the download address and the upgrade constraint condition of the new version of software of the target ECU, and the download address and the upgrade constraint condition of the candidate backup software of the target ECU for the vehicle.
S509: the vehicle obtains task configuration information.
S510: downloading software by the vehicle; here, the process of downloading the new software version, i.e., S46, or the process of downloading the new software version and the candidate backup software, i.e., the processes of S45 and S46, may be performed by the vehicle, and a description thereof will not be repeated.
After S510 is completed, S504 is performed.
In a fourth aspect, the present embodiment also provides a vehicle, as shown in fig. 6, including:
a sending unit 61, configured to upload software versions of the N ECUs to a server; wherein N is an integer greater than or equal to 1;
a download unit 62 for downloading a new version of software of the target ECU from the server; the target ECU is an ECU with a new upgrading task on the server side in the N ECUs;
the upgrading unit 63 is used for performing flash upgrading on the target ECU based on the new version software of the target ECU;
and an updating unit 64, configured to, in a case where the target ECU is successfully updated based on the new version of software, save the new version of software of the target ECU as new backup software of the target ECU, and update the version of the backup software of the target ECU to the version of the new backup software.
The downloading unit 62 is configured to download the candidate backup software of the target ECU from the server; wherein the candidate backup software of the target ECU is: and under the condition that the current software version and the backup software version of the target ECU saved by the vehicle are inconsistent, the server provides backup software for the vehicle.
The updating unit 64 is configured to, when the target ECU fails to be updated and updated based on the new version of software of the target ECU, save the candidate backup software of the target ECU as the new backup software of the target ECU and perform rollback recovery.
The downloading unit 62 is configured to receive task configuration information sent by the server; wherein the task configuration information includes: the download address of the new version software of the target ECU;
and downloading the new version software of the target ECU from the server based on the download address of the new version software of the target ECU contained in the task configuration information.
The downloading unit 62 is configured to receive task configuration information sent by the server; wherein the task configuration information includes: the download address of the new version of software of the target ECU and the download address of the candidate backup software of the target ECU;
downloading the new version software of the target ECU from the server based on the download address of the new version software of the target ECU contained in the task configuration information; and downloading the candidate backup software of the target ECU from the server based on the download address of the candidate backup software of the target ECU contained in the task configuration information.
The vehicle further includes:
a detection unit 65 for detecting a network communication condition;
the downloading unit 62 is configured to detect whether software which is not downloaded exists under the condition that the network communication condition meets a preset condition; wherein the software which is not downloaded completely comprises new software and/or candidate backup software of the target ECU; and if the software which is not downloaded exists, performing breakpoint continuous transmission on the software which is not downloaded, and acquiring the software which is not downloaded.
The downloading unit 62 is configured to, if there is no software that is not downloaded, acquire software versions of the N ECUs, and upload the software versions of the N ECUs to a server.
The vehicle further includes:
a verification unit 66, configured to verify the new version software and/or the candidate backup software of the target ECU when the downloading of the new version software and/or the candidate backup software of the target ECU is completed;
an output unit 67, configured to generate and output prompt information when the verification passes; wherein the prompt information is used for prompting the update of the new version software and/or the candidate backup software of the target ECU.
A fifth method, the present embodiment further provides a server, as shown in fig. 7, including:
a communication unit 71 for acquiring software versions of the N ECUs transmitted from the target vehicle; and providing a new version of software for the target ECU for the target vehicle; wherein N is an integer greater than or equal to 1;
and the processing unit 72 is used for determining an ECU with a new upgrade task from the N ECUs as a target ECU and determining new software for the target ECU based on the software version of the target ECU.
The processing unit 72 is configured to determine whether the current software version and the backup software version of the target ECU are consistent based on the software versions of the N ECUs.
The processing unit 72 is configured to provide the target vehicle with a new version of software of the target ECU when the current software version and the backup software version of the target ECU in the target vehicle are consistent.
The communication unit 71 is configured to send task configuration information to the target vehicle; wherein the task configuration information includes: and the download address of the new version of software of the target ECU.
The processing unit 72 is configured to provide the target vehicle with the new version software and the candidate backup software of the target ECU when the current software version and the backup software version of the target ECU in the target vehicle are inconsistent.
The communication unit 71 is configured to send task configuration information to the target vehicle; wherein the task configuration information includes: the download address of the new version of software of the target ECU, and the download address of the candidate backup software of the target ECU.
The application also provides a vehicle, a server and a readable storage medium according to the embodiment of the application.
As shown in fig. 8, is a block diagram of a vehicle or server according to an embodiment of the present application. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the present application that are described and/or claimed herein.
As shown in fig. 8, the vehicle or the server includes: one or more processors 801, memory 802, and interfaces for connecting the various components, including a high speed interface and a low speed interface. The various components are interconnected using different buses and may be mounted on a common motherboard or in other manners as desired. The processor may process instructions for execution within the vehicle, including instructions stored in or on the memory to display graphical information of the GUI on an external input/output device (such as a display device coupled to the interface). In other embodiments, multiple processors and/or multiple buses may be used, along with multiple memories and multiple memories, as desired. Also, multiple vehicles may be connected, with each device providing some of the necessary operations (e.g., as a server array, a group of blade servers, or a multi-processor system). Fig. 8 illustrates an example of a processor 801.
The memory 802 is a non-transitory computer readable storage medium as provided herein. Wherein the memory stores instructions executable by at least one processor to cause the at least one processor to perform the methods provided herein. The non-transitory computer readable storage medium of the present application stores computer instructions for causing a computer to perform the methods provided herein.
Memory 802, as a non-transitory computer readable storage medium, may be used to store non-transitory software programs, non-transitory computer executable programs, and modules, such as program instructions/modules corresponding to the methods in the embodiments of the present application. The processor 801 executes various functional applications of the server and data processing by running non-transitory software programs, instructions, and modules stored in the memory 802, that is, implements the method in the above-described method embodiments.
The memory 802 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the vehicle, and the like. Further, the memory 802 may include high speed random access memory and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory 802 optionally includes memory located remotely from the processor 801, which may be connected to a vehicle or server via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The vehicle or server may further include: an input device 803 and an output device 804. The processor 801, the memory 802, the input device 803, and the output device 804 may be connected by a bus or other means, and are exemplified by a bus in fig. 8.
The input device 803 may receive input numeric or character information and generate key signal inputs related to user settings and function control of the vehicle, such as an input device like a touch screen, keypad, mouse, track pad, touch pad, pointer stick, one or more mouse buttons, track ball, joystick, etc. The output devices 804 may include a display device, auxiliary lighting devices (e.g., LEDs), and haptic feedback devices (e.g., vibrating motors), among others. The display device may include, but is not limited to, a Liquid Crystal Display (LCD), a Light Emitting Diode (LED) display, and a plasma display. In some implementations, the display device can be a touch screen.
Various implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, application specific ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
These computer programs (also known as programs, software applications, or code) include machine instructions for a programmable processor, and may be implemented using high-level procedural and/or object-oriented programming languages, and/or assembly/machine languages. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, apparatus, and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal used to provide machine instructions and/or data to a programmable processor.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include a vehicle and a server. The vehicle and server are generally remote from each other and typically interact through a communication network. The relationship of client (vehicle) and server arises by virtue of computer programs running on the respective computers and having a client (or vehicle) -server relationship to each other.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present application may be executed in parallel, sequentially, or in different orders, and the present invention is not limited thereto as long as the desired results of the technical solutions disclosed in the present application can be achieved.
The above-described embodiments should not be construed as limiting the scope of the present application. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (31)

1. A software version updating method applied to a vehicle is characterized by comprising the following steps:
uploading the software versions of the N ECUs to a server; wherein N is an integer greater than or equal to 1;
downloading a new version of software of the target ECU from a server; the target ECU is an ECU with a new upgrading task on the server side in the N ECUs;
performing flash upgrading on the target ECU based on the new version software of the target ECU;
and under the condition that the target ECU is successfully updated based on the new version of software, saving the new version of software of the target ECU as new backup software of the target ECU, and updating the backup software version of the target ECU into the version of the new backup software.
2. The method of claim 1, further comprising:
downloading candidate backup software for the target ECU from the server; wherein the candidate backup software of the target ECU is: and under the condition that the current software version and the backup software version of the target ECU saved by the vehicle are inconsistent, the server provides backup software for the vehicle.
3. The method of claim 2, further comprising:
and under the condition that the target ECU is failed to be updated and updated by the new version of software based on the target ECU, saving the candidate backup software of the target ECU as the new backup software of the target ECU and performing rollback recovery.
4. The method of claim 1, further comprising:
receiving task configuration information sent by the server; wherein the task configuration information includes: the download address of the new version software of the target ECU;
correspondingly, the downloading of the new version software of the target ECU from the server includes:
and downloading the new version software of the target ECU from the server based on the download address of the new version software of the target ECU contained in the task configuration information.
5. The method of claim 2, further comprising:
receiving task configuration information sent by the server; wherein the task configuration information includes: the download address of the new version of software of the target ECU and the download address of the candidate backup software of the target ECU;
correspondingly, the downloading of the new version of software of the target ECU from the server further includes:
downloading the new version software of the target ECU from the server based on the download address of the new version software of the target ECU contained in the task configuration information; and downloading the candidate backup software of the target ECU from the server based on the download address of the candidate backup software of the target ECU contained in the task configuration information.
6. The method according to any one of claims 1-5, further comprising:
detecting a network communication condition;
detecting whether the software which is not downloaded is present under the condition that the network communication condition meets a preset condition; wherein the software which is not downloaded completely comprises new software and/or candidate backup software of the target ECU;
and if the software which is not downloaded exists, performing breakpoint continuous transmission on the software which is not downloaded, and acquiring the software which is not downloaded.
7. The method of claim 6, further comprising:
and if the software which is not downloaded completely does not exist, acquiring the software versions of the N ECUs, and uploading the current software versions and the backup software versions of the N ECUs to a server.
8. The method of claim 7, further comprising:
verifying the new version software and/or the candidate backup software of the target ECU under the condition that the downloading of the new version software and/or the candidate backup software of the target ECU is completed;
generating and outputting prompt information under the condition that the verification is passed; wherein the prompt information is used for prompting the update of the new version software and/or the candidate backup software of the target ECU.
9. A software version updating method is applied to a server and is characterized by comprising the following steps:
acquiring software versions of N ECUs transmitted by a target vehicle; wherein N is an integer greater than or equal to 1;
determining an ECU with a new upgrade task from the N ECUs as a target ECU, and determining new software for the target ECU based on the software version of the target ECU;
providing the target vehicle with a new version of software for the target ECU.
10. The method of claim 9, wherein prior to providing the target vehicle with the new version of software for the target ECU, the method further comprises:
and determining whether the current software version and the backup software version of the target ECU are consistent or not based on the software versions of the N ECUs.
11. The method of claim 10, wherein the providing the target vehicle with a new version of software for the target ECU further comprises:
and under the condition that the current software version and the backup software version of the target ECU in the target vehicle are consistent, providing the target vehicle with new software of the target ECU.
12. The method of claim 11, further comprising:
sending task configuration information to the target vehicle; wherein the task configuration information includes: and the download address of the new version of software of the target ECU.
13. The method of claim 10, wherein the providing the target vehicle with a new version of software for the target ECU further comprises:
and under the condition that the current software version and the backup software version of the target ECU in the target vehicle are inconsistent, providing new software and candidate backup software of the target ECU for the target vehicle.
14. The method of claim 13, further comprising:
sending task configuration information to the target vehicle; wherein the task configuration information includes: the download address of the new version of software of the target ECU, and the download address of the candidate backup software of the target ECU.
15. A vehicle, characterized by comprising:
the sending unit is used for uploading the software versions of the N ECUs to the server; wherein N is an integer greater than or equal to 1;
a downloading unit for downloading a new version of software of the target ECU from the server; the target ECU is an ECU with a new upgrading task on the server side in the N ECUs;
the upgrading unit is used for performing flash upgrading on the target ECU based on the new version software of the target ECU;
and the updating unit is used for saving the new version software of the target ECU as the new backup software of the target ECU and updating the backup software version of the target ECU into the version of the new backup software under the condition that the target ECU is successfully updated and written based on the new version software.
16. The vehicle according to claim 15, characterized in that the download unit is configured to download the candidate backup software of the target ECU from the server; wherein the candidate backup software of the target ECU is: and under the condition that the current software version and the backup software version of the target ECU saved by the vehicle are inconsistent, the server provides backup software for the vehicle.
17. The vehicle according to claim 16, wherein the updating unit is configured to save the candidate backup software of the target ECU as new backup software of the target ECU and perform rollback recovery in a case where the target ECU fails to be updated by the flush based on the new version software of the target ECU.
18. The vehicle of claim 15, wherein the downloading unit is configured to receive task configuration information sent by the server; wherein the task configuration information includes: the download address of the new version software of the target ECU;
and downloading the new version software of the target ECU from the server based on the download address of the new version software of the target ECU contained in the task configuration information.
19. The vehicle of claim 16, wherein the downloading unit is configured to receive task configuration information sent by the server; wherein the task configuration information includes: the download address of the new version of software of the target ECU and the download address of the candidate backup software of the target ECU;
downloading the new version software of the target ECU from the server based on the download address of the new version software of the target ECU contained in the task configuration information; and downloading the candidate backup software of the target ECU from the server based on the download address of the candidate backup software of the target ECU contained in the task configuration information.
20. The vehicle of any of claims 15-19, further comprising:
a detection unit for detecting a network communication condition;
the downloading unit is used for detecting whether the software which is not downloaded exists under the condition that the network communication condition meets the preset condition; wherein the software which is not downloaded completely comprises new software and/or candidate backup software of the target ECU; and if the software which is not downloaded exists, performing breakpoint continuous transmission on the software which is not downloaded, and acquiring the software which is not downloaded.
21. The vehicle according to claim 20, wherein the downloading unit is configured to, if there is no software that has not been downloaded, acquire software versions of the N ECUs, and upload the software versions of the N ECUs to a server.
22. The vehicle of claim 21, further comprising:
the verification unit is used for verifying the new version software and/or the candidate backup software of the target ECU under the condition of finishing downloading the new version software and/or the candidate backup software of the target ECU;
the output unit is used for generating and outputting prompt information under the condition that the verification passes; wherein the prompt information is used for prompting the update of the new version software and/or the candidate backup software of the target ECU.
23. A server, comprising:
the communication unit is used for acquiring software versions of the N ECUs transmitted by the target vehicle; and providing a new version of software for the target ECU for the target vehicle; wherein N is an integer greater than or equal to 1;
and the processing unit is used for determining an ECU with a new upgrading task from the N ECUs as a target ECU and determining new software for the target ECU based on the software version of the target ECU.
24. The server according to claim 23, wherein the processing unit is configured to determine whether the current software version and the backup software version of the target ECU are consistent based on the current software version and the backup software version of the N ECUs.
25. The server according to claim 24, wherein the processing unit is configured to provide a new version of software for a target ECU in the target vehicle if the current software version and the backup software version of the target ECU are consistent.
26. The server according to claim 25, wherein the communication unit is configured to send task configuration information to the target vehicle; wherein the task configuration information includes: and the download address of the new version of software of the target ECU.
27. The server according to claim 24, wherein the processing unit is configured to provide a new version of software for a target ECU and candidate backup software for the target vehicle if a current software version and a backup software version of the target ECU in the target vehicle are not consistent.
28. The server according to claim 27, wherein the communication unit is configured to send task configuration information to the target vehicle; wherein the task configuration information includes: the download address of the new version of software of the target ECU, and the download address of the candidate backup software of the target ECU.
29. A vehicle, characterized in that the vehicle comprises
At least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-8.
30. A server, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 9-14.
31. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-14.
CN202010997117.7A 2020-09-21 2020-09-21 Software version updating method, server, vehicle, and computer storage medium Pending CN112099845A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010997117.7A CN112099845A (en) 2020-09-21 2020-09-21 Software version updating method, server, vehicle, and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010997117.7A CN112099845A (en) 2020-09-21 2020-09-21 Software version updating method, server, vehicle, and computer storage medium

Publications (1)

Publication Number Publication Date
CN112099845A true CN112099845A (en) 2020-12-18

Family

ID=73756397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010997117.7A Pending CN112099845A (en) 2020-09-21 2020-09-21 Software version updating method, server, vehicle, and computer storage medium

Country Status (1)

Country Link
CN (1) CN112099845A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113094211A (en) * 2021-04-23 2021-07-09 北京天空卫士网络安全技术有限公司 Backup data processing method and device
CN113110857A (en) * 2021-04-21 2021-07-13 上海星融汽车科技有限公司 Vehicle ECU firmware flash backup system
CN114125000A (en) * 2021-11-15 2022-03-01 深圳市元征科技股份有限公司 Vehicle ECU upgrading method and device, electronic equipment and storage medium
US20220222062A1 (en) * 2021-01-14 2022-07-14 Honda Motor Co.,Ltd. Information processing apparatus, control system, system, information processing method, control method and computer-readable storage medium
CN114978905A (en) * 2022-05-25 2022-08-30 重庆长安汽车股份有限公司 Software OTA (over the air) upgrading method based on container
CN115118577A (en) * 2022-06-24 2022-09-27 重庆长安汽车股份有限公司 Method and device for determining remote upgrade abnormal reason, electronic equipment and storage medium
CN116643777A (en) * 2023-07-27 2023-08-25 江铃汽车股份有限公司 Automatic after-sale upgrading method and system for automobile software
CN117389614A (en) * 2023-11-20 2024-01-12 镁佳(北京)科技有限公司 Method and device for activating vehicle software, computer equipment and storage medium
CN113094211B (en) * 2021-04-23 2024-04-23 北京天空卫士网络安全技术有限公司 Backup data processing method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101247268A (en) * 2008-02-26 2008-08-20 中兴通讯股份有限公司 Synchronization method and apparatus of terminal system version
WO2014187401A1 (en) * 2013-09-05 2014-11-27 中兴通讯股份有限公司 Method and device for remote base station version installation
CN105978921A (en) * 2016-07-29 2016-09-28 重庆长安汽车股份有限公司 Remote upgrading method for vehicle-mounted communication terminal
CN106802813A (en) * 2016-12-06 2017-06-06 智车优行科技(北京)有限公司 Method, device and vehicle for aerial firmware upgrade
US20190095193A1 (en) * 2017-09-26 2019-03-28 C-Sky Microsystems Co., Ltd. System version upgrading method and apparatus
CN109561118A (en) * 2017-09-26 2019-04-02 比亚迪股份有限公司 Method for upgrading software, device, system, storage medium, electronic equipment and vehicle
US20200174779A1 (en) * 2018-11-30 2020-06-04 Paccar Inc Error-resilient over-the-air software updates for vehicles

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101247268A (en) * 2008-02-26 2008-08-20 中兴通讯股份有限公司 Synchronization method and apparatus of terminal system version
WO2014187401A1 (en) * 2013-09-05 2014-11-27 中兴通讯股份有限公司 Method and device for remote base station version installation
CN105978921A (en) * 2016-07-29 2016-09-28 重庆长安汽车股份有限公司 Remote upgrading method for vehicle-mounted communication terminal
CN106802813A (en) * 2016-12-06 2017-06-06 智车优行科技(北京)有限公司 Method, device and vehicle for aerial firmware upgrade
US20190095193A1 (en) * 2017-09-26 2019-03-28 C-Sky Microsystems Co., Ltd. System version upgrading method and apparatus
CN109561118A (en) * 2017-09-26 2019-04-02 比亚迪股份有限公司 Method for upgrading software, device, system, storage medium, electronic equipment and vehicle
US20200174779A1 (en) * 2018-11-30 2020-06-04 Paccar Inc Error-resilient over-the-air software updates for vehicles

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘志军等: "基于OTA的车辆ECU软件远程刷写系统", 汽车与驾驶维修(维修版), no. 06, pages 62 - 64 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220222062A1 (en) * 2021-01-14 2022-07-14 Honda Motor Co.,Ltd. Information processing apparatus, control system, system, information processing method, control method and computer-readable storage medium
CN113110857A (en) * 2021-04-21 2021-07-13 上海星融汽车科技有限公司 Vehicle ECU firmware flash backup system
CN113094211A (en) * 2021-04-23 2021-07-09 北京天空卫士网络安全技术有限公司 Backup data processing method and device
CN113094211B (en) * 2021-04-23 2024-04-23 北京天空卫士网络安全技术有限公司 Backup data processing method and device
CN114125000A (en) * 2021-11-15 2022-03-01 深圳市元征科技股份有限公司 Vehicle ECU upgrading method and device, electronic equipment and storage medium
CN114978905A (en) * 2022-05-25 2022-08-30 重庆长安汽车股份有限公司 Software OTA (over the air) upgrading method based on container
CN115118577A (en) * 2022-06-24 2022-09-27 重庆长安汽车股份有限公司 Method and device for determining remote upgrade abnormal reason, electronic equipment and storage medium
CN115118577B (en) * 2022-06-24 2023-08-18 重庆长安汽车股份有限公司 Remote upgrade abnormality cause determination method, device, electronic equipment and storage medium
CN116643777A (en) * 2023-07-27 2023-08-25 江铃汽车股份有限公司 Automatic after-sale upgrading method and system for automobile software
CN116643777B (en) * 2023-07-27 2023-10-03 江铃汽车股份有限公司 Automatic after-sale upgrading method and system for automobile software
CN117389614A (en) * 2023-11-20 2024-01-12 镁佳(北京)科技有限公司 Method and device for activating vehicle software, computer equipment and storage medium

Similar Documents

Publication Publication Date Title
CN112099845A (en) Software version updating method, server, vehicle, and computer storage medium
CN113687853B (en) Vehicle upgrade control method and computer storage medium
CN111770169B (en) Method, device, equipment and storage medium for upgrading equipment firmware
CN111368326B (en) Vehicle data processing method and device, electronic equipment and storage medium
US20140137095A1 (en) Server and method for updating firmware of server
CN112118318B (en) Vehicle upgrading method, terminal device, vehicle and computer storage medium
CN111669245A (en) Time synchronization method, device and equipment of vehicle and storage medium
CN112073994A (en) Method and device for over-the-air upgrading, electronic equipment and readable storage medium
CN103036706A (en) Local processing method of application upgrading abnormity
US8930936B2 (en) Loading remote binaries onto a write-protected device
CN106980565A (en) Escalation process monitoring method and device
CN111290797A (en) Page switching method, client, server, electronic equipment and system
CN109634659A (en) Method, apparatus, equipment and the storage medium that a kind of couple of BMC is controlled
CN111885114A (en) Method, device and storage medium for upgrading application program interface module in gateway
CN109299124B (en) Method and apparatus for updating a model
CN108241543B (en) Method, service server and system for executing service operation breakpoint
US10599424B2 (en) Committed program-code management
CN105791514B (en) Application starting monitoring method and device
CN116126379A (en) BIOS firmware upgrading method, device, equipment and storage medium
JP7147123B2 (en) Source channel determination method, device, equipment, program and computer storage medium
CN112148447B (en) Task processing method and system based on risk control and electronic equipment
CN112631931B (en) Version testing method and device, storage medium and electronic equipment
US20150186345A1 (en) Preventing partial change set deployments in content management systems
US20210406155A1 (en) Methods for configuring device debugging environment and configuration server
CN114296757A (en) Software upgrading method and device for wearable equipment, wearable equipment and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination