Control method of electronic equipment, electronic equipment and cloud server
By setting up a firmware virtual storage area in the memory of electronic devices and independently storing the current version and new version of firmware, the problem of low efficiency of firmware upgrade testing in the existing technology is solved, and faster firmware switching and upgrade testing is achieved.
Patent Information
- Application Number
- CN202311076227.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-24
- Publication Date
- 2025-02-28
AI Technical Summary
The existing technology is less efficient in firmware upgrade testing of electronic devices such as home appliances and other electronic devices, and requires repeated backup and uninstallation of firmware, resulting in inefficient testing.
By setting up a firmware virtual storage area in the memory of the electronic device, and storing the current version of the firmware and the new version of the firmware independently, users can directly switch versions through the firmware switching instructions, without backup and uninstallation.
It realizes that directly switch to the target version of firmware without backing up and uninstalling the current version of firmware, thereby improving the firmware upgrade test efficiency of electronic devices.
Smart Images

Figure CN119537089A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of electronic equipment, and in particular to a control method for electronic equipment, an electronic equipment and a cloud server. Background Art
[0002] With the rapid development of science and technology, there are more and more intelligent home appliances and other electronic devices. In order to improve the performance and user experience of home appliances and other electronic devices, manufacturers or service providers of home appliances and other electronic devices will regularly or irregularly upgrade the firmware of home appliances and other electronic devices.
[0003] In order to ensure that electronic devices such as home appliances can be upgraded normally and that the functions after the upgrade can be used normally, manufacturers or service providers of electronic devices such as home appliances need to repeatedly upgrade the firmware of electronic devices such as home appliances before releasing a new version of firmware, so as to avoid that the firmware of electronic devices such as home appliances cannot be upgraded after the new version of firmware is released or that electronic devices such as home appliances cannot be used normally after the firmware is upgraded, thereby affecting the user experience.
[0004] However, in the actual upgrade test process, most manufacturers or service providers of electronic devices such as home appliances need to repeatedly back up and uninstall the firmware, which results in low upgrade test efficiency. Therefore, how to improve the efficiency of firmware upgrade tests for electronic devices such as home appliances has become a technical problem that needs to be solved urgently. Summary of the invention
[0005] The present application provides a control method of an electronic device, an electronic device and a cloud server, which are used to improve the efficiency of firmware upgrade testing of the electronic device.
[0006] In order to achieve the above objectives, this application adopts the following technical solutions.
[0007] In a first aspect, an embodiment of the present application provides an electronic device, comprising: a memory; the memory comprising a firmware loading area for storing a current version of firmware; a firmware virtual storage area provided in the firmware loading area for storing at least one new version of firmware; a controller, configured to: obtain a firmware switching instruction from a user; wherein the firmware switching instruction comprises information of a target version of firmware; the target version of firmware is one of at least one new version of firmware stored in the firmware virtual storage area; and in response to the firmware switching instruction, switch the current version of firmware to the target version of firmware.
[0008] The technical solution provided by the embodiment of the present application brings at least the following beneficial effects: the electronic device provided by the present application, the firmware virtual storage area of its memory is used to store at least one new version of firmware, and the firmware loading area is used to store the current version of firmware. Since the new version of firmware and the current version of firmware are independently stored in different areas of the storage area, after obtaining the user's firmware switching instruction, the current version of firmware can be directly switched to the target version of firmware without backing up or uninstalling the current version of firmware. In addition, since the firmware virtual storage area is set in the firmware loading area as a virtual memory, the firmware switching instruction can be responded to more quickly. In this way, in the case of upgrading the firmware of the electronic device, the current version of firmware can be switched to the target version of firmware in response to the user's firmware switching instruction, so as to upgrade and test each new version of firmware of the electronic device, which can improve the efficiency of the firmware upgrade test of the electronic device.
[0009] In some embodiments, before the controller is configured to obtain the user's firmware switching instruction, the controller is also configured to: obtain at least one new version of firmware in response to the user's firmware upgrade instruction; partition the firmware virtual storage area according to the number of new versions of firmware to obtain at least one firmware virtual storage sub-area; based on the correspondence between at least one new version of firmware and at least one firmware virtual storage sub-area, store at least one new version of firmware in the corresponding firmware virtual storage sub-area.
[0010] In some embodiments, the memory also includes a firmware cache area; before the controller is configured to partition the firmware virtual storage area according to the number of new versions of firmware to obtain at least one firmware virtual storage sub-area, the controller is also configured to: store at least one new version of firmware in the firmware cache area.
[0011] In some embodiments, each new version of at least one new version of firmware includes a self-test program, which is used to detect whether each new version of firmware has an abnormality; before the controller is configured to obtain the user's firmware switching instruction, the controller is also configured to: detect each new version of firmware through the self-test program to obtain a detection result; the detection result includes that the new version of firmware is normal or the new version of firmware is abnormal; in the case where the detection result is that the new version of firmware is abnormal, the new version of firmware with the detection result of the new version of firmware being abnormal is re-acquired, and the re-acquired new version of firmware is detected through the self-test program.
[0012] In some embodiments, the electronic device is connected to a cloud server; the controller is further configured to: when the detection result is that the new version of the firmware is normal, send a detection result that the new version of the firmware is normal to the cloud server.
[0013] In a second aspect, an embodiment of the present application provides a cloud server, which is connected to a terminal device and an electronic device respectively; the cloud server includes: a communicator, through which the cloud server is connected to the terminal device and the electronic device respectively; a controller, configured to: receive a user's firmware switching instruction sent by the terminal device; wherein the firmware switching instruction is used to instruct the electronic device to switch the current version of firmware to the target version of firmware; the target version of firmware is one of at least one new version of firmware stored in the firmware virtual storage area of the memory of the electronic device; the current version of firmware is stored in the firmware loading area of the memory of the electronic device; and the user's firmware switching instruction is sent to the electronic device.
[0014] In some embodiments, before the controller is configured to receive a user's firmware switching instruction sent by a terminal device, the controller is also configured to: receive a new version firmware application sent by an electronic device; and send at least one new version firmware to the electronic device based on the new version firmware application.
[0015] In a third aspect, an embodiment of the present application provides a control method for an electronic device, which is applied to the electronic device, and the method includes: obtaining a firmware switching instruction from a user; wherein the firmware switching instruction includes information of a target version firmware; the target version firmware is one of at least one new version firmware stored in the firmware virtual storage area; in response to the firmware switching instruction, switching the current version firmware to the target version firmware.
[0016] In a fourth aspect, an embodiment of the present application provides a control method for an electronic device, which is applied to a cloud server, and the method includes: obtaining a firmware switching instruction from a user; wherein the firmware switching instruction includes information of a target version of firmware; the target version of firmware is one of at least one new version of firmware stored in the firmware virtual storage area; in response to the firmware switching instruction, switching the current version of firmware to the target version of firmware.
[0017] In a fifth aspect, an embodiment of the present application provides a controller comprising: one or more processors; one or more memories; wherein the one or more memories are used to store computer program codes, the computer program codes include computer instructions, and when the one or more processors execute the computer instructions, the controller executes any one of the control methods of the electronic device provided in the second aspect.
[0018] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, which includes computer instructions. When the computer instructions are executed on a computer, the computer executes any one of the control methods for electronic devices provided in the second aspect.
[0019] In the seventh aspect, an embodiment of the present invention provides a computer program product, which can be directly loaded into a memory and contains software code. After being loaded and executed by a computer, the computer program product can implement a control method for any electronic device provided in the second aspect.
[0020] It should be noted that the above computer instructions may be stored in whole or in part on a computer-readable storage medium, wherein the computer-readable storage medium may be packaged together with the processor of the controller, or may be packaged separately from the processor of the controller, which is not limited in this application.
[0021] The beneficial effects described in the second to seventh aspects of the present application can be referred to the beneficial effect analysis of the first aspect and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] The accompanying drawings are used to provide a further understanding of the technical solution of the present invention and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present invention and do not constitute a limitation on the technical solution of the present invention.
[0023] Figure 1 A schematic diagram of an application scenario of a control method for an electronic device provided in an embodiment of the present application;
[0024] Figure 2 A schematic diagram of the interface of a terminal device smart APP provided in an embodiment of the present application;
[0025] Figure 3 A schematic diagram of the interface of another terminal device smart APP provided in an embodiment of the present application;
[0026] Figure 4 A schematic diagram of the interface of another terminal device smart APP provided in an embodiment of the present application;
[0027] Figure 5 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application;
[0028] Figure 6 A schematic diagram of the composition of a memory of an electronic device provided in an embodiment of the present application;
[0029] Figure 7 A schematic diagram of the hardware structure of a cloud server provided in an embodiment of the present application;
[0030] Figure 8 A flowchart of a control method of an electronic device provided in an embodiment of the present application;
[0031] Fig. 9 A schematic diagram of the circulation principle of an electronic device provided in an embodiment of the present application;
[0032] Fig.10 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application;
[0033] Fig.11 A flowchart of a control method of an electronic device provided in an embodiment of the present application;
[0034] Fig.12 A flowchart of another method for controlling an electronic device provided in an embodiment of the present application;
[0035] Fig.13 A schematic diagram of partitioning of a memory of an electronic device provided in an embodiment of the present application;
[0036] Fig.14 A schematic diagram of storage of a memory of an electronic device provided in an embodiment of the present application;
[0037] Fig.15 A flowchart of another method for controlling an electronic device provided in an embodiment of the present application;
[0038] Fig.16 A flowchart of another method for controlling an electronic device provided in an embodiment of the present application;
[0039] Fig.17 A flowchart of another method for controlling an electronic device provided in an embodiment of the present application;
[0040] Fig.18 A flowchart of another method for controlling an electronic device provided in an embodiment of the present application;
[0041] Fig.19 A flowchart of another method for controlling an electronic device provided in an embodiment of the present application;
[0042] Fig. 20 A flowchart of another method for controlling an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0043] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0044] It should be noted that all directional indications in the embodiments of the present invention (such as up, down, left, right, front, back, etc.) are only used to explain the relative position relationship, movement status, etc. between the components under a certain specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication will also change accordingly.
[0045] The terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of this application, unless otherwise specified, "plurality" means two or more.
[0046] In the description of this application, it should be noted that, unless otherwise clearly specified and limited, the terms "connected" and "connection" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances. In addition, when describing pipelines, the terms "connected" and "connection" used in this application have the meaning of conduction. The specific meaning needs to be understood in conjunction with the context.
[0047] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0048] In order to improve the efficiency of firmware upgrade testing of electronic devices such as home appliances, an embodiment of the present application provides a control method for electronic devices, storing at least one new version of firmware in a firmware virtual storage area of a memory, and storing the current version of firmware in a firmware loading area of the memory. Since the new version of firmware and the current version of firmware are independently stored in different areas of the storage area, after obtaining the user's firmware switching instruction, the current version of firmware can be directly switched to the target version of firmware without backing up or uninstalling the current version of firmware. In addition, since the firmware virtual storage area is set in the firmware loading area as a virtual memory, the firmware switching instruction can be responded to more quickly. In this way, when the firmware of an electronic device such as a home appliance is upgraded, the current version of firmware can be switched to the target version of firmware in response to the user's firmware switching instruction, so as to upgrade and test each new version of firmware of the electronic device such as the home appliance, thereby improving the efficiency of the firmware upgrade test of the electronic device such as the home appliance.
[0049] Figure 1Schematic diagram of an application scenario of a control method of an electronic device provided by the present application according to an exemplary embodiment. Figure 1 As shown, the application scenario 1 includes an electronic device 10, a cloud server 20 and a terminal device 30. The cloud server 20 is communicatively connected with the electronic device 10 and the terminal device 30 respectively.
[0050] The electronic device 10 is an embedded device, and the electronic device 10 may be a household appliance, for example, Figure 1 The electronic device 10 shown in the figure can be a household appliance such as a television, a washing machine, a refrigerator, etc. The electronic device 10 can also be a non-household appliance, such as a driving recorder, a router, etc. The specific form of the electronic device 10 is not particularly limited in this application.
[0051] The cloud server 20 may be a device with data processing capabilities and data storage capabilities. For example, the cloud server 20 is a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content distribution networks, and big data servers, or a server cluster composed of multiple servers. This application does not impose any special restrictions on the specific form of the cloud server 20.
[0052] The terminal device 30 can be a remote control, a mobile phone, a tablet computer, a personal computer (PC), a personal digital assistant (PDA), a smart watch, a netbook, a wearable electronic device, an augmented reality (AR) device, a virtual reality (VR) device, a robot, etc. Figure 1 The terminal device 30 shown in the figure is only an example of a terminal device, and the present application does not impose any special limitation on the specific form of the terminal device 30.
[0053] In some embodiments, a control application for controlling the electronic device 10 is installed on the terminal device 30, for example, a smart home appliance APP.
[0054] In some embodiments, when the electronic device 10 has a new version of firmware that can be upgraded, the cloud server 20 can send firmware upgrade information of the electronic device 10 to the terminal device 30 to issue a firmware upgrade reminder of the electronic device 10 to the user through the terminal device 10.
[0055] For example, the terminal device is a mobile phone and the electronic device is an indoor unit. Figure 2As shown, when the electronic device 10 has a new version of firmware that can be upgraded, after the cloud server sends the firmware upgrade information of the electronic device 10 to the terminal device 30, the smart home appliance APP on the terminal device will display a text reminder message of "New version found" on the indoor unit.
[0056] When the electronic device 10 does not have a new version of firmware that can be upgraded, the smart home appliance APP on the terminal device will display a text reminder message that the indoor unit "has the latest version".
[0057] In some embodiments, the terminal device 30 can send the user's firmware upgrade instructions to the electronic device 10 through the cloud server 20.
[0058] For example, Figure 3 As shown, taking the terminal device as a mobile phone and the electronic device as an indoor unit as an example, the smart home appliance APP on the terminal device is provided with a function button "Upgrade Now" for issuing a firmware upgrade instruction to the user. After the user triggers the function button "Upgrade Now", the terminal device 30 can issue the user's firmware upgrade instruction to the electronic device 10 through the cloud server 20.
[0059] Furthermore, the smart home appliance APP on the terminal device will display Figure 4 The display interface shown.
[0060] In some embodiments, after receiving the firmware upgrade instruction, the electronic device 10 can send a new version firmware application to the cloud server 20.
[0061] In some embodiments, after receiving the new version firmware application, the cloud server 20 sends the new version firmware to the electronic device 10 according to the new version firmware application.
[0062] In some embodiments, the electronic device 10 detects the new version of the firmware through a self-test program of the new version of the firmware. When the test result shows that the new version of the firmware is normal, the electronic device 10 sends a message indicating that the firmware upgrade is successful to the cloud server.
[0063] Furthermore, the terminal device 30 may send the user's firmware switching instruction to the electronic device 10 through the cloud server 20 .
[0064] Furthermore, after receiving the firmware switching instruction from the user, the electronic device 10 switches the current version of the firmware to the target version of the firmware included in the firmware switching instruction.
[0065] It should be noted that the electronic device 10 in the above application scenario 1 is other electronic devices except the terminal device.
[0066] In a possible implementation, if the electronic device 10 is a terminal device, the above-mentioned application scenario 1 only needs to include the electronic device 10 and the cloud server 20, and the above-mentioned interactive operation can be performed directly between the electronic device 10 and the cloud server 20.
[0067] Figure 5 FIG. 1 is a schematic diagram of the hardware structure of an electronic device provided by the present application according to an exemplary embodiment. Figure 5 As shown, the electronic device 10 includes a controller 11 , a memory 12 and a communicator 13 .
[0068] In the embodiment shown in the present application, the controller 11 refers to a device that can generate an operation control signal according to the instruction operation code and the timing signal to instruct the air conditioning system to execute the control instruction. Exemplarily, the controller can be a central processing unit (CPU), a general-purpose processor network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD) or any combination thereof. The controller can also be other devices with processing functions, such as circuits, devices or software modules, and the embodiments of the present application do not impose any restrictions on this.
[0069] In some embodiments, Figure 6 As shown, the memory 12 includes a firmware loading area 121, a firmware virtual storage area 122 set in the firmware loading area 121, a firmware boot loading area 123 and a firmware cache area 124. The memory 12 can be used to store software programs and data, including at least one new version of firmware of the electronic device, the current version of firmware and a firmware boot loader.
[0070] Among them, the firmware virtual storage area 122 is used to store at least one new version of firmware of the electronic device, the firmware loading area 121 is used to store the current version of firmware of the electronic device, the firmware boot loading area 123 is used to store the firmware boot loader, and the firmware cache area 124 is also used to store at least one new version of firmware of the electronic device.
[0071] In some embodiments, the controller 11 executes various functions and data processing of the electronic device 10 by running software programs or data stored in the memory 12. The memory 12 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage device. The memory 12 stores an operating system that enables the electronic device 10 to run. In the present application, the memory 12 may store an operating system and various application programs, and may also store code for executing the control method of the electronic device provided in the embodiment of the present application.
[0072] In some embodiments, the communicator 13 is used to establish a communication connection with other network entities, for example, to establish a communication connection with the cloud server 20. The communicator 13 may include a radio frequency (RF) module, a cellular module, a wireless fidelity (WIFI) module, and a GPS module. Taking the RF module as an example, the RF module can be used to receive and send signals, in particular, to send the received information to the controller 11 for processing; in addition, the signal generated by the controller 11 is sent out. Generally, the RF circuit may include but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (LNA), a duplexer, etc.
[0073] Those skilled in the art will understand that Figure 5 The structure shown in the figure does not constitute a limitation on the electronic device, and the electronic device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0074] Figure 7 The hardware structure diagram of a cloud server provided by the present application according to an exemplary embodiment is shown in FIG. Figure 7 As shown, the cloud server 20 includes a controller 21 , a memory 22 and a communicator 23 .
[0075] In some embodiments, the controller 21 can be a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present disclosure, such as: one or more digital signal processors (DSP), or one or more field programmable gate arrays (FPGA).
[0076] In some embodiments, the memory 22 can be used to store software programs and data, including at least one new version of firmware configured for the electronic device. The controller 21 executes various functions and data processing of the cloud server 20 by running the software programs or data stored in the memory 22. The memory 22 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage device. The memory 22 stores an operating system that enables the cloud server 20 to run. In the present application, the memory 22 can store an operating system and various application programs, and can also store code for executing the control method of the electronic device provided in the embodiment of the present application.
[0077] In some embodiments, the communicator 23 is used to establish a communication connection with other network entities, for example, to establish a communication connection with the terminal device 10. The communicator 23 may include a radio frequency (RF) module, a cellular module, a wireless fidelity (WIFI) module, and a GPS module. Taking the RF module as an example, the RF module can be used to receive and send signals, in particular, to send the received information to the controller 21 for processing; in addition, the signal generated by the controller 21 is sent out. Generally, the RF circuit may include but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (LNA), a duplexer, etc.
[0078] Those skilled in the art will understand that Figure 7 The structure shown in the figure does not constitute a limitation on the cloud server. The cloud server may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0079] The embodiments provided in this application are described in detail below in conjunction with the accompanying drawings.
[0080] like Figure 8 As shown, an embodiment of the present application provides a control method for an electronic device, the method comprising the following steps:
[0081] S101: The electronic device obtains a firmware switching instruction from a user.
[0082] The firmware switching instruction includes information of a target version of firmware; the target version of firmware is one of at least one new version of firmware stored in the firmware virtual storage area; and the current version of firmware is stored in a firmware loading area of a memory of the electronic device.
[0083] It is understandable that the current version of the firmware and at least one new version of the firmware are stored in different areas of the memory, which can avoid conflicts in program code, setting parameters, etc. between the current version of the firmware and at least one new version of the firmware, and can also facilitate the electronic device to directly switch between the current version of the firmware and at least one new version of the firmware without backing up and uninstalling the previous firmware before switching. In addition, since the firmware virtual storage area is set in the firmware loading area as a virtual memory, the firmware switching instruction can be responded to more quickly.
[0084] Optionally, the information of the target version firmware may include the version number, release date and other information of the target version firmware.
[0085] In some embodiments, when at least one new version of firmware is stored in the firmware virtual storage area of the memory of the electronic device, and the detection result of the at least one new version of firmware is that the new version of firmware is normal (please refer to the specific description of the detection results from steps S401 to S403 below, which will not be repeated here), the controller can receive a firmware switching instruction issued by the user through the terminal device.
[0086] Optionally, the user may also send firmware switching instructions to the electronic device through other devices, such as a centralized controller, a smart display screen on the electronic device, etc. This application does not limit the type of device that sends the firmware switching instructions.
[0087] In some embodiments, when the user needs to perform verification testing on each new version of firmware stored in the firmware virtual storage area, the user can select the target version of firmware that needs to be switched from at least one new version of firmware stored in the firmware virtual storage area through the terminal device, so that the terminal device generates the user's firmware switching instruction and sends the user's firmware switching instruction to the electronic device through the cloud server.
[0088] Exemplarily, the terminal device first obtains at least one new version of firmware stored in the firmware virtual storage area from the cloud server, and displays a first new version of firmware list including the at least one new version of firmware to the user.
[0089] Furthermore, the user can select the target version of firmware to be switched from the first new version firmware list through the terminal device, so that the terminal device generates a firmware switching instruction of the user.
[0090] Furthermore, the terminal device sends the user's firmware switching instruction to the electronic device through the cloud server.
[0091] Optionally, the first new version firmware list may be sorted based on the version number of the new version firmware, or may be sorted based on the release date of the new version firmware. The present application does not limit the sorting method of at least one new version firmware in the first new version firmware list.
[0092] The following is combined with Fig. 9 The flowchart shown exemplarily introduces the complete process of an electronic device obtaining a user's firmware switching instruction.
[0093] like Fig. 9 As shown, the process starts.
[0094] S11. The terminal device obtains a new version of the firmware list from the cloud server.
[0095] S12. The terminal device sends the user's firmware switching instruction to the cloud server.
[0096] S13. The cloud server sends a firmware switching instruction of the user to the electronic device.
[0097] S102: The electronic device switches the current version of firmware to the target version of firmware in response to the firmware switching instruction.
[0098] In some embodiments, the electronic device switches the current version of firmware to the target version of firmware in response to the firmware switching instruction according to information such as the version number or release date of the target version of firmware in the target version of firmware information.
[0099] In some embodiments, the memory of the electronic device further includes a firmware boot loading area for storing a boot loader Bootloader. After the electronic device switches the current version firmware to the target version firmware, the boot loader Bootloader in the firmware boot loading area will indirectly call the target version firmware stored in the firmware virtual storage area through the firmware loading area.
[0100] In some embodiments, after the electronic device switches the current version of the firmware to the target version of the firmware, the controller also sends a firmware switching success message to the terminal device through the cloud server to remind the user that the firmware switching is successful.
[0101] Exemplarily, the controller first sends the firmware switching success information to the cloud server through the communicator, and further, the cloud server sends the firmware switching success information to the terminal device.
[0102] The following is combined with Fig.10 The flowchart shown exemplarily introduces the complete process of an electronic device switching a current version of firmware to a target version of firmware.
[0103] like Fig.10 As shown, the process starts.
[0104] S21. The electronic device switches the current version of firmware to the target version of firmware in response to the firmware switching instruction.
[0105] S22. The electronic device sends a firmware switching success message to the cloud server.
[0106] S23. The cloud server sends a firmware switching success message to the terminal device.
[0107] based on Figure 8 According to the described embodiment, the present application provides a control method for an electronic device, wherein at least one new version of firmware is stored in a firmware virtual storage area of a memory, and a current version of firmware is stored in a firmware loading area of the memory. Since the new version of firmware and the current version of firmware are independently stored in different areas of the storage area, after obtaining the user's firmware switching instruction, the current version of firmware can be directly switched to the target version of firmware without backing up or uninstalling the current version of firmware. In addition, since the firmware virtual storage area is set in the firmware loading area as a virtual memory, the firmware switching instruction can be responded to more quickly. In this way, in the case of performing an upgrade test on the firmware of the electronic device, the current version of firmware can be switched to the target version of firmware in response to the user's firmware switching instruction, so as to perform an upgrade test on each new version of firmware of the electronic device, which can improve the efficiency of the firmware upgrade test of the electronic device.
[0108] In some embodiments, before the controller obtains the user's firmware switching instruction, that is, before step S101, as shown in FIG. Fig.11 As shown, the control method also includes the following steps:
[0109] S201: The electronic device obtains at least one new version of firmware in response to a firmware upgrade instruction from a user.
[0110] In some embodiments, the cloud server may store at least one new version firmware upgrade package configured for the electronic device, and the type of the new version firmware upgrade package may be a full upgrade package or a differential upgrade package.
[0111] There is a one-to-one correspondence between at least one new version firmware upgrade package and at least one new version firmware.
[0112] Among them, the whole upgrade package is an upgrade package that includes a complete new version of firmware, that is, a whole upgrade package is a complete new version of firmware. The differential upgrade package is an upgrade package that includes the difference between the current version of firmware and the new version of firmware. After the differential upgrade package and the current version of firmware are integrated with data resources, a complete new version of firmware can be obtained.
[0113] Optionally, the cloud server may store at least one new version firmware upgrade package configured for the electronic device using a variety of technologies, such as object storage technology, block storage technology, file storage technology, archive storage, etc.
[0114] In some embodiments, when a user needs to perform a verification test on each new version firmware upgrade package stored in the cloud server, the user can send a firmware upgrade instruction to the electronic device through a terminal device, wherein the firmware upgrade instruction includes at least one new version firmware upgrade package selected by the user.
[0115] Optionally, the user can also send firmware upgrade instructions to the electronic device through other devices, such as a centralized controller of the electronic device, a smart display screen on the electronic device, etc. This application does not limit the type of device that sends firmware upgrade instructions.
[0116] In some embodiments, the electronic device can obtain the new version of firmware corresponding to each new version of firmware upgrade package in response to the firmware upgrade instruction. Then, the user can switch the new version of firmware in the electronic device (the switching operation can refer to the specific description of switching the current version of firmware to the target version of firmware in the above steps S101 and S102, which will not be repeated here) to implement verification testing of each new version of firmware upgrade package stored in the cloud server.
[0117] In some embodiments, the electronic device may obtain the new version firmware corresponding to the new version firmware upgrade package through different acquisition methods according to the type of the new version firmware upgrade package.
[0118] In one example, if the type of at least one new version firmware upgrade package selected by the user is a whole package upgrade package, the electronic device directly obtains at least one new version firmware upgrade package from the cloud server, and the at least one new version firmware upgrade package is at least one new version firmware.
[0119] In another example, if the type of at least one new version firmware upgrade package selected by the user is a differential upgrade package, the electronic device first obtains at least one new version firmware upgrade package from the cloud server. Then, the electronic device integrates resource data of the at least one new version firmware upgrade package selected by the user with the current version firmware of the firmware loading area in the firmware virtual storage area of the memory to obtain at least one new version firmware.
[0120] In a possible implementation, if the type of at least one new version firmware upgrade package selected by the user is a differential upgrade package, the cloud server integrates resource data of the at least one new version firmware upgrade package selected by the user with the current version firmware to obtain at least one new version firmware. Then, the electronic device obtains the at least one new version firmware after the resource data integration from the cloud server.
[0121] Exemplarily, the terminal device first obtains information about the current version of the electronic device's firmware and information about all new version firmware upgrade packages stored in the cloud server from the cloud server, and displays a second new version firmware list including information about all new version firmware upgrade packages to the user.
[0122] Furthermore, the user may select at least one new version firmware upgrade package from the second new version firmware list through the terminal device, thereby generating a user's firmware upgrade instruction, which includes the at least one new version firmware upgrade package selected by the user.
[0123] Furthermore, the terminal device sends the user's firmware upgrade instruction to the electronic device through the cloud server. In response to the user's firmware upgrade instruction, the electronic device sends a new version firmware application instruction to the cloud server. Furthermore, the cloud server sends at least one new version firmware selected by the user to the electronic device according to the new version firmware application instruction.
[0124] The following is combined with Fig.12 The flowchart shown exemplarily introduces the complete process of an electronic device obtaining at least one new version of firmware.
[0125] like Fig.12 As shown, the process starts.
[0126] S31. The cloud server sends information about the current version of firmware and information about all new version firmware upgrade packages stored in the cloud server to the electronic device.
[0127] S32. The terminal device sends the user's firmware upgrade instruction to the cloud server.
[0128] S33. The cloud server sends the user's firmware upgrade instruction to the terminal device.
[0129] S34. The electronic device sends a new version firmware application to the cloud server.
[0130] S35. The cloud server sends at least one new version of firmware to the electronic device.
[0131] S202: The electronic device partitions the firmware virtual storage area according to the number of new version firmware to obtain at least one firmware virtual storage sub-area.
[0132] In some embodiments, the controller first obtains the number of new versions of firmware, and then repartitions the firmware virtual storage area according to the number of new versions of firmware to obtain firmware virtual storage sub-areas with the same number as the number of new versions of firmware.
[0133] For example, Fig.13As shown, if the number of at least one new version firmware is three, and the three new version firmware are new version firmware A, new version firmware B and new version firmware C, then after the controller partitions the firmware virtual storage area according to the three new version firmware, the number of at least one firmware virtual storage sub-area obtained is also three, namely firmware virtual storage sub-area A, firmware virtual storage sub-area B and firmware virtual storage sub-area C.
[0134] S203: The electronic device stores at least one new version of firmware in the corresponding firmware virtual storage sub-area according to the correspondence between the at least one new version of firmware and the at least one firmware virtual storage sub-area.
[0135] It can be understood that storing each new version of firmware in an independent firmware virtual sub-area facilitates the selection of one of the new versions of firmware without affecting other new versions of firmware, thereby improving the flexibility of firmware upgrade.
[0136] In some embodiments, there is a one-to-one correspondence between at least one new version of firmware and at least one firmware virtual storage sub-area.
[0137] Exemplarily, the correspondence between at least one new version of firmware and at least one firmware virtual storage sub-area is shown in Table 1 below.
[0138] Table 1
[0139] New version firmware Firmware virtual storage subarea New version firmware A Firmware virtual storage subarea A New version firmware B Firmware virtual storage subarea B New version firmware C Firmware virtual storage subarea C
[0140] Furthermore, the controller stores at least one new version of the firmware in the corresponding firmware virtual storage sub-area according to the correspondence between the at least one new version of the firmware and the at least one firmware virtual storage sub-area.
[0141] Exemplarily, there is a one-to-one correspondence between at least one new version firmware and at least one firmware virtual storage sub-area. Taking the above Table 1 as an example, Fig.14 As shown, the new version firmware A is stored in the firmware virtual storage sub-area A, the new version firmware B is stored in the firmware virtual storage sub-area B, and the new version firmware C is stored in the firmware virtual storage sub-area C.
[0142] In some embodiments, before the controller partitions the firmware virtual storage area according to the number of the new version firmware to obtain at least one firmware virtual storage sub-area, that is, before step S202, as Fig.15 As shown, the control method also includes the following steps:
[0143] S301: The electronic device stores at least one new version of firmware in a firmware cache area.
[0144] In some embodiments, the memory of the electronic device also includes a firmware cache area, and the controller first stores at least one new version of firmware obtained from the cloud server in the firmware cache area.
[0145] It can be understood that at least one new version of firmware is first stored in the firmware cache area. After downloading a new version of firmware from the cloud server for the first time, if you need to obtain the new version of firmware again, you can read it directly from the firmware cache area instead of relying on the network connection, which can not only reduce network transmission time and consumption, but also reduce errors in network transmission.
[0146] In some embodiments, the controller may partition the firmware cache area according to the number of new versions of the firmware to obtain at least one firmware cache sub-area.
[0147] Furthermore, the controller stores the at least one new version of the firmware in the corresponding firmware virtual storage sub-area according to the correspondence between the at least one new version of the firmware and the at least one firmware cache sub-area.
[0148] Here, reference may be made to the specific description of the firmware virtual storage area in the above step S202 and the above step S203, which will not be repeated here.
[0149] In some embodiments, before the controller obtains the user's firmware switching instruction, that is, before step S101, as shown in FIG. Fig.16 As shown, the control method also includes the following steps:
[0150] S401, the electronic device detects each new version of firmware through a self-test program to obtain a test result.
[0151] The self-checking program is used to check whether the new version of the firmware is abnormal. The detection result includes whether the new version of the firmware is normal or the new version of the firmware is abnormal.
[0152] Exemplarily, the self-checking program can detect whether the data of the new version of the firmware is complete during the firmware upgrade process to ensure that no data damage or loss occurs. The self-checking program can also detect whether the version number of the upgraded new version of the firmware matches the version number of the target version of the firmware expected by the electronic device to ensure that the current version of the firmware of the electronic device has been successfully upgraded to the expected target version of the firmware.
[0153] S402: When the detection result shows that the new version firmware is abnormal, re-acquire the new version firmware whose detection result shows that the new version firmware is abnormal, and re-store the re-acquired new version firmware into the corresponding firmware virtual storage sub-area.
[0154] In some embodiments, when the detection result is that the new version firmware is abnormal, the electronic device re-acquires the new version firmware whose detection result is that the new version firmware is abnormal, and re-stores the new version firmware in the corresponding virtual storage sub-area.
[0155] Furthermore, the electronic device re-detects the newly acquired new version of the firmware through a self-detection program until the detection result shows that the new version of the firmware is normal.
[0156] S403: When the detection result shows that the new version of the firmware is normal, the detection result showing that the new version of the firmware is normal is sent to the cloud server.
[0157] In some embodiments, when the detection result is that the new version of the firmware is normal, the detection result of the normal new version of the firmware is sent to the cloud server, and then the cloud server can send the detection result of the normal new version of the firmware to the terminal device to remind the user that the firmware upgrade is successful and the new version of the firmware is normal.
[0158] In some embodiments, the terminal device may obtain the detection result of the new version of the firmware through the cloud server at a preset period. For example, the preset period may be 3s.
[0159] In some embodiments, when the firmware upgrade is successful and the new version of the firmware is normal, the terminal device can send the user's firmware switching instruction to the electronic device through the cloud server.
[0160] The following is combined with Fig.17 The flowchart shown is an exemplary introduction to the complete process of detecting a new version of firmware.
[0161] like Fig.17 As shown, the process starts.
[0162] S41. The electronic device detects each new version of firmware through a self-test program to obtain a test result.
[0163] Determine whether the test result is that the new version of the firmware is normal.
[0164] If yes, execute the following step S42.
[0165] If not, execute the following steps S43 and S41.
[0166] S42. The electronic device sends a normal detection result of the new version of the firmware to the cloud server.
[0167] S43: The electronic device reacquires the new version firmware whose detection result is that the new version firmware is abnormal, and stores the reacquired new version firmware in the corresponding firmware virtual storage sub-area.
[0168] In some embodiments, the present application also provides another control method of an electronic device, such as Fig.18 As shown, the method comprises the following steps:
[0169] S501: The cloud server receives a firmware switching instruction from a user sent by a terminal device.
[0170] Here, reference may be made to the detailed description of the user's firmware switching instruction in the above step S101, which will not be elaborated in this application.
[0171] S502: The cloud server sends a firmware switching instruction of the user to the electronic device.
[0172] Similarly, reference may be made here to the detailed description of the user's firmware switching instruction in the above step S101, which will not be elaborated in this application.
[0173] In some embodiments, Fig.19 As shown, another control method of an electronic device also includes the following steps:
[0174] S601. The cloud server receives a new version firmware application sent by an electronic device.
[0175] In some embodiments, the cloud server may store at least one new version firmware upgrade package configured for the electronic device. Here, reference may be made to the specific description of the new version firmware package in step S201 above, and this application will not repeat it here.
[0176] In some embodiments, the cloud server can send configuration information of at least one new version firmware upgrade package to the terminal device, and then the terminal device can issue the user's firmware upgrade instructions to the electronic device through the cloud server. After the electronic device receives the firmware upgrade instruction, the electronic device will send a new version firmware application to the cloud server.
[0177] Among them, the configuration information of the new version firmware upgrade package includes the network identifier of the electronic device, device ID, firmware upgrade policy, firmware system name, priority, version number of the current version firmware, version number of the new version firmware, description information of the new version firmware and update status.
[0178] The network identifier of the electronic device refers to the Wi-Fi service set identifier (SSID) used by the electronic device in the wireless network. Each wireless network has a unique network identifier, and a wireless network can be uniquely identified based on the network identifier.
[0179] The electronic device ID is a unique identifier of an electronic device, and an electronic device can be uniquely identified according to the electronic device ID. Optionally, the electronic device ID can be an identifier such as a serial number, MAC address, or production batch number of the electronic device.
[0180] The firmware upgrade policy is used to guide the policies and rules adopted in the process of upgrading the new version of firmware. For example, the firmware upgrade policy includes the automatic upgrade policy and the scheduled upgrade policy.
[0181] The firmware system name is the system name where the new version of the firmware upgrade package is located. For example, the main control board of the refrigerator.
[0182] The priority is used to indicate the priority level of the upgrade task of the new version of firmware relative to other tasks of the electronic device.
[0183] The update status is used to indicate the status of the new version firmware upgrade task. For example, 1 indicates that the new version firmware upgrade task is in progress or has been completed.
[0184] The description information of the new version of the firmware is information describing the new version of the firmware, such as information describing the functions, features, operating environment, etc. of the new version of the firmware.
[0185] Exemplarily, the configuration information of the new version of the firmware may include the following fields:
[0186] wifiId: indicates the wifi device ID to which the electronic device is connected;
[0187] deviceId: indicates the electronic device ID;
[0188] strategyId: indicates the firmware upgrade strategy;
[0189] subSysName: indicates the firmware system name;
[0190] priority: indicates priority;
[0191] srcVersion: indicates the version number of the current firmware;
[0192] dstVersion: indicates the version number of the new version of the firmware;
[0193] dstVersionDesc: indicates the description information of the new version of the firmware;
[0194] taskStatus: indicates the update status.
[0195] S602: The cloud server sends at least one new version of firmware to the electronic device according to the new version of firmware application.
[0196] Here, reference may be made to the detailed description of the cloud server sending at least one new version of firmware to the electronic device in the above step S201, which will not be elaborated in this application.
[0197] The following is combined with Fig. 20 The flowchart shown is an exemplary introduction to the complete process of verifying and testing the new version of firmware.
[0198] like Fig. 20 As shown, the process starts.
[0199] S51. The cloud server sends information about the current version of the firmware and information about all new version firmware upgrade packages stored in the cloud server to the terminal device.
[0200] S52: The terminal device sends the user's firmware upgrade instruction to the cloud server.
[0201] S53: The cloud server sends the user's firmware upgrade instruction to the terminal device.
[0202] S54, the electronic device sends a new version firmware application to the cloud server.
[0203] S55. The cloud server sends at least one new version of firmware to the electronic device.
[0204] S56. The electronic device detects each new version of the firmware through a self-test program to obtain a test result.
[0205] S57. The electronic device sends a normal detection result of the new version of the firmware to the cloud server.
[0206] S58. The cloud server sends a detection result indicating that the new version of the firmware is normal to the electronic device.
[0207] S59. The terminal device obtains a new version firmware list from the cloud server.
[0208] S60: The terminal device sends the user's firmware switching instruction to the cloud server.
[0209] S61. The cloud server sends a firmware switching instruction of the user to the electronic device.
[0210] S62: The electronic device switches the current version of firmware to the target version of firmware in response to the firmware switching instruction.
[0211] S63. The electronic device sends a firmware switching success message to the cloud server.
[0212] S64. The cloud server sends a firmware switching success message to the terminal device.
[0213] It can be seen that the above mainly introduces the solution provided by the embodiment of the present application from the perspective of the method. In order to achieve the above functions, the embodiment of the present application provides a hardware structure and / or software module corresponding to each function. It should be easily appreciated by those skilled in the art that, in combination with the modules and algorithm steps of each example described in the embodiment disclosed herein, the embodiment of the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present invention.
[0214] The embodiment of the present application can divide the controller into functional modules according to the above method example. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules. Optionally, the division of modules in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.
[0215] An embodiment of the present invention further provides a computer-readable storage medium, which includes computer-executable instructions. When the computer-executable instructions are executed on a computer, the computer executes the method provided in the above embodiment.
[0216] An embodiment of the present invention further provides a computer program product, which can be directly loaded into a memory and contains software code. After being loaded and executed by a computer, the computer program product can implement the method provided in the above embodiment.
[0217] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0218] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. An electronic device, characterized in that: include: Memory; The memory includes a firmware loading area for storing the current version of firmware; A firmware virtual storage area is provided in the firmware loading area, and is used to store at least one new version of firmware; The controller is configured as: Obtaining a firmware switching instruction from a user; wherein the firmware switching instruction includes information of a target version of firmware; the target version of firmware is one of at least one new version of firmware stored in the firmware virtual storage area; In response to the firmware switching instruction, the current version firmware is switched to the target version firmware.
2. The electronic device according to claim 1, characterized in that: Before the controller is configured to obtain a firmware switching instruction from a user, the controller is further configured to: In response to a firmware upgrade instruction from a user, obtaining at least one new version of firmware; Partitioning the firmware virtual storage area according to the number of the new version firmware to obtain at least one firmware virtual storage sub-area; According to the correspondence between the at least one new version of firmware and the at least one firmware virtual storage sub-area, the at least one new version of firmware is stored in the corresponding firmware virtual storage sub-area.
3. The electronic device according to claim 2, characterized in that: The memory also includes a firmware cache area; Before the controller is configured to partition the firmware virtual storage area according to the number of the new version firmware to obtain at least one firmware virtual storage sub-area, the controller is further configured to: The at least one new version of firmware is stored in the firmware cache area.
4. The electronic device according to claim 2, characterized in that: Each new version of the at least one new version of the firmware includes a self-checking program, and the self-checking program is used to detect whether each new version of the firmware has an abnormality; Before the controller is configured to obtain the firmware switching instruction from the user, the controller is further configured to: Each new version of the firmware is tested by the self-test program to obtain a test result; the test result includes that the new version of the firmware is normal or the new version of the firmware is abnormal; In the case where the detection result is that the new version firmware is abnormal, the new version firmware whose detection result is that the new version firmware is abnormal is re-acquired, and the re-acquired new version firmware is re-stored in the corresponding firmware virtual storage sub-area.
5. The electronic device according to claim 4, characterized in that: The electronic device is connected to a cloud server; The controller is further configured to: When the detection result shows that the new version of the firmware is normal, the detection result that the new version of the firmware is normal is sent to the cloud server.
6. A cloud server, characterized in that: The cloud server is connected to the terminal device and the electronic device respectively; the cloud server includes: A communicator, through which the cloud server is connected to the terminal device and the electronic device respectively; The controller is configured as: Receive a firmware switching instruction from a user sent by a terminal device; wherein the firmware switching instruction is used to instruct the electronic device to switch the current version of firmware to the target version of firmware; the target version of firmware is one of at least one new version of firmware stored in the firmware virtual storage area of the memory of the electronic device; the current version of firmware is stored in the firmware loading area of the memory of the electronic device; Sending the user's firmware switching instruction to the electronic device.
7. The cloud server according to claim 6, characterized in that: Before the controller is configured to receive a firmware switching instruction from a user sent by a terminal device, the controller is further configured to: Receive a new version firmware application sent by an electronic device; At least one new version of firmware is sent to the electronic device according to the new version of firmware application.
8. A method for controlling an electronic device, characterized in that: Applied to electronic equipment, the method comprises: Obtaining a firmware switching instruction from a user; wherein the firmware switching instruction includes information of a target version of firmware; the target version of firmware is one of at least one new version of firmware stored in the firmware virtual storage area; In response to the firmware switching instruction, the current version firmware is switched to the target version firmware.
9. The method according to claim 8, characterized in that Before obtaining the user's firmware switching instruction, the method further includes: In response to a firmware upgrade instruction from a user, obtaining at least one new version of firmware; Partitioning the firmware virtual storage area according to the number of the new version firmware to obtain at least one firmware virtual storage sub-area; According to the correspondence between the at least one new version of firmware and the at least one firmware virtual storage sub-area, the at least one new version of firmware is stored in the corresponding firmware virtual storage sub-area.
10. A control method of an electronic device, applied to a cloud server, the method comprising: Receive a firmware switching instruction from a user sent by a terminal device; wherein the firmware switching instruction is used to instruct the electronic device to switch the current version of firmware to the target version of firmware; the target version of firmware is one of at least one new version of firmware stored in the firmware virtual storage area of the memory of the electronic device; the current version of firmware is stored in the firmware loading area of the memory of the electronic device; Sending the user's firmware switching instruction to the electronic device.