Equipment upgrading method and device, equipment, medium and product
By leveraging edge computing and P2P collaborative upgrade mechanisms, smart home devices can upgrade collaboratively within a local area network, solving the problems of low efficiency and high failure rate of OTA upgrades and achieving efficient and secure firmware upgrades.
Patent Information
- Application Number
- CN202511031847.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-25
- Publication Date
- 2025-11-18
AI Technical Summary
In existing technologies, OTA upgrades for smart home devices are inefficient in multi-device environments, consume a lot of network resources, are easily affected by the network environment, have a high upgrade failure rate, and affect system stability.
Employing edge computing and a P2P collaborative upgrade mechanism, edge nodes download upgrade files from the server and cache them locally. Smart home devices obtain firmware through a P2P mutual assistance mode, and combined with an incremental update algorithm, only download the firmware changes. Furthermore, upgraded devices assist non-upgraded devices in upgrading.
Significantly reduces network bandwidth consumption, improves upgrade efficiency, lowers failure rate, enhances device security, ensures successful firmware upgrades in unstable network environments, and improves system stability.
Smart Images

Figure CN120979859A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of equipment upgrade technology, and in particular to a method, apparatus, equipment, medium and product for equipment upgrade. Background Technology
[0002] With the development of smart home technology, the number of smart home devices is increasing. A smart home environment may contain several, a dozen or even dozens of smart home devices.
[0003] In existing technologies, upgrades to smart home devices typically use OTA (Over-the-Air Technology), where each smart home device downloads firmware from a server for upgrade. However, when there are multiple smart home devices awaiting upgrades in the same smart home environment, this upgrade method is inefficient, consumes a lot of network resources, is easily affected by the network environment, has a high upgrade failure rate, and affects the overall system stability. Summary of the Invention
[0004] In view of the above problems, a method, apparatus, device, medium, and product for upgrading equipment to overcome or at least partially solve the above problems are proposed, including:
[0005] A method for upgrading a device, the method being applied to an edge node, the edge node being connected to multiple smart home devices via a local area network, the method comprising:
[0006] Obtain the first upgrade data packet from the server, and upgrade some of the smart home devices among the plurality of smart home devices according to the first upgrade data packet;
[0007] Determine the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices, and based on the upgrade assistance relationship, control the upgraded smart home devices to upgrade the un-upgraded smart home devices.
[0008] Optionally, determining the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices includes:
[0009] Determine the proximity relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices, and based on the proximity relationship, determine the upgrade assistance relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices.
[0010] Optionally, determining the proximity relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices includes:
[0011] The network attributes of upgraded and unupgraded smart home devices among the plurality of smart home devices are determined, and the proximity relationship between upgraded and unupgraded smart home devices is determined based on the network attributes.
[0012] Optionally, the network attributes include any one or more of the following: signal strength, IP subnet information, MAC prefix, access point information, and recent transmission delay.
[0013] Optionally, before upgrading some of the smart home devices according to the first upgrade data packet, the method further includes: determining the priority of the multiple smart home devices, and determining some of the smart home devices from the multiple smart home devices according to the priority.
[0014] Optionally, determining the priority of the plurality of smart home devices includes: determining the priority of the plurality of smart home devices based on device-related information;
[0015] The device-related information includes one or more of the following:
[0016] Signal strength, access duration, device importance, device type, firmware version.
[0017] Optionally, it also includes:
[0018] When a failed upgrade is detected in a smart home device, the failed upgrade is performed on the smart home device among the plurality of smart home devices according to the first upgrade data packet.
[0019] Optionally, based on the first upgrade data package, some of the smart home devices among the plurality of smart home devices are upgraded, including:
[0020] Determine the current firmware version of a portion of the multiple smart home devices;
[0021] Based on the first upgrade data packet, a second upgrade data packet corresponding to the current firmware version of the smart home devices in the aforementioned portion is generated; wherein, the second upgrade data packet is an incremental upgrade data packet;
[0022] Distribute a corresponding second upgrade data package to the smart home devices in the aforementioned portion to upgrade the smart home devices in the aforementioned portion.
[0023] Optionally, based on the upgrade assistance relationship, controlling the upgraded smart home devices to upgrade the un-upgraded smart home devices includes:
[0024] Based on the upgrade assistance relationship, the upgraded smart home devices are controlled to distribute a third upgrade data packet to the unupgraded smart home devices to upgrade the unupgraded smart home devices; wherein, the third upgrade data packet is an incremental upgrade data packet.
[0025] Optionally, any one or more of the first upgrade data packet, the second upgrade data packet, and the third upgrade data packet are:
[0026] The upgrade data packet is processed using encryption and / or digital signature mechanisms.
[0027] Optionally, the smart home device is equipped with a dual-partition mechanism, which is used to store the system before the upgrade in the first partition and the system after the upgrade in the second partition, so as to restore the system before the upgrade when the upgraded system fails.
[0028] Alternatively, the smart home device may be equipped with a backup mechanism for backing up the system before the upgrade, so as to restore the system to its previous state in the event of a failure in the upgraded system.
[0029] An apparatus for upgrading devices, the apparatus being applied to an edge node connected to multiple smart home devices via a local area network, the apparatus comprising:
[0030] A partial upgrade module is used to obtain a first upgrade data packet from the server and upgrade a portion of the smart home devices among the plurality of smart home devices according to the first upgrade data packet;
[0031] An upgrade assistance module is used to determine the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices, and based on the upgrade assistance relationship, control the upgraded smart home devices to upgrade the un-upgraded smart home devices.
[0032] An electronic device includes a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the method described above.
[0033] A computer-readable storage medium on which a computer program is stored, which, when executed by a processor, implements the method described above.
[0034] A computer program product includes a computer program that, when executed by a processor, implements the method described above.
[0035] The embodiments of the present invention have the following advantages:
[0036] In this embodiment of the invention, an edge node is connected to multiple smart home devices via a local area network. The edge node obtains a first upgrade data packet from the server and upgrades some of the smart home devices based on the first upgrade data packet. It determines the upgrade assistance relationship between the upgraded and un-upgraded smart home devices and, based on the upgrade assistance relationship, controls the upgraded smart home devices to upgrade the un-upgraded smart home devices. This achieves upgrade assistance for un-upgraded smart home devices through upgraded smart home devices, improving upgrade efficiency, avoiding excessive network resource consumption, reducing dependence on the network environment, lowering the upgrade failure rate, and thus improving the overall system stability. Attached Figure Description
[0037] To more clearly illustrate the technical solution of the present invention, the accompanying drawings used in the description of the present invention will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0038] Figure 1 This is a flowchart of the steps of a device upgrade method provided in some embodiments of the present invention;
[0039] Figure 2 This is a flowchart of another device upgrade method provided in some embodiments of the present invention;
[0040] Figure 3 This is a flowchart of the steps of another device upgrade method provided in some embodiments of the present invention;
[0041] Figure 4 This is a flowchart of the steps of another device upgrade method provided in some embodiments of the present invention;
[0042] Figure 5 This is a flowchart of the steps of another device upgrade method provided in some embodiments of the present invention;
[0043] Figure 6 This is a structural block diagram of an equipment upgrade device provided in some embodiments of the present invention. Detailed Implementation
[0044] To make the above-mentioned objects, features, and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without inventive effort are within the scope of protection of the present invention.
[0045] In related technologies, OTA (Over-The-Air) upgrades require each device to download the complete firmware from the server, consuming significant bandwidth and impacting network stability, especially in home broadband and enterprise Wi-Fi environments. Furthermore, network fluctuations or device disconnections can lead to upgrade failures or even bricking the device. Moreover, unauthorized firmware upgrades pose security risks, potentially resulting in device attacks or data leaks.
[0046] In this embodiment of the invention, an edge computing and P2P (Peer-to-Peer) collaborative upgrade mechanism is adopted. Edge nodes (such as home gateways) download upgrade files from the server and cache them locally. Smart home devices can obtain firmware from edge nodes or upgraded devices through P2P mutual assistance mode. At the same time, combined with the incremental update algorithm, only the firmware change parts are downloaded, which greatly reduces the amount of data transmission, reduces server bandwidth consumption by more than 80%, accelerates the device upgrade process, and improves the overall efficiency of large-scale device updates.
[0047] Furthermore, during the intelligent scheduling strategy optimization and upgrade process, devices with stable signals and low loads are prioritized for upgrades, and firmware is pushed in batches, dynamically adjusting the upgrade order to avoid network congestion caused by simultaneous downloads by a large number of devices. In addition, end-to-end encryption and digital signature verification are employed to ensure that the firmware has not been tampered with, preventing malicious software attacks. Through this invention, the upgrade failure rate is reduced to less than 1%, ensuring that devices can successfully complete firmware upgrades even in unstable network environments, enhancing the device's security capabilities.
[0048] The present invention will be described by way of example below with reference to the accompanying drawings:
[0049] Reference Figure 1 This diagram illustrates a flowchart of a device upgrade method according to some embodiments of the present invention. The method can be applied to edge nodes, such as home smart gateways or routers. The edge node can connect to a server and can connect to multiple smart home devices via a local area network. The multiple smart home devices are pre-installed with OTA upgrade clients, enabling them to communicate with the edge node and perform firmware updates.
[0050] In some examples, edge nodes can maintain a list of devices in a smart home environment (i.e., multiple smart home devices) and their current firmware version information, in preparation for subsequent differential upgrades (incremental upgrades).
[0051] like Figure 2 The edge nodes initialize the system, obtain upgrade patches (i.e. upgrade data packets) from the server, and then perform intelligent scheduling upgrades, patch verification and synthesis. After obtaining the patch, the smart home devices perform dual partitioning and hierarchical classification, and then perform P2P distribution, and can resume interrupted transmission.
[0052] Specifically, it may include the following steps:
[0053] Step 101: Obtain the first upgrade data packet from the server, and upgrade some of the smart home devices among the multiple smart home devices according to the first upgrade data packet.
[0054] When a new firmware is released, the server can generate an initial upgrade data packet and send it to the edge nodes. Upon receiving the first upgrade data packet, the edge nodes can parse the packet to obtain the firmware upgrade information contained within. Then, according to preset policies or rules, they can select some smart home devices from multiple smart home devices for upgrades. For example, the edge nodes may prioritize upgrading critical devices that have a greater impact on system stability, or select devices with older firmware versions that require a larger upgrade.
[0055] In some examples, the first upgrade data package can be an incremental upgrade data package (i.e., a differential patch) for the current device version. The upgrade data package can be created using a differential algorithm based on the differences between the current firmware version and the new version, thereby reducing the amount of data.
[0056] In some examples, the first upgrade data packet can be an upgrade data packet processed using encryption and / or digital signature mechanisms. Specifically, the first upgrade data packet is encrypted and digitally signed on the server side, and then downloaded by the edge node via the wide area network. After downloading, the edge node verifies the signature of the first upgrade data packet to confirm its integrity and trustworthy origin.
[0057] In some embodiments of the present invention, before upgrading some of the smart home devices among the plurality of smart home devices according to the first upgrade data package, the method further includes:
[0058] The priority of the plurality of smart home devices is determined, and based on the priority, a subset of the smart home devices is selected from the plurality of smart home devices.
[0059] In some embodiments of the present invention, determining the priority of the plurality of smart home devices includes: determining the priority of the plurality of smart home devices based on device-related information.
[0060] The device-related information includes one or more of the following:
[0061] Signal strength, access duration, device importance, device type, firmware version.
[0062] Upon receiving a valid upgrade data packet, the edge node can activate its built-in intelligent scheduling strategy to group or sort devices based on the device list and network conditions, such as by WiFi signal strength or device importance. Then, the first batch of devices is selected to begin the upgrade. In some examples, devices with stable network connections and idle states are prioritized as seed nodes for upgrades; these devices will then be responsible for distributing upgrade data packets to other devices after a successful upgrade.
[0063] In some examples, after the first batch of seed devices complete the upgrade from the edge node, they temporarily assume the role of "micro edge node" to help distribute upgrade data packets. The edge node is responsible for unified scheduling and control, such as determining which devices become distribution sources, which devices can receive the data, and whether multicast is allowed.
[0064] In practical applications, the priority of smart home devices may vary depending on factors such as the device's function, importance, and frequency of use. For example, security devices such as smart door locks and surveillance cameras may have a higher priority, while some entertainment devices such as smart speakers and smart TVs, although frequently used, may have a relatively lower priority when it comes to upgrades.
[0065] When prioritizing devices, edge nodes can consider multiple factors. For example, signal strength reflects the communication quality between the device and the edge node, access duration reflects the device's usage frequency, device importance can be determined based on the device's type and function, device type may involve compatibility and stability issues during upgrades, and firmware version reflects the device's current status and the urgency of the upgrade. Based on this priority information, edge nodes can select some devices from multiple smart home devices for upgrades. This allows for prioritizing the upgrade of critical devices when resources are limited, improving the overall system's stability and security. Furthermore, a phased upgrade approach can reduce the impact on the entire smart home environment and mitigate risks and uncertainties during the upgrade process.
[0066] In some examples, grouping and sorting are primarily based on the communication status information of the devices. For instance, grouping by Received Signal Strength Indicator (RSSI): devices with strong signals (e.g., greater than -60dBm) are assigned to the "priority group," while devices with weaker signals are assigned to the "delay group" to ensure transmission stability. Sorting by access duration: devices with longer online times are generally more stable and are prioritized for upgrades. Grouping by device type or firmware version: different device models may use different firmware versions, and upgrades are scheduled separately for each model.
[0067] For example: Suppose there are 5 devices in the network: A, B, C, D, and E; A and B have strong signals but outdated versions, so they are placed in group 1 (priority group); C has a strong signal but is already the latest version, so it is skipped; D has a weak signal and E has just come online, so they are placed in group 2 (delayed group).
[0068] In some embodiments of the present invention, upgrading a portion of the smart home devices among the plurality of smart home devices according to the first upgrade data package includes:
[0069] The current firmware version of a portion of the multiple smart home devices is determined; based on the first upgrade data packet, a second upgrade data packet corresponding to the current firmware version of the portion of smart home devices is generated; the corresponding second upgrade data packet is distributed to the portion of smart home devices to upgrade the portion of smart home devices.
[0070] The second upgrade data packet is an incremental upgrade data packet.
[0071] In some embodiments of the present invention, the second upgrade data packet may be:
[0072] The upgrade data packet is processed using encryption and / or digital signature mechanisms.
[0073] In practical applications, after each device receives a patch, the OTA client first decrypts and verifies the signature to ensure the patch data is secure and trustworthy. Then, it begins applying the incremental update algorithm to update the firmware. In some examples, the incremental update algorithm modifies the device's existing firmware image based on the differences in the patch: for example, "adding" new code segments, changing specific configuration data, or "removing" old redundant parts, ultimately reconstructing the old firmware into the new firmware version. The entire process only requires the transfer of the differences, which is much smaller than the full firmware size, resulting in fast transmission and application speeds.
[0074] Step 102: Determine the upgrade assistance relationship between the upgraded smart home devices and the un-upgraded smart home devices among the plurality of smart home devices, and based on the upgrade assistance relationship, control the upgraded smart home devices to upgrade the un-upgraded smart home devices.
[0075] Among them, the upgrade assistance relationship is used to specify which upgraded smart home device will assist in upgrading which unupgraded smart home device.
[0076] In practical applications, upgraded smart home devices can act as temporary servers, distributing upgrade data packets to unupgraded smart home devices via P2P within the local area network. This fully utilizes network resources between smart home devices, reduces reliance on server bandwidth, and improves upgrade efficiency.
[0077] When determining upgrade assistance relationships, factors such as physical distance between devices, signal strength, and network latency can be considered to ensure fast and reliable transmission of upgrade data packets. Edge nodes can maintain an upgrade status table, recording the upgrade status of each smart home device, and dynamically adjust upgrade assistance relationships based on this status table to optimize the upgrade process.
[0078] Specifically, once the first batch of seed devices are successfully upgraded, edge nodes incorporate these devices into the distribution assistance role. The transmission of upgrade data packets then transitions to a peer-to-peer (P2P) method. According to the scheduling strategy, edge nodes instruct un-upgraded devices to request upgrade data packets from upgraded neighboring devices, or upgraded devices can proactively send upgrade data packets to specific un-upgraded devices. Due to the small patch file size and high LAN bandwidth, P2P transmission can be carried out in parallel between multiple device pairs, accelerating the distribution speed.
[0079] In practical applications, edge nodes are responsible for coordinating this process, such as preventing multiple upgraded devices from sending data to the same unupgraded device at the same time, and introducing necessary scheduling control (such as assigning different devices to be responsible for different receivers, or using broadcast / multicast methods to optimize transmission).
[0080] In some embodiments of the present invention, determining the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices includes:
[0081] Determine the proximity relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices, and based on the proximity relationship, determine the upgrade assistance relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices.
[0082] In some embodiments of the present invention, determining the proximity relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices includes:
[0083] The network attributes of upgraded and un-upgraded smart home devices among the plurality of smart home devices are determined, and based on the network attributes, the proximity relationship between the upgraded and un-upgraded smart home devices among the plurality of smart home devices is determined.
[0084] In some examples, network attributes include one or more of the following: signal strength, IP subnet information, MAC prefix, access point information, and recent transmission delay.
[0085] In practical applications, network attributes reflect the physical location or logical connection of devices within a local area network (LAN). By comparing these network attributes, edge nodes can determine which upgraded devices are spatially or logically adjacent to un-upgraded devices, thereby establishing upgrade assistance relationships. For example, when determining proximity based on IP address and subnet mask, two devices located in the same subnet are considered close because they can communicate directly within the LAN without going through a router. When determining proximity based on signal strength, two devices are considered close if their signal strength exceeds a certain threshold, as stronger signals generally indicate closer physical distance and better communication quality.
[0086] Once proximity and upgrade assistance relationships are established, edge nodes can formulate distribution strategies to guide upgraded devices to transmit upgrade data packets to un-upgraded devices. This proximity-based P2P transmission method not only accelerates the upgrade process but also reduces the burden on edge nodes, improving the overall upgrade efficiency of the smart home environment. Furthermore, when determining upgrade assistance relationships, edge nodes can consider other factors, such as the device's remaining storage space, processing power, and battery level, to ensure that the assisting devices have sufficient resources to complete the task. By comprehensively considering various factors, edge nodes can establish an efficient and reliable upgrade assistance network, providing strong support for firmware upgrades of smart home devices.
[0087] In some examples, within a local area network (LAN), when multiple devices are on the same subnet or access point, edge nodes or upgraded devices can broadcast patches via multicast, allowing all target devices to receive them simultaneously, avoiding duplicate transmissions. For instance, if device A has completed its upgrade, and the edge node discovers that devices B, C, and D are all on the same subnet as A, it can assign A to push the patch to B, C, and D via LAN multicast, improving parallel distribution capabilities. As another example, assuming devices A and B complete their upgrades first, and the edge node knows that device C is on the same Wi-Fi access point or network segment, it can assign A to push the patch to C, while B distributes it to device D, thus achieving parallel acceleration.
[0088] In some examples, during the scheduling process, edge nodes control the number of devices to be upgraded simultaneously to avoid saturating bandwidth, and unselected devices temporarily wait for instructions.
[0089] In some embodiments of the present invention, based on the upgrade assistance relationship, controlling the upgraded smart home device to upgrade the unupgraded smart home device includes:
[0090] Based on the upgrade assistance relationship, the upgraded smart home devices are controlled to distribute a third upgrade data packet to the unupgraded smart home devices to upgrade the unupgraded smart home devices; wherein, the third upgrade data packet is an incremental upgrade data packet.
[0091] In some embodiments of the present invention, the third upgrade data packet may be:
[0092] The upgrade data packet is processed using encryption and / or digital signature mechanisms.
[0093] In some embodiments of the present invention, it further includes:
[0094] When a failed upgrade is detected in a smart home device, the failed upgrade is performed on the smart home device among the plurality of smart home devices according to the first upgrade data packet.
[0095] During the upgrade process, edge nodes monitor the status of each device in real time. If a device fails to receive a patch or upgrades due to network issues, the edge node re-adds the device to the waiting queue and takes measures to ensure subsequent retries. For example, the edge node can directly send upgrade data packets to devices that have failed multiple attempts, or postpone the upgrade of that device to the final stage. When some devices temporarily go offline, the system allows them to rejoin the upgrade process later (e.g., the edge node immediately notifies and reissues patches after the device comes back online). The entire scheduling algorithm is fault-tolerant and dynamically adjustable, ensuring that most devices can still successfully complete the upgrade even under less than ideal network conditions.
[0096] In some examples, each device reports the results to the edge node after the upgrade is completed, and reports the reason for the error if it fails, so that the edge node can record and handle it.
[0097] In some examples, once all target devices have successfully installed the new firmware and are running normally, the edge nodes confirm that the entire network upgrade is complete. Subsequently, the edge nodes summarize the upgrade results and report them to the server (including a list of upgraded devices, version status, and any failed retries) to facilitate understanding of the deployment status. If any device fails to upgrade successfully, the system will also indicate this in the report for subsequent manual intervention.
[0098] In some embodiments of the present invention, the smart home device is provided with a dual-partition mechanism, which is used to store the system before the upgrade in the first partition and the system after the upgrade in the second partition, so as to restore the system before the upgrade when the upgraded system fails.
[0099] In some embodiments of the present invention, the smart home device is equipped with a backup mechanism, which is used to back up the system before the upgrade so as to restore the system before the upgrade in the event of a failure in the upgraded system.
[0100] To enhance security and stability, the device employs a dual-partition or backup mechanism: the new firmware is first written to the backup storage area, and only after successful verification is the boot area switched or the device is rebooted to load the new firmware. By writing the new image to the backup partition first during the upgrade process, and only switching the boot pointer after successful verification and stable operation, the old version is not immediately overwritten, ensuring upgrade security.
[0101] For example, the device firmware storage space is divided into two areas (Area A and Area B). The original system runs in Area A, and the new firmware is first written to Area B and its integrity is verified. If the verification in Area B is successful, the device will switch its boot flag: on the next reboot, it will boot the new system from Area B; if it fails, it can roll back and continue booting from Area A to prevent the device from becoming bricked. Once the system in Area B is confirmed to be running stably, Area A can be overwritten for the next upgrade.
[0102] In some examples, once the device successfully boots the new firmware, it notifies the edge node that the device upgrade is complete and the device is functioning correctly.
[0103] In this embodiment of the invention, an edge node is connected to multiple smart home devices via a local area network. The edge node obtains a first upgrade data packet from the server and upgrades some of the smart home devices based on the first upgrade data packet. It determines the upgrade assistance relationship between the upgraded and un-upgraded smart home devices and, based on the upgrade assistance relationship, controls the upgraded smart home devices to upgrade the un-upgraded smart home devices. This achieves upgrade assistance for un-upgraded smart home devices through upgraded smart home devices, improving upgrade efficiency, avoiding excessive network resource consumption, reducing dependence on the network environment, lowering the upgrade failure rate, and thus improving the overall system stability.
[0104] Specifically, throughout the process, only the design data packet needs to be obtained from the server once, and the remaining data is efficiently propagated in the local network. This not only reduces the use of external network traffic by more than 80% (assuming that the differential packet size is much smaller than the full packet and P2P covers most devices), but also automates and increases the reliability of the upgrade process, greatly improving the efficiency and security of firmware management for smart home devices.
[0105] Reference Figure 3 The diagram illustrates a flowchart of another device upgrade method provided by some embodiments of the present invention, which may specifically include the following steps:
[0106] Step 301: Obtain the first upgrade data packet from the server, and upgrade some of the smart home devices among the plurality of smart home devices according to the first upgrade data packet.
[0107] Step 302: Determine the network attributes of the upgraded and un-upgraded smart home devices among the plurality of smart home devices, and determine the proximity relationship between the upgraded and un-upgraded smart home devices among the plurality of smart home devices based on the network attributes.
[0108] Step 303: Based on the proximity relationship, determine the upgrade assistance relationship between the upgraded smart home devices and the un-upgraded smart home devices among the plurality of smart home devices.
[0109] Step 304: Based on the upgrade assistance relationship, control the upgraded smart home devices to upgrade the unupgraded smart home devices.
[0110] Reference Figure 4 The diagram illustrates a flowchart of another device upgrade method provided by some embodiments of the present invention, which may specifically include the following steps:
[0111] Step 401: Obtain the first upgrade data packet from the server.
[0112] Step 402: Determine the priority of the plurality of smart home devices, and select a portion of the smart home devices from the plurality of smart home devices based on the priority.
[0113] Step 403: Upgrade the smart home devices in the aforementioned portion according to the first upgrade data package.
[0114] Step 404: Determine the upgrade assistance relationship between the upgraded smart home devices and the un-upgraded smart home devices among the plurality of smart home devices, and based on the upgrade assistance relationship, control the upgraded smart home devices to upgrade the un-upgraded smart home devices.
[0115] Reference Figure 5 The diagram illustrates a flowchart of another device upgrade method provided by some embodiments of the present invention, which may specifically include the following steps:
[0116] Step 501: Obtain the first upgrade data packet from the server.
[0117] Step 502: Determine the current firmware version of some of the multiple smart home devices, and generate a second upgrade data package corresponding to the current firmware version of the aforementioned smart home devices based on the first upgrade data package; wherein, the second upgrade data package is an incremental upgrade data package.
[0118] Step 503: Distribute the corresponding second upgrade data package to the smart home devices in the part to upgrade the smart home devices in the part.
[0119] Step 504: Determine the upgrade assistance relationship between the upgraded and un-upgraded smart home devices among the plurality of smart home devices.
[0120] Step 505: Based on the upgrade assistance relationship, control the upgraded smart home device to distribute a third upgrade data packet to the unupgraded smart home device to upgrade the unupgraded smart home device; wherein, the third upgrade data packet is an incremental upgrade data packet.
[0121] It should be noted that, for the sake of simplicity, the method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments of the present invention are not limited to the described order of actions, because according to the embodiments of the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions involved are not necessarily essential to the embodiments of the present invention.
[0122] Reference Figure 6 The diagram illustrates a structural schematic of a device for upgrading a device according to some embodiments of the present invention. The device is applied to an edge node, which is connected to multiple smart home devices via a local area network. Specifically, it may include the following modules:
[0123] The partial upgrade module 601 is used to obtain a first upgrade data packet from the server and upgrade a portion of the smart home devices among the plurality of smart home devices according to the first upgrade data packet;
[0124] The upgrade assistance module 602 is used to determine the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices, and based on the upgrade assistance relationship, control the upgraded smart home devices to upgrade the un-upgraded smart home devices.
[0125] Optionally, determining the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices includes:
[0126] Determine the proximity relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices, and based on the proximity relationship, determine the upgrade assistance relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices.
[0127] Optionally, determining the proximity relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices includes:
[0128] The network attributes of upgraded and un-upgraded smart home devices among the plurality of smart home devices are determined, and based on the network attributes, the proximity relationship between the upgraded and un-upgraded smart home devices among the plurality of smart home devices is determined.
[0129] Optionally, the network attributes include any one or more of the following: signal strength, IP subnet information, MAC prefix, access point information, and recent transmission delay.
[0130] Optionally, before upgrading some of the smart home devices according to the first upgrade data packet, the method further includes: determining the priority of the multiple smart home devices, and determining some of the smart home devices from the multiple smart home devices according to the priority.
[0131] Optionally, determining the priority of the plurality of smart home devices includes: determining the priority of the plurality of smart home devices based on device-related information;
[0132] The device-related information includes one or more of the following:
[0133] Signal strength, access duration, device importance, device type, firmware version.
[0134] Optionally, it also includes:
[0135] When a failed upgrade is detected in a smart home device, the failed upgrade is performed on the smart home device among the plurality of smart home devices according to the first upgrade data packet.
[0136] Optionally, based on the first upgrade data package, some of the smart home devices among the plurality of smart home devices are upgraded, including:
[0137] Determine the current firmware version of a portion of the multiple smart home devices;
[0138] Based on the first upgrade data packet, a second upgrade data packet corresponding to the current firmware version of the smart home devices in the aforementioned portion is generated; wherein, the second upgrade data packet is an incremental upgrade data packet;
[0139] Distribute a corresponding second upgrade data package to the smart home devices in the aforementioned portion to upgrade the smart home devices in the aforementioned portion.
[0140] Optionally, based on the upgrade assistance relationship, controlling the upgraded smart home devices to upgrade the un-upgraded smart home devices includes:
[0141] Based on the upgrade assistance relationship, the upgraded smart home devices are controlled to distribute a third upgrade data packet to the unupgraded smart home devices to upgrade the unupgraded smart home devices; wherein, the third upgrade data packet is an incremental upgrade data packet.
[0142] Optionally, any one or more of the first upgrade data packet, the second upgrade data packet, and the third upgrade data packet are:
[0143] The upgrade data packet is processed using encryption and / or digital signature mechanisms.
[0144] Optionally, the smart home device is equipped with a dual-partition mechanism, which is used to store the system before the upgrade in the first partition and the system after the upgrade in the second partition, so as to restore the system before the upgrade when the upgraded system fails.
[0145] Alternatively, the smart home device may be equipped with a backup mechanism for backing up the system before the upgrade, so as to restore the system to its previous state in the event of a failure in the upgraded system.
[0146] In this embodiment of the invention, an edge node is connected to multiple smart home devices via a local area network. The edge node obtains a first upgrade data packet from the server and upgrades some of the smart home devices based on the first upgrade data packet. It determines the upgrade assistance relationship between the upgraded and un-upgraded smart home devices and, based on the upgrade assistance relationship, controls the upgraded smart home devices to upgrade the un-upgraded smart home devices. This achieves upgrade assistance for un-upgraded smart home devices through upgraded smart home devices, improving upgrade efficiency, avoiding excessive network resource consumption, reducing dependence on the network environment, lowering the upgrade failure rate, and thus improving the overall system stability.
[0147] Some embodiments of the present invention also provide an electronic device, including a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the method described above.
[0148] Some embodiments of the present invention also provide a computer-readable storage medium on which a computer program is stored, and which, when executed by a processor, implements the method described above.
[0149] Some embodiments of the present invention also provide a computer program product, including a computer program that, when executed by a processor, implements the method described above.
[0150] As the device embodiment is basically similar to the method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.
[0151] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or refuse.
[0152] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.
[0153] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, apparatus, or computer program products. Therefore, embodiments of the present invention can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of the present invention can take the form of computer program products implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0154] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0155] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0156] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0157] Although preferred embodiments of the present invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the embodiments of the present invention.
[0158] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal device. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal device that includes the aforementioned element.
[0159] The above provides a detailed description of the method, apparatus, equipment, medium, and product for upgrading equipment. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.
Claims
1. A method for upgrading equipment, characterized in that, The method is applied to an edge node, which is connected to multiple smart home devices via a local area network. The method includes: Obtain the first upgrade data packet from the server, and upgrade some of the smart home devices among the plurality of smart home devices according to the first upgrade data packet; Determine the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices, and based on the upgrade assistance relationship, control the upgraded smart home devices to upgrade the un-upgraded smart home devices.
2. The method according to claim 1, characterized in that, Determining the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices includes: Determine the proximity relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices, and based on the proximity relationship, determine the upgrade assistance relationship between upgraded and unupgraded smart home devices among the plurality of smart home devices.
3. The method according to claim 2, characterized in that, Determining the proximity relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices includes: The network attributes of upgraded and unupgraded smart home devices among the plurality of smart home devices are determined, and the proximity relationship between upgraded and unupgraded smart home devices is determined based on the network attributes.
4. The method according to claim 3, characterized in that, The network attributes include any one or more of the following: signal strength, IP subnet information, MAC prefix, access point information, and recent transmission delay.
5. The method according to any one of claims 1-4, characterized in that, Before upgrading some of the smart home devices according to the first upgrade data packet, the method further includes: determining the priority of the multiple smart home devices, and determining some smart home devices from the multiple smart home devices according to the priority.
6. The method according to claim 5, characterized in that, Determining the priority of the plurality of smart home devices includes: determining the priority of the plurality of smart home devices based on device-related information; The device-related information includes one or more of the following: Signal strength, access duration, device importance, device type, firmware version.
7. The method according to any one of claims 1-4, characterized in that, Also includes: When a failed upgrade is detected in a smart home device, the failed upgrade is performed on the smart home device among the plurality of smart home devices according to the first upgrade data packet.
8. The method according to any one of claims 1-4, characterized in that, Based on the first upgrade data package, upgrades are performed on a portion of the multiple smart home devices, including: Determine the current firmware version of a portion of the multiple smart home devices; Based on the first upgrade data packet, a second upgrade data packet corresponding to the current firmware version of the smart home devices in the aforementioned portion is generated; wherein, the second upgrade data packet is an incremental upgrade data packet; Distribute a corresponding second upgrade data package to the smart home devices in the aforementioned portion to upgrade the smart home devices in the aforementioned portion.
9. The method according to claim 8, characterized in that, Based on the aforementioned upgrade assistance relationship, controlling the upgraded smart home devices to upgrade the unupgraded smart home devices includes: Based on the upgrade assistance relationship, the upgraded smart home device is controlled to distribute a third upgrade data packet to the unupgraded smart home device to upgrade the unupgraded smart home device; wherein, the third upgrade data packet is an incremental upgrade data packet.
10. The method according to claim 9, characterized in that, The first upgrade data packet, the second upgrade data packet, and the third upgrade data packet are any one or more of the following upgrade data packets: The upgrade data packet is processed using encryption and / or digital signature mechanisms.
11. The method according to any one of claims 1-4, characterized in that, The smart home device is equipped with a dual-partition mechanism, which stores the system before the upgrade in the first partition and the system after the upgrade in the second partition, so as to restore the system before the upgrade in the event of a failure of the upgraded system. Alternatively, the smart home device may be equipped with a backup mechanism for backing up the system before the upgrade, so as to restore the system to its previous state in the event of a failure in the upgraded system.
12. An apparatus for upgrading equipment, characterized in that, The device is applied to an edge node, which is connected to multiple smart home devices via a local area network. The device includes: A partial upgrade module is used to obtain a first upgrade data packet from the server and upgrade a portion of the smart home devices among the plurality of smart home devices according to the first upgrade data packet; An upgrade assistance module is used to determine the upgrade assistance relationship between upgraded and un-upgraded smart home devices among the plurality of smart home devices, and based on the upgrade assistance relationship, control the upgraded smart home devices to upgrade the un-upgraded smart home devices.
13. An electronic device, characterized in that, It includes a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the method as described in any one of claims 1 to 11.
14. A computer-readable storage medium, characterized in that, A computer program is stored on the computer-readable storage medium, which, when executed by a processor, implements the method as described in any one of claims 1 to 11.
15. A computer program product, characterized in that, It includes a computer program that, when executed by a processor, implements the method as described in any one of claims 1 to 11.