Method and apparatus for identifying a target device

A terminal device is configured to perform a method for identifying a target device in a local area network (LAN) comprising a plurality of potential target devices. The method includes communicating in an omni-directional format to obtain discovered devices within the area, communicating in a narrow beam format in a direction of the target device; identifying a first list of a first plurality of devices including the target device; eliminating a device from the first list of devices to create a second list of devices; calculating a distance between the terminal device and each device in the second list of devices; determining a precise distance between the terminal device and the target device using a precise distance measurement method; determine which device of the second list of devices has a distance that compares favorably to the precisely determined distance; and identifying the device ID.

TECHNICAL FIELD

The present invention relates to wireless communications. More particularly, the present invention relates to a method and an apparatus for identifying and communicating with a target device by a terminal device.

BACKGROUND

In recent wireless communications, especially in social environment, it is very popular that friends or colleagues split expenses or share photos or videos or other content with each other at a social event via a terminal device. By using Bluetooth or wireless fidelity (Wi-Fi) protocol communications, a terminal device can discover other terminal devices via scanning. IEEE 802.11 standard technologies, for example, allow a terminal device to discover an access point (AP) and/or other Wi-Fi device(s). Such discovery allows the terminal device to be connected to the AP or with the other terminal devices through the AP or directly using Peer-to-Peer communications.

Many terminal devices use generic naming nomenclature such as a hardware model number. The generic name of the terminal device is presented when the terminal device is scanned by another terminal device. When there are multiple terminal devices in an area, especially when there are multiple terminal devices that are similar, the terminal device that is scanning the area cannot identify which target device is which based on the scanned generic names that are produced. Accordingly, when a user reviews the scan results, it is difficult to pick the one that the user wants to communicate with to, for example, either share data (such as contact information), pictures or files.

SUMMARY

A first aspect of an example embodiment includes a method performed by a terminal device for identifying a target device in a local area network (LAN) comprising a plurality of potential target devices. In the method, the terminal device communicates in an omni-directional format to obtain discovered devices within the area, wherein the discovered devices include a target device; and then communicates in a narrow beam format in a direction of the target device. And then the terminal device identifies a first list of a first plurality of devices including the target device, wherein the first list comprises a device identifier (ID) of each device of the first plurality of devices; eliminates a device from the first list of devices to create a second list of devices, wherein the eliminated device has a lower relative received signal strength (RSSI). And then the terminal device calculates a distance between the terminal device and each device in the second list of devices and determine a precise distance between the terminal device and the target device using a precise distance measurement method. Based on the two kind of distance, the terminal device compares the measured precise distance to the calculated distance for each device in the second list of devices to determine which device of the second list of devices has a distance that compares favorably to the precisely determined distance and identify a first list of a first plurality of devices including the target device, wherein the first list comprises a device identifier (ID) of each device of the first plurality of devices. Through the solution provided, via comparing the calculated distances between the terminal device104G and each of the devices selected in each pointed direction, and the precisely measured distance between the terminal device and each target device, identifying the target device ID may be quick and correct in public area comprising a plurality of potential target devices.

A second aspect of an example embodiment includes a terminal device for identifying a target device in a local area network (LAN) comprising a plurality of potential target devices. The terminal device comprises a non-transitory memory comprising instructions and one or more processors in communications with the memory, wherein the one or more processors are configured to execute the instructions to performing the steps performed by the terminal device in the first aspect of an example embodiment.

A third aspect of an example embodiment includes a computer readable media that includes computer instructions that, when executed by a processor, cause a processor host device to perform the steps performed by the terminal device in the first aspect of an example embodiment.

A fourth aspect of an example embodiment includes a terminal device. Wherein the terminal device includes the function of the terminal device in the first aspect of an example embodiment. The functions may be realized by hardware, or may be realized by software which are performed by hardware. And the hardware or the software include one or more module corresponding to the functions.

A fifth aspect of an example embodiment includes a computer storage media. Where the computer storage media stores instructions performed by the terminal device in the first aspect of an example embodiment, and stores the program performed in the first or the fourth aspect of an example embodiment.

DETAILED DESCRIPTION

Wi-Fi (WiFi) protocol standards communications, such as IEEE 802.11 and 802.15 define wireless local area networking (WLAN) access point (AP) communications with terminal devices. The terminal devices using Wi-Fi protocol communications include personal computers, video-game consoles, cell phones and tablets, digital cameras, smart TVs, digital audio players and modern printers. Wi-Fi compatible devices can connect to the Internet via a WLAN and an access point (AP). The AP is a device that creates a wireless local area network (WLAN) usually in a home, an office or a large building. The AP connects to a wired router, a switch, or a hub via an Ethernet cable, and projects a Wi-Fi signal throughout a designated area. An AP according to IEEE protocols (or hotspot) has a range of about 20 meters (66 feet) indoors and a greater range outdoors. The AP contiguous coverage area can be as small as a single room, or as large as many square kilometers if multiple overlapping access points or boosting circuits are utilized.

Wi-Fi technology communications devices also support ad hoc communications directly from one terminal device to another terminal device without communicating through the AP as an intermediary. This wireless ad hoc network mode has proven popular with multiplayer handheld game consoles, such as the Nintendo DS, a PlayStation Portable, digital cameras, and other consumer electronics devices. Some terminal devices can also share their Internet connection using ad hoc, becoming hotspots or “virtual routers”. Another mode of direct communication over Wi-Fi is Tunneled Direct Link Setup (TDLS), which enables two terminal devices on the same Wi-Fi network to communicate directly, instead of via the AP.

FIG. 1illustrates a communication system100that may be used for implementing terminal devices and methods in accordance with representative embodiments of the present disclosure. According toFIG. 1, at least two access points (APs)102A-102B are located in the local area, may provide location information and device identifier (ID) of each of terminal devices in the communication system. Multiple terminal devices (such as terminal devices104A-104I) are also located in the local area and may connect to a local area network via the APs102A-102B.

The APs102A-102B inFIG. 1connect the multiple terminal devices104A-104I to an adjacent wired local area network (LAN). The APs102A-102B resemble a network hub, relaying data between connected wireless devices in addition to a (usually) single connected wired device, most often an Ethernet hub or switch, allowing the terminal devices to communicate with other terminal devices.

The terminal devices104A-104I all support a Wi-Fi connecting function, and may receive signals from the AP102A and/or AP102B, receive location information and device identifier (ID) of each of terminal devices in the LAN, discover (by scanning or other solution) other terminal devices supporting the Wi-Fi connecting function in the same LAN, identify a target device from the discovered devices based on the location information and device ID from the APs, and establish direct communication with the target device based on the identified device ID in the same LAN via the Wi-Fi connecting function.

The terminal devices104A-104I may represent any suitable end user device and may include such a device (or may be referred to) such as, a user equipment (UE), a wireless transmit/receive unit (WTRU), a mobile station, a fixed or mobile subscriber unit, a pager, a cellular telephone, a personal digital assistant (PDA), a smartphone, a laptop, a computer, a touchpad, a wireless sensor, or a consumer electronics device.

FIG. 2illustrates a flow diagram of an embodiment of a method for identifying target device(s) within a Wi-Fi network and establishing connection with the identified target device(s) after all target devices have been identified. It should be understood that the method according to the present disclosure may be carried out in the communication system as illustrated inFIG. 1. The flow diagram is performed in the terminal device104G which needs to identify at least one target device and connect to at least one target device. As an example in the flow diagram ofFIG. 2, the terminal device104G in the communication system100establishes a connection to the target device104H and the target device104I, and performs the steps illustrated with respect to the flow diagram inFIG. 2.

In Step202, terminal device104G searches for other AP within the area (e.g., an area that can be serviced by the terminal device104G acting as an AP) using a wireless local area network (WLAN) protocol such as IEEE 802.11.

In Step204, the terminal device104G determines whether there is only one Wi-Fi AP in the local area. If there is only one Wi-Fi AP, the terminal device104G performs Step206, otherwise, the terminal device104G performs Step208.

In the described embodiment, the APs102A-102B in the local area may be used to provide a location estimate of each terminal device in the local area as is described below in relation toFIG. 3. Accuracy of a location estimates generally improve with more APs.

In Step206, the terminal device104G operates in an AP mode so that the location estimates may be determined using triangulation techniques.

Generally, in one embodiment, at least two APs are necessary for accurate estimation. Increasing the number of APs in the local area, however, increases the accuracy of the location estimates. Alternatively, a technology for improving the location estimates with just one AP is under development and when such technology is available, such technology may be used in place of using multiple APs to perform the location estimation for the user devices within the area. When such technology is used, steps202-206do not need to be performed. One name for such technology that is currently under development at Stanford University is SpotFi.

In Step208, the terminal device104G obtains location information and a device ID of each of discovered devices.

Terminal device104G may discover and communicate to other terminal devices in the LAN via scanning or other solutions. The discovered terminal devices are also called discovered devices. In the described embodiment, the terminal device104G communicates in an omni-directional format to obtain information of the discovered devices. Each of the discovered devices supports the WLAN communications, and can connect to the terminal device104G or the APs102A-B via Wi-Fi connection based on a connection request from the terminal device104G. Referring back toFIG. 1, the discovered devices may be the terminal devices104A-104F, and the terminal devices104H-104I. The omni-directional format allows the terminal device104G to receive radiated radio wave powers uniformly in all directions in one plane.

After discovering the other terminal devices, the terminal device104G typically receives generic names of the discovered devices. Because the terminal device104does not receive the device ID of each of terminal devices, however, it cannot determine which device is the one that it wants to communicate with. Accordingly, the remaining steps are directed to allowing the terminal device104G to obtain location information and a device ID of each of terminal devices. In the examples discussed below, the terminal device104G may use any one of at least two solutions to obtain the location information and the device ID of each of the discovered devices.

For example, the terminal device104G includes a SpotFi algorithm and may estimate the location information of the discovered devices connected to the AP102A or102B via the SpotFi algorithm. The SpotFi algorithm may be referred to inFIG. 3.

For another example, the SpotFi algorithm is set in the APs of the local area, such as the APs102A-102B. It is the APs102A-102B that estimate the location information of the terminal devices connected to the APs. Accordingly, the terminal device104G obtains the location information and the device ID of each of the discovered devices from the APs102A-102B.

In Step208, The terminal device104G obtains location information and the device ID of each of the discovered devices104A-104F and104H-104I, and records the obtained location information and the device ID. The details of estimating the location of each of the set devices via the SpotFi algorithm may be referred toFIG. 3.

If the terminal device104G performs Step206, the terminal device104G performs Step210after performing Step208. If the terminal device104G does not perform Step206, the terminal device104G performs Step212directly after performing Step208.

In Step210, the terminal device104G switches from the Wi-Fi AP mode to a regular mode of operation.

After obtaining the location information and device ID of each of the discovered device, the terminal device104G switches the Wi-Fi AP mode to a regular mode. The switching may be implemented via any known solution, just as via user's command, and so on.

In Step212, the terminal device104G communicates in a narrow beam format in a direction of a target device (any terminal device in the local area and discovered by the terminal device104G).

The terminal device104G comprises, in one embodiment, a first button to switch between the omni-directional format and the narrow beam format. The switch may be a physical switch or a soft switch. In one particular embodiment, the user terminal transmits through a dedicated directional antenna or transmits narrow a beam of an omni-directional antenna via beamforming technique, as long as the physical switch remains depressed. Once the user is no longer depressing the switch, the terminal device reverts to using the omni-directional antenna for omni-directional communications.

When the user activates the terminal device104G to transmit narrow a beam (regardless of whether it is using a dedicated narrow beam antenna or uses the omni-directional antenna with beam forming techniques), the terminal device104G is expected to be oriented towards the target device to communicate in the direction of the target device based on the user's instruction as a part of identifying the target device terminal ID to support direct communications.

The dedicated directional antenna is, in one embodiment, a high-gain antenna (HGA). The narrow-beamed directional antenna focuses wireless signals in a specific direction resulting in a limited coverage area. The narrow beam width allows more precise targeting of radio signals from other terminal device. The narrow-beamed directional antenna radiates a signal that will have a higher signal strength for receivers that are located in the direction which the terminal device104G is being pointed. The narrow-beamed directional antenna allows for increased performance and reduced interference from unwanted sources. Similarly, signals that are transmitted by other devices that are located in the direction which the terminal device104G is being pointed will be received with a substantially higher signal strength than other terminals within the same area that are not in said direction.

In Step214, the terminal device104G identifies a first list of a first plurality of devices from the discovered devices from the communications in Step212.

After the narrow beam communications in the direction of the target device, the terminal device104G may identify a first list of a first plurality of devices including the target device from the discovered devices. Wherein the first list comprises a device identifier (ID) of each device of the first plurality of devices. The first plurality devices are in the direction of the target device and/or near the direction of the target device. Different direction may have different relative received signal strength (RSSI) depending upon their positions in relation to the direction that terminal device104G is being pointed.

In Step216, the terminal device104G eliminates, based on the RSSI of the first plurality of devices, at least one of device from the first list of the devices having a substantially lower RSSI to create a second list of devices.

Typically, the second list of devices is a subset of the first list of devices and can be expected to often have a lower number of devices within the list.

For example, the terminal device104G communicates in the direction of the terminal device104H, the narrow-beamed directional antenna of the terminal device104G may receive signals from other terminal devices in the limited coverage area, such as terminal device104H,104C,104D,104I. Therefore, the first list of the first plurality of terminal devices comprises terminal device104H,104C,104D,104I. In this example, the second list is half the size of the first list based on the RSSI readings that are affected by the direction and use of the narrow transmission beam.

In one embodiment, the number of devices in the second list may be a selectable number that is selected either via firmware or user option. For example, if the second list is limited to three devices, then, according to one embodiment, the devices having the top three RSSI will be selected and included in the second list.

In Step218, the terminal device104G calculates the distance (D) between the terminal device104G and each device in the second list of devices based upon the location estimates (acquired by any means) and the location of terminal device104G. It should be noted that the first list of devices, and therefore the second list of devices, includes the advertised device names (the generic names) as well as the device IDs. Accordingly, terminal device104G correlates the device IDs to the calculated distances. For example, assuming that there are 2 terminal devices in the second list of devices, such as the terminal device104H and the terminal device104C. The distance between the terminal device104G and each of the second devices may be D1for terminal device104H and D2for terminal device104C.

In Step220, the terminal device104G determines a precise distance (D′) between the terminal device104G and the target device using a precise distance calculation method. The precise distance calculation method is not based on the location information of the target device. Instead, it is based upon a device configured to measure distances such as a laser based range finder or a radar based range finder. It should be noted that Step220may be performed before Step218.

In Step222, the terminal device104G compares the precise distance (D′) to the calculated distance (D) for each device in the second list of devices to determine which device has a distance that compares favorably to the precisely determined distance. More specifically, the terminal device104G compares D1with D′, and D2with D′ to determine which device of the second list of devices had a distance that compares favorably to the precisely determined distance. For example, device of the second list of devices has a distance that compares favorably to the precisely determined distance may be the device whose distance is most similar to the precise distance D′. By comparing favorably, the comparison need not be exactly the same but only proximately the same since the calculated distances are based upon position estimates that may not be exactly correct. If, for example, D1calculates to be 25 feet away and D2calculates to be 15 feet away while D′ is known to be exactly 16.5 feet away, D2is determined to be the target device because its calculated distance is so much closer to the actual distance D′ in comparison to D1.

If there are at least two terminals in the second list having same distance to the terminal device104G and compares favorably to the precisely determined distance, the terminal device104G may instruct an error to the user, to trigger the user to change the location of the terminal device104G, to perform Steps212-220again.

In Step224, the terminal device104G identifies the device ID corresponding to the device having the favorable comparison (terminal device104H) as the device ID of the target device.

In Step226, the terminal device104G records the identified device ID in a recipient list.

In Step228, the terminal device104G marks the recorded device ID as the identified device recorded in Step208, to avoid the need to repeat the process in the future to establish direct communications with the identified device.

In Step230, the terminal device104G determines whether there is other target device to be identified. If yes, the process returns to Step212, otherwise, performs Step232.

The terminal device104G comprises a second button, i.e, “Done”, to instruct whether there is another target device to be identified. If the terminal device104G checks that the second button is pressed, it means there is no more target device to identify. It then performs Step232.

If the terminal device104G checks that the second button is not pressed, the terminal device104G should perform Steps212to230again until all target devices have been identified.

The second button may be a soft button. The terminal device104G determines whether the soft button is pressed to determine whether there is other target device to be identified.

In Step232, the terminal device104G connects to the target devices based on device IDs in the recipient list.

Specifically, the terminal device104G sends a connection request to each of the target devices based on device IDs in the recipient list.

In Step234, the terminal device104G may transmit content to the target devices connected to the terminal device104G after connections between the terminal device104G and the targets device are established. The content may be files, video, photo, document and so on.

Because the generic names of devices such as Iphone 7, P9, and so forth, they cannot be identified by human or the terminal device104G on the Wi-Fi discovered or scanned list of devices as the target device(s). Therefore, comparing the calculated distances between the terminal device104G and each of the devices selected in each pointed direction, and the precisely measured distance between the terminal device104G and each target device is necessary.

FIG. 3illustrates a network that illustrates an embodiment of a method for estimating a location of a target device, which enables calculating the distance between the terminal device and the target device. It is expressly understood that the embodiment method may be carried out in the context of the system and methods as illustrated inFIGS. 1 & 2.

InFIG. 3, there are 2 APs including AP102A and AP102B, and a terminal device104G wherein at least one device includes technology such as the SpotFi algorithm previously described, and a target device104H as an example. In this example, it is assumed that the terminal device104G includes the SpotFi algorithm.

In Block302, Both the APs including AP102A and102B send Channel State Information (CSI) and RSSI measurements to the terminal device104G. All the APs are presumed to be able to receive a packet transmitted by a target device104H. The APs may obtain a CSI and a RSSI measurements based on the packet from the terminal device104H, and send the obtained CSI and RSSI measurements to the server

In Block304, the SpotFi algorithm of the terminal device104G calculates a time of flight (ToF) and an angle of arrival (AoA) of all propagation paths from the terminal device104H to each of the APs based on the CSI from each of the APs. The ToF is the time that an object needs to travel a distance through a medium. The AoA is a method for determining the direction of propagation of a radio-frequency wave incident on an antenna array.

In Block306, the SpotFi algorithm of the terminal device104G then identifies a direct path between the terminal device104H and each of the APs that did not undergo any reflections. Such as the direct path between the terminal device104H and the AP1inFIG. 3.

In Block308, the SpotFi algorithm of the terminal device104G estimates the location of the target device (the terminal device104H) by using the direct path AoA estimation and the RSSI measurements from all the APs.

In this example, The Step218inFIG. 2is the terminal device104G obtains the distance between the terminal device104G and the each of devices in the second list based on the location information estimated by the SpotFi algorithm of the terminal device104G.

If the server is the AP including the SpotFi algorithm, the Step218inFIG. 2is the terminal device104G obtaining the distance between the terminal device104G and each of the second set of terminal devices based on the location information.

FIG. 4illustrates a flow diagram of an embodiment of a method for connecting the target device after the terminal device identifies the target device. The process ofFIG. 4may be the details for Steps230and232inFIG. 2. It is expressly understood that the embodiment method may be carried out in the context of the communication system as illustrated inFIG. 1. The flow diagram is performed in the terminal device104G which identifies at least one target device and connects to at least one target device. As an example in the flow diagram, the terminal device104G in the communication system100establishes a connection to the terminal device104H and the terminal device104I, and performs the flow diagram inFIGS. 2 and 4.

The flow diagram ofFIG. 4starts with Step230ofFIG. 2, after the terminal device104G determines that there is no other target device to be identified. Thereafter, the terminal device104G performs Step402.

In Step402, the terminal device104G sends a connection request to each of target devices whose device IDs are included in the recipient list.

The connection request may be a Wi-Fi connection request. As an example, it is assumed that the recipient list comprises the device IDs of the terminal device104H and the terminal device104I. Therefore, the target devices are the terminal device104H and the terminal device104I.

In Step404, the terminal device104G determines what type of a response is received from the target devices. If the response from the target device represents that the target device accepts the connection, the terminal device104G performs Step408. If the response from the target device represents that the target device rejects the connection, the terminal device104G performs Step414. If there is no response from the target device, the process performs Step406.

In Step406, the terminal device104G determines whether it is the first time for determining the type of a response from the target device. If yes, performs Step410. If no, performs Step412.

In Step408, the terminal device104G records a connection between the terminal device104G and the target device which accepts the connection request.

In Step410, the terminal device104G sets a timer for the target device which has not responded to the connection request.

In Step412, the terminal device104G determines whether the timer is expired. If the timer is expired, which means that the target device rejects the connection request, the terminal device104G performs Step414. If the timer is not expired, the terminal device104G performs Step404again.

In Step414, the terminal device104G determines whether the connection request is sent to all the recipients in the recipient list. If the connection request is sent to all the target devices whose device IDs are in the recipient list, or if there is an indication that the user has terminated the process by depression of a dedicated switch or soft key on the terminal device104G, the terminal device104G performs Step234. If there is at least one other target device for which the connection request has not been sent, the terminal device104G performs Step402to send the connection request to repeat the process until the connection request has been sent to all terminal devices in the recipient list.

As another solution, the terminal device104G may also include a third button (such as a done button) to instruct whether target device which does not receive the connection request before. If the terminal device104G checks that the second button is pressed, it means the terminal device104G terminates the process of sending the connection requests to the target devices which have not received the connection request before. It then performs Step234. If the terminal device104G determines that the third button has not been depressed or activated (if a “soft” button), the terminal device performs Steps402-414again until all target devices in the recipient list have received the connection request.

In Step234, the terminal device104G transmits content to the target device which have accepted the connection request(s).

FIG. 5illustrates a flow diagram of an embodiment of a method for identifying a target device within a Wi-Fi network and establishing connection with the target device once the terminal device identifies the target device. It is expressly understood that the embodiment method may be carried out in the context of the communication system100as illustrated inFIG. 1. The flow diagram is performed in a terminal device104G should identify a target device and connect to the target device. As an example in the flow, the terminal device104G in the communication system100will establish a connection to the terminal device104H and the terminal device104I, and performs the flow diagram inFIG. 5.

The flow inFIG. 5is similar to the flow inFIG. 2, Steps502-524are the same as Steps202-224inFIG. 2. InFIG. 5, the terminal device104G connects to the target device right after the terminal device104G identifies the device ID of the selected device, and does not record the device ID of the identified device in a receipt list.

In Step526, the terminal device104G connects to the target device according to the device ID of the identified device.

In Step528. The terminal device104G determines whether there is another target device to be connected. If yes, performs Step512. If No, no other action for identifying a target device to be done, and the processing of identifying the target device in local area network is terminated, and performs Step530.

Step528may refer to the description of Step230. The terminal device104G comprises a second button, i.e, “Done”, to instruct whether there is another target device to be connected. If the terminal device104G checks that the second button is pressed, it means there is no more target device to identify. The identification process is done.

In Step530, the terminal device104G transmits content to the target device via the connection between the terminal device104G and the target device.

FIG. 6illustrates a flow diagram of an embodiment of a method for connecting the target device after the terminal device identifies the target device. The process ofFIG. 6may be the details for Step526inFIG. 5. It is expressly understood that the embodiment method may be carried out in the context of the communication system100as illustrated inFIG. 1. The flow diagram is performed in the terminal device104G which identifies a target device and connects to the target device. As an example in the flow, the terminal device104G in the communication system100will establish a connection to the terminal device104H and the terminal device104I, and performs the flow diagram inFIGS. 5 and 6.

The flow diagram ofFIG. 6starts with Step524ofFIG. 5, which corresponds to Step224ofFIG. 2, after the terminal device104G identifies the device ID corresponding to the device having the favorable comparison (the terminal device104H) as the device ID of the target device. Thereafter, the terminal device104G performs Step602.

A description for Steps602to612may be refer to the description of Steps402to412.

In Step602, the terminal device104G sends a connection request to the target device based on the device ID of the identified target device (the terminal device104H).

In Step604, the terminal device104G determines what type of a response is received from the target device (the terminal device104H). If the response from the target device represents that the target device accepts the connection, the terminal device104G performs Step608. If the response from the target device represents that the target device rejects the connection, the terminal device104G performs Step614, the terminal device104G end the process of connecting. If there is no response from the target device, the process performs Step606.

In Step606, the terminal device104G determines whether it is the first time for determining the type of a response from the target device. If yes, performs Step610, if no, performs Step612.

In Step608, the terminal device104G records a connection between the terminal device104G and the target device.

In Step610, the terminal device104G sets a timer for the target device which has not respond to the connection request.

In Step612, the terminal device104G determines whether the timer is expired. If it is, which means that the target device rejects to the connection request, the terminal device104G performs Step528. If the timer is not expired, the terminal device104G performs Step604again.

In step528. The terminal device104G determines whether there is another target device to be connected. If yes, performs Step512. If No, no other action for identifying a target device to be done, and the processing of identifying the target device in local area network is terminated, and performs Step530.

In Step530, the terminal device104G transmits content to the target device via the connection between the terminal device104G and the identified device.

FIG. 7illustrates an example of a terminal that may be used for implementing the methods according to an example embodiment. These components could be used in the communication system100or in any other suitable system, and performs the Steps ofFIGS. 2-6performed by the terminal device.

As shown inFIG. 7, the terminal device104includes at least one processor704. The processor implements various processing operations of the terminal device104. For example, the processor704could perform signal coding, data processing, power control, input/output processing, scanning and identifying other terminal devices supporting the Wi-Fi connecting function in a LAN, establishing direct communication with other terminal devices in the same LAN via the Wi-Fi connecting function, or any other functionality enabling the terminal device104to operate in the communication system100. The processor704also supports the methods and teachings described in more detail above corresponding toFIGS. 1-6. Each processor704includes any suitable processing or computing device configured to perform one or more operations. Each processor704could, for example, include a microprocessor, microcontroller, digital signal processor, field programmable gate array, or application specific integrated circuit.

The terminal device104also includes at least one transceiver702. The transceiver702is configured to modulate data or other content for transmission by at least one antenna or NIC (Network Interface Controller)710, but typically more than one antenna for beamforming purposes. The transceiver702is also configured to demodulate data or other content received by the at least one antenna710. Each transceiver702includes any suitable structure for generating signals for wireless or wired transmission and/or processing signals received wirelessly or by wire. Each antenna710includes any suitable structure for transmitting and/or receiving wireless or wired signals. One or multiple transceivers702could be used in the terminal device104, and one or multiple antennas710could be used in the terminal device104. Although shown as a single functional unit, a transceiver702could also be implemented using at least one transmitter and at least one separate receiver.

The terminal device104may include or have access to an input interface/an output interface708, coupled to the processor. The output interface708may include a display device, such as a touchscreen, that also may serve as an input device. The input interface708may include one or more of a touchscreen, touchpad, mouse, keyboard, camera, one or more device-specific buttons, one or more sensors integrated within or coupled via wired or wireless data connections to the terminal device104, and other input devices. The terminal device104may operate in a networked environment using a communication interface to connect to one or more remote computers, such as database servers or other terminal devices or systems. The remote computer may include a personal computer (PC), server, router, network PC, a peer device or other common DFD network switch, or the like. The communication interface may communicate over a Local Area Network (LAN), a Wide Area Network (WAN), cellular network, WiFi, Bluetooth, or other networks or systems.

In addition, the terminal device104includes at least one memory706. The memory706stores instructions that defined the previously described algorithms and method steps and further stores data used, generated, or collected by the terminal device104. For example, the memory706could store software or firmware instructions executed by the processor704and data used to scan and identify other terminal devices supporting the Wi-Fi connecting function in a LAN, establish direct communication with other terminal devices in the same LAN via the Wi-Fi connecting function. Each memory706includes any suitable volatile and/or non-volatile storage and retrieval device(s). Any suitable type of memory may be used, such as random access memory (RAM), read only memory (ROM), hard disk, optical disc, subscriber identity module (SIM) card, memory stick, secure digital (SD) memory card, and the like.

Although the example terminal device is illustrated and described as mobile phone104, the terminal device may be in different forms in different embodiments. For example, the terminal device may instead be a smartphone, a tablet, smartwatch, or other device including the same or similar elements as illustrated and described with regard toFIG. 7. Devices, such as smartphones, tablets, and smartwatches, are generally collectively referred to as mobile devices or user equipment. Further, although the various data storage elements are illustrated as part of the terminal device104, the storage may also or alternatively include cloud-based storage accessible via a network, such as the Internet or server based storage.

The terminal device104may include or have access to a computing environment that includes a variety of computer-readable media, such as volatile memory and/or non-volatile memory, removable storage and/or non-removable storage.

FIG. 8illustrates a block diagram of hierarchical a terminal device104that may be used for implementing the methods according to an embodiment of the invention. The terminal device104includes a communicating module802, an identifying module804, an eliminating module806, a calculating module808, a determining module810and a comparing module812.

The communicating module802is connected to the identifying module804, is configured to communicate in an omni-directional format to obtain discovered devices within the area, wherein the discovered devices include a target device, and communicate in a narrow beam format in a direction of the target device.

The identifying module804is connected to the communicating module802, the eliminating module806and the comparing module812. The identifying module804is configured to identify a first list of a first plurality of devices including the target device, wherein the first list comprises a device identifier (ID) of each device of the first plurality of devices;

The eliminating module806is connected to the identifying module804and the calculating module808, is configured eliminate a device from the first list of devices, to create a second list of devices wherein the eliminated device has a lower relative received signal strength (RSSI).

The calculating module808is connected to the eliminating module806and the determining module810. The calculating module808is configured to calculate a distance between the terminal device and each device in the second list of devices.

The determining module810is connected to the determining module810and the comparing module812. The determining module810is configured to determine a precise distance between the terminal device and the target device using a precise distance measurement method.

The comparing module812is connected to the comparing module812and the identifying module804. The comparing module812is configured to compare the measured precise distance to the calculated distance for each device in the second list of devices to determine which device of the second list of devices has a distance that compares favorably to the precisely determined distance.

The identifying module further configured to identifying the device ID corresponding to the device having the favorable comparison as the target device's ID.

It is understood that except for the above functions, the communicating module802, the identifying module804, the eliminating module806, the calculating module808, the determining module810and the comparing module812may also perform the functions of the terminal device104described inFIGS. 1-7.

Any of the communicating module802, the identifying module804, the eliminating module806, the calculating module808, the determining module810and the comparing module812maybe embodied in a general-purpose central procession unit (CPU), general process, digital signal processor (DSP), field programmable gate array (FPGA), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to control the execution of program routines as specified by the present invention. The communicating module802, the identifying module804, the eliminating module806, the calculating module808, the determining module810and the comparing module812may also be a combination of computing function, such as a combination including one or more microprocessors, combination including DSP and microprocessors and so on. The communicating module802may be combined in a transceiver which includes any suitable structure for generating signals for wireless transmission and/or processing signals received wirelessly. And the communicating module802may receive and send signals from or to (3G, 4G, 5G), Universal Mobile Telecommunications Service (UMTS), Code Division Multiple Access (CDMA), Global System for Mobiles (GMS) etc. network.

Further examples of the disclosure are listed below though the claims should not be limited to merely what has been illustrated.

Example 1. A method by a terminal device for identifying a target device in a local area network (LAN) comprising a plurality of potential target devices, comprising:

communicating in an omni-directional format to obtain discovered devices within the area, wherein the discovered devices include a target device;

communicating in a narrow beam format in a direction of the target device; identifying a first list of a first plurality of devices including the target device, wherein the first list comprises a device identifier (ID) of each device of the first plurality of devices;

eliminating a device from the first list of devices, wherein the eliminated device has a lower relative received signal strength (RSSI) to create a second list of devices;

calculating a distance between the terminal device and each device in the second list of devices;

determining a precise distance between the terminal device and the target device using a precise distance measurement method;

comparing the measured precise distance to the calculated distance for each device in the second list of devices to determine which device of the second list of devices has a distance that compares favorably to the precisely determined distance; and

identifying the device ID corresponding to the device having the favorable comparison as the target device's ID.

Example 2. The method according to example 1, further comprising:

determining that an access point (AP) is in a local area network (LAN); and operating the terminal device in an AP mode.

Example 3. The method according to any one of examples 1-2, further comprising:

obtaining location information and a device ID of each of the discovered devices; wherein the discovered devices comprise the first plurality of devices.

Example 4. The method according to any one of examples 1-3, wherein the terminal device comprises a SpotFi algorithm, and the obtaining the location information of each of the discovered devices comprises:

estimating, using the SpotFi algorithm, the location information of each of the discovered devices.

Example 5. The method according to any one of examples 1-4, the obtaining the location information each of the discovered devices comprises:

obtaining the location information of the discovered device from an access point (AP) comprising an SpotFi algorithm.

Example 6. The method according to any one of examples 1-5, wherein calculating a distance between the terminal device and each device in the second list of devices comprises:

calculating a distance between the terminal device and each device in the second list based on the location information of each device in the second list of devices.

Example 7. The method according to any one of examples 1-6, wherein the precise distance calculation method is not based on location information of each device in the second list of devices.

Example 8. The method according to any one of examples 1-7, wherein the terminal device comprises a first button to switch between the omni-directional format and the narrow beam format, the method further comprises:

checking that the first button remains depressed to turn on a dedicated directional antenna.

Example 9. The method according to any one of examples 1-8, wherein the terminal device comprises a first button to switch between the omni-directional format and the narrow beam format, the method further comprises:

checking that the first button remains depressed to narrow a beam of an omni-directional Wi-Fi antenna via a beamforming technique.

Example 10. The method according to any one of examples 1-9, further comprising:

sending a connection request to the target device according to the identified device ID.

Example 11. The method according to any one of examples 1-10, further comprising:

recording the identified device ID into a recipient list.

Example 12. The method according to any one of examples 1-11, further comprising:

determining that there is another target device to be identified; and repeating the communicating in the narrow beam format, the identifying the first list of a first plurality of devices, eliminating devices from the first list of devices, the calculating the distance, the determining the precise distance, the comparing, the identifying the device ID corresponding to the device, and recording the identified device ID.

Example 13. The method according to any one of examples 1-11, wherein the terminal device comprises a second button to instruct whether there is another target device to be connected, determining that there is no other target device to be identified comprises:

checking that the second button is pressed.

Example 14. The method according to any one of examples 1-13, further comprising:

determining that no response is received from the target device; and setting a timer to wait a response for the target device which does not respond to the terminal device.

Example 15. A terminal device for identifying a target device in a local area network (LAN) comprising a plurality of potential target devices, comprising:

a non-transitory memory comprising instructions; and

one or more processors in communications with the memory, wherein the one or more processors are configured to execute the instructions to:

communicate in an omni-directional format to obtain discovered devices within the area, wherein the discovered devices include a target device;

communicate in a narrow beam format in a direction of the target device;

identify a first list of a first plurality of devices including the target device, wherein the first list comprises a device identifier (ID) of each device of the first plurality of devices;

eliminate a device from the first list of devices, wherein the eliminated device has a lower relative received signal strength (RSSI) to create a second list of devices;

calculate a distance between the terminal device and each device in the second list of devices;

determine a precise distance between the terminal device and the target device using a precise distance measurement method;

compare the measured precise distance to the calculated distance for each device in the second list of devices to determine which device of the second list of devices has a distance that compares favorably to the precisely determined distance; and identify the device ID corresponding to the device having the favorable comparison as the target device's ID.

Example 16. The terminal device according to example 15, wherein the one or more processors are configured to further execute the instructions to: determine that an access point (AP) is in a local area network (LAN), and operate the terminal device in an AP mode.

Example 17. The terminal device according to any one of examples 15-16, wherein the one or more processors are configured to further execute the instructions to: obtain location information and a device ID of each of the discovered devices; wherein the discovered devices comprise the first plurality of devices.

Example 18. The terminal device according to any one of examples 15-17, wherein the terminal device comprises a SpotFi algorithm, wherein the one or more processors are configured to further execute the instructions to:

estimate, using the SpotFi algorithm, the location information of each of the discovered devices.

Example 19. The terminal device according to any one of examples 15-18, wherein the terminal device comprises a SpotFi algorithm, wherein the one or more processors are configured to further execute the instructions to:

obtaining the location information of the discovered device from an access point (AP) comprising an SpotFi algorithm.

20. A computer readable media that includes computer instructions that, when executed by a processor, cause a processor host device to perform the steps of:

communicating in an omni-directional format to obtain discovered devices within the area, wherein the discovered devices include a target device;

communicating in a narrow beam format in a direction of the target device;

identifying a first list of a first plurality of devices including the target device, wherein the first list comprises a device identifier (ID) of each device of the first plurality of devices;

eliminating a device from the first list of devices, wherein the eliminated device has a lower relative received signal strength (RSSI) to create a second list of devices;

calculating a distance between the terminal device and each device in the second list of devices;

determining a precise distance between the terminal device and the target device using a precise distance measurement method;

comparing the measured precise distance to the calculated distance for each device in the second list of devices to determine which device of the second list of devices has a distance that compares favorably to the precisely determined distance; and

identifying the device ID corresponding to the device having the favorable comparison as the target device's ID.