CN114268614A - Equipment firmware upgrading method, device and system - Google Patents

Equipment firmware upgrading method, device and system Download PDF

Info

Publication number
CN114268614A
CN114268614A CN202010965586.0A CN202010965586A CN114268614A CN 114268614 A CN114268614 A CN 114268614A CN 202010965586 A CN202010965586 A CN 202010965586A CN 114268614 A CN114268614 A CN 114268614A
Authority
CN
China
Prior art keywords
firmware
data
wireless module
server
memory
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
CN202010965586.0A
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.)
Panasonic Appliances China Co Ltd
Original Assignee
Panasonic Appliances China 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 Panasonic Appliances China Co Ltd filed Critical Panasonic Appliances China Co Ltd
Priority to CN202010965586.0A priority Critical patent/CN114268614A/en
Publication of CN114268614A publication Critical patent/CN114268614A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

The specification provides a method, a device and a system for upgrading equipment firmware. The method comprises the steps of sending a firmware data downloading request to a server based on a wireless module; receiving firmware updating data sent by the server; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module; updating the firmware by using the firmware updating data; and when the firmware upgrading by using the firmware updating data fails, recovering the firmware by using the firmware standby data. By using the embodiment of the specification, the failure rate of firmware upgrading can be reduced when a new function is added to the equipment, and the user experience is improved.

Description

Equipment firmware upgrading method, device and system
Technical Field
The present application relates to the field of firmware upgrade technologies, and in particular, to a method, an apparatus, and a system for upgrading a device firmware.
Background
With the development of science and technology, electrical equipment is also continuously updated. However, in the actual development process, it is difficult to complete the functions of the device at one time. In order to solve the problem that the system updating and function iteration of the software of the electrical equipment can be carried out after the equipment leaves the factory, an Over-the-Air Technology (OTA) related Technology is developed. OTA is a technology for remotely managing data and firmware programs of a device over the air interface of mobile communication.
At present, when the firmware is upgraded by using OTA, the old firmware is usually stored in one area of a ROM (Read Only Memory) of the electrical equipment, and the downloaded new firmware is stored in another area of the ROM of the electrical equipment. Therefore, when the upgrade with the new firmware fails, the firmware can be used for recovery. However, this method has a very high requirement on the ROM capacity of the electrical device, and is liable to cause failure of firmware upgrade when a new function is added, thereby staying in the original version all the time.
Therefore, there is a need for a solution to the above technical problems.
Disclosure of Invention
The embodiment of the specification provides a method, a device and a system for upgrading equipment firmware, which can reduce the failure rate of firmware upgrading when a new function is added and improve the user experience.
The method, the device and the system for upgrading the equipment firmware provided by the specification are realized in the following modes.
A device firmware upgrade method, comprising: sending a firmware data downloading request to a server based on the wireless module; receiving firmware updating data sent by the server; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module; updating the firmware by using the firmware updating data; and when the firmware upgrading by using the firmware updating data fails, recovering the firmware by using the firmware standby data.
A device firmware upgrade method, comprising: receiving a firmware data downloading request sent by target equipment based on a wireless module; sending firmware updating data to the target equipment so that the target equipment can carry out firmware upgrading by using the firmware updating data; when the firmware upgrading by using the firmware updating data fails, the target device is enabled to recover the firmware by using the firmware standby data; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module.
An apparatus firmware upgrade device, comprising: the first sending module is used for sending a firmware data downloading request to the server based on the wireless module; the first receiving module is used for receiving firmware updating data sent by the server; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module; the first upgrading module is used for upgrading the firmware by using the firmware updating data; and the first recovery module is used for recovering the firmware by using the firmware standby data under the condition that the firmware upgrading by using the firmware updating data fails.
An apparatus firmware upgrade device, comprising: the second receiving module is used for receiving a firmware data downloading request sent by the target equipment based on the wireless module; the second sending module is used for sending firmware updating data to the target equipment so that the target equipment can perform firmware upgrading by using the firmware updating data; when the firmware upgrading by using the firmware updating data fails, the target device is enabled to recover the firmware by using the firmware standby data; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module.
A device firmware upgrade system comprising at least one processor and a memory storing computer executable instructions that when executed by the processor implement the steps of any one of the method embodiments of the present specification.
The specification provides a method, a device and a system for upgrading equipment firmware. In some embodiments, when the device needs to perform firmware upgrade, the update data and the standby data corresponding to the firmware are stored in the memory of the wireless module, so that not only can the firmware be recovered when the upgrade fails, but also the ROM capacity requirement of the device can be reduced, thereby reducing the upgrade failure rate when a new function is added, and improving the user experience. Before storing the firmware data in the memory of the wireless module, the target device verifies the firmware data, so that the safety of data transmission can be ensured, and further, the successful upgrading of subsequent firmware can be ensured. The target device can improve the success rate of firmware upgrade through checking again before acquiring the firmware update data from the memory of the wireless module for firmware upgrade. By adopting the implementation scheme provided by the specification, the failure rate of firmware upgrading can be reduced when a new function is added, and the user experience is improved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the specification, are incorporated in and constitute a part of this specification, and are not intended to limit the specification. In the drawings:
FIG. 1 is a schematic diagram of a scenario of an embodiment of a device firmware upgrade provided in the present specification;
fig. 2 is a schematic flowchart of an embodiment of a method for upgrading device firmware applied to a target device provided in this specification;
FIG. 3 is a flowchart illustrating an embodiment of a method for upgrading firmware of a device on a server side according to the present disclosure;
FIG. 4 is a schematic diagram of a flash space distribution provided in the present specification;
fig. 5 is a flowchart illustrating an embodiment of a method for upgrading a device firmware provided in the present specification;
FIG. 6 is a block diagram of an embodiment of an apparatus firmware upgrade device provided in the present specification;
FIG. 7 is a block diagram illustrating an embodiment of an apparatus firmware upgrade device provided in the present specification;
fig. 8 is a block diagram of a hardware configuration of an embodiment of a device firmware upgrade server provided in the present specification.
Detailed Description
In order to make those skilled in the art better understand the technical solutions in the present specification, the technical solutions in the embodiments of the present specification will be clearly and completely described below with reference to the drawings in the embodiments of the present specification, and it is obvious that the described embodiments are only a part of the embodiments in the present specification, and not all of the embodiments. All other embodiments that can be obtained by a person skilled in the art on the basis of one or more embodiments of the present description without inventive step shall fall within the scope of protection of the embodiments of the present description.
One embodiment provided by the present description may be applied to a system architecture of a target device/server. The target device may be a device that needs firmware upgrade, such as a refrigerator, a microwave oven, or a mobile phone. The target device can be in communication connection with a remote server based on a wireless module, and data transmission with the server is achieved. The target device may include a component for controlling firmware upgrade or recovery, and the component may control firmware upgrade or recovery in a specified area. The designated area may be the ROM area. The wireless module can be a Wi-Fi module and the like. The wireless module can be arranged in the target device or arranged outside the target device. The server may include a single computer device, or a server cluster composed of a plurality of servers, or a server structure of a distributed system, such as a CA (Certificate Authority) server, an OTA server, and the like. The server and the target device in the present specification include different information processors logically divided. The wireless module may also perform logical processing of data.
As shown in fig. 1, fig. 1 is a schematic view of a scenario of an embodiment of a device firmware upgrade provided in this specification. Firmware information corresponding to the device may be stored in the server in advance, and the firmware information may include firmware version information and firmware data. The firmware version information may include a firmware version number, information corresponding to the firmware version number, and the like. The firmware data may also be referred to as OTA data. The firmware data may include firmware update data, firmware backup data, a firmware package size, a preset check value corresponding to the firmware package, and the like. The firmware update data may include a firmware update ROM file and the firmware backup data may include a firmware backup ROM file. The firmware update ROM file may also be referred to as an update firmware package and the firmware spare ROM file may also be referred to as a spare firmware package. Different devices can be identified through the device identifiers, and the device identifiers and corresponding firmware information can be associated and bound in advance. Wherein the identification of the target device may be composed of one or more of characters, numbers, letters, etc. The firmware refers to a device driver stored in the device, and through the firmware, the operating system can implement the operation of a specific machine according to a standard device driver, for example, the optical disc drive and the recorder have internal firmware. In a hardware device, firmware may determine the functionality and performance of the hardware device. The ROM file may be understood as a firmware package. The firmware package may be used to update and restore the basic functionality of the device.
In some implementation scenarios, the server may include a CA server and an OTA server, where the CA server may be configured to store firmware version information, a firmware packet size, a preset check value corresponding to the firmware packet, and the like, and may also be configured to perform data transmission and interaction with the wireless module, and perform data transmission and interaction with the target device based on the wireless module. The OTA server can be used to store firmware update data, firmware backup data, and the like. The memory of the wireless module may include a memory area for storing firmware update data and a memory area for storing firmware spare data.
In some embodiments of the present description, before the firmware upgrade is performed, the version detection may be performed, and then it may be determined whether to perform the firmware upgrade based on a result of the version detection.
In some implementation scenarios, the version detection may be performed by the mobile terminal initiating a version detection request to the server, or by the target device initiating a version detection request to the server based on the wireless module. The mobile terminal and/or the target device may initiate the version detection request based on a manual operation, or may automatically initiate the version detection request based on a preset scanning mechanism, which is not limited in this specification. The preset scanning mechanism may be a preset time for sending the version detection request to the server, for example, it may be set that the version detection request is sent to the server at 8 pm every saturday, or it may be set that the version detection request is sent to the server at 20 pm 8 every month, and the like. The mobile terminal may include, among other things, an application for controlling the target device to implement certain functions. The mobile terminal can be a mobile phone, a computer, a remote controller and the like. For example, the target device is an air conditioner, and the mobile terminal may be an air conditioner remote controller, or may be a mobile phone, where an air conditioner APP (Application) is installed on the mobile phone.
In some implementation scenarios, after receiving the version detection request, the server may compare the current firmware version information of the target device with the target firmware version information, and then return the version detection result to the mobile terminal and/or the target device. The mobile terminal and/or the target device may present the version detection result to the user so that the user may determine whether to perform a firmware upgrade. The target firmware version information may be latest firmware version information or other firmware version information.
In some implementation scenarios, if the version detection result displayed by the mobile terminal is that the current firmware version is not the latest firmware version or is not the target firmware version, the user may send a firmware update request to the server by operating the mobile terminal, and then the server sends the firmware update request to the target device through the wireless module, and after receiving the firmware update request, the target device may send a firmware data download request to the server based on the wireless module.
In some implementation scenarios, if the version detection result shown by the target device indicates that the current firmware version is the latest firmware version or the target firmware version, the target device may not perform the next operation. If the version detection result shown by the target device is that the current firmware version is not the latest firmware version or not the target firmware version, the target device can send a firmware data downloading request to the server based on the wireless module. The firmware data downloading request may indicate a request for downloading firmware data for subsequent firmware upgrade. The firmware data downloading request can be attached with an identifier of the target device, so that after the firmware data downloading request is received by the server, the firmware information corresponding to the device can be obtained based on the identifier of the target device and then fed back to the target device, and after the firmware data is received by the target device, the firmware updating data and the firmware standby data can be stored in the memory of the wireless module.
In some implementations, the target device may perform a firmware upgrade using the firmware update data after storing the firmware update data and the firmware backup data in the memory of the wireless module. When updating data fails using firmware update, firmware recovery may be performed using firmware backup data.
In some implementation scenarios, the target device may verify the firmware update data and the firmware backup data by using a preset verification algorithm before storing the firmware update data and the firmware backup data in the memory of the wireless module. In some implementation scenarios, the target device may check the firmware update data again before acquiring the firmware update data from the memory of the wireless module for firmware upgrade, thereby improving the success rate of firmware upgrade.
It should be noted that, when the target device performs firmware upgrade by using the firmware update data, the target device may update the original firmware in the ROM field by using the firmware update data. When the target device uses the firmware backup data to recover the firmware, the target device needs to use the firmware backup data to cover the original firmware in the ROM field for recovery. The ram (random Access memory) field of the target device is a random Access memory, which is used for temporarily storing various data generated when the device is operated, and the ram (random Access memory) field loses its storage content when the power is off. The ROM field is read-only memory, which is a solid-state semiconductor memory that can only read out data stored in advance, and can only read out, and cannot be modified and deleted at will.
In this embodiment of the present description, when a device needs to perform firmware upgrade, it may be determined whether the firmware upgrade needs to be performed by detecting firmware version information, so as to improve subsequent firmware upgrade success rate. By storing the updating data and the standby data corresponding to the firmware in the memory of the wireless module, the firmware can be recovered when the upgrade fails, and the ROM capacity requirement of the equipment can be reduced, so that the firmware upgrade failure rate is reduced when new functions are added, and the user experience is improved.
The above embodiments describe embodiments of a device firmware upgrade method from the perspective of target device/server interaction. Based on the above description of the embodiments, the present specification further provides a device firmware upgrading method applicable to a target device side. Fig. 2 is a flowchart illustrating an embodiment of a method for upgrading device firmware applied to a target device according to the present disclosure. Although the present specification provides the method steps or apparatus structures as shown in the following examples or figures, more or less steps or modules may be included in the method or apparatus structures based on conventional or non-inventive efforts.
It should be noted that the following description of the embodiments does not limit the technical solutions in other extensible application scenarios based on the present specification. In an embodiment of a method for upgrading device firmware, as shown in fig. 2, the method may include the following steps.
S10: and sending a firmware data downloading request to the server based on the wireless module.
In this embodiment, the target device may send a firmware data download request to the server based on the wireless module. The target device may include a device that needs firmware update or addition function, such as a refrigerator, a washing machine, a microwave oven, a mobile phone, a computer, and the like. The target device may include a component for controlling firmware upgrade or recovery, and the component may control firmware upgrade or recovery in a designated area. The designated area may be the ROM area. The wireless module may be a Wi-Fi module.
In some embodiments of the present description, the memory of the wireless module may include a memory area for storing firmware update data and a memory area for storing firmware backup data. In some implementations, the memory of the wireless module may include two flash sides, one flash side for storing firmware update data, such as firmware update ROM files, and the other flash side for storing firmware backup data, such as firmware backup ROM files. Wherein the flash belongs to one of the memories. flash memory is a non-volatile memory that can hold data for a long time without current supply, and has storage characteristics equivalent to a hard disk. In some implementation scenarios, the wireless module may be disposed in the target device or outside the target device. The target device may communicate with the server, data transfer, etc. based on the wireless module. It should be noted that the memory of the wireless module may also include more flash.
In some implementation scenarios, the server may store firmware information corresponding to different devices in advance. In this way, the target device may attach the identifier of the target device to the firmware data download request sent to the server by the wireless module, so that after receiving the request, the server may find the firmware information corresponding to the target device based on the identifier included in the request. Wherein the identification of the target device may be composed of one or more of characters, numbers, letters, etc. The firmware information may include firmware version information and firmware data. The firmware version information may include a firmware version number, information corresponding to the firmware version number, and the like. The firmware data may also be referred to as OTA data. The firmware data may include firmware update data, firmware backup data, a firmware package size, a preset check value corresponding to the firmware package, and the like. The firmware update data may include a firmware update ROM file and the firmware backup data may include a firmware backup ROM file. The firmware update ROM file may also be referred to as an update firmware package and the firmware spare ROM file may also be referred to as a spare firmware package. In some implementation scenarios, different devices may be identified by the device identifier, and the device identifier and corresponding firmware information may be associated and bound in advance.
In some implementation scenarios, the server may store firmware information corresponding to the same device in advance. In this way, the target device does not need to be accompanied by the identification of the target device in the firmware data download request sent to the server based on the wireless module.
In some implementation scenarios, the server may divide the firmware packet corresponding to the device in the firmware data in advance to obtain slice data, encrypt the slice data to obtain encrypted slice data, and finally store the encrypted slice data as firmware update data or firmware backup data.
In some embodiments of the present description, before the target device sends the firmware data download request to the server based on the wireless module, the method may include: sending a version detection request to the server based on the wireless module; receiving a version detection result fed back by the server; and determining whether to send a firmware data downloading request to the server or not according to the version detection result. The version detection result may be used to indicate whether the current firmware version information of the target device is the target firmware version information. The target firmware version information may be latest firmware version information or other firmware version information. The version detection result may include that the current firmware version is the target firmware version and that the current firmware version is not the target firmware version.
For example, in some implementation scenarios, before firmware upgrade is performed, the target device may send a version detection request to the server based on the wireless module, and after the server receives the version detection request, the server may detect whether the current firmware version information is consistent with information corresponding to the latest version number in the firmware version information pre-stored in the server, and send the version detection result to the target device based on the wireless module. After receiving the version detection result, the target device may determine whether to send a firmware data download request to the server based on the wireless module based on the version detection result. In some implementation scenarios, the target device may display the version detection result after receiving the version detection result.
In some implementation scenarios, when the target device receives the version detection result that the current firmware version is the latest firmware version, it indicates that the target device does not need to perform firmware upgrade, and at this time, the target device may not send a firmware data download request to the server. In some implementation scenarios, when the target device receives the version detection result that the current firmware version is not the latest firmware version, the target device may send a firmware data download request to the server based on the wireless module.
In some implementation scenarios, after the server receives the version detection request sent by the target device and detects whether the current firmware version information of the target device is consistent with the information corresponding to the latest version number in the firmware version information pre-stored in the server, the server may send the version detection result to the mobile terminal, so that the mobile terminal displays the version detection result. If the version detection result displayed by the mobile terminal is that the current firmware version is not the latest version, the mobile terminal is operated to send a firmware updating request to the server, then the server sends the firmware updating request to the target equipment through the wireless module, and the target equipment can send a firmware data downloading request to the server after receiving the firmware updating request. The mobile terminal may include, among other things, an application for controlling the target device to implement certain functions. The mobile terminal can be a mobile phone, a computer, a remote controller and the like. For example, the target device is an air conditioner, the mobile terminal may be an air conditioner remote controller, or may be a mobile phone, where the mobile phone is installed with an air conditioner APP.
It should be noted that the version check request received by the server may also be sent by the mobile terminal. Correspondingly, the version detection result can be sent to the mobile terminal for displaying, and also can be sent to the target device for displaying. The foregoing is merely exemplary and is not intended to limit other embodiments of the present disclosure.
In some implementation scenarios, the target device and/or the mobile terminal may send the version detection request to the server based on a preset scanning mechanism. The preset scanning mechanism may be a preset time for sending the version detection request to the server, for example, it may be set that the version detection request is sent to the server at 8 pm every saturday, or it may be set that the version detection request is sent to the server at 20 pm 8 every month, and the like.
S12: receiving firmware updating data sent by the server; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module.
In this embodiment, after the target device sends a firmware data download request to the server based on the wireless module, the server may send firmware update data in response to the firmware data download request.
In some implementation scenarios, since the server may store the firmware information corresponding to the device in advance, the server may feed back the firmware data to the target device after receiving the firmware data downloading request.
In some embodiments of the present description, the memory of the wireless module may store firmware backup data in advance, or receive the firmware backup data sent by the server in the process of receiving the firmware update data sent by the server, and then store the firmware backup data in the memory of the wireless module. Thus, after receiving the firmware data downloading request, the server can feed back part of or all of the information included in the firmware data to the target device. The firmware standby data can be a firmware package used by the target device before firmware is upgraded; or, the firmware backup data may be a default firmware package when the target device leaves a factory; wherein the firmware package may be used to maintain basic functionality of the target device.
In some implementations, the memory of the wireless module has firmware backup data pre-stored therein. In this way, the server may feed back the firmware update data included in the firmware data to the target device, or may feed back the firmware update data and the preset check value corresponding to the firmware packet to the target device, and the like. The target device, upon receipt, may store the firmware update data in a memory of the wireless module. For example, in some implementation scenarios, the target device has already performed firmware upgrade before sending the firmware data download request of this time, the memory of the wireless module may store in advance firmware update data during the last firmware upgrade, and at this time, the last firmware update data may be stored in advance in the memory of the wireless module as the firmware backup data of this time, so that when receiving the firmware update data of this time, it is not necessary to receive the firmware backup data.
In some implementation scenarios, the target device receives the firmware backup data sent by the server during the process of receiving the firmware update data sent by the server, and then stores the firmware backup data in the memory of the wireless module. In this way, the server may feed back the preset verification value corresponding to the firmware update data, the firmware backup data, and the firmware package included in the firmware data to the target device. The target device, upon receipt, may store the firmware update data and the firmware backup data in a memory of the wireless module. For example, in some implementation scenarios, if the target device has not performed firmware upgrade before sending a firmware data download request to the server based on the wireless module, for example, a device just before factory shipment, the server may feed back preset check values corresponding to the firmware update data, the firmware backup data, and the firmware package to the target device, so that the target device stores the firmware update data and the firmware backup data in a memory of the wireless module.
In this embodiment of the present description, after receiving, by the target device, the firmware update data and/or the firmware backup data sent by the server based on the wireless module, the firmware update data and/or the firmware backup data are stored in the memory of the wireless module, so that the requirement on the ROM capacity of the target device can be effectively reduced without changing the hardware facility of the target device.
In some embodiments of the present description, before the target device stores the firmware update data and/or the firmware backup data in the memory of the wireless module, the firmware update data and/or the firmware backup data included in the firmware data may be verified. The main body for verifying the firmware update data and/or the firmware backup data included in the firmware data may be a wireless module or a target device. The wireless module may perform logical processing of data.
In some implementation scenarios, after the target device receives the firmware data sent by the server based on the wireless module, the target device may verify firmware update data and/or firmware backup data included in the firmware data, and store the firmware update data and/or firmware backup data in the memory of the wireless module after the verification is passed.
In some implementation scenarios, the target device may calculate a check value corresponding to the firmware update data and/or the firmware backup data by using a preset check algorithm, then compare the calculated check value with the received corresponding preset check value, and store the firmware update data and/or the firmware backup data when the comparison result is consistent. It can be understood that, when the comparison result is consistent, it can be stated that the firmware update data and/or the firmware backup data received by the target device are the corresponding firmware update data and/or the firmware backup data sent by the server, so that data security can be ensured. The preset checking algorithm may include a checksum algorithm, and the like. It should be noted that the verification algorithm includes, but is not limited to, the above-described algorithm. The checksum algorithm may be used in the field of data processing and data communications to check the sum of items of data, which may be numbers or other strings of characters that are treated as numbers in calculating the checksum.
In some implementation scenarios, when the server feeds back the firmware data to the target device, the firmware update data and/or the firmware backup data in the firmware data may be divided into a plurality of sub-packets to be sent, when the target device receives each sub-packet, the cyclic redundancy check may be used to perform verification, after the verification of each sub-packet is completed, the checksum algorithm may be used to perform verification on the whole firmware update data and/or the firmware backup data, and when the verification passes, the firmware update data and/or the firmware backup data are stored. Thus, through double verification, data safety can be guaranteed, and the upgrading success rate of subsequent firmware is improved. Cyclic Redundancy Check (CRC) is a channel coding technique that generates a short fixed-bit Check code according to data such as a network data packet or a computer file, and is mainly used to detect or Check errors that may occur after data transmission or storage. It should be noted that the target device may receive one sub-package for verification, verify another sub-package after verification is passed, directly verify all the sub-packages, and verify the whole sub-package. And if the target equipment determines that a certain sub-packet does not pass the verification, the target equipment can send the information of the failure of the firmware data downloading to the server.
In some implementation scenarios, since the firmware update data and/or the firmware backup data may be a firmware packet formed by one or more encrypted slice data, when the server feeds back the firmware data to the target device, the target device may decrypt the encrypted slice data included in the firmware update data and/or the firmware backup data in the firmware data to obtain decrypted firmware update data and/or decrypted firmware backup data, then calculate a check value corresponding to the decrypted firmware update data and/or decrypted firmware backup data by using a preset check algorithm, compare the calculated check value with the corresponding preset check value, and store the decrypted firmware update data and/or decrypted firmware backup data when the comparison result is consistent. It should be noted that, if the firmware update data and/or the firmware backup data sent by the server are firmware packets formed by one or more pieces of encrypted slice data, the encrypted firmware update data and/or the encrypted firmware backup data may also be directly stored in the memory of the wireless module.
In some implementation scenarios, in the process of receiving the firmware data sent by the server based on the wireless module, the target device may first verify the firmware update data and/or the firmware backup data included in the firmware data based on the wireless module, after the verification is passed, the wireless module sends the firmware data to the target device, the target device performs the verification again, and after the verification of the target device is passed, the firmware update data and/or the firmware backup data are stored in the memory of the wireless module. The specific checking method may be described with reference to the above embodiments, which are not described in detail.
It should be understood that the above description is only exemplary, and the verification method is not limited to the above examples, and other modifications are possible for those skilled in the art in light of the technical spirit of the present application, and the present application is intended to cover all the modifications that are within the scope of the present application as long as the functions and effects achieved by the present application are the same or similar to the present application.
In some implementation scenarios, the target device may establish different trusted flags for different receiving statuses during the process of receiving the firmware data sent by the server based on the wireless module. The different reception states may include not received, start reception, receiving in progress, receiving completed, etc. The corresponding non-reception trusted flag may be "non-start", the corresponding reception start trusted flag may be "start", the corresponding trusted flag during reception may be "receiving in progress", and the corresponding trusted flag after reception is completed may be "reception complete". Therefore, the receiving state can be conveniently judged when the system is started next time, and the processing efficiency is improved. For example, if power is off during reception, the flag is "reception in progress", and it is known that reception is not completed after the next start-up, so that reception can be continued.
S14: and upgrading the firmware by using the firmware updating data.
In this embodiment, after the target device stores the firmware update data and/or the firmware backup data in the memory of the wireless module, the target device may perform firmware upgrade using the firmware update data.
In some embodiments of the present specification, before the firmware is upgraded by using the firmware update data, the method may include: calculating a first check value of the firmware updating data by using a preset check algorithm; judging whether the first check value is consistent with a preset check value or not; and when the consistency is determined, updating the firmware by using the firmware updating data. In some implementation scenarios, the determining whether the first check value is consistent with a preset check value may further include: and when the firmware backup data are determined to be inconsistent, performing firmware recovery by using the firmware backup data.
For example, in some implementation scenarios, before firmware upgrade is performed, firmware update data may be acquired from a memory of the wireless module, a check value of the firmware update data is calculated by using a checksum algorithm, and then it is determined whether the calculated check value is consistent with a preset check value, and when it is determined that the calculated check value is consistent with the preset check value, firmware upgrade is performed by using the firmware update data. In some implementations, when the inconsistency is determined, the firmware backup data may be retrieved from the memory of the wireless module and utilized for firmware recovery.
In some implementation scenarios, if the encrypted firmware update data and/or the encrypted firmware backup data are stored in the memory of the wireless module, that is, the firmware update data sent by the target device receiving server is encrypted slice data, before performing firmware upgrade using the firmware update data, the method may include: decrypting the firmware update data; calculating a second check value of the decrypted firmware update data by using a preset check algorithm; judging whether the second check value is consistent with a preset check value or not; and when the consistency is determined, updating the firmware by using the decrypted firmware updating data. The preset check value is sent to the target equipment by the server responding to the firmware data downloading request; or, the preset check value is obtained by calculating the firmware update data by the wireless module by using a preset check algorithm. The encrypted slice data is generated by encrypting the firmware packet after the firmware packet is divided into slice data. The specific checking method may be described with reference to the above embodiments, which are not described in detail herein.
In some implementation scenarios, before firmware upgrade is performed on a target device, firmware update data may be acquired from a memory of a wireless module in a packet mode, when each packet is acquired, cyclic redundancy check may be performed first, after each packet is checked, check may be performed on the entire firmware update data by using a checksum algorithm, and when the check passes, firmware upgrade is performed by using the firmware update data.
In this embodiment, when firmware is upgraded by using the firmware update data, it is possible to provide a guarantee for subsequently improving the firmware upgrade success rate by further checking.
S16: and when the firmware upgrading by using the firmware updating data fails, recovering the firmware by using the firmware standby data.
In this embodiment, in the case where the firmware upgrade using the firmware update data fails, the firmware can be recovered using the firmware backup data.
In some implementation scenarios, if the target device obtains the firmware update data from the memory of the wireless module in the form of the packetized data, and a verification error occurs during the verification of the obtained packetized data by the target device, at this time, the target device may directly obtain the firmware backup data from the memory of the wireless module, so as to perform firmware recovery by using the firmware backup data.
In some implementations, in the event of a failure to upgrade the firmware with the firmware update data, the firmware backup data may be retrieved from the memory of the wireless module and then used for firmware recovery. The method for acquiring the firmware backup data from the memory of the wireless module may be an integral acquisition method or a packet acquisition method. The target device may also perform corresponding verification according to different ways of obtaining the firmware backup data, which may specifically refer to the verification way in the foregoing embodiment, and details of which are not described here.
In some implementation scenarios, if the target device obtains the firmware backup data from the memory of the wireless module in the form of packets, and the target device has a verification error during verification of each received packet, at this time, the target device may send a firmware recovery failure message to the server through the wireless module, so that the server resends the firmware recovery data.
In some embodiments of this specification, after the target device performs firmware upgrade or firmware recovery, the method may further include: and sending a firmware upgrading result and/or a firmware recovering result to the mobile terminal based on the wireless module so that the mobile terminal displays the firmware upgrading result and/or the firmware recovering result.
In some implementations, the target device may include a display, so that after the target device performs a firmware upgrade or a firmware recovery, the firmware upgrade result and/or the firmware recovery result may be displayed on the target device.
In some implementation scenarios, the method may further include: after the target device performs firmware upgrade or firmware recovery, the target device may receive a firmware status query request sent by the mobile terminal based on the wireless module, and then return a firmware upgrade result and/or a firmware recovery result. Wherein the firmware status query request may represent an indication that the firmware processing results are to be queried. The firmware processing result may include a firmware upgrade result, a firmware recovery result. The firmware upgrade result may include upgrade success and upgrade failure, and the firmware recovery result may include recovery success and recovery failure.
Based on the above description of the embodiments, the present specification further provides a device firmware upgrading method that can be applied to the server side. Fig. 3 is a schematic flowchart of an embodiment of a method for upgrading firmware of a device on the server side according to the present disclosure, as shown in fig. 3. The method may include the following steps.
S30: receiving a firmware data downloading request sent by target equipment based on a wireless module;
s32: sending firmware updating data to the target equipment so that the target equipment can carry out firmware upgrading by using the firmware updating data; when the firmware upgrading by using the firmware updating data fails, the target device is enabled to recover the firmware by using the firmware standby data; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module.
In some implementation scenarios, the server may include a CA server and an OTA server, where the CA server may be configured to store firmware version information, a firmware packet size, a preset check value corresponding to the firmware packet, and the like, and may also be configured to perform data transmission and interaction with the wireless module, and perform data transmission and interaction with the target device based on the wireless module. The OTA server can be used to store firmware update data, firmware backup data, and the like. The memory of the wireless module may include a memory area for storing firmware update data and a memory area for storing firmware spare data. Specifically, the memory of the wireless module may include two flash memories, one flash memory for storing firmware update data, and the other flash memory for storing firmware backup data. It should be noted that the memory of the wireless module may also include more flash.
In some implementation scenarios, the wireless module may be a 8710BN +2MB flash module. 8710BN denotes the model number. The firmware data fed back by the server may be stored in the external flash, and the firmware data is spatially distributed on the flash as shown in fig. 4. The flash can comprise Boot, Sytem Data, APP1, APP2, User Data and RDP partitions. Wherein, the data in the Boot partition cannot be modified, and occupies about 36KB (0x08009000-0x08000000 ═ 36 KB); the Sytem Data partition can be used to store some configuration parameters at Boot startup, accounting for about 8K (0x0800B000-0x08009000 ═ 8K); APP1 and APP2 are partitions of the application (named OTA1 and OTA2 in the writers) that run only the system and module driven minimal common board firmware, about 400 KB; the size of the User Data and RDP (remote desktop protocol) partitions can be set according to the application needs. In some implementation scenarios, the User Data and RDP partitions may not be used, leaving all partitions for the application's partition use. Where 0x08009000, 0x08000000, 0x0800B000, and 0x08009000 denote physical addresses stored in a flash.
It should be noted that, a general flash module product can perform OTA network upgrade in a dual backup manner, so that a space with the same size as that of the application firmware needs to be reserved as a cache region to store downloaded network data. Such as: the current application firmware is: 600KB, OTA2 must also be allocated as 600KB for OTA upgrade use. If the Wi-Fi module has no network upgrade requirements, then 1.9M space is fully available as application firmware space.
In some implementation scenarios, before the server receives the firmware data download request sent by the target device based on the wireless module, the method may further include: receiving a version detection request sent by target equipment based on a wireless module; comparing the current firmware version information of the target equipment with the target firmware version information to obtain a version detection result; and feeding back the version detection result. The target firmware version information may be latest firmware version information or other firmware version information.
In some implementation scenarios, before the server sends the firmware update data to the target device, the method may further include: dividing the firmware packet to obtain slice data; encrypting the slice data to obtain encrypted slice data; and taking the encrypted slice data as firmware updating data. Specifically, in some implementation scenarios, before the server sends the firmware update data to the target device, the firmware packet may be divided into a plurality of slices, each slice is encrypted to obtain a plurality of encrypted slices corresponding to the firmware packet, and finally, the plurality of encrypted slices corresponding to the firmware packet are used as the firmware update data. In some implementation scenarios, encrypting each slice to obtain a plurality of encrypted slices corresponding to the firmware package may include: and distributing a number for each slice, adding a ciphertext into each slice, and generating an encrypted slice based on the number, the slice and the ciphertext. The ciphertext added for each slice may be generated according to the slice parameters. The ciphertext lengths corresponding to different slices may be the same or different.
In the present specification, each embodiment of the method is described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. Reference is made to the description of the method embodiments.
As shown in fig. 5, fig. 5 is a flowchart illustrating a specific embodiment of a method for upgrading a device firmware provided in this specification. The CA server may be configured to store firmware version information, a size of the firmware packet, a preset check value corresponding to the firmware packet, and the like, and may be further configured to perform data transmission and interaction with the wireless module, and perform data transmission and interaction with the target device based on the wireless module. The OTA server can be used to store ROM files and the like corresponding to the firmware. The wireless module may include a two-sided flash, one side of the flash for storing firmware update ROM files and the other side of the flash for storing firmware backup ROM files. The method may include the following steps.
S40: the intelligent APP sends a version detection request to the CA server; the version detection request comprises the current firmware version information of the body corresponding to the intelligent APP;
wherein, intelligence APP can be used for the control body to realize some functions. The body may be a refrigerator, a microwave oven, or the like.
S41: the CA server compares the current firmware version information with pre-stored firmware version information and returns a version detection result to the intelligent APP;
s42: the intelligent APP displays the version detection result;
s43: the intelligent APP sends a firmware updating request to the CA server based on the version detection result;
s44: the CA server sends the firmware updating request to the wireless module;
s45: the wireless module sends a request for downloading OTA data to the CA server and the OTA server based on the firmware updating request;
s46: the CA server sends the firmware version information, the size of the firmware packet and a preset check value corresponding to the firmware packet to the wireless module, and the OTA server sends the ROM file to the wireless module;
s47: the wireless module calculates a check value of the ROM file by using a checksum algorithm and compares the check value with a preset check value;
s48: when the comparison result is consistent, the wireless module stores the OTA data and sends a firmware updating instruction to the body;
s49: after receiving the firmware updating indication, the body sends an OTA data downloading request to the wireless module;
s50: after receiving the OTA data downloading request, the wireless module sends a corresponding firmware updating ROM file and a corresponding preset check value to the body;
s51: after the body receives the firmware updating ROM file and the corresponding preset check value, the check value of the firmware updating ROM file is calculated by using a checksum algorithm and is compared with the preset check value, and when the comparison result is consistent, the body updates the firmware by using the firmware updating ROM file.
When the body fails to update the firmware by using the firmware update ROM file, the body can send firmware update failure information to the wireless module, and after the wireless module receives the firmware update failure information, the wireless module can send the corresponding firmware standby ROM file to the target equipment so that the target equipment can recover the firmware by using the firmware standby ROM file.
In some implementation scenarios, sending the version check request to the CA server may also be ontology based radio-initiated.
In some implementation scenarios, after the firmware is upgraded or restored, the firmware upgrading result and/or the firmware restoring result may be sent to the intelligent APP based on the wireless module, so that the intelligent APP displays the firmware upgrading result and/or the firmware restoring result.
In some implementation scenarios, the ontology may also include a display, so that after the ontology performs firmware upgrade or firmware recovery, the firmware upgrade result and/or the firmware recovery result may be displayed on the ontology.
In some implementation scenarios, after the firmware is upgraded or restored, the body may receive a firmware state query request sent by the smart APP based on the wireless module, and then return a firmware upgrade result and/or a firmware restoration result to the smart APP.
In the present specification, each embodiment of the method is described in a progressive manner, and the same and similar parts in each embodiment may be joined together, and each embodiment focuses on the differences from the other embodiments. Reference is made to the description of the method embodiments.
From the above description, it can be seen that the embodiments of the present application can achieve the following technical effects: when the equipment needs to be upgraded, the updating data and the standby data corresponding to the firmware are stored in the memory of the wireless module, so that the firmware can be recovered when the upgrading fails, the ROM capacity requirement of the equipment can be reduced, the upgrading failure rate is reduced when new functions are added, and the user experience is improved. Before storing the firmware data in the memory of the wireless module, the target device verifies the firmware data, so that the safety of data transmission can be ensured, and the guarantee is provided for the successful update of the subsequent firmware. The target device can improve the success rate of firmware upgrade through checking again before acquiring the firmware update data from the memory of the wireless module for firmware upgrade.
Based on the above method for upgrading the device firmware, one or more embodiments of the present specification further provide a device firmware upgrading apparatus. The apparatus may include systems (including distributed systems), software (applications), modules, components, servers, clients, etc. that use the methods described in the embodiments of the present specification in conjunction with any necessary apparatus to implement the hardware. Based on the same innovative conception, embodiments of the present specification provide an apparatus as described in the following embodiments. Since the implementation scheme of the apparatus for solving the problem is similar to that of the method, the specific implementation of the apparatus in the embodiment of the present specification may refer to the implementation of the foregoing method, and repeated details are not repeated. As used hereinafter, the term "unit" or "module" may be a combination of software and/or hardware that implements a predetermined function. Although the means described in the embodiments below are preferably implemented in software, an implementation in hardware, or a combination of software and hardware is also possible and contemplated.
Specifically, fig. 6 is a schematic block diagram of an embodiment of an apparatus firmware upgrading apparatus provided in this specification, and as shown in fig. 6, an apparatus firmware upgrading apparatus provided in this specification may include: a first sending module 120, a first receiving module 122, a first upgrading module 124, and a first restoring module 126.
A first sending module 120, configured to send a firmware data download request to a server based on a wireless module;
a first receiving module 122, configured to receive firmware update data sent by the server; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module;
a first upgrade module 124, which may be used to perform firmware upgrade using the firmware update data;
the first recovery module 126 may be configured to perform firmware recovery using the firmware backup data when the firmware upgrade using the firmware update data fails.
Fig. 7 is a schematic block diagram of an embodiment of an apparatus firmware upgrading apparatus provided in this specification, and as shown in fig. 7, an apparatus firmware upgrading apparatus provided in this specification may include: a second receiving module 210 and a second sending module 212.
A second receiving module 210, configured to receive a firmware data download request sent by the target device based on the wireless module;
a second sending module 212, configured to send firmware update data to the target device, so that the target device performs firmware upgrade using the firmware update data; when the firmware upgrading by using the firmware updating data fails, the target device is enabled to recover the firmware by using the firmware standby data; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module.
It should be noted that the above-mentioned description of the apparatus according to the method embodiment may also include other embodiments, and specific implementation manners may refer to the description of the related method embodiment, which is not described herein again.
The present specification also provides an embodiment of a device firmware upgrade system, including at least one processor and a memory storing computer-executable instructions, where the processor executes the instructions to implement the steps of the method described in any one or more of the above embodiments, for example, including: sending a firmware data downloading request to a server based on the wireless module; receiving firmware updating data sent by the server; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module; updating the firmware by using the firmware updating data; and when the firmware upgrading by using the firmware updating data fails, recovering the firmware by using the firmware standby data. The system may be a single server, or may include a server cluster, a system (including a distributed system), software (applications), an actual operating device, a logic gate device, a quantum computer, etc. using one or more of the methods or one or more of the example devices of the present specification, in combination with a terminal device implementing hardware as necessary.
The method embodiments provided in the present specification may be executed in a mobile terminal, a computer terminal, a server or a similar computing device. Taking an example of the device firmware upgrading apparatus running on a server, fig. 8 is a block diagram of a hardware structure of an embodiment of a device firmware upgrading server provided in this specification, where the server may be the device firmware upgrading apparatus or the device firmware upgrading system in the above embodiment. As shown in fig. 8, the server 10 may include one or more (only one shown) processors 100 (the processors 100 may include, but are not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 200 for storing data, and a transmission module 300 for communication functions. It will be understood by those skilled in the art that the structure shown in fig. 8 is only an illustration and is not intended to limit the structure of the electronic device. For example, the server 10 may also include more or fewer components than shown in FIG. 8, and may also include other processing hardware, such as a database or multi-level cache, a GPU, or have a different configuration than shown in FIG. 8, for example.
The memory 200 may be used to store software programs and modules of application software, such as program instructions/modules corresponding to the device firmware upgrade method in the embodiments of the present specification, and the processor 100 executes various functional applications and data processing by executing the software programs and modules stored in the memory 200. Memory 200 may include high speed random access memory and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, memory 200 may further include memory located remotely from processor 100, which may be connected to a computer terminal through a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission module 300 is used for receiving or transmitting data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the computer terminal. In one example, the transmission module 300 includes a Network adapter (NIC) that can be connected to other Network devices through a base station so as to communicate with the internet. In one example, the transmission module 300 may be a Radio Frequency (RF) module, which is used for communicating with the internet in a wireless manner.
The method or apparatus provided by the present specification and described in the foregoing embodiments may implement service logic through a computer program and record the service logic on a storage medium, where the storage medium may be read and executed by a computer, so as to implement the effect of the solution described in the embodiments of the present specification. The storage medium may include a physical device for storing information, and typically, the information is digitized and then stored using an electrical, magnetic, or optical media. The storage medium may include: devices that store information using electrical energy, such as various types of memory, e.g., RAM, ROM, etc.; devices that store information using magnetic energy, such as hard disks, floppy disks, tapes, core memories, bubble memories, and usb disks; devices that store information optically, such as CDs or DVDs. Of course, there are other ways of storing media that can be read, such as quantum memory, graphene memory, and so forth.
The embodiment of the method or the apparatus for upgrading the device firmware provided in this specification may be implemented in a computer by executing corresponding program instructions by a processor, for example, implemented in a PC end using a c + + language of a windows operating system, implemented in a linux system, or implemented in an intelligent terminal using android, iOS system programming languages, implemented in processing logic based on a quantum computer, or the like.
It should be noted that descriptions of the apparatus and the system described above according to the related method embodiments may also include other embodiments, and specific implementation manners may refer to descriptions of corresponding method embodiments, which are not described in detail herein.
The embodiments in the present application are described in a progressive manner, and the same and similar parts among the embodiments can be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the hardware + program class embodiment, since it is substantially similar to the method embodiment, the description is simple, and the relevant points can be referred to the partial description of the method embodiment.
For convenience of description, the above devices are described as being divided into various modules by functions, and are described separately. Of course, when implementing one or more of the present description, the functions of some modules may be implemented in one or more software and/or hardware, or the modules implementing the same functions may be implemented by a plurality of sub-modules or sub-units, etc.
The present invention has been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus, systems according to embodiments of the invention. It will be understood that the implementation can be by computer program instructions which can be provided to a processor of a general purpose computer, special purpose computer, embedded processor or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified. These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to one skilled in the art that in some cases the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
As will be appreciated by one skilled in the art, one or more embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, one or more embodiments of the present description may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects.
The above description is merely exemplary of one or more embodiments of the present disclosure and is not intended to limit the scope of one or more embodiments of the present disclosure. Various modifications and alterations to one or more embodiments described herein will be apparent to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims.

Claims (19)

1. A method for upgrading device firmware, comprising:
sending a firmware data downloading request to a server based on the wireless module;
receiving firmware updating data sent by the server; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module;
updating the firmware by using the firmware updating data;
and when the firmware upgrading by using the firmware updating data fails, recovering the firmware by using the firmware standby data.
2. The method according to claim 1, wherein during the receiving of the firmware update data sent by the server, the method further comprises:
receiving firmware standby data sent by the server;
storing the firmware backup data in a memory of the wireless module.
3. The method of claim 1, wherein before sending the firmware data download request to the server based on the wireless module, the method comprises:
sending a version detection request to the server based on the wireless module;
receiving a version detection result fed back by the server; the version detection result is used for indicating whether the current firmware version information of the target equipment is the target firmware version information; the target firmware version information is latest firmware version information or other firmware version information;
and determining whether to send a firmware data downloading request to the server or not according to the version detection result.
4. The method of claim 1, wherein the memory of the wireless module comprises a memory area for storing firmware update data and a memory area for storing firmware backup data.
5. The method of claim 1, wherein the firmware backup data is pre-stored in a memory of the wireless module; or, the firmware backup data is stored in the memory of the wireless module after the server responds to the firmware data downloading request and sends the firmware data downloading request to the target device.
6. The method of claim 5, wherein the firmware backup data is a firmware package used by the target device before the firmware is upgraded; or the firmware standby data is a default firmware package when the target device leaves a factory; wherein the firmware package is used to maintain basic functions of the target device.
7. The method of claim 1, wherein before the firmware upgrade using the firmware update data, the method comprises:
calculating a first check value of the firmware updating data by using a preset check algorithm;
judging whether the first check value is consistent with a preset check value or not;
and when the consistency is determined, updating the firmware by using the firmware updating data.
8. The method of claim 7, wherein the determining whether the first check value is consistent with a preset check value further comprises:
and when the firmware backup data are determined to be inconsistent, performing firmware recovery by using the firmware backup data.
9. The method according to claim 1, wherein the receiving the firmware update data sent by the server is encrypted slice data; the encrypted slice data is generated by encrypting after dividing the firmware package into slice data;
correspondingly, before the firmware is upgraded by using the firmware update data, the method includes:
decrypting the firmware update data;
calculating a second check value of the decrypted firmware update data by using a preset check algorithm;
judging whether the second check value is consistent with a preset check value or not;
and when the consistency is determined, updating the firmware by using the decrypted firmware updating data.
10. The method according to any one of claims 7 to 9, wherein the preset check value is that the server sends the firmware data download request to a target device; or, the preset check value is obtained by calculating the firmware update data by the wireless module by using a preset check algorithm.
11. The method of claim 1, further comprising:
and sending a firmware upgrading result and/or a firmware recovering result to the mobile terminal based on the wireless module so that the mobile terminal displays the firmware upgrading result and/or the firmware recovering result.
12. The method of claim 11, further comprising:
receiving a firmware state query request sent by the mobile terminal;
and returning the firmware upgrading result and/or the firmware recovering result.
13. A method for upgrading device firmware, comprising:
receiving a firmware data downloading request sent by target equipment based on a wireless module;
sending firmware updating data to the target equipment so that the target equipment can carry out firmware upgrading by using the firmware updating data; when the firmware upgrading by using the firmware updating data fails, the target device is enabled to recover the firmware by using the firmware standby data; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module.
14. The method of claim 13, wherein before receiving the firmware data download request sent by the target device based on the wireless module, the method comprises:
receiving a version detection request sent by target equipment based on a wireless module;
comparing the current firmware version information of the target equipment with the target firmware version information to obtain a version detection result;
and feeding back the version detection result.
15. The method of claim 14, wherein the target firmware version information is latest firmware version information or other firmware version information.
16. The method of claim 13, wherein before sending the firmware update data to the target device, the method comprises:
dividing the firmware packet to obtain slice data;
encrypting the slice data to obtain encrypted slice data;
and taking the encrypted slice data as firmware updating data.
17. An apparatus for upgrading firmware of a device, comprising:
the first sending module is used for sending a firmware data downloading request to the server based on the wireless module;
the first receiving module is used for receiving firmware updating data sent by the server; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module;
the first upgrading module is used for upgrading the firmware by using the firmware updating data;
and the first recovery module is used for recovering the firmware by using the firmware standby data under the condition that the firmware upgrading by using the firmware updating data fails.
18. An apparatus for upgrading firmware of a device, comprising:
the second receiving module is used for receiving a firmware data downloading request sent by the target equipment based on the wireless module;
the second sending module is used for sending firmware updating data to the target equipment so that the target equipment can perform firmware upgrading by using the firmware updating data; when the firmware upgrading by using the firmware updating data fails, the target device is enabled to recover the firmware by using the firmware standby data; wherein the firmware update data is stored in a memory of the wireless module; firmware standby data is also stored in the memory of the wireless module.
19. A device firmware upgrade system comprising at least one processor and a memory storing computer executable instructions which, when executed by the processor, implement the steps of the method of any one of claims 1 to 16.
CN202010965586.0A 2020-09-15 2020-09-15 Equipment firmware upgrading method, device and system Pending CN114268614A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010965586.0A CN114268614A (en) 2020-09-15 2020-09-15 Equipment firmware upgrading method, device and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010965586.0A CN114268614A (en) 2020-09-15 2020-09-15 Equipment firmware upgrading method, device and system

Publications (1)

Publication Number Publication Date
CN114268614A true CN114268614A (en) 2022-04-01

Family

ID=80824115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010965586.0A Pending CN114268614A (en) 2020-09-15 2020-09-15 Equipment firmware upgrading method, device and system

Country Status (1)

Country Link
CN (1) CN114268614A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115113904A (en) * 2022-08-29 2022-09-27 成都星联芯通科技有限公司 Firmware upgrading processing method and device, electronic equipment and storage medium
CN116382745A (en) * 2023-06-06 2023-07-04 飞天诚信科技股份有限公司 Firmware loading upgrading method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150082297A1 (en) * 2013-09-17 2015-03-19 Blackberry Corporation Updating firmware on mobile devices
CN105511929A (en) * 2015-12-31 2016-04-20 青岛高校信息产业股份有限公司 Remote wireless upgrading method for equipment
CN106557339A (en) * 2015-09-28 2017-04-05 腾讯科技(深圳)有限公司 The upgrade method and device of equipment firmware
CN109067894A (en) * 2018-08-23 2018-12-21 广东汇泰龙科技有限公司 A kind of method, the system of the online upgrading based on cloud lock system and key reduction
CN111258599A (en) * 2018-12-03 2020-06-09 中国电信股份有限公司 Firmware upgrade method, system and computer readable storage medium
CN111552502A (en) * 2020-04-21 2020-08-18 海尔优家智能科技(北京)有限公司 NB module upgrading method and device of intelligent equipment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150082297A1 (en) * 2013-09-17 2015-03-19 Blackberry Corporation Updating firmware on mobile devices
CN106557339A (en) * 2015-09-28 2017-04-05 腾讯科技(深圳)有限公司 The upgrade method and device of equipment firmware
CN105511929A (en) * 2015-12-31 2016-04-20 青岛高校信息产业股份有限公司 Remote wireless upgrading method for equipment
CN109067894A (en) * 2018-08-23 2018-12-21 广东汇泰龙科技有限公司 A kind of method, the system of the online upgrading based on cloud lock system and key reduction
CN111258599A (en) * 2018-12-03 2020-06-09 中国电信股份有限公司 Firmware upgrade method, system and computer readable storage medium
CN111552502A (en) * 2020-04-21 2020-08-18 海尔优家智能科技(北京)有限公司 NB module upgrading method and device of intelligent equipment

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115113904A (en) * 2022-08-29 2022-09-27 成都星联芯通科技有限公司 Firmware upgrading processing method and device, electronic equipment and storage medium
CN116382745A (en) * 2023-06-06 2023-07-04 飞天诚信科技股份有限公司 Firmware loading upgrading method and device
CN116382745B (en) * 2023-06-06 2023-09-19 飞天诚信科技股份有限公司 Firmware loading upgrading method and device

Similar Documents

Publication Publication Date Title
US10715335B2 (en) Methods and apparatus to provide for efficient and secure software updates
KR101299099B1 (en) Apparatus and method for management of optimized virtualization module in embedded system
US9436456B2 (en) System and method for management of software updates at a vehicle computing system
CN106325929B (en) Firmware upgrading method, firmware upgrading device, refrigerator and server
CN112486554A (en) Vehicle-mounted networking terminal software upgrading method
CN110471692B (en) Over-the-air upgrading method, device, equipment and storage medium of terminal program
CN106130808A (en) A kind of method and system of WIFI device upgrade
CN114268614A (en) Equipment firmware upgrading method, device and system
CN104166564A (en) Display terminal program updating method
CN109857385B (en) Application program file packaging method, installation method and starting method
JP2020142565A (en) On-vehicle update device, update processing program and method of updating program
CN114780127A (en) Embedded equipment firmware updating method, embedded equipment and development end equipment
CN110493644B (en) Television application upgrading method, television terminal and server
CN114153484A (en) Operation method and device for updating program, electronic device and storage medium
CN111399894B (en) Smart card, smart card operating system upgrading method and smart card operating system upgrading system
CN117707578A (en) Beacon firmware upgrading method, device and system
KR102573950B1 (en) Method and Apparatus for Remotely Updating Satellite Devices
CN113885907A (en) Firmware upgrading system and method
CN112653729A (en) Sharing upgrading method and device for Internet of things terminal, Internet of things terminal and medium
CN113708920A (en) Method and equipment for carrying out safe start based on redundant cryptographic algorithm
CN114780122A (en) Embedded equipment firmware updating method and embedded equipment
CN114281379A (en) Software updating method and device based on OTA, equipment terminal, server terminal and storage medium
CN115220755A (en) Router online upgrading system based on credibility measurement
CN115244534A (en) Information processing apparatus and program startup method
CN114143197A (en) OTA (over the air) upgrading method, device and equipment of Internet of things equipment and readable storage medium

Legal Events

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