CN111610993A - Firmware upgrading method, server and system - Google Patents

Firmware upgrading method, server and system Download PDF

Info

Publication number
CN111610993A
CN111610993A CN202010428226.7A CN202010428226A CN111610993A CN 111610993 A CN111610993 A CN 111610993A CN 202010428226 A CN202010428226 A CN 202010428226A CN 111610993 A CN111610993 A CN 111610993A
Authority
CN
China
Prior art keywords
ecu
vehicle
upgraded
version
version information
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
CN202010428226.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.)
Maiteng Internet Of Things Technology Co ltd
Original Assignee
Maiteng Internet Of Things 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 Maiteng Internet Of Things Technology Co ltd filed Critical Maiteng Internet Of Things Technology Co ltd
Priority to CN202010428226.7A priority Critical patent/CN111610993A/en
Publication of CN111610993A publication Critical patent/CN111610993A/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

The invention provides a firmware upgrading method, a server and a system, wherein the method is applied to a firmware upgrading system, the system comprises the server, a vehicle-mounted terminal and at least one Electronic Control Unit (ECU), the vehicle-mounted terminal and the at least one ECU are connected through a Controller Area Network (CAN) bus, and the method comprises the following steps: the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus and sends the version information to the server; the server compares the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded; the server determines an upgrading version corresponding to each ECU to be upgraded according to a preset rule; the server sends the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal sends the corresponding upgrading versions to the corresponding ECUs to be upgraded through the CAN bus respectively; and the ECU to be upgraded is upgraded according to the corresponding upgrade version. The method and the device can solve the problems of poor stability and long upgrading time of the whole vehicle firmware upgrading.

Description

Firmware upgrading method, server and system
Technical Field
The present disclosure relates to the field of software upgrading technologies, and in particular, to a firmware upgrading method, a server, and a system.
Background
The whole vehicle firmware upgrade is also called FOTA (Full Over-The-Air), and means that The vehicle upgrades The vehicle software remotely through a wireless network after leaving The factory.
If software upgrading is required to be carried out on a traditional vehicle, a user needs to go to a 4S shop to use a diagnostic instrument and other professional tools to complete the software upgrading, the user needs to make an appointment, queue and wait, a large amount of time and energy are wasted, extra expenses need to be paid, and the cost is increased. With the development of wireless communication technologies such as 4G, 5G and the like, the whole vehicle firmware upgrading technology comes along, and a user can complete upgrading only by simple operation without paying extra time and energy.
At present, the number of vehicle enterprises using the whole vehicle firmware upgrading technology is small, the unified standard is not available, and the problems of poor stability, overlong upgrading time and the like exist.
Disclosure of Invention
The embodiment of the disclosure provides a firmware upgrading method and system, which can solve the problems of poor stability and long upgrading time of the whole vehicle firmware upgrading. The technical scheme is as follows:
according to a first aspect of the embodiments of the present disclosure, there is provided a firmware upgrade method applied to a firmware upgrade system, where the system includes a server, at least one Electronic Control Unit (ECU), and a vehicle-mounted terminal, where the vehicle-mounted terminal and the at least one ECU are connected by a Controller Area Network (CAN) bus, the method including:
the vehicle-mounted terminal respectively acquires version information of each ECU through the CAN bus and sends the version information to the server;
the server compares the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded;
the server determines an upgrading version corresponding to each ECU to be upgraded according to a preset rule;
the server sends the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal sends the corresponding upgrading versions to the corresponding ECUs to be upgraded through the CAN bus respectively;
and upgrading the ECU to be upgraded according to the corresponding upgrading version.
In one embodiment, before the ECU to be upgraded is upgraded according to the corresponding upgrade version, the method further includes:
and determining that the vehicle corresponding to the vehicle-mounted terminal is in a dormant state.
In one embodiment, before the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus and sends the version information to the server, the method further includes:
after the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus, the version information of each ECU is generated into a universal unique identifier UUID through a preset encryption algorithm, and the UUID is sent to the server.
In one embodiment, the server compares the version information of each ECU with locally stored version information, and determining the ECU to be upgraded includes:
selecting a current ECU, and determining version information of the current ECU;
and if the version information of the current ECU indicates that the version of the current ECU is lower than the locally stored version, determining that the current ECU is the ECU to be upgraded.
In one embodiment, the step of determining, by the server, the upgrade version corresponding to each ECU to be upgraded according to a preset rule includes:
acquiring a vehicle model corresponding to the vehicle-mounted terminal;
determining an upgrading version corresponding to each ECU to be upgraded according to the vehicle model, the ECU version information and a preset corresponding relation table; the preset corresponding relation table stores the corresponding relation among the vehicle model, the ECU version information and the upgrade version.
In one embodiment, the method further comprises:
and if the vehicle corresponding to the vehicle-mounted terminal is detected to be started in the ECU upgrading process, the vehicle is prohibited from being started and a user is reminded of upgrading.
According to a second aspect of the embodiments of the present disclosure, there is provided a firmware upgrade method applied to a server, the method including:
acquiring version information of each ECU sent by the vehicle-mounted terminal, wherein the version information of each ECU is obtained by the vehicle-mounted terminal through a CAN bus;
comparing the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded;
determining an upgrading version corresponding to each ECU to be upgraded according to a preset rule;
and sending the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and respectively sending the corresponding upgrading version to the corresponding ECU to be upgraded by the vehicle-mounted terminal through the CAN bus, so that the ECU to be upgraded is upgraded according to the corresponding upgrading version.
In one embodiment, comparing the version information of each ECU with locally stored version information, respectively, and determining the ECU to be upgraded includes:
selecting a current ECU, and determining version information of the current ECU;
and if the version information of the current ECU indicates that the version of the current ECU is lower than the locally stored version, determining that the current ECU is the ECU to be upgraded.
According to a third aspect of embodiments of the present disclosure, there is provided a server, including:
the acquisition module is used for acquiring the version information of each ECU sent by the vehicle-mounted terminal, and the version information of each ECU is obtained by the vehicle-mounted terminal through a CAN bus;
the comparison module is used for comparing the version information of each ECU with locally stored version information respectively and determining the ECU to be upgraded;
the determining module is used for determining the upgrading version corresponding to each ECU to be upgraded according to a preset rule;
and the sending module is used for sending the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal respectively sends the corresponding upgrading versions to the corresponding ECUs to be upgraded through the CAN bus, so that the ECUs to be upgraded are upgraded according to the corresponding upgrading versions.
According to a fourth aspect of the embodiments of the present disclosure, there is provided a firmware upgrade system including a server, a vehicle-mounted terminal, and at least one electronic control unit ECU, the vehicle-mounted terminal and the at least one ECU being connected through a controller area network CAN bus, wherein,
the vehicle-mounted terminal respectively acquires version information of each ECU through the CAN bus and sends the version information to the server;
the server compares the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded;
the server determines an upgrading version corresponding to each ECU to be upgraded according to a preset rule;
the server sends the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal sends the corresponding upgrading versions to the corresponding ECUs to be upgraded through the CAN bus respectively;
and upgrading the ECU to be upgraded according to the corresponding upgrading version.
In one embodiment, before the ECU to be upgraded is upgraded according to the corresponding upgraded version,
the server also determines that the vehicle corresponding to the in-vehicle terminal is in a sleep state.
In one embodiment, before the vehicle-mounted terminal acquires version information of each ECU through the CAN bus and sends the version information to the server,
after the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus, the version information of each ECU is generated into a universal unique identifier UUID through a preset encryption algorithm, and the UUID is sent to the server.
The firmware upgrading method, the server and the system provided by the embodiment of the disclosure can solve the problems of poor stability and long upgrading time of the whole firmware upgrading.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure.
FIG. 1 is a block diagram of a firmware upgrade system provided by an embodiment of the present disclosure;
FIG. 2 is a flowchart of a firmware upgrade method provided by an embodiment of the present disclosure;
FIG. 3 is a flowchart of a firmware upgrade method provided by an embodiment of the present disclosure;
FIG. 4 is a block diagram of a server provided by an embodiment of the present disclosure;
FIG. 5 is a block diagram of a comparison module provided in an embodiment of the present disclosure;
fig. 6 is a block diagram of a determination module provided in an embodiment of the present disclosure.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of devices consistent with certain aspects of the present disclosure, as detailed in the appended claims.
Fig. 1 is a block diagram of a firmware upgrading system provided in an embodiment of the present disclosure, where the system includes a server 101, a vehicle-mounted terminal 102, and at least one electronic control unit ECU103, the vehicle-mounted terminal 102 and the at least one ECU103 are connected through a controller area network CAN bus, and the server 101 and the vehicle-mounted terminal 102 may be connected through a wireless network, such as a 4G network, a 5G network, and the like, which is not limited by the present disclosure.
The CAN network is a serial communication protocol standardized by ISO international. In the automotive industry, various electronic control systems have been developed for the purpose of safety, comfort, convenience, low pollution, and low cost. Since the types of data used for communication between these systems and the requirements for reliability are different, the number of harnesses is increased in many cases because the harnesses are formed of a plurality of buses.
The high performance and reliability of CAN has been recognized and widely used in industrial automation, ships, medical equipment, industrial equipment, and the like. The field bus is one of the hot spots of the technical development in the current automation field, and is known as a computer local area network in the automation field. The occurrence of the method provides powerful technical support for realizing real-time and reliable data communication among all nodes of a distributed control system.
An ECU, also called a 'driving computer', is one of the core elements of modern automobile electronics, and ECU electronic control units may have several in the automobile, each managing different functions; and each ECU system has information exchanged between them. Although the control system on the whole vehicle is more and more complex, the control system still has to have the most basic structure-a microprocessor (CPU), a memory (ROM, RAM), an input/output interface (I/O), an analog-to-digital converter (a/D), a large-scale integrated circuit such as a shaping circuit and a driving circuit. It is also well recognized in appearance-there is a control element in the engine electronic fuel injection system, which is the ECU, shaped like a square box. The periphery of the element is provided with a plurality of fine slots for connecting a plurality of input and output circuits, the input and output circuits and other electronic control elements form a brain nerve central system of the automobile, various input data (such as braking, gear shifting and the like) and various running states (acceleration, slipping, oil consumption and the like) of the automobile are monitored at any time, information sent by various sensors is calculated according to a pre-designed program, and after processing, various parameters are sent to various relevant execution mechanisms to execute various preset control functions.
The vehicle-mounted terminal 102 respectively acquires version information of each ECU through the CAN bus and sends the version information to the server;
in an alternative embodiment, the product form of the vehicle-mounted terminal 102 may be a vehicle-mounted T-BOX (referred to as telematics BOX) product. The vehicle-mounted T-BOX is mainly used for communicating with a background system/mobile phone APP, and vehicle information display and control of the mobile phone APP are achieved.
Each ECU in the system has information such as supplier number, part number, software version number and the like, and after the vehicle is ignited, the T-BOX and the background start to carry out version synchronization: firstly, the T-BOX requests version information stored in a server side from a server, after the feedback of the server is received, information such as serial numbers, part numbers, software version numbers and the like of various ECU suppliers are read through a whole CAN network, and in order to facilitate comparison, the T-BOX generates UUID (Universal Unique Identifier) from all ECU version information through an encryption algorithm and returns the UUID to a background for comparison. The background server compares the differences of the ECUs with the latest version of software, determines which ECUs need to be upgraded and the version needing to be upgraded according to different vehicle types and different configurations, and pushes the configuration result to the T-BOX.
The server 101 compares the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded;
the server 101 determines an upgrade version corresponding to each ECU to be upgraded according to a preset rule;
the server 101 sends the upgrade version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal sends the corresponding upgrade versions to the corresponding ECUs to be upgraded through the CAN bus respectively;
and upgrading the ECU103 to be upgraded according to the corresponding upgrading version.
In one embodiment, before the ECU to be upgraded is upgraded according to the corresponding upgraded version,
the server also determines that the vehicle corresponding to the in-vehicle terminal is in a sleep state.
In one embodiment, before the vehicle-mounted terminal acquires version information of each ECU through the CAN bus and sends the version information to the server,
after the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus, the version information of each ECU is generated into a universal unique identifier UUID through a preset encryption algorithm, and the UUID is sent to the server.
The UUID allows all elements in the distributed system to have unique identification information without the need for the central control end to specify the identification information. The UUID is a 128-bit value that can be calculated by a certain algorithm. To improve efficiency, the commonly used UUID may be shortened to 16 bits. The UUID is used to identify the attribute type and is considered a unique identification in all spaces and times. In general, it is guaranteed that no UUID generated anywhere that this value is truly unique will have the same value. One benefit of using UUIDs is that new identifiers can be created for new services. Thus, a client, when looking for a service, need only indicate the UUID associated with a certain class of service (or a particular service) in its service lookup request, and return a response if the service provider can match the available service with this UUID.
In an optional embodiment, after the server sends the upgrade version corresponding to each ECU to be upgraded to the vehicle-mounted terminal T-BOX, the T-BOX receives the upgrade version, informs the corresponding vehicle display screen of prompting the user to download through a popup window, and downloads the installation package to the local by using a wireless network after the installation package is authorized by the user. In order to avoid errors in the file transmission process, the MD5 value of the file needs to be calculated after the downloading is completed, and the consistency with the MD5 value issued by the background is ensured.
In an alternative embodiment, after the vehicle is powered down and the entire vehicle enters a sleep state, the T-BOX wakes up the vehicle CAN network and unlocks the ECU components to be upgraded, and software refresh begins. Because the software package of most ECUs is smaller, the upgrade mode of a full package is adopted at present, the upgrade steps are simplified, and the stability is improved.
In an alternative embodiment, the user may be prompted for available updates before the upgrade is initiated, and after the user chooses to install, the user may be prompted to power down, lock the vehicle, and enter an installation waiting phase, at which point the user may terminate or suspend the upgrade plan at any time. The T-BOX will then wait a period of time to bring the vehicle to a sleep state and begin the refresh process, during which time use of the vehicle will be disabled and the user will be alerted that an upgrade is being made for safety. The refresh and upgrade referred to in the embodiments of the present disclosure are the same concept.
Fig. 2 is a flowchart of a firmware upgrading method provided by an embodiment of the present disclosure, where the method is applied to a firmware upgrading system provided by the above embodiment, where the system includes a server, a vehicle-mounted terminal, and at least one electronic control unit ECU, where the vehicle-mounted terminal and the at least one ECU are connected through a controller area network CAN bus, and the method includes:
step 201, the vehicle-mounted terminal respectively acquires version information of each ECU through a CAN bus and sends the version information to a server;
step 202, the server compares the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded;
optionally, step 202 includes:
selecting a current ECU, and determining version information of the current ECU;
and if the version information of the current ECU indicates that the version of the current ECU is lower than the locally stored version, determining that the current ECU is the ECU to be upgraded.
The process of step 202 needs to traverse all ECUs corresponding to the vehicle of the vehicle-mounted terminal, for example, the version information stored by the server includes version v3, version v4 and version v5, and if the ECU version is v1, v2, v3 or v4, it is determined that the ECU is the ECU to be upgraded.
Step 203, the server determines an upgrade version corresponding to each ECU to be upgraded according to a preset rule;
step 203 may comprise:
acquiring a vehicle model corresponding to the vehicle-mounted terminal;
determining an upgrading version corresponding to each ECU to be upgraded according to the vehicle model, the ECU version information and a preset corresponding relation table; the preset corresponding relation table stores the corresponding relation among the vehicle model, the ECU version information and the upgrade version.
Each vehicle type or vehicle model has different requirements for upgrading, for example, the vehicle type a may not need to be upgraded to the highest version, the ECU corresponding to the vehicle type a is set to be upgraded to v3, the ECU corresponding to the vehicle type B is upgraded to the highest version v5, and the ECU corresponding to the vehicle type C is upgraded to v4 in the preset relationship, and specifically, the correspondence table may be modified or maintained.
Step 204, the server sends the upgrade version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal sends the corresponding upgrade versions to the corresponding ECUs to be upgraded through the CAN bus respectively;
and step 205, upgrading the ECU to be upgraded according to the corresponding upgrading version.
In one embodiment, before the ECU to be upgraded is upgraded according to the corresponding upgrade version, the method further includes:
and determining that the vehicle corresponding to the vehicle-mounted terminal is in a dormant state.
In one embodiment, before the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus and sends the version information to the server, the method further includes:
after the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus, the version information of each ECU is generated into a universal unique identifier UUID through a preset encryption algorithm, and the UUID is sent to the server.
In one embodiment, the method further comprises:
and if the vehicle corresponding to the vehicle-mounted terminal is detected to be started in the ECU upgrading process, the vehicle is prohibited from being started and a user is reminded of upgrading.
Fig. 3 is a flowchart of a firmware upgrading method provided by an embodiment of the present disclosure, and is applied to a server, where the firmware upgrading method shown in fig. 3 includes:
301, acquiring version information of each ECU sent by the vehicle-mounted terminal, wherein the version information of each ECU is obtained by the vehicle-mounted terminal through a CAN bus;
step 302, comparing the version information of each ECU with locally stored version information respectively, and determining the ECU to be upgraded;
in one embodiment, step 302 specifically includes:
step 3021, selecting a current ECU, and determining version information of the current ECU;
and step 3022, if the version information of the current ECU indicates that the version of the current ECU is lower than the locally stored version, determining that the current ECU is the ECU to be upgraded.
Step 303, determining an upgrade version corresponding to each ECU to be upgraded according to a preset rule;
optionally, step 303 specifically includes:
3031, obtaining a vehicle model corresponding to the vehicle-mounted terminal;
3032, determining an upgrade version corresponding to each ECU to be upgraded according to the vehicle model, the ECU version information and a preset corresponding relation table; the preset corresponding relation table stores the corresponding relation among the vehicle model, the ECU version information and the upgrade version.
And step 304, sending the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and respectively sending the corresponding upgrading versions to the corresponding ECUs to be upgraded by the vehicle-mounted terminal through the CAN bus, so that the ECUs to be upgraded are upgraded according to the corresponding upgrading versions.
Fig. 4 is a block diagram of a server according to an embodiment of the present disclosure, where the server 40 shown in fig. 4 includes:
the acquiring module 401 is configured to acquire version information of each ECU sent by the vehicle-mounted terminal, where the version information of each ECU is obtained by the vehicle-mounted terminal through a CAN bus;
a comparison module 402, configured to compare the version information of each ECU with locally stored version information, and determine an ECU to be upgraded;
in one embodiment, the comparing module 402 specifically includes:
the selection submodule 4021 is used for selecting the current ECU and determining the version information of the current ECU;
the first determining sub-module 4022 is configured to determine that the current ECU is an ECU to be upgraded if the version information of the current ECU indicates that the version of the current ECU is lower than the locally stored version.
A determining module 403, configured to determine, according to a preset rule, an upgrade version corresponding to each ECU to be upgraded;
optionally, the determining module 403 includes:
an obtaining submodule 4031 for obtaining a vehicle model corresponding to the vehicle-mounted terminal;
a second determining submodule 4032, configured to determine, according to the vehicle model, the ECU version information, and a preset correspondence table, an upgrade version corresponding to each ECU to be upgraded; the preset corresponding relation table stores the corresponding relation among the vehicle model, the ECU version information and the upgrade version.
The sending module 404 is configured to send the upgrade version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal sends the corresponding upgrade version to the corresponding ECU to be upgraded through the CAN bus, so that the ECU to be upgraded is upgraded according to the corresponding upgrade version.
Fig. 5 is a structural diagram of a comparison module provided in an embodiment of the present disclosure, and the comparison module 402 shown in fig. 5 specifically includes:
the selection submodule 4021 is used for selecting the current ECU and determining the version information of the current ECU;
the obtaining sub-module 4022 is configured to determine that the current ECU is the ECU to be upgraded if the version information of the current ECU indicates that the version of the current ECU is lower than the version stored locally.
Fig. 6 is a structural diagram of a determining module provided in an embodiment of the present disclosure, where the determining module 403 shown in fig. 6 includes:
an obtaining submodule 4031 for obtaining a vehicle model corresponding to the vehicle-mounted terminal;
a determining submodule 4032 for determining an upgrade version corresponding to each ECU to be upgraded according to the vehicle model, the ECU version information, and a preset correspondence table; the preset corresponding relation table stores the corresponding relation among the vehicle model, the ECU version information and the upgrade version.
The firmware upgrading method, the server and the system provided by the embodiment of the disclosure can solve the problems of poor stability and long upgrading time of the whole firmware upgrading.
Based on the data processing method described in the embodiment corresponding to fig. 3, an embodiment of the present disclosure further provides a computer-readable storage medium, for example, the non-transitory computer-readable storage medium may be a Read Only Memory (ROM), a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like. The storage medium stores computer instructions for executing the firmware upgrading method described in the embodiment corresponding to fig. 3, which is not described herein again.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.

Claims (10)

1. A firmware upgrading method is applied to a firmware upgrading system and is characterized in that the system comprises a server, a vehicle-mounted terminal and at least one Electronic Control Unit (ECU), wherein the vehicle-mounted terminal and the at least one ECU are connected through a Controller Area Network (CAN) bus, and the method comprises the following steps:
the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus and sends the version information to the server;
the server compares the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded;
the server determines an upgrading version corresponding to each ECU to be upgraded according to a preset rule;
the server sends the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal sends the corresponding upgrading versions to the corresponding ECUs to be upgraded through the CAN bus respectively;
and the ECU to be upgraded is upgraded according to the corresponding upgrade version.
2. The method according to claim 1, wherein before the ECU to be upgraded is upgraded according to the corresponding upgrade version, the method further comprises:
and determining that the vehicle corresponding to the vehicle-mounted terminal is in a dormant state.
3. The method according to claim 1, wherein before the vehicle-mounted terminal acquires version information of each ECU through the CAN bus and sends the version information to the server, the method further comprises:
the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus, generates the version information of each ECU into a universal unique identifier UUID through a preset encryption algorithm, and sends the UUID to a server.
4. The method according to claim 1, wherein the server compares the version information of each ECU with locally stored version information, respectively, and determining the ECU to be upgraded comprises:
selecting a current ECU, and determining version information of the current ECU;
and if the version information of the current ECU indicates that the version of the current ECU is lower than the locally stored version, determining that the current ECU is the ECU to be upgraded.
5. The method according to claim 1, wherein the server determining, according to a preset rule, an upgrade version corresponding to each ECU to be upgraded comprises:
acquiring a vehicle model corresponding to the vehicle-mounted terminal;
determining an upgrading version corresponding to each ECU to be upgraded according to the vehicle model, the ECU version information and a preset corresponding relation table; the preset corresponding relation table stores the corresponding relation among the vehicle model, the ECU version information and the upgrade version.
6. The method according to any one of claims 1 to 5, further comprising:
and if the vehicle corresponding to the vehicle-mounted terminal is detected to be started in the ECU upgrading process, the vehicle is prohibited from being started and a user is reminded of upgrading.
7. A firmware upgrading method is applied to a server, and is characterized by comprising the following steps:
acquiring version information of each ECU sent by a vehicle-mounted terminal, wherein the version information of each ECU is obtained by the vehicle-mounted terminal through a CAN bus;
comparing the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded;
determining an upgrading version corresponding to each ECU to be upgraded according to a preset rule;
and sending the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and respectively sending the corresponding upgrading version to the corresponding ECU to be upgraded by the vehicle-mounted terminal through the CAN bus, so that the ECU to be upgraded is upgraded according to the corresponding upgrading version.
8. The method according to claim 7, wherein the comparing the version information of each ECU with locally stored version information, respectively, and the determining an ECU to be upgraded comprises:
selecting a current ECU, and determining version information of the current ECU;
and if the version information of the current ECU indicates that the version of the current ECU is lower than the locally stored version, determining that the current ECU is the ECU to be upgraded.
9. A server, characterized in that the server comprises:
the system comprises an acquisition module, a control module and a control module, wherein the acquisition module is used for acquiring the version information of each ECU (electronic control unit) sent by the vehicle-mounted terminal, and the version information of each ECU is acquired by the vehicle-mounted terminal through a CAN (controller area network) bus;
the comparison module is used for comparing the version information of each ECU with locally stored version information respectively and determining the ECU to be upgraded;
the determining module is used for determining the upgrading version corresponding to each ECU to be upgraded according to a preset rule;
and the sending module is used for sending the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal respectively sends the corresponding upgrading versions to the corresponding ECUs to be upgraded through the CAN bus, so that the ECUs to be upgraded are upgraded according to the corresponding upgrading versions.
10. A firmware upgrade system, characterized in that the system comprises a server, a vehicle-mounted terminal and at least one Electronic Control Unit (ECU), the vehicle-mounted terminal and the at least one ECU are connected through a Controller Area Network (CAN) bus, wherein,
the vehicle-mounted terminal respectively acquires the version information of each ECU through the CAN bus and sends the version information to the server;
the server compares the version information of each ECU with locally stored version information respectively to determine the ECU to be upgraded;
the server determines an upgrading version corresponding to each ECU to be upgraded according to a preset rule;
the server sends the upgrading version corresponding to each ECU to be upgraded to the vehicle-mounted terminal, and the vehicle-mounted terminal sends the corresponding upgrading versions to the corresponding ECUs to be upgraded through the CAN bus respectively;
and the ECU to be upgraded is upgraded according to the corresponding upgrade version.
CN202010428226.7A 2020-05-20 2020-05-20 Firmware upgrading method, server and system Pending CN111610993A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010428226.7A CN111610993A (en) 2020-05-20 2020-05-20 Firmware upgrading method, server and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010428226.7A CN111610993A (en) 2020-05-20 2020-05-20 Firmware upgrading method, server and system

Publications (1)

Publication Number Publication Date
CN111610993A true CN111610993A (en) 2020-09-01

Family

ID=72200754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010428226.7A Pending CN111610993A (en) 2020-05-20 2020-05-20 Firmware upgrading method, server and system

Country Status (1)

Country Link
CN (1) CN111610993A (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181456A (en) * 2020-09-24 2021-01-05 上海仙塔智能科技有限公司 Vehicle version management method, system and computer storage medium
CN112289431A (en) * 2020-09-30 2021-01-29 音数汇元(上海)智能科技有限公司 Home care terminal upgrading method and device, computer equipment and storage medium
CN112882734A (en) * 2021-03-11 2021-06-01 北京百度网讯科技有限公司 Upgrading method and device, computer equipment and medium
CN113010200A (en) * 2021-03-23 2021-06-22 深圳市元征科技股份有限公司 Flash method, flash system, flash device and server
CN113196230A (en) * 2021-03-24 2021-07-30 华为技术有限公司 Terminal upgrading method and device
CN114625400A (en) * 2020-12-14 2022-06-14 宝能汽车集团有限公司 Finished automobile OTA upgrading method and system, storage medium and automobile end upgrading device
CN114666323A (en) * 2022-03-23 2022-06-24 山推工程机械股份有限公司 Upgrading method, device and storage medium based on over-the-air technology OTA
CN114697358A (en) * 2022-02-28 2022-07-01 智马达汽车有限公司 Intelligent automobile FOTA upgrading system and method
CN115220959A (en) * 2022-05-25 2022-10-21 广州汽车集团股份有限公司 Data backup method and system and vehicle
CN115878160A (en) * 2023-03-08 2023-03-31 江铃汽车股份有限公司 ECU (electronic control Unit) upgrading method and system based on CAN (controller area network) communication

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130275956A1 (en) * 2012-04-17 2013-10-17 Hon Hai Precision Industry Co., Ltd. Firmware upgrade method and system and terminal device using the method
CN105045611A (en) * 2015-06-24 2015-11-11 深圳市兰丁科技有限公司 Upgrading method and apparatus
CN106682519A (en) * 2017-01-04 2017-05-17 重庆长安汽车股份有限公司 Method and system for remotely flashing vehicle controller program
CN107493186A (en) * 2016-12-23 2017-12-19 宝沃汽车(中国)有限公司 The remote update system and its control method of vehicle
CN109582340A (en) * 2018-12-07 2019-04-05 安徽江淮汽车集团股份有限公司 A kind of method and system of electric car remote upgrade
CN110377307A (en) * 2019-07-18 2019-10-25 上海擎感智能科技有限公司 A kind of car body controller firmware upgrade method, terminal, system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130275956A1 (en) * 2012-04-17 2013-10-17 Hon Hai Precision Industry Co., Ltd. Firmware upgrade method and system and terminal device using the method
CN105045611A (en) * 2015-06-24 2015-11-11 深圳市兰丁科技有限公司 Upgrading method and apparatus
CN107493186A (en) * 2016-12-23 2017-12-19 宝沃汽车(中国)有限公司 The remote update system and its control method of vehicle
CN106682519A (en) * 2017-01-04 2017-05-17 重庆长安汽车股份有限公司 Method and system for remotely flashing vehicle controller program
CN109582340A (en) * 2018-12-07 2019-04-05 安徽江淮汽车集团股份有限公司 A kind of method and system of electric car remote upgrade
CN110377307A (en) * 2019-07-18 2019-10-25 上海擎感智能科技有限公司 A kind of car body controller firmware upgrade method, terminal, system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
唐俊安;: "电动汽车FOTA固件远程升级系统开发策略" *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181456A (en) * 2020-09-24 2021-01-05 上海仙塔智能科技有限公司 Vehicle version management method, system and computer storage medium
CN112289431A (en) * 2020-09-30 2021-01-29 音数汇元(上海)智能科技有限公司 Home care terminal upgrading method and device, computer equipment and storage medium
CN114625400A (en) * 2020-12-14 2022-06-14 宝能汽车集团有限公司 Finished automobile OTA upgrading method and system, storage medium and automobile end upgrading device
CN112882734A (en) * 2021-03-11 2021-06-01 北京百度网讯科技有限公司 Upgrading method and device, computer equipment and medium
CN112882734B (en) * 2021-03-11 2024-04-16 北京百度网讯科技有限公司 Upgrading method and device, computer equipment and medium
CN113010200A (en) * 2021-03-23 2021-06-22 深圳市元征科技股份有限公司 Flash method, flash system, flash device and server
CN113196230A (en) * 2021-03-24 2021-07-30 华为技术有限公司 Terminal upgrading method and device
WO2022198527A1 (en) * 2021-03-24 2022-09-29 华为技术有限公司 Method and apparatus for upgrading terminal
CN114697358A (en) * 2022-02-28 2022-07-01 智马达汽车有限公司 Intelligent automobile FOTA upgrading system and method
CN114666323A (en) * 2022-03-23 2022-06-24 山推工程机械股份有限公司 Upgrading method, device and storage medium based on over-the-air technology OTA
CN115220959A (en) * 2022-05-25 2022-10-21 广州汽车集团股份有限公司 Data backup method and system and vehicle
CN115878160A (en) * 2023-03-08 2023-03-31 江铃汽车股份有限公司 ECU (electronic control Unit) upgrading method and system based on CAN (controller area network) communication

Similar Documents

Publication Publication Date Title
CN111610993A (en) Firmware upgrading method, server and system
US20190193653A1 (en) On-board update device and on-board update system
EP3933576A1 (en) Server, managing method, non-transitory storage medium, software updating device, center, and over-the-air master
CN111722860B (en) OTA upgrading method and device based on finite state machine
JP7225596B2 (en) Program update system, program update server and vehicle
CN112463190A (en) Vehicle upgrading method and device
JP7564082B2 (en) Software update method, program thereof, information terminal, system, and vehicle
CN106708988A (en) Urban rail transit electronic map sharing method and system
WO2021203604A1 (en) Update test method and apparatus for vehicle component, and computer device and storage medium
CN111273931B (en) Parallel upgrading method and device for vehicle-mounted traveling crane computers
CN113050601A (en) Vehicle offline diagnosis method and device, diagnosis equipment and storage medium
US20240069906A1 (en) Server, software update system, distribution method, and non-transitory storage medium
CN111527389A (en) Vehicle diagnosis method, vehicle diagnosis device and storage medium
US20220283799A1 (en) Center, update management method, and non-transitory storage medium
CN115291907A (en) Vehicle upgrading method, device and system
CN113268257A (en) Vehicle-mounted application upgrading system, method and computer storage medium
CN113849204A (en) Server, update management method, storage device, software update device, center and OTA host
US20230254374A1 (en) Vehicle master device, update data verification method and computer program product
CN115904447A (en) Version updating system, method, electronic equipment and storage medium
CN115469899A (en) Firmware upgrading method, device, equipment, medium and vehicle-mounted system
CN115397008A (en) OTA (over the air) registration method, device, equipment and medium of vehicle
CN113127257A (en) Software upgrading method
US11972248B2 (en) Controlling software update of electronic control units mounted on a vehicle
US20230033832A1 (en) System, center, method, and non-transitory storage medium
JP7484814B2 (en) Vehicle electronic control device and update program

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200901

RJ01 Rejection of invention patent application after publication