CN111610993A - Firmware upgrading method, server and system - Google Patents
Firmware upgrading method, server and system Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000008569 process Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000009434 installation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller 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
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:
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 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.
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;
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.
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.
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)
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)
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 |
-
2020
- 2020-05-20 CN CN202010428226.7A patent/CN111610993A/en active Pending
Patent Citations (6)
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)
Title |
---|
唐俊安;: "电动汽车FOTA固件远程升级系统开发策略" * |
Cited By (12)
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 |