Networked ecosystem with extended multi-hop proximity ranging

By employing a multi-hop proximity ranging protocol in the IoT environment, utilizing UWB nodes to measure signal arrival time and angle, and combining recursive routing and dynamic neighbor ranking of relay nodes, the problems of ranging latency and network overload are solved, resulting in a better user experience.

CN121784714APending Publication Date: 2026-04-03GM GLOBAL TECHNOLOGY OPERATIONS LLC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

Existing proximity ranging technologies suffer from problems such as ranging latency, ranging limitations, out-of-range service activation, and network overload in home or industrial IoT environments, resulting in a suboptimal user experience.

Method used

A multi-hop proximity ranging protocol is adopted. By using a decentralized or centralized model in the networked ecosystem, the distance between the initiator node and the target node is dynamically estimated. The arrival time and angle of arrival of the signal are measured by ultra-wideband (UWB) nodes. Combined with the recursive routing of relay nodes and dynamic neighbor ranking, the determination of the distance between nodes is optimized.

Benefits of technology

It effectively extends the communication distance, reduces response latency, prevents out-of-range activation errors, and improves the user experience in IoT environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121784714A_ABST
    Figure CN121784714A_ABST
Patent Text Reader

Abstract

A networked ecosystem with extended multi-hop proximity ranging is provided. A proximity ranging method for use in a networked ecosystem includes accessing an activation profile of a record, the networked ecosystem having an initiator node, a plurality of relay nodes, and a target node. The networked ecosystem may include a smart home or another Internet of Things (IoT) ecosystem. The activation profile includes a desired action or service of the target node. The method includes estimating a range to one or more neighboring nodes of the plurality of relay nodes within a range limit of the initiator node using a proximity ranging protocol. The target node is located outside the range limit of the initiator node. The method also includes dynamically determining an inter-node distance between the initiator node and the target node using one or more neighboring nodes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Advances in global automation technology have led to network-based management of countless storage, diagnostics, maintenance, sensors, actuators, controls, and other operations. For example, home charging operations for modern electric vehicles (EVs) or plug-in hybrid electric vehicles (PHEVs) can be scheduled and managed using “smart garage” network connectivity. Other aspects of smart garage automation include smartphone-based monitoring and opening / closing of garage doors, and control of climate settings such as temperature, humidity, and air quality. Security systems can be similarly managed from remote locations. In a typical garage environment, this automation also facilitates the management of inventory, tools, and parts, along with the hosting of other functions. Similar technologies can be applied to other environments, including but not limited to a user's home or office. Background Technology

[0002] Effective implementation of global automation solutions relies on accurate proximity ranging between connected devices (more generally referred to as communication nodes). In the context of global smart garage automation and other exemplary Internet of Things (IoT) applications, proximity ranging typically refers to the process of determining the distance between these nodes. Common proximity ranging techniques using electromagnetic waves include estimating the distance between a transmitter and receiver based on received signal strength, the amount of time it takes for packets transmitted from the transmitter to reach the receiver (i.e., time of flight), and other techniques. The transmitted signal can be ultra-wideband (UWB), Bluetooth Low Energy (BLE), Wi-Fi, etc. However, this technology can only measure proximity ranges within a maximum limit. For some emerging home or industrial IoT use cases requiring low latency, this maximum limitation in range measurement can lead to suboptimal user experiences. Summary of the Invention

[0003] This disclosure relates to proximity ranging protocols used in local networked ecosystems. The proposed solution (hereinafter referred to as "multi-hop" proximity ranging) aims to address potential problems such as ranging latency, ranging limitations, out-of-range (OOR) service activation, network overload, and suboptimal customer experience in Internet of Things (IoT) environments (such as the aforementioned global smart garage application). The proposed proximity ranging protocol can be used to manage end-to-end proximity ranging in the aforementioned local networked ecosystem, where an initiating node requests multiple connected relay nodes to estimate the distance to an out-of-range target node. The disclosed protocol can be implemented to dynamically estimate the distance between the initiating node and the target node using either a decentralized or centralized model, both of which are described in detail below. When activating a service hosted on or involving operations on the target node, the decentralized model relies on peer relay nodes to reach the target node. In the alternative centralized model, a central controller is envisioned that is operable to reach the target node for the aforementioned service activation.

[0004] Specifically, this document discloses a proximity ranging method for use in a networked ecosystem having an initiator node, multiple connected nodes (“relay nodes”), and a target node. The method according to a representative embodiment includes an activation profile of an access log, which includes the desired action or service of the target node. The method also includes using a proximity ranging protocol to estimate the range of one or more neighboring nodes among the multiple relay nodes that are within the proximity range limit of the initiator node. The target node is located outside the range limit of the initiator node and is therefore too far for direct exchange of wireless signals. Furthermore, the method in this embodiment includes dynamically determining the inter-node distance between the initiator node and the target node using one or more neighboring nodes, and subsequently triggering the desired action or service when the inter-node distance is determined to be no greater than an activation threshold.

[0005] In a possible embodiment, one or more adjacent nodes are within the range limit of the target node.

[0006] Determining the inter-node distance between the initiator node and the target node can be based on estimating the angle of arrival of signals exchanged between the initiator node and its neighboring nodes. This method may include estimating the angle of arrival of signals exchanged between the target node and its neighboring nodes. The estimated range to neighboring nodes can also be based on the arrival time of signals sent from the initiator node to the neighboring nodes.

[0007] When estimating the proximity range of neighboring nodes, the method may include instructing neighboring nodes to estimate the range between themselves and the target node. This action may include sending a signal to neighboring nodes.

[0008] In one or more embodiments, dynamically determining the inter-node distance between the initiator and the target node may include recursively determining the inter-node distance between a first node and a second node using intermediate nodes, wherein the first, second, and intermediate nodes are one of the aforementioned initiator, relay, and target nodes. In this implementation, the second node is outside the range constraints of the first node. The intermediate node is within the proximity range constraints of both the first and second nodes. The first node, second node, and intermediate node are nodes on a determined ranging route between the initiator node and the target node.

[0009] In response to the failure to estimate the corresponding range of one of the neighboring nodes of the undetected node, re-attempt to estimate the corresponding range of the undetected node, or select an alternative node route from the initiator node to the target node.

[0010] Accessing an activation profile recorded in a computer storage medium may include accessing an activation profile recorded in the memory of a central controller that communicates remotely with (a) an initiator node and one or more relay nodes via a Wi-Fi router, and with (b) one or more relay nodes and a target node via a Wi-Fi router and a border router. In a possible embodiment, estimating the corresponding range to one or more neighboring nodes includes measuring the time of arrival (ToA) and angle of arrival (AoA) of signals transmitted from the initiator node to one or more neighboring nodes.

[0011] As part of this method, nodes that support ultra-wideband (UWB) can be used to perform measurements of the time of arrival (ToA) and angle of arrival (AoA) of the signal.

[0012] The shortest distance algorithm can be used to determine the node path from the initiator node to the target node through one or more neighboring nodes.

[0013] The method according to an embodiment includes generating a data packet via an initiating node and transmitting the data packet to one or more neighboring nodes. The data packet includes a unique identifier for the initiating node, a ToA (To-A), an AoA (AoA), and unique identifiers for one or more neighboring nodes. In response to receiving a data packet from the initiating node, the method may include sending a response data packet via each of the one or more neighboring nodes, including sending the unique identifier of each of the one or more neighboring nodes, the angle of arrival of the received data packet, and the time of arrival of the data packet.

[0014] Embodiments of this method include periodically checking the state and connectivity of one or more neighboring nodes at a sampling frequency, and then adjusting the sampling frequency based on the characteristics of the one or more neighboring nodes. The method may also include ranking one or more neighboring nodes in a table based on predetermined criteria, and dynamically updating the table to prioritize one or more neighboring nodes for actions or services.

[0015] The initiating node may include a smartphone or a vehicle, and the target node may include a smart home device. The activation profile of the access record may include records of access to smart home devices such as lights, doors, appliances, and / or vehicle charging station settings.

[0016] Another aspect of this disclosure includes a networked ecosystem, embodiments of which include an initiator node, a plurality of relay nodes including at least one relay node and at least one smart node, a target node located outside the range limitations of the initiator node, and a computer storage medium (memory) containing a recorded activation profile. The recorded activation profile includes the desired actions or services of the target node.

[0017] The networked ecosystem in this embodiment is configured to: use a proximity ranging protocol to detect the corresponding range of one or more neighboring nodes among a plurality of relay nodes that are within the range limit of the initiator node; dynamically determine the inter-node distance between the initiator node and the target node based at least in part on the corresponding range to one or more neighboring nodes; and trigger a desired action when it is determined that the inter-node distance between the initiator node and the target node is not greater than an activation threshold.

[0018] In another embodiment, the networked ecosystem includes an initiator node in the form of a smartphone or vehicle with Ultra-Wideband (UWB) capabilities. The networked ecosystem also includes multiple relay nodes, including at least one switching node and at least one UWB-enabled smart node. The target node is located outside the range constraints of the initiator node and is configured as a smart home device. A computer storage medium (memory) contains an activation profile that outlines the desired actions or services for the target node, including settings for lights, doors, appliances, and / or vehicles of the smart home device.

[0019] This embodiment also includes a Wi-Fi router, a border router, and a central controller. The controller communicates with the initiator node and one or more relay nodes via the Wi-Fi router, and with one or more relay nodes and the target node via the Wi-Fi router and the border router. This networking ecosystem is configured to: use a proximity ranging protocol to detect the corresponding ranges of one or more neighboring nodes among a plurality of relay nodes within the range constraints of the initiator node; use the corresponding ranges of one or more neighboring nodes to dynamically determine the inter-node distance between the initiator node and the target node; rank one or more neighboring nodes in a table based on predetermined criteria; and dynamically update the table to prioritize one or more neighboring nodes for actions or services.

[0020] The following solutions are provided:

[0021] 1. A proximity ranging method for use in a networked ecosystem, the networked ecosystem having an initiator node, multiple relay nodes, and a target node, the ranging method comprising:

[0022] Access the activation profile recorded in the computer's storage medium as the desired action or service of the target node;

[0023] The proximity range of one or more neighboring nodes within the range limit of the initiator node is estimated by the initiator node using a proximity ranging protocol, wherein the target node is outside the range limit of the initiator node;

[0024] The distance between the initiator node and the target node is dynamically determined, at least in part, based on the corresponding ranges to one or more neighboring nodes; and

[0025] When the distance between the initiator node and the target node is determined to be no greater than the activation threshold, the desired action or service is triggered.

[0026] 2. According to the method described in Scheme 1, one or more adjacent nodes are within the range limit of the target node.

[0027] 3. According to the method of Scheme 1, the determination of the inter-node distance between the initiator node and the target node is also based on estimating the arrival angle of the signals exchanged between the initiator node and its neighboring nodes, and estimating the arrival angle of the signals exchanged between the target node and its neighboring nodes.

[0028] 4. The method according to Scheme 1, wherein the estimated range of neighboring nodes is also based on the arrival time of the signal sent by the initiator node to the neighboring nodes.

[0029] 5. The method according to Scheme 1 further includes, when estimating the range of neighboring nodes, commanding the neighboring nodes to estimate the range between themselves and the target node, wherein the command includes sending a signal to the neighboring nodes.

[0030] 6. According to the method of Scheme 1, dynamically determining the distance between the initiator node and the target node further includes recursively determining the distance between the first node and the second node using intermediate nodes, wherein the second node is outside the range limit of the first node, wherein the intermediate node is within the range limit of both the first node and the second node, and wherein the first node, the second node and the intermediate node are nodes on the determined ranging route between the initiator node and the target node.

[0031] 7. The method according to Scheme 1 further includes:

[0032] In response to the failure to estimate the corresponding range of one of the neighboring nodes of the undetected node, re-attempt to estimate the corresponding range of the undetected node, or select an alternative node route from the initiator node to the target node.

[0033] 8. The method according to Scheme 1, wherein accessing the activation profile recorded in the computer storage medium includes:

[0034] Access the activation profile recorded in the memory of the central controller, which communicates remotely with (a) the initiator node and one or more relay nodes via a Wi-Fi router, and with (b) one or more relay nodes and the target node via a Wi-Fi router and a border router.

[0035] 9. The method according to Scheme 1, wherein estimating the corresponding range of one or more neighboring nodes includes measuring the arrival time (ToA) and angle of arrival (AoA) of the signal sent by the initiator node to one or more neighboring nodes.

[0036] 10. The method according to Scheme 9, wherein a node supporting ultra-wideband (UWB) is used to perform measurements of the time of arrival (ToA) and angle of arrival (AoA) of the signal.

[0037] 11. The method according to Scheme 9 further includes:

[0038] The shortest distance algorithm is used to determine the node path from the initiator node to the target node through one or more neighboring nodes.

[0039] 12. The method according to Scheme 9 further includes:

[0040] Data packets are generated via the initiator node; and

[0041] Transmit data packets to one or more neighboring nodes. The data packets include the unique identifier of the initiating node, ToA and AoA, and the unique identifiers of one or more neighboring nodes.

[0042] 13. The method according to Scheme 12 further includes:

[0043] In response to receiving a data packet from the initiator node, a response data packet is sent via each of one or more neighboring nodes, including a unique identifier for each of the one or more neighboring nodes, the angle of arrival of the data packet, and the time of arrival of the data packet.

[0044] 14. The method according to Scheme 1 further includes:

[0045] The state and connectivity of one or more neighboring nodes are periodically checked at a sampling frequency; and

[0046] The sampling frequency is adjusted based on the characteristics of one or more neighboring nodes.

[0047] 15. The method according to Scheme 1 further includes:

[0048] Rank and sort one or more adjacent nodes in the table based on predetermined criteria; and

[0049] The table is updated dynamically to prioritize one or more adjacent nodes for an action or service.

[0050] 16. The method according to Scheme 1, wherein:

[0051] The initiating node includes a smartphone or vehicle, and the target node includes smart home devices; and

[0052] The access log activation profile includes records of access to smart home devices such as lights, doors, appliances, and / or vehicle charging station settings.

[0053] 17. A networked ecosystem, comprising:

[0054] Initiator node;

[0055] Multiple relay nodes, including at least one switching node and at least one smart node;

[0056] The target node is located outside the range restrictions of the initiator node; and

[0057] Computer storage medium (memory) containing a recorded activation profile, which includes the desired action or service of the target node.

[0058] The networked ecosystem is configured to: use a proximity ranging protocol to detect the corresponding range of one or more neighboring nodes among a plurality of relay nodes within the range limit of the initiator node; dynamically determine the inter-node distance between the initiator node and the target node based at least in part on the corresponding range to one or more neighboring nodes; and trigger a desired action when it is determined that the inter-node distance between the initiator node and the target node is not greater than an activation threshold.

[0059] 18. The networking ecosystem according to Scheme 17, wherein the computer storage medium is part of an initiator node or at least one intelligent node, and wherein the initiator node or at least one intelligent node is configured as an ultra-wideband (UWB) node or a Wi-Fi-enabled node.

[0060] 19. The networked ecosystem according to Scheme 17 further includes:

[0061] Wi-Fi router;

[0062] Border routers; and

[0063] The central controller communicates with the initiator node and one or more relay nodes via a Wi-Fi router, and with one or more relay nodes and the target node via a Wi-Fi router and a border router.

[0064] 20. A networked ecosystem, comprising:

[0065] Initiator nodes, which include smartphones or vehicles and have ultra-wideband (UWB) capabilities;

[0066] Multiple relay nodes, including at least one switching node and at least one smart node, wherein at least one smart node includes UWB capability;

[0067] The target node is located outside the range restrictions of the initiator node and is configured as a smart home device.

[0068] Computer storage medium (memory) containing an activation profile, which includes the desired actions or services for the target node, including settings for lights, doors, appliances and / or vehicles of smart home devices.

[0069] Wi-Fi router;

[0070] Border routers; and

[0071] A central controller communicates with an initiator node and one or more relay nodes via a Wi-Fi router, and with one or more relay nodes and a target node via a Wi-Fi router and a border router, wherein the networked ecosystem is configured to: use a proximity ranging protocol to detect the corresponding range of one or more neighboring nodes among a plurality of relay nodes within the range limit of the initiator node; use the corresponding range of one or more neighboring nodes to dynamically determine the inter-node distance between the initiator node and the target node; rank one or more neighboring nodes in a table based on predetermined criteria; and dynamically update the table to prioritize one or more neighboring nodes for actions or services.

[0072] When taken in conjunction with the accompanying drawings and appended claims, the above-described features and other features and advantages of this disclosure will readily become apparent from the following detailed description of illustrative examples and models for carrying out this disclosure. Furthermore, this disclosure explicitly includes combinations and sub-combinations of the elements and features presented above and below. Attached Figure Description

[0073] Figure 1 This is a diagram of a representative ecosystem configured to use the extended multi-hop proximity ranging and localization strategy described in this paper.

[0074] Figure 2 This is a block diagram illustrating a protocol for implementing the extended multi-hop ranging and positioning strategy of this disclosure.

[0075] Figure 3A and Figure 3B Corresponding decentralized and centralized models for implementing extended multi-hop proximity ranging and localization strategies are shown according to various aspects of this disclosure.

[0076] Figure 4 A method for estimating the location of a target node based on ranging geometry is shown.

[0077] Figure 5 This is a flowchart describing a method for implementing multi-hop proximity ranging and positioning according to aspects of this disclosure.

[0078] Figure 6 and Figure 7 These are block diagrams describing proximity node estimation and dynamic neighbor ranking, both of which can be used as part of the disclosed extended multi-hop proximity ranging and localization strategy.

[0079] Figure 8 This is a flowchart describing the implementation of dynamic proximity node estimation according to an embodiment.

[0080] This disclosure may be modified or embodied in alternative forms, and representative embodiments are shown in the accompanying drawings and described in detail below. The inventive aspects of this disclosure are not limited to the disclosed embodiments. Rather, this disclosure is intended to cover alternatives falling within the scope of the disclosure defined by the appended claims. Detailed Implementation

[0081] Referring now to the accompanying drawings, in which the same reference numerals in several views refer to the same features, Figure 1 The diagram illustrates a local Internet of Things (IoT) networking ecosystem 10, in which multiple communication nodes are networked and communicate with each other. The networking ecosystem 10 is shown and described as a non-limiting global automated smart garage of a smart home 11. In such an embodiment, the aforementioned nodes may include one or more of the following: for example, a wireless / Wi-Fi enabled thermostat 12, a garage door 13, a security camera 14, an appliance 15, a smartphone 16 or other smart devices (e.g., a smartwatch or other wearable device), a light bulb 17, a vehicle 18, etc. As will be described below, the networking ecosystem 10 also includes a computer storage medium 19 in which an activation profile 190 is recorded or stored. The actual host or location of the computer storage medium 19 may vary depending on the embodiment and is therefore depicted as... Figure 1 Separate various networked devices in the process.

[0082] The following text is about Figure 1 The descriptions of smart home and representative smart garage implementations are for illustrative purposes only; the actual number and configuration of the constituent nodes participating in the networked ecosystem 10 will vary depending on the intended applications. Figure 3A and Figure 3B As shown, the networked ecosystem 10 includes an initiator node 20I and multiple connected relay nodes 20R, wherein the relay nodes 20R include at least one switching node and at least one more capable "intelligent" node, as described in detail below. The networked ecosystem 10 also includes a target node 20T located outside the range limitations of the initiator node 20I, and the aforementioned computer storage medium 19 containing the recorded activation profile 190. The networked ecosystem 10 described herein is configured to use a proximity ranging protocol 30 (… Figure 2 The corresponding range of one or more neighboring nodes of multiple relay nodes 20R within the distance limit of the initiator node 20I is estimated, and the corresponding range is used to dynamically determine the inter-node distance between the initiator node 20I and the target node 20T.

[0083] As envisioned in this article, Figure 1The proximity ranging between nodes in the networked ecosystem 10, and its alternative embodiments, involve the accurate estimation of distances between nodes. For example, a transmitting node such as a smartphone 16 or vehicle 18 can be used to activate services hosted or provided by one or more receiving nodes, such as the opener of garage door 13 or the setting of thermostat 12 or security camera 14. In other applications such as manufacturing plants (not shown), assembly unit controllers may be needed to locate automated robots within the plant, for example via radio frequency identification (RFID) tags or other device nodes, to request inspection of potentially faulty parts as parts are transported on conveyors. Regardless of the specific construction of the networked ecosystem 10, it benefits from the extended multi-hop proximity ranging technology described herein in a variety of ways.

[0084] As an example, modern proximity ranging technology used in typical smart home / garage and other local network applications is based on the open-source Matter. TM The standard is used to manage the communication of locally networked devices. In some applications, a device / node can send an activation command to a target node based at least in part on the target node's proximity. However, Figure 1 Users in the connected ecosystem 10 or industrial IoT, office, or other use cases can benefit from reduced latency and the resulting improved customer experience. For example, a user walking from their home kitchen to their garage might expect to find the garage door 13 fully open and their vehicle 18 disconnected from the charging station (not shown) upon arrival, and / or adjusted according to customized settings for the user near vehicle 18, which could include one or more of seat adjustments, rearview mirror adjustments, cabin temperature settings, etc. If the user waits for the dispatch action to complete before entering vehicle 18, the overall user experience may be degraded. Therefore, extended multi-hop strategies aim to extend communication distance and reduce response latency, prevent out-of-range (OOR) activation errors, and improve local networks (e.g., Figure 1 The overall customer experience within a representative connected ecosystem (10).

[0085] Although omitted for simplicity, it is related to Figure 1 The hardware associated with each node can take the form of one or more application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), electronic circuits, a central processing unit (e.g., a microprocessor or processor), and associated computer-readable storage media / memory. Such non-transitory components of memory include... Figure 1The computer storage medium 19 is capable of storing machine-readable instructions in the form of one or more software or firmware programs or routines, combinational logic circuits, input / output circuits and devices, signal conditioning and buffering circuits, and other components accessible by one or more processors to provide the functions described herein. Therefore, using such hardware residing at each node and associated antennas, receivers, and transmitters, information can be wirelessly exchanged between nodes, for example, via Wi-Fi, Bluetooth, etc. TM Low-energy Bluetooth TM (BLE) etc.

[0086] Brief Reference Figure 2 The Extended Multi-Hop Proximity Ranging Protocol 30 can be used for the following references. Figure 3A and Figure 3B Decentralized and centralized alternative embodiments described. For clarity, protocol 30 is shown as a block diagram. In an IoT environment, an action is triggered on a target node based on a predetermined or pre-recorded user profile. For example, Figure 1 Users of the connected ecosystem 10, walking from the kitchen of the smart home 11 shown to the garage, may expect to adjust the temperature settings and / or seats and rearview mirrors of the vehicle 18 according to their level of customization upon arrival at the garage. Similarly, users moving around the smart home 11 can set profiles for when to turn on the light bulbs 17, charge the vehicle 18, or stop charging, etc., relative to their location in the smart home 11.

[0087] Despite this brief setup, as described above, the extended multi-hop proximity ranging strategy disclosed herein allows for an extension of the distance between the initiating and target nodes relative to existing strategies. This extended range can lead to a better user experience, particularly since some actions, such as opening / closing a door, disconnecting from the electric vehicle (EV) charging processor, or custom adjustments within the vehicle for a specific driver, require time to complete after initiation. Therefore, enabling earlier activation of these actions through enhanced proximity ranging helps reduce or eliminate the time the user must wait for them to complete. Consequently, programmed actions can begin much faster than they would without this instruction.

[0088] exist Figure 2 In the diagram, block 32 represents an activation profile that can be transmitted to an IoT-enabled controller 20CC, as indicated by arrow 33. This controller 20CC can be implemented in various ways, such as... Figure 3A The master / “smart” node in the decentralized ecosystem model 10A shown, or the centralized ecosystem model 10B ( Figure 3BThe central controller 20 in the protocol 30 is described below. Protocol 30 also includes a proximity ranging block 34, as indicated by arrow 35, which is deployed on or hosted by the initiating node 20I, such as... Figure 1 Vehicles 18, smartphones 16, etc. The proximity ranging block 34 can provide the activation rules 34R required for operation according to this disclosure.

[0089] Protocol 30 also includes various relay nodes 20R, including IoT / discoverable connectivity-enabled relay devices 20R within the networked ecosystem 10, operating as either lower-capacity switching nodes or higher-capacity smart nodes, as described below. Block 36 represents these advanced technical capabilities of smart nodes, such as lower power limitations, higher computing power, angle of arrival (AoA) estimation capabilities, etc., while block 38 represents the lower capabilities of switching nodes, such as RFID tags and other possible low-power IoT devices that are typically in sleep mode (and therefore require time to wake up and take actions such as proximity ranging). Protocol 30 also considers the operation of a target node 20T, which is the intended executor of actions initiated via service activation from the initiating node 20I. Reference will now be made to... Figures 3A-8 The examples described depend on Figure 2 The basic protocol 30 architecture.

[0090] Decentralized Model: Reference Figure 3A The decentralized ecosystem model 10A is illustrated in a simplified form to illustrate one aspect of this disclosure. Here, for simplicity, various devices / nodes are nominally labeled AH. Node A represents the initiator node, for example... Figure 1 The smartphone 16 shown could be a telematics unit of vehicle 18. Nodes B, C, D, E, F, and G represent connected nodes, and their type / number / structure will vary depending on the intended implementation. The initiator node A intends to contact a specific device, such as... Figure 1 The thermostat 12 or the garage door 13 opener, referred to here as the target node, is... Figure 3A In a non-limiting embodiment, the target node H serves this purpose. Figure 3A In the decentralized ecosystem model 10A, various distances between nodes separate them from each other. For example, nodes A and B are separated by a distance AB. Similarly, nodes A and C are separated by a distance AC, and so on. As shown in the figure, Figure 3A Other distances in the representative decentralized ecosystem model 10A include distances BD, CD, DE, CF, FG, GH, and FH.

[0091] The decentralized multi-hop proximity ranging strategy described here is based on the following assumptions: (1) Approximately 65% ​​of the nodes are low-powered with limited communication and computing capabilities, for example, Figure 1 The light bulbs 17, alarms, etc., and therefore lack the ability to measure distance, time of arrival (ToA), or angle of arrival (AoA); and (2) each node is independent and decentralized, with peer-to-peer networks such as BLE, Zigbee, or Nodes B, C, E, F, and G are the aforementioned low-power nodes (“transfer nodes”). Figure 3A Node D is a node that supports Ultra-Wideband (UWB) or Wi-Fi, and has higher computing power than the transmitting node. Node D may be represented as... Figure 1 The smart phone 16 or appliance 15, or possibly a smart TV (not shown) or another smart node with the ability to measure or estimate distance, ToA and / or AoA. For simplicity, nodes BG are collectively referred to here as relay nodes.

[0092] In the proposed decentralized deployment, the extended multi-hop proximity ranging strategy enables the initiator node A to determine the distance between itself and the target node H. This is achieved by interacting with one or more relay nodes BG to estimate the relative position and thus determine the relative distance to the target node H. Each node should be able to retry in the event of node unreachability based on its ability as a relay node or a smart / master node. A relay node can specifically retry to the same node, while the smart node D has the computational power required to intelligently select an alternative route or node (node ​​routing) and thus route to the target node H. In other words, in response to the failure to estimate the corresponding range of one of the neighboring nodes (i.e., as an undetected node), this method may include automatically retrying to estimate the corresponding range to the undetected node, or, depending on the construction of the networked ecosystem 10, automatically selecting an alternative node route from the initiator node 20I to the target node 20T.

[0093] As those skilled in the art will understand, the networked ecosystem 10 described above can be used as an exemplary networked ecosystem having an initiator node 20I, multiple relay nodes 20R, and a target node 20T. Proximity ranging methods typically involve accessing... Figure 1 The activation profile 190 recorded in the computer storage medium 19 is a desired action or service of the target node 20T. This action may include accessing the activation profile recorded in the memory of a smart node (e.g., one of the initiator node 20I or multiple relay nodes 20R), and in one or more embodiments, may include accessing a node supporting Ultra-Wideband (UWB) or a Wi-Fi-enabled node (e.g., Figure 1 The activation profile is recorded in the memory of the smartphone 16 or vehicle 18 shown.

[0094] In a possible implementation, this could include accessing, for example... Figure 1 The diagram shows the setup of various smart home devices, including lights, doors, appliances, and / or vehicle charging stations. The proximity ranging method ultimately involves triggering the desired action or service. This occurs in response to determining that the distance between the initiating and target nodes is no greater than an activation threshold. This is discussed below. Figure 3B In the centralized ecosystem model 10B, the activation profile of the access record can occur in the memory of the central controller 20, wherein the central controller 20 communicates remotely with (a) the initiator node 20I and one or more relay nodes 20R via Wi-Fi router 22, and with (b) one or more relay nodes 20R and the target node 20T via Wi-Fi router 22 and border router 24.

[0095] Embodiments of the method include via using Figure 2 The proximity ranging protocol 30 detects the corresponding ranges of one or more neighboring nodes of multiple relay nodes 20R within the range limit of the initiator node 20I, wherein the target node 20T is located outside the range limit of the initiator node 20I, such as... Figure 3A and Figure 3B As shown. The disclosed proximity ranging method may also include using the corresponding ranges of one or more adjacent nodes to dynamically determine the inter-node distance Dx between the initiator node 20I and the target node 20T. Figure 4 ).

[0096] Centralized model: now referencing Figure 3B The centralized ecosystem model 10B illustrates another aspect of this disclosure. (Compared to...) Figure 3A Similar to the decentralized ecosystem model 10A, for simplicity, various devices / nodes are nominally labeled AH. Node A represents the initiator node. Nodes B, C, D, E, F, and G represent relay nodes. Most or all of these nodes can be configured as the aforementioned initiator nodes, and none of these nodes can be configured as more powerful intelligent nodes. Figure 3B Centralized ecosystem model 10B and Figure 3A The difference in decentralized ecosystem model 10A is the inclusion of additional network nodes, in this case a central controller 20, a Wi-Fi router 22, and a border router 24, for example... Border router.

[0097] As understood in the art, border router 24 can be used to connect a local network to the Internet, or to one or more wider networks, via Wi-Fi router 22. As the name suggests, border router 24 can be located at the edge of the network, in which case it is served by Wi-Fi router 22. Functionally, border router 24 is used to route data traffic and thus acts as a gateway between the local network and one or more external networks. As for Wi-Fi router 22, it is used to communicate with nodes within a given local network, such as… Figure 3B In a non-limiting simplified embodiment, nodes A, B, C, and D are represented as indicated by line 220. Wi-Fi router 22 may also connect to the Internet, for example, via an Ethernet box connected to Wi-Fi router 22, a connection to fiber optic or coaxial cable, a cellular link, or others. Border router 24 connects other nodes, such as nodes E, F, G, and H, to Wi-Fi router 22, as indicated by line 26. As indicated by line 25, the Wi-Fi router communicates with an optional central controller 20, where lines 25, 26, 220, and 240 represent wireless communication paths within the networking ecosystem 10.

[0098] The centralized version of this multi-hop strategy is based on the following assumptions: (1) Some nodes are nodes that support Ultra-Wideband (UWB), for example, Figure 1 The smart phone 16 or other mobile device or vehicle 18, mobile robot (not shown), etc., (2) each UWB-enabled node has, for example, the ability to measure ToA or AoA using multiple antennas, such that one or more UWB-enabled nodes can determine the relative position of other UWB nodes, and (3) each UWB-enabled node is connected to the central controller 20 via the wireless network shown. As understood in the art, in order to perform high-speed data transmission over relatively short distances, UWB-enabled sensors are configured to use a specified portion of the radio spectrum, typically 3.1 GHz to 10.6 GHz.

[0099] In addition to other incidental benefits, when in Figure 3B When used in a centralized ecosystem model 10B environment, low-power UWB-enabled sensors enable accurate localization and real-time tracking of objects of interest. Due to the wide frequency range covered, UWB sensors are less susceptible to interference from Wi-Fi or Bluetooth. TM Interference from devices makes UWB sensors optimal for the type of IoT applications envisioned herein. Therefore, detecting one or more neighboring nodes within the scope of this disclosure could include using one or more UWB-enabled nodes to measure the time of arrival (ToA) and angle of arrival (AoA) of signals from one or more neighboring nodes.

[0100] The characteristics of a centralized multi-hop strategy include local distance graph creation, centralized multi-hop localization, and dynamic neighbor sampling. For local distance graph creation, each UWB-enabled node periodically scans its neighboring nodes; the periodicity of this scan is determined by network mobility or the capabilities of neighboring nodes. See below for further details. Figure 5 This describes a method for achieving centralized multi-hop localization. Regarding dynamic neighbor sampling, shortest distance or path algorithms can be used to find paths, adding scanning periodicity to the ranging path nodes. Therefore, the proximity ranging method described herein may include using a shortest distance algorithm to determine the node path from the initiator node 20I through one or more neighboring nodes to the target node 20T.

[0101] refer to Figure 4 When the initiator node (IN) 20I attempts to contact the target node (TN) 20T, each node can act as a relay node (N1) 20R. In the simplified diagram, the initiator node 20I is separated from the relay node (N1) 20R by a distance h1, and the target node 20T is outside the range of the initiator node 20I. The relay node 20R is separated from the target node (TN) 20T by a distance h2. However, the actual distance between the initiator node 20I and the target node 20T cannot be obtained using h1 and h2 alone.

[0102] It is possible to estimate the distance between the initiator node 20I and the target node 20T if one of the following two sets of requirements is met: (1) there is a relay node 20R within the range of the initiator node 20I and the target node 20T, such as Figure 3A The described condition is that relay node 20R is an intelligent / master node capable of identifying the distance h1 (e.g., based on ToA) and AoA(θ1) between itself and initiating node 20I, and the distance h2 and AoA(θ2) between itself and target node 20T; or (2) there are three or more relay nodes N1, N2 and N3 within the range of both initiating node 20I and target node 20T, wherein the latter two are not shown, and nodes 20I, 20T or relay node 20R are not intelligent nodes (i.e., capable of independent ranging), and initiating node 20I knows the location of each relay node (N1, N2, N3). When the above requirement set (1) is met, the distance Dx between nodes 20I and 20T can be calculated (i.e., by means of the distance between them). When group (2) is required to be established, trilateration can be used to determine the range between the initiating node 20I and the target node 20T, i.e., similar to the operation of a Global Positioning System (GPS) satellite constellation.

[0103] Some embodiments may include dynamically determining the inter-node distance between the initiator node 20I and the target node 20T by recursively determining the inter-node distance between the first and second nodes (e.g., initiator node 20I and / or a pair of relay nodes 20R) using intermediate nodes. The first, second, and intermediate nodes are one of the aforementioned initiator, relay, and target nodes. In this illustrative example, the second node is outside the range constraints of the first node, and the intermediate node is within the range constraints of both the first and second nodes. The first, second, and intermediate nodes are nodes on a defined ranging route between the initiator node and the target node.

[0104] Now for reference Figure 5 The local distance graph creation described above can be implemented using either an algorithm or method 100. For clarity, each process step of method 100 is described as a separate set of code and organized into logical blocks. Depending on the action, the individual blocks can be derived from a decentralized ecosystem model 10A (…). Figure 3A ) or centralized ecosystem model 10B ( Figure 3B ) is executed on a specific node, and either of these can be used for building and control. Figure 1 An exemplary IoT ecosystem 10.

[0105] When method 100 begins in block B101 and references Figure 3A and Figure 3B In an exemplary embodiment, method 100 proceeds to block B102 (“position initialization”), whereby the initiator node 20I initializes the position of the target node 20T outside its range. Method 100 then proceeds to block B104.

[0106] Block B104 (“Scanning Neighbors”) requires communication with neighboring nodes within the initiator node 20I's communication range. Since some neighboring nodes may be in sleep or low-power mode, these nodes will be triggered to wake up in block B104, as indicated by arrow WW. Afterward, method 100 proceeds to block B105.

[0107] exist Figure 5 In block B105 (“Smart Node?”), method 100 includes determining, as described above, whether the neighboring nodes scanned in block B104 are master / smart nodes. Therefore, block B104 needs to determine the computational capabilities of neighboring nodes based on whether one or more neighboring nodes are lower-capacity relay nodes or higher-capacity smart nodes (i.e., nodes with multiple antennas and capable of determining time of arrival (ToA) and / or angle of arrival (AoA)). When a neighboring node is a smart node, method 100 proceeds to block B106, and when a neighboring node is a relay node, method 100 proceeds to block B107.

[0108] Block B106 (“Locate Neighbors”) involves initializing the location of neighboring nodes with intelligent capabilities. After this, method 100 proceeds to block B108.

[0109] Block B107 (“Racing w / Neighbor”) addresses the location of neighboring nodes lacking the necessary multi-antenna structure required to enable intelligent capabilities. Method 100 then proceeds to block B109.

[0110] Figure 5 Block B108 (“ToA, AofA”) includes determining the time of arrival (ToA) and angle of arrival (AoA) of the neighboring nodes located in block B106. As understood in the art, the time of arrival involves the receiver node measuring the time it takes to receive the transmitted signal from the neighboring node. Once the time of arrival is measured, the distance (D) between nodes can be readily calculated as the product of ToA and the signal velocity (i.e., the speed of light). As the name suggests, the angle of arrival (AoA) determines the direction in which the signal arrives at the receiver node, where the antenna array detects signals with small phase and amplitude differences. AoA is then determined based on the measured phase and amplitude differences, for example, using beamforming or other suitable algorithms. Once ToA and / or AoA are determined, method 100 proceeds to block B110.

[0111] In block B109 (“ToA”), the initiating node determines the arrival time (ToA) of the adjacent node located in block B106. Since the receiver node is a relay node in this case, the arrival time is the only information available to the receiver node. Once ToA is determined, method 100 proceeds to block B110.

[0112] In block B110 (“Packet”), the initiating node 20I generates a data packet containing relevant information for transmission to neighboring nodes. The data packet may include, for example, a unique identifier for the initiating node, ToA and / or AoA information from blocks B108 or B109 as described above, and unique identifiers for neighboring nodes (e.g., alphanumeric strings or bit codes). Method 100 then proceeds to block B112.

[0113] exist Figure 5 Block B112 (“Send Packet”), when using the above Figure 3AIn a representative embodiment, the initiator node 20I transmits packets from block B110 to the central controller 20. Therefore, embodiments of the proximity ranging method typically include transmitting data packets to one or more neighboring nodes. These data packets include a unique identifier and location of the initiator node 20I, ToA and AoA, and unique identifiers of one or more neighboring nodes. In response to receiving a data packet from the initiator node 20I, block B112 or another block may include sending a response data packet via each of the one or more neighboring nodes, including sending the unique identifier of each of the one or more neighboring nodes, the angle of arrival of the received data packet, and the time of arrival of the data packet. Method 100 then proceeds to block B114.

[0114] Still referencing Figure 5 Method 100 then includes using information from the grouping of block B112 to perform a centralized multi-hop localization algorithm, for example, via... Figure 3B The controller 20. A representative set of codes that can be used for this purpose is as follows:

[0115]

[0116] Then, method 100 proceeds to block B116.

[0117] In block B116 (“Dynamic Neighbor Sampling”), the initiator node 20I receives the path from block B114 and executes the dynamic neighbor sampling routine. As understood in the art, this technique can be used to monitor and manage the status of various neighboring nodes. Typically, each node maintains a local list or table of its neighboring nodes, i.e., those nodes within a communication distance limit, which, depending on the embodiment, may be tens of meters or less. Using dynamic neighbor sampling, the initiator node 20I or other sampling nodes perform the step of periodically checking the status and connectivity of neighboring nodes at a sampling frequency, wherein the sampling frequency is dynamically adjusted up or down as needed based on characteristics of one or more neighboring nodes, such as the presence of node behavior / changes or anomalies, neighboring node movement, movement speed, the rate at which selected neighboring nodes exceed proximity range limits, etc. A higher sampling frequency can be used when a node is moving or on the path determined in block B114. Method 100 then proceeds to block B104.

[0118] refer to Figure 6 and 7 Dense environment models can be used to estimate proximity and dynamically rank neighboring nodes. For example, Figure 6A model 40 illustrating the information flow of the decentralized approach described above is shown. Generally, service requests and demands (arrow 41) are transmitted or otherwise delivered to the static proximity node estimator block 42, such as a logical block hosted on a static node. Connected relay nodes 20-1 and 20-2, in response to the service ranking (arrow 43) from the static proximity node estimator block 42, transmit service responses and node availability statuses (arrows 44 and 45) to the static proximity node estimator block 42, respectively. The service ranking (arrow 43) can be generated from the local list or table of neighboring nodes maintained as described above.

[0119] At once Figure 7 In general, it describes model 400 for implementing dynamic neighbor ranking. Like... Figure 6 , Figure 7 Model 400 begins with service requests and requirements (arrow 41). However, here, the service requests and requirements (arrow 41) are received by the dynamic proximity node estimation block 50, as shown below. Figure 8 An exemplary method 200 for implementing the functionality of block 50 is described. The aforementioned service responses and node availability states (arrows 44, 45, 47) point to block 50, which then communicates with nodes 20-1, 20-2, ..., 20-n to assess their respective performance capabilities. The dashed line of arrow 47 indicates the possibility of more than two nodes.

[0120] Model 400 additionally requires ranking one or more neighboring nodes (in this case, various nodes 20-1, 20-2, ..., 20-n) in a matrix or table 46 used in this IoT ecosystem 10. If the initiator node has multiple nodes as proximity ranging options, then... Figure 7 Block 50 will maintain and dynamically update Table 46 to prioritize adjacent nodes for actions or services based on predetermined criteria. For example, prioritization could consider criteria such as performance and energy efficiency. Nodes are then ranked for each application / service request.

[0121] refer to Figure 8 The flowchart illustrating method 200 can be used to implement model 400. After starting at start block B201, for each node (e.g., Figure 1 Each IoT device in the exemplary IoT ecosystem 10 executes block B202. In block B202, a node maintains a list of neighboring nodes within its communication range. Therefore, this list is local, meaning it is specific to the particular node that maintains the list.

[0122] In block B204, whenever a node moves, it searches for other nodes within its range. For example, if Figure 1If a user of the IoT ecosystem 10 is carrying a smartphone 16 as they walk through their home 11, the smartphone 16 will scan other devices within range of the home 11.

[0123] Figure 8 Block B206 needs to dynamically update the aforementioned neighbor list for the node's latest location. As mentioned above, the scan frequency can be adjusted in real time, either upwards or downwards based on network stability and the nature of nodes entering or leaving the range.

[0124] At block B207, the scanning node that executed blocks B202, B204, and B206 then determines whether it is a higher-capability master / smart node, as described above. If so, the flowchart proceeds to block B209, and the process ends if the initiator / scanning node is a relay node.

[0125] When the scanning node is a smart node, the arrived block B209 includes creating a neighbor ranking table or matrix for the application, the method of which is referenced above. Figure 7 The description is provided. This action is performed based on information from the neighbor list / table / matrix of block B206.

[0126] At block B210, the scanning node then makes a proximity ranging decision based on the new request profile or priority, using the neighbor ranking matrix from block B209. After this, method 200 proceeds to the terminating block B211, where it ends.

[0127] When applied in IoT environments, such as Figure 1-8 The teachings illustrated above offer a wealth of potential benefits. For example, these solutions enable extended multi-hop proximity ranging to enhance cross-device proximity measurement before the user leaves to work. Figure 1 Multi-service activation of various connected devices in the smart home 11. Each device can perform sequential service activation of another device outside the range based on a user-selected profile, such as "Go to work" or "Evening". In a possible use case, a user can initiate a morning routine, starting from the bedroom in the smart home 11 and going to work in the car 18. Today, people can set up "morning" profiles to sequentially activate available services. Typically, based on the efficiency of the user's previous activities within the profile, the next routine may be triggered earlier or later.

[0128] The multi-hop proximity ranging service activation according to this disclosure enhances the profile-based sequential service activation. This is achieved by allowing user equipment (e.g., Figure 1 The smartphone 16 triggers a service from a set of sequential services in its profile before falling within the maximum single-hop proximity range, thereby utilizing that specific service. For example, a person holding a smart device (such as the smartphone 16 or a smartwatch) approaches... Figure 1In a smart home 11, the garage can trigger the activation of bulb 17 based on their proximity. Bulb 17 can then simultaneously measure distance and activate various other devices that were originally out of range relative to the user / initiator node (e.g., smartphone 16, smartwatch, etc.), based on the original stored profiles and the capabilities of various nodes. Therefore, this teaching enables faster service triggering, thus solving the aforementioned latency problem that may have hindered the optimization of existing IoT applications. Given the foregoing disclosure, those skilled in the art will readily understand these and other accompanying benefits through those processes.

[0129] This disclosure allows for many different forms of embodiments. Representative examples of this disclosure are shown in the accompanying drawings and are described herein in detail as non-limiting examples of the disclosed principles. Therefore, elements and limitations described in the abstract, introduction, summary, and detailed description sections but not expressly set forth in the claims should not be incorporated into the claims, individually or collectively, by implication, inference, or otherwise.

[0130] For the purposes of this description, unless otherwise stated, the use of the singular includes the plural, and vice versa; the terms “and” and “or” should be both conjunctions and disjunctive words; “any” and “all” should both mean “any and all”; and the words “including,” “contains,” “comprising,” “containing,” “having,” etc., should mean “including but not limited to.” Furthermore, approximate words, such as “approximately,” “almost,” “substantially,” “generally,” “approximately,” etc., may be used herein in the meanings of “being, near, or close to being” or “within 0-5% of…” or “within acceptable manufacturing tolerances” or logical combinations thereof.

[0131] Detailed descriptions and accompanying drawings or figures are provided to support and describe this teaching, but the scope of this teaching is defined only by the claims. While some best modes and other embodiments for carrying out this teaching have been described in detail, various alternative designs and embodiments exist to practice the teaching as defined in the appended claims. Furthermore, this disclosure explicitly includes combinations and sub-combinations of the elements and features presented above and below.

Claims

1. A proximity ranging method for use in a networked ecosystem, the networked ecosystem having an initiator node, multiple relay nodes, and a target node, the ranging method comprising: Access the activation profile recorded in the computer's storage medium as the desired action or service of the target node; The proximity range of one or more neighboring nodes within the range limit of the initiator node is estimated by the initiator node using a proximity ranging protocol, wherein the target node is outside the range limit of the initiator node; The distance between the initiator node and the target node is dynamically determined, at least in part, based on the corresponding range to one or more adjacent nodes. as well as When the distance between the initiator node and the target node is determined to be no greater than the activation threshold, the desired action or service is triggered.

2. The method according to claim 1, wherein determining the inter-node distance between the initiator node and the target node is further based on estimating the arrival angle of the signals exchanged between the initiator node and its neighboring nodes, and estimating the arrival angle of the signals exchanged between the target node and its neighboring nodes.

3. The method of claim 1, wherein the estimated range of neighboring nodes is further based on the arrival time of the signal sent by the initiator node to the neighboring nodes.

4. The method of claim 1, further comprising, when estimating the range of neighboring nodes, commanding neighboring nodes to estimate the range between themselves and the target node, wherein the command includes sending a signal to the neighboring nodes.

5. The method of claim 1, wherein dynamically determining the inter-node distance between the initiator node and the target node further comprises recursively determining the inter-node distance between the first node and the second node using an intermediate node, wherein the second node is outside the range limit of the first node, wherein the intermediate node is within the range limit of both the first node and the second node, and wherein the first node, the second node, and the intermediate node are nodes on a determined ranging route between the initiator node and the target node.

6. The method of claim 1, wherein accessing the activation profile recorded in the computer storage medium comprises: Access the activation profile recorded in the memory of the central controller, which communicates remotely with (a) the initiator node and one or more relay nodes via a Wi-Fi router, and with (b) one or more relay nodes and the target node via a Wi-Fi router and a border router.

7. The method according to claim 6, further comprising: Data packets are generated via the initiator node; as well as Transmit data packets to one or more neighboring nodes. The data packets include the unique identifier of the initiating node, ToA and AoA, and the unique identifiers of one or more neighboring nodes.

8. A networked ecosystem, comprising: Initiator node; Multiple relay nodes, including at least one switching node and at least one smart node; The target node is located outside the range restrictions of the initiator node; as well as Computer storage medium (memory) containing a recorded activation profile, which includes the desired action or service of the target node. The networked ecosystem is configured to use a proximity ranging protocol to detect the corresponding range of one or more neighboring nodes among multiple relay nodes that are within the range constraints of the initiator node; The distance between the initiator node and the target node is determined dynamically, at least in part, based on the corresponding range to one or more adjacent nodes. And trigger the desired action when the distance between the initiator node and the target node is determined to be no greater than the activation threshold.

9. The networking ecosystem of claim 8, wherein the computer storage medium is part of an initiator node or at least one intelligent node, and wherein the initiator node or at least one intelligent node is configured as an ultra-wideband (UWB) node or a Wi-Fi-enabled node.

10. The networked ecosystem according to claim 8, further comprising: Wi-Fi router; Border router; as well as The central controller communicates with the initiator node and one or more relay nodes via a Wi-Fi router, and with one or more relay nodes and the target node via a Wi-Fi router and a border router.