Handling command and attribute updates between digital twinning and Wi-Fi IoT power limited devices with extended sleep

CN119496825APending Publication Date: 2025-02-21SILICON LABORATORIES INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411112701.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-12-05
Filing Date
2024-08-14
Publication Date
2025-02-21

AI Technical Summary

Technical Problem

In the prior art, when low-power Wi-Fi devices maintain low-power mode for a long time, it is difficult to effectively avoid communication with access points, resulting in shortening of battery life and interoperability and power consumption.

Method used

By implementing digital twin technology in low-power Wi-Fi devices, low-power Wi-Fi devices look for digital twin nodes during trial operation to act as proxy nodes in sleep mode. In addition, a newness score and link code mechanism are adopted to ensure the reliability and replacement of digital twin nodes.

Benefits of technology

A low-power Wi-Fi device maintains low-power mode for a long time without frequent communication with access points, extends battery life, and simplifies network reconfiguration and improves system interoperability and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119496825A_ABST
    Figure CN119496825A_ABST
Patent Text Reader

Abstract

The name of the invention of the present disclosure is "handling digital twinning and command and attribute updates between Wi-FiIoT power limited devices with extended sleep". A system and various methods for implementing digital twinning with a low power Wi-Fi device are disclosed. A low power Wi-Fi device looks for digital twins at the time of commissioning to act as its proxy node when it is in sleep mode. In addition, techniques are disclosed for addressing the instances where the digital twinning becomes unavailable. Finally, techniques for creating and updating chains of digital twins are also disclosed.
Need to check novelty before this filing date? Find Prior Art

Description

Priority claim

[0001] This application claims priority from U.S. Provisional Patent Application Serial No. 63 / 532,552 filed on August 14, 2023 and U.S. Patent Application Serial No. 18 / 529,282 filed on December 5, 2023, the disclosures of which are incorporated herein by reference in their entireties. Technical Field

[0002] This disclosure describes a system and various methods for implementing digital twins with low-power Wi-Fi devices. Background Art

[0003] The Wi-Fi protocol was originally designed to include devices that can use unlimited power. Therefore, early revisions of the specification did not include any provisions for supporting low-power devices that need to enter low-power mode in order to save battery life. For example, some devices, such as sensor devices, should ideally have a battery life of more than one year.

[0004] The Wi-Fi protocol is updated to include some power saving modes of operation. For example, one of the available power saving mechanisms is PS-Poll. In this mode, a low power Wi-Fi device informs the access point that it is going to enter sleep mode. The access point will then buffer all outbound messages for the low power Wi-Fi node. If it has any outbound packets for the device, it indicates this in its beacon message. After waking up, the low power Wi-Fi device checks the beacon message, and if there is a stored message, it transmits a packet to the access point, requesting the stored packet.

[0005] Another update is the inclusion of Target Wake Time (TWT). This feature allows a low power Wi-Fi device to specify when it will wake up and for how long. In this embodiment, all data for low power Wi-Fi devices is transmitted during a predetermined interval called a TWT service period. This is intended to allow longer periods of sleep mode and also reduce contention by allocating specific intervals for transmissions to each device.

[0006] The third update is called Basic Service Set Max Idle (BSS Max Idle). This allows the access point to maintain its association with a low power Wi-Fi device (for an extended period of time) even if it has not received any keep-alive communications from the device.

[0007] However, all of these techniques have disadvantages. The PS-Poll feature has shown interoperability issues when the listening interval exceeds a few seconds. The TWT and BSS Maximum Idle features are ineffective when the wake-up frequency is too high, which may be required to increase battery life in devices such as sensors. On the other hand, if the wake-up frequency is too low, it causes interoperability issues such as disconnection.

[0008] BSS Max Idle also suffers from increased power consumption due to channel contention yielding scenarios, which are not addressed in this feature.

[0009] Therefore, it would be beneficial if a system and method existed that allowed a low power Wi-Fi device to remain in a low power mode for extended periods of time without requiring communication with an access point. Summary of the invention

[0010] A system and various methods for implementing a digital twin with a low-power Wi-Fi device are disclosed. The low-power Wi-Fi device seeks a digital twin at commissioning time to act as its proxy node when it is in sleep mode. In addition, techniques for resolving situations where the digital twin becomes unavailable are disclosed. Finally, techniques for creating and updating a chain of digital twins are disclosed.

[0011] According to one embodiment, a method for creating a digital twin node for a low-power Wi-Fi device in a Wi-Fi network is disclosed. The method includes: sending a multicast "discovery message" from a low-power Wi-Fi device to identify a proxy node that can act as a digital twin node; receiving a response from a proxy node that can act as a digital twin node at the low-power Wi-Fi device; selecting a first proxy node among the proxy nodes as a digital twin node, and forming an association with the first proxy node; and assigning a recency score to the digital twin node, the recency score indicating how recently the association was formed, wherein the recency score is used by a controller to identify the most recent digital twin node associated with the low-power Wi-Fi device. In some embodiments, each time the low-power Wi-Fi device forms an association with one of the proxy nodes, the low-power Wi-Fi device assigns a different recency score. In some embodiments, each time the low-power Wi-Fi device forms an association with one of the proxy nodes, the low-power Wi-Fi device increases the recency score. In some embodiments, after the association is formed, the digital twin node becomes unavailable, and in response, the low-power Wi-Fi device: disassociates from the digital twin node; issues a multicast "discovery message" to identify proxy nodes that can act as new digital twin nodes; receives responses from the proxy nodes that can act as new digital twin nodes; selects a second proxy node among the proxy nodes as the new digital twin node and forms a new association with the second proxy node; and assigns a second recency score to the new digital twin node, the second recency score being different from the recency score assigned to the digital twin node. In some embodiments, after the new association is formed, the digital twin node becomes available, and the digital twin node: transmits a multicast "discovery query" with a unique node identifier associated with the low-power Wi-Fi device to discover whether there are other digital twin nodes in the Wi-Fi network; receives a response from the new digital twin node, wherein the response includes a second recency score; compares the second recency score with the recency score of the digital twin node, and determines that the digital twin node is no longer associated with the low-power Wi-Fi device; and disassociates the digital twin node itself from the low-power Wi-Fi device. In some embodiments, after the low-power Wi-Fi device forms a new association, the controller: issues a query to discover a proxy node associated with the low-power Wi-Fi device; receives responses from the digital twin node and the new digital twin node; compares the second recency score with the recency score assigned to the digital twin node; and selects a new digital twin node to communicate with with respect to the low-power Wi-Fi device based on the recency score and the second recency score. In some embodiments, after the association is formed, the low power Wi-Fi device also assigns a link code to the digital twin node.

[0012] According to another embodiment, a method for configuring and maintaining a chain of digital twin nodes is disclosed. The method includes: forming a chain using a plurality of digital twin nodes between a controller and a low-power Wi-Fi device, wherein a first digital twin node is closest to the low-power Wi-Fi device and a second digital twin node is closest to the controller; and assigning a unique link code to each digital twin node in the chain, wherein the link code indicates the position of the corresponding digital twin node in the chain. In some embodiments, the method includes creating an association between pairs of adjacent digital twin nodes in the chain; and assigning a recency score to each association, the recency score indicating when the association was formed. In some embodiments, after a third digital twin node in the chain arranged between a first digital twin node and a second digital twin node becomes unavailable, the digital twin nodes on both sides of the third digital twin node, referred to as near-side neighbors and far-side neighbors, are associated with each other. In some embodiments, all digital twin nodes arranged between the third digital twin node and the controller are assigned a new link code. In certain embodiments, the link codes of all digital twin nodes arranged between the third digital twin node and the controller are reduced. In some embodiments, the far-side neighbor receives a new recency score. In some embodiments, the near-side neighbor and the far-side neighbor are assigned a new recency score. In another embodiment, after the third digital twin node in the chain arranged between the first digital twin node and the second digital twin node becomes unavailable, the digital twin nodes on both sides of the third digital twin node, referred to as the near-side neighbor and the far-side neighbor, are associated with the new digital twin node. In some embodiments, the new digital twin node takes the link code of the third digital twin node. In some embodiments, the new digital twin node is assigned a recency score different from the recency score previously assigned to the third digital twin node.

[0013] According to a third embodiment, a Wi-Fi network is disclosed. The Wi-Fi network includes: a controller; a low-power Wi-Fi device; and one or more digital twin nodes, wherein the one or more digital twin nodes are associated with the low-power Wi-Fi device, wherein the association between the low-power Wi-Fi device and each digital twin node is assigned a recency score, wherein the recency score is used by the controller to identify the digital twin node most recently associated with the low-power Wi-Fi device. In some embodiments, each time the low-power Wi-Fi device forms an association with a digital twin node, the low-power Wi-Fi device assigns a different recency score. In some embodiments, the Wi-Fi network includes at least a second digital twin node, wherein each digital twin node is assigned a link code, and the link code indicates the position of the digital twin node between the controller and the low-power Wi-Fi device. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] For a better understanding of the present disclosure, reference is made to the accompanying drawings, wherein like elements are referenced by like numerals, and wherein: Figure 1 Displays the sequence used by the sleepy node to associate with the digital twin; Figure 2 Displays the sequence used by the sleepy node to associate with the new digital twin; Figure 3 Displays the sequence used by the controller to identify the correct digital twin; Figure 4A shows a sequence of a chain for updating a digital twin according to one embodiment; Figure 4B shows a sequence of chains used by a controller to identify a digital twin according to one embodiment; Figure 5 A sequence showing a chain for updating a digital twin according to another embodiment; and Figure 6 A block diagram of an exemplary Wi-Fi device is shown. DETAILED DESCRIPTION

[0015] The present disclosure describes a system and method by which low-power Wi-Fi devices can be associated with a digital twin. Also disclosed are techniques for addressing the unavailability of a digital twin.

[0016] A wireless network may contain access points, one or more controllers, one or more always-on nodes (which may act as proxy nodes), and one or more low-power Wi-Fi devices (also referred to as sleepy nodes). Access points act as network connectivity providers between controllers, always-on nodes, and sleepy nodes in the network. Controllers act as control points for specific applications. For example, a device may act as a controller for a home automation network (or "smart home"). The controller may coordinate lighting, switches, sensors, and other devices (which allow a home to be controlled). Proxy devices are those nodes that are always powered on and have the ability to act as a proxy for another node. Finally, sleepy nodes are nodes that may be in low-power mode for extended periods of time. Other types of devices may also exist. For example, there may be always-powered devices that may not act as proxy nodes.

[0017] Each of these types of devices may include a processing unit and an associated memory device. The processing unit may be any suitable component, such as a microprocessor, an embedded processor, a dedicated circuit, a programmable circuit, a microcontroller, or another similar device. The memory device contains instructions that, when executed by the processing unit, enable the device to perform the functions described herein. The memory device may be a non-volatile memory, such as a flash ROM, an electrically erasable ROM, or other suitable device. In some embodiments, the memory device may be a volatile memory, such as a RAM or a DRAM. In some embodiments, both volatile and non-volatile memory may be used.

[0018] The device includes a wireless network interface and an antenna to enable wireless communication using Wi-Fi.

[0019] Having described the topology of a typical Wi-Fi network and the architecture of devices in the network, a description of various enhancements is provided.

[0020] Throughout the following description, multicast messages may be transmitted. A multicast message is a message that can be addressed to multiple nodes in a wireless network. These nodes may follow well-known protocols, such as multicast Internet Protocol (IP) addressing defined in the Transmission Control Protocol Internet Protocol (TCP / IP) specification. The addressing and formation of groups of nodes that receive such messages is left to the implementation of specific embodiments.

[0021] First, when a sleepy node is powered on for the first time in a new environment, it needs to be added to the network. This process is called commissioning. After it has been added to the network by the controller 110, the sleepy node 100 attempts to discover if there is also an available proxy node that can act as its proxy device while it is in sleep mode. This proxy node is called a digital twin. Figure 1The process is shown in . The sleepy node 100 transmits a multicast "discovery message" to all nodes in the network to determine which nearby nodes can act as its digital twin. One or more proxy nodes can respond to the discovery message. The proxy node must respond only when it is able to act as a digital twin and has sufficient resources (memory, etc.) to act as a digital twin. For example, if the proxy node is limited in the number of sleepy nodes it can represent, it must stop responding to new discovery or association requests once the limit is reached. The sleepy node 100 then selects one of these nodes as its digital twin node 1. The criteria for selecting digital twin nodes are implementation-specific and may depend on factors such as proximity. Once it selects digital twin node 1, the sleepy node 100 associates with the node so that digital twin node 1 now recognizes that it is to act as a digital twin for the sleepy node 100. The protocol for forming such an association is implementation-specific. Once this is completed, the sleepy node 100 transmits its attributes and their current values ​​to the digital twin node 1. These attributes may be state information, settings, or other information related to the sleepy node 100. A collection of attributes may be referred to as an attribute table. Note that after this process is complete, both the sleepy node 100 and the digital twin node 1 are aware of the association. The controller 110 may also be aware of this association through other messages (as described later).

[0022] Thereafter, the digital twin node 1 is responsible for handling all communications on behalf of the sleepy node 100 when the sleepy node 100 is in sleep mode. Specifically, it can receive commands from the controller 110. In some embodiments, the digital twin node 1 may be able to process commands on behalf of the sleepy node 100. For example, the sleepy node 100 may be a sensor, and the command from the controller 110 may be a change to its sensitivity setting. In this case, the digital twin node 1 may simply update this attribute in its attribute table. For other commands, the digital twin node 1 may not have the ability to execute the command. In this case, the digital twin node 1 simply retains the command in a buffer, which is provided to the sleepy node 100 when the sleepy node 100 wakes up.

[0023] The digital twin node 1 may also transmit attribute reports of the sleepy node 100 periodically or on demand to a controller 110 in the network that requests such reports. An attribute report provides a list of one or more attributes and their latest values. The protocol used to request attribute reports (whether they are sent periodically or on demand) and the frequency of their transmission are implementation specific. The digital twin node 1 uses the values ​​stored in its attribute table to form an attribute report for the sleepy node 100 it represents.

[0024] Therefore, when the sleepy node 100 wakes up, it must perform a series of operations to understand any changes that occurred while it was in sleep mode. For example, the sleepy node 100 must reconcile its attribute table with the attribute table stored in the digital twin node 1. As described above, due to the commands that the digital twin node 1 is able to execute on behalf of the sleepy node 100, some attributes may have changed. If the digital twin node 1 has not made any changes to those attributes during this period, the sleepy node 100 will update the attributes in its own attribute table. However, if the sleepy node 100 has also updated one or more attributes of the same attributes as those modified by the digital twin node 1, it must resolve conflicts to determine which value is the correct value to be stored for each attribute. The specific rules for resolving such conflicts are outside the scope of the present invention. The digital twin node 1 will then forward any buffered commands to the sleepy node 100. The sleepy node 100 must then process any commands it receives. Finally, executing these buffered commands may affect the properties of the sleepy node 100. Therefore, the sleepy node 100 can then send its updated properties to the digital twin node 1 after processing the command.

[0025] This explains the operation of the digital twin node 1 and the sleepy node 100 during normal operation.

[0026] However, it is possible that the digital twin node 1 may become unavailable. For example, the digital twin node 1 may be powered off, removed from the network, or fail. When waking up, the sleepy node 100 will detect that it cannot communicate with its digital twin node 1. In this case, the sleepy node 100 must find a new digital twin node 2 to replace the original digital twin node 1. Figure 2 shows this process. First, as shown in the figure, the original digital twin node 1 becomes unavailable. Then, the sleepy node 100 disassociates from the digital twin node 1. Note that digital twin node 1 does not know that this has happened because it is unavailable. Then, the sleepy node 100 repeats Figure 1 , where it sends out a multicast "discovery message" to identify other proxy nodes. After the available proxy nodes respond, the sleepy node 100 selects one of these nodes as its new digital twin node 2 and associates with the new digital twin node 2. It then transmits its properties to the new digital twin node 2. The controller 110 can then be aware of this new association at a later time.

[0027] A potential problem arises if at a later time the original digital twin node 1 becomes available again. Because it does not know that the sleepy node 100 has made an association with the new digital twin node 2, it may believe that it is still the digital twin node for the sleepy node. One way to solve this problem is by using a recency score.

[0028] When the sleepy node 100 makes its first association, it assigns a first recency score to this association. This first recency score is also provided to the digital twin node 1. Therefore, when the controller 110 learns about the association between the sleepy node 100 and its digital twin node 1, it also learns about this first recency score. The digital twin node 1 must store its own recency score and include it in its response to the multicast "discovery message" or "discovery query". Figure 2 As shown in , if the original digital twin node 1 becomes unavailable, and the sleepy node 100 forms an association with the new digital twin node 2, the sleepy node 100 will assign a second recency score to the new association.

[0029] In one embodiment, the sleepy node 100 assigns recency scores in sequence so that the second recency score will be greater than the first recency score. In this way, when the original digital twin node 1 becomes available again after a period of unavailability, it transmits a multicast "discovery query" with a unique node identifier of its sleepy node to discover whether there are other digital twin nodes representing the same sleepy node in the network. When this happens, the new digital twin node 2 will respond to the query. When the original digital twin node 1 receives the response, it will know that there is now a new digital twin node with a recency score greater than its own recency score. This will indicate to the original digital twin node 1 that the sleepy node 100 has found the new digital twin node 2, and it will disassociate itself from the sleepy node 100. In addition, if the controller 110 issues a query and both the original digital twin node 1 and the new digital twin node 2 respond, the controller 110 can use their different recency scores to determine which proxy node is the current digital twin node. Therefore, using the recency score allows the controller 110 and the original digital twin node 1 to determine the most recent digital twin association.

[0030] Figure 3How the controller 110 determines the appropriate digital twin is shown in more detail. In this figure, it is presented that the digital twin node 1 has previously gone offline and a new association is created for the sleepy node 100. The sequence begins with the controller 110 transmitting a multicast "discovery query" asking about the nodes associated with the sleepy node 100 (referred to as node ID 99 in the figure). In response, all digital twin nodes that have an association with the sleepy node 100 reply to the multicast. The controller 110 then checks the recency score of each of these nodes that replied, looking for the largest recency score and ignoring digital twins with smaller recency scores, which indicate that they are no longer associated with the sleepy node 100. The digital twin with the largest recency score is treated as a new digital twin node 2, and future messages for the sleepy node 100 will be transmitted from the controller 110 to this new digital twin node 2. Note that digital twin node 1 has a smaller recency score than the recency score supplied by the new digital twin node 2 , and is therefore not considered to be a digital twin for sleepy node 100 .

[0031] Another concept is the concept of a chain of digital twin nodes. In some embodiments, a chain of interconnected digital twin nodes may be created. For example, the distance between the controller 110 and the sleepy node 100 may be such that two or more hops are required to reach the sleepy node 100. In addition, the digital twin node may not be able to support an unlimited number of sleepy nodes. In either of these two cases, there may be a chain of digital twins. As described above, during the commissioning phase, the sleepy node 100 may select digital twin node 1 and associate with it. Then, digital twin node 1 may select another digital twin node and associate with it, and so on, until the last digital twin node is directly connected to the controller 110. This is Figure 4A As shown in , there are three digital twin nodes located between the controller 110 and the sleepy node 100. Link codes can be used to define these chains. For example, the digital twin node 1 that is closest to the sleepy node 100 can be assigned a link code with a value of "1". The digital twin node 2 that is directly associated with the digital twin node 1 can have a link code of "2". This continues so that the digital twin node farthest from the sleepy node 100 has the largest link code. Although Figure 4A Three such digital twin nodes are shown, with the understanding that the number of digital twin nodes in the chain is not limited to any particular number.

[0032] Therefore, each digital twin can have two values: a recency score and a link code. This combination allows replacing a digital twin node in the chain when it becomes unavailable.

[0033] exist Figure 4AIn the example in , assume that the recency score of each digital twin node is initially set to 1. In addition, assume that the link code is "1" for digital twin 1, "2" for digital twin 2, and "3" for digital twin 3. A couplet defined as a link code followed by a dot and then a recency score can be used to define each digital twin node. Therefore, these digital twins are identified as (1.1), (2.1), and (3.1). At a later time, digital twin 2 becomes unavailable. The digital twin node closer to the sleepy node (in this case, digital twin 1) recognizes this and disassociates from digital twin 2. It then sends out a multicast discovery message and identifies a new digital twin node to associate with itself. In one embodiment, the new digital twin node can be identified as the next link in the chain (in this case, digital twin 3) simply by reference to its current link code. Therefore, digital twin 1 is associated with digital twin 3 and the attributes associated with sleepy node 100 are copied to digital twin 3. Note that due to this change in configuration, digital twin 1 now provides a link code of 2 to digital twin 3 (because it is now second in the chain). In addition, because this is the second time that digital twin 1 has associated with the digital twin on behalf of sleepy node 100, digital twin 3 also has a recency score of 2. Therefore, the digital pair associated with digital twin 3 has changed from (3.1) to (2.2). In some embodiments, digital twin 1 also updates its recency score because its association has been changed. In this scenario, digital twin 1 has changed from (1.1) to (1.2). Therefore, in some embodiments, both digital twins on opposite sides of the removed digital twin update their recency scores.

[0034] At a later time, the original Digital Twin 2 may become available. To determine if it is still part of the chain, it transmits a multicast “discovery query” with its sleepy node’s unique node identifier to discover if there are other digital twin nodes in the network representing the same sleepy node. When this happens, the Digital Twin 1 and Digital Twin 3 nodes will respond to the query. The original Digital Twin 2, when receiving the response, will know that there is now a new digital twin (Digital Twin 3), which has the same link code as the original Digital Twin 2’s own link code, and a recency score that is greater than the original Digital Twin 2’s own recency score. Based on this, it realizes that Digital Twin 3 has replaced it in the chain and it is no longer part of this chain. It is then disassociated from the chain. Although Figure 4AOnly 3 digital twins are shown in this chain, but this process works for chains of any length. Thus, if there is a digital twin 4 associated with digital twin 3 between digital twin 3 and controller 110, digital twin 3 will inform digital twin 4 that its new link code is now 3. Its recency score may remain unchanged. In another embodiment, the recency score for digital twin 4 may be increased.

[0035] In addition, if Figure 4B As shown in , if the controller 110 issues a query and both the original digital twin node 2 and the new digital twin node 3 respond, the controller 110 is able to use their different recency scores and matching link codes to determine which proxy node is the current digital twin node. Therefore, using the recency score and link code allows the controller 110 and the original digital twin node 2 to determine the most recent digital twin in the chain.

[0036] Notice, Figure 4B Controller 110 is shown attached to digital twin 3 because it has the largest link code and a larger recency score. However, controller 110 can choose to associate with any digital twin node in the chain. In some embodiments, as explained above, controller 110 can issue the multicast described above and receive multiple responses. Each of these responses can contain both a link code and a recency score. In certain embodiments, controller 110 can associate with the node with the highest link code, although it can choose a different link code. Controller 110 then checks all responses with the selected link code, looking for the largest recency score. The node with the selected link code and the largest recency score is then selected as the digital twin that controller 110 will use for all communications with 100. The criteria for selecting a link code are implementation specific and may depend on factors such as proximity to controller 110 and proximity to sleepy node 100.

[0037] Figure 4A-4B A scenario is shown where a digital twin in the chain becomes unavailable and adjacent digital twins are simply connected to each other.

[0038] However, other embodiments are possible. Figure 5A scenario is shown in which one of the digital twin nodes in the chain becomes unavailable and a new digital twin node is inserted in its place. In this embodiment, the following sequence can be followed. First, one of the digital twin nodes (digital twin 2) becomes unavailable. In this configuration, the digital twin node (digital twin 1) adjacent to digital twin 2 but closer to the sleepy node can be called a near-side neighbor, while digital twin 3 is called a far-side neighbor. The near-side neighbor (i.e., a digital twin node with a link code less than one of the link codes of the unavailable digital twin node) recognizes that this digital twin node 2 is unavailable and disassociates from the node. It then performs a discovery mechanism to identify other nodes that can serve as part of the chain. Once the near-side neighbor discovers these nodes, it selects a node and associates with it. That new node (called the new digital twin 2) has the same link code as the link code of the unavailable node, however, its recency score is greater because it is the latest association. Finally, the near-side neighbor forwards the attributes of the sleepy node 100 to the new digital twin 2. Note that digital twins that are adjacent to the unavailable node but closer to the controller 110 (which are referred to as far-side neighbors) may also notice that the digital twin 2 has become unavailable. In one embodiment, the near-side neighbor may also notify the far-side neighbor that it has found a replacement for digital twin 2. The near-side neighbor shares details about the new digital twin 2 with the far-side neighbor. The far-side neighbor can then go forward to form an association with the new digital twin 2. In response, the new digital twin 2 can forward the attributes associated with the sleepy node 100 to the far-side neighbor. Alternatively, the new digital twin 2 can perform a discovery process and find a node (digital twin 3) with a link code that is one greater than its own link code, and associate with that node.

[0039] The following summarizes many of the operations used to implement this concept. o During the addition of a sleepy node to a Wi-Fi network, the sleepy node 100 forms a permanent association with an always-on node (called a proxy node). This becomes a digital twin. This can be performed during commissioning of the sleepy node. oWhen a digital twin in a chain of digital twins becomes unavailable, the node closest to the unavailable digital twin must disassociate itself from that digital twin and associate itself with a new digital twin. o The controller 110 may directly or indirectly discover one or more digital twins associated with a particular sleepy node 100 using a multicast service discovery mechanism. o Digital twins can send attribute reports to the controller 110 periodically or on demand from the attribute tables of the sleepy nodes they replicate. o The controller 110 sends any command intended for the sleepy node 100 to one of the digital twins associated with that sleepy node. oWhen the sleepy node 100 wakes up, it synchronizes its properties and processes any buffered commands from the digital twin nodes.

[0040] In addition, for command handling, the sleepy node 100 may require that certain commands be sent to it directly by the controller 110 when it wakes up. For example, if the command involves updating the firmware on the sleepy node 100, the firmware update protocol may directly require real-time communication between the controller 110 and the sleepy node 100. In one embodiment, the user will be required to restart the sleepy node 100, and then before the sleepy node 100 enters low power mode, it will initiate a firmware update protocol with the controller 110 as part of its boot-up sequence. If it is necessary to enable certain commands to be processed, or when multiple buffered commands cannot be processed within the initial wake-up duration, the sleepy node 100 can allow the digital twin node to request an extension in its wake-up duration. The digital twin must be able to receive all commands intended for the sleepy node 100. In this scenario, the digital twin can process commands on behalf of the sleepy node 100 by updating its copied attributes associated with the sleepy node 100. Alternatively, the digital twin can buffer commands that it cannot process by updating attributes.

[0041] Note that while the concept of link code is described above for a chain of digital twins, it can also be implemented in simpler configurations such as Figure 1 The network is shown in .

[0042] Figure 6 A block diagram that can be applied to the Wi-Fi device described above is shown. Note that this architecture can be applied to digital twin nodes as well as sleepy nodes.

[0043] The Wi-Fi device 10 has a processing unit 20 and an associated memory device 25. The processing unit 20 may be any suitable component, such as a microprocessor, an embedded processor, a dedicated circuit, a programmable circuit, a microcontroller, or another similar device. The memory device 25 contains instructions 26, which, when executed by the processing unit 20, enable the Wi-Fi device 10 to perform the functions described herein. The memory device 25 may be a non-volatile memory, such as a flash memory, an electrically erasable ROM, or other suitable device. In other embodiments, the memory device 25 may be a volatile memory, such as a RAM or a DRAM.

[0044] Although a memory device 25 is disclosed, any computer readable medium may be employed to store the instructions. For example, a read-only memory (ROM), a random access memory (RAM), a magnetic storage device (such as a hard drive), or an optical storage device (such as a CD or DVD) may be employed. In addition, the instructions 26 may be downloaded into the memory device 25, such as, for example, via a network connection (not shown), via a CDROM, or by another mechanism. The instructions 26 may be written in any programming language and are not limited by the present disclosure. Therefore, in some embodiments, there may be multiple computer readable non-transitory media containing the instructions described herein. A first computer readable non-transitory medium may be associated with a computer readable medium such as a memory device 25. Figure 6 The second computer readable non-transitory medium may be a CDROM, or a different memory device located remote from the Wi-Fi device 10. The instructions contained on the second computer readable non-transitory medium may be copied to the memory device 25 to allow the instructions to be executed by the Wi-Fi device 10.

[0045] The Wi-Fi device 10 further includes a Wi-Fi network interface 30 that uses an antenna 35 to connect to a Wi-Fi network.

[0046] The Wi-Fi device 10 may include a data storage device 40 in which data transmitted and received by the Wi-Fi network interface 30 is stored. The data storage device 40 is a conventional volatile memory. The processing unit 20 has the ability to read and write the data storage device 40 in order to communicate with other devices in the Wi-Fi network.

[0047] Although not shown, the Wi-Fi device 10 also has a power source, which may be a battery or a connection to a permanent power source, such as a wall outlet. For example, the sleepy node 100 may utilize a battery, while the digital twin node may utilize a permanent power source, such as a wall outlet.

[0048] Although the processing unit 20, the memory device 25, the Wi-Fi network interface 30 and the data storage device 40 are Figure 6 , but it should be understood that some or all of these components may be integrated into a single electronic component. Figure 6 It is used to illustrate the functionality of the Wi-Fi device 10 rather than its physical configuration.

[0049] This system and method has many advantages. By utilizing the digital twin, sleepy nodes are able to remain in sleep mode for extended periods of time while still remaining part of a Wi-Fi network. In addition, by allowing sleepy nodes to find the digital twin and automatically associate with the digital twin, the operation of the controller is simplified. In addition, the use of recency scores and link codes allows for simpler reconfiguration of the network in the event that the digital twin becomes unavailable.

[0050] The present disclosure is not limited by the scope of the specific embodiments described herein. In fact, other various embodiments of the present disclosure and modifications to the present disclosure (except those described herein) will be apparent to those of ordinary skill in the art from the above description and accompanying drawings. Therefore, such other embodiments and modifications are intended to fall within the scope of the present disclosure. In addition, although the present disclosure has been described herein in the context of a specific implementation in a specific environment for a specific purpose, those skilled in the art will recognize that its usefulness is not limited thereto, and the present disclosure can be beneficially implemented in any number of environments for any number of purposes. Therefore, the claims set forth below should be appreciated in view of the full breadth and spirit of the present disclosure described herein.

Claims

1. A method for creating a digital twin node for a low-power Wi-Fi device in a Wi-Fi network, comprising: Sending a multicast "discovery message" from the low-power Wi-Fi device to identify a proxy node that can act as the digital twin node; receiving, at the low power Wi-Fi device, a response from a proxy node capable of acting as the digital twin node; Selecting a first proxy node among the proxy nodes as the digital twin node, and forming an association with the first proxy node; as well as A recency score is assigned to the digital twin node, the recency score indicating how recently the association was formed, wherein the recency score is used by a controller to identify a most recent digital twin node associated with the low power Wi-Fi device.

2. The method of claim 1, wherein: Each time the low power Wi-Fi device forms an association with one of the proxy nodes, the low power Wi-Fi device is assigned a different recency score.

3. The method of claim 1, wherein: Each time the low power Wi-Fi device forms an association with one of the proxy nodes, the low power Wi-Fi device increases the recency score.

4. The method of claim 1, wherein: After the association is formed, the digital twin node becomes unavailable, and wherein, in response, the low power Wi-Fi device: Disassociating from the digital twin node; Send out a multicast "discovery message" to identify proxy nodes that can act as new digital twin nodes; receiving a response from a proxy node capable of acting as the new digital twin node; Selecting a second proxy node among the proxy nodes as the new digital twin node, and forming a new association with the second proxy node; and A second recency score is assigned to the new digital twin node, the second recency score being different from the recency score assigned to the digital twin node.

5. The method of claim 4, wherein: After the new association is formed, the digital twin node becomes available, and wherein the digital twin node: transmitting a multicast “discovery query” with a unique node identifier associated with the low power Wi-Fi device to discover whether other digital twin nodes exist in the Wi-Fi network; receiving a response from the new digital twin node, wherein the response includes the second recency score; comparing the second recency score to a recency score of the digital twin node and determining that the digital twin node is no longer associated with the low-power Wi-Fi device; and The digital twin node itself is disassociated from the low-power Wi-Fi device.

6. The method of claim 4, wherein: After the low power Wi-Fi device forms the new association, the controller: issuing a query to discover a proxy node associated with the low power Wi-Fi device; receiving responses from the digital twin node and the new digital twin node; comparing the second recency score to the recency score assigned to the digital twin node; and The new digital twin node to communicate with with respect to the low-power Wi-Fi device is selected based on the recency score and the second recency score.

7. The method of claim 1, wherein: After the association is formed, the low-power Wi-Fi device also assigns a link code to the digital twin node.

8. A method of configuring and maintaining a chain of digital twin nodes, comprising: forming a chain using a plurality of digital twin nodes between a controller and a low-power Wi-Fi device, wherein a first digital twin node is closest to the low-power Wi-Fi device and a second digital twin node is closest to the controller; and A unique link code is assigned to each digital twin node in the chain, wherein the link code indicates the position of the corresponding digital twin node in the chain.

9. The method of claim 8, further comprising: creating associations between pairs of adjacent digital twin nodes in the chain; as well as A recency score is assigned to each association, the recency score indicating when the association was formed.

10. The method of claim 9, wherein: After a third digital twin node in the chain arranged between the first digital twin node and the second digital twin node becomes unavailable, digital twin nodes on both sides of the third digital twin node, referred to as near-side neighbors and far-side neighbors, are associated with each other.

11. The method of claim 10, wherein: All digital twin nodes arranged between the third digital twin node and the controller are assigned new link codes.

12. The method of claim 11, wherein: The link codes of all digital twin nodes arranged between the third digital twin node and the controller are reduced.

13. The method of claim 10, wherein: The far neighbor receives the new recency score.

14. The method of claim 10, wherein: The near neighbor and the far neighbor are assigned new recency scores.

15. The method of claim 9, wherein: After a third digital twin node in the chain arranged between the first digital twin node and the second digital twin node becomes unavailable, digital twin nodes on both sides of the third digital twin node, referred to as near-side neighbors and far-side neighbors, are associated with a new digital twin node.

16. The method of claim 15, wherein: The new digital twin node adopts the link code of the third digital twin node.

17. The method of claim 15, wherein: The new digital twin node is assigned a recency score that is different from the recency score previously assigned to the third digital twin node.

18. A Wi-Fi network, comprising: Controller; Low-power Wi-Fi devices; as well as One or more digital twin nodes, the one or more digital twin nodes are associated with the low-power Wi-Fi device, wherein the association between the low-power Wi-Fi device and each digital twin node is assigned a recency score, wherein the recency score is used by the controller to identify the digital twin node most recently associated with the low-power Wi-Fi device.

19. The Wi-Fi network of claim 18, wherein: Each time the low power Wi-Fi device forms an association with a digital twin node, the low power Wi-Fi device is assigned a different recency score.

20. The Wi-Fi network of claim 18, further comprising at least a second digital twin node, wherein: Each digital twin node is assigned a link code that indicates the location of the digital twin node between the controller and the low-power Wi-Fi device.