PATENT DOCUMENT

Publication Number: US-9386402-B2
Application Number: US-201514867439-A
Country: US
Kind Code: B2

Title: Proximity and tap detection using a wireless system

Abstract:
A method for detecting the proximity of a signal source using wireless systems is contemplated in which a wireless mobile device wirelessly receives packets from a signal source and determines a received signal strength for each packet. The wireless mobile device may store information based upon the received signal strength for each packet, and calculate from the information stored for all the packets, a current path loss value corresponding to a current distance from the wireless mobile device to the signal source. The wireless mobile device may then determine whether the current distance is sufficient to be an enabling condition such as tap, for example, for a data transfer or a transaction between the wireless mobile device and the signal source.

Claims:
What is claimed is: 
     
       1. A method comprising:
 wirelessly receiving, by a wireless mobile device packets from a signal source and determining a received signal strength for each packet; 
 calculating, based upon information corresponding to the received signal strength for each of the packets, a current path loss value corresponding to a current distance from the wireless mobile device to the signal source; and 
 determining, by the wireless mobile device, whether the current distance comprises a tap event initiating an exchange of data between the wireless mobile device and the signal source, wherein the tap event comprises physically tapping the wireless mobile device into the signal source,
 wherein the determining whether the current distance comprises a tap event comprises comparing the current path loss value to a plurality of predetermined path loss ranges to determine within which of the path loss ranges the current path loss value falls, wherein each path loss range corresponds to a different distance from the wireless mobile device to the signal source. 
 
 
     
     
       2. The method as recited in  claim 1 , wherein the determining whether the current distance comprises a tap event further comprises comparing the path loss range within which the current path loss value falls to a predetermined distance parameter. 
     
     
       3. The method as recited in  claim 1 , wherein the calculating the current path loss value comprises storing information for a predetermined number of packets, wherein the predetermined number is based upon which range of the plurality of predetermined path loss ranges the current path loss value falls within. 
     
     
       4. The method as recited in  claim 3 , further comprising, responsive to initially receiving the packets, comparing the current path loss value to a path loss range corresponding to a largest distance from the wireless mobile device to the signal source. 
     
     
       5. The method as recited in  claim 3 , wherein the calculating the current path loss value includes discarding given ones of the received signal strength values in response to determining that the given received signal strength value is either above a first signal strength threshold or below a second signal strength threshold for each range of the plurality of predetermined path loss ranges. 
     
     
       6. The method as recited in  claim 1 , wherein the packets received from the signal source correspond to advertising packets, and the signal source corresponds to a wireless server unit. 
     
     
       7. The method as recited in  claim 6 , wherein the wireless server unit comprises another wireless mobile device. 
     
     
       8. The method as recited in  claim 6 , wherein the wireless server unit comprises a point of sale terminal and the exchange of data corresponds to a monetary transaction. 
     
     
       9. The method as recited in  claim 6 , wherein the wireless server unit comprises a wireless access point providing access for the wireless mobile device to a network. 
     
     
       10. A wireless mobile device comprising:
 a receiver/transmitter unit configured to receive packets from a signal source;
 a processor coupled to the receiver/transmitter unit; and 
 
 a proximity unit coupled to the processor and configured to determine a received signal strength for each packet; 
 wherein the proximity unit is further configured to calculate, based upon information corresponding to the received signal strength for each of the packets, a current path loss value corresponding to a current distance from the wireless mobile device to the signal source; 
 wherein the proximity unit is further configured to determine whether the current distance comprises a tap event initiating an exchange of data between the wireless mobile device and the signal source, wherein the tap event comprises physically tapping the wireless mobile device into the signal source; and 
 wherein the proximity unit is further configured to compare the current path loss value to a plurality of predetermined path loss ranges to determine within which of the path loss ranges the current path loss value falls, wherein each path loss range corresponds to a different distance from the wireless mobile device to the signal source. 
 
     
     
       11. The wireless mobile device as recited in  claim 10 , wherein the proximity unit is further configured to compare the path loss range within which the current path loss value falls to a predetermined distance parameter. 
     
     
       12. The wireless mobile device as recited in  claim 10 , wherein the proximity unit is further configured to store information for a predetermined number of packets, wherein the predetermined number is based upon which range of the plurality of path loss ranges the current path loss value falls within. 
     
     
       13. The wireless mobile device of  claim 12 , wherein in response to initially receiving the packets, the proximity unit is further configured to compare the current path loss value to a path loss range corresponding to a largest distance from the wireless mobile device to the signal source. 
     
     
       14. A non-transitory computer readable storage medium including program instructions that are executable by a processor of a wireless mobile device to:
 receive packets from a signal source; 
 determine a received signal strength for each packet; 
 calculate, based upon information corresponding to the received signal strength for each of the packets, a current path loss value corresponding to a current distance from the wireless mobile device to the signal source; 
 determine whether the current distance comprises a tap event initiating an exchange of data between the wireless mobile device and the signal source, wherein the tap event comprises physically tapping the wireless mobile device into the signal source; and 
 compare the current path loss value to a plurality of predetermined path loss ranges to determine within which of the path loss ranges the current path loss value falls, wherein each path loss range corresponds to a different distance from the wireless mobile device to the signal source. 
 
     
     
       15. The non-transitory computer readable storage medium of  claim 14 , wherein the program instructions are executable by a processor of a wireless mobile device to compare the path loss range within which the current path loss value falls to a predetermined distance parameter. 
     
     
       16. The non-transitory computer readable storage medium of  claim 14 , wherein the program instructions are executable by a processor of a wireless mobile device to store information for a predetermined number of packets, wherein the predetermined number is based upon which range of the plurality of path loss ranges the current path loss value falls within. 
     
     
       17. The non-transitory computer readable storage medium of  claim 16 , wherein the program instructions are executable by a processor of a wireless mobile device to store more packets the farther away the wireless mobile device is from the signal source, and to store fewer packets as the wireless mobile device gets closer to the signal source.

Description:
PRIORITY CLAIM 
     This application is a continuation of U.S. patent application Ser. No. 13/760,452, filed Feb. 6, 2013, which claims priority to U.S. Provisional Patent Application Ser. No. 61/696,058, filed Aug. 31, 2012, which are herein incorporated by reference in their entirety. 
    
    
     BACKGROUND 
     1. Technical Field 
     This disclosure relates to wireless communication devices, and more particularly to a wireless mobile device detecting proximity to another wireless device using wireless signals. 
     2. Description of the Related Art 
     The use of wireless communication systems has rapidly evolved from predominantly voice-only communications to the transmission of data, such as Internet and multimedia content. 
     Recently, there has been a trend for wireless devices to be able to transfer data to, or to conduct a transaction with another device such as a wireless mobile device or a stationary wireless device by physically bumping or tapping the wireless mobile device into the second device. This bump or tap may be sensed by, for example, sensors in one or both devices. The devices may then transfer data or conduct a transaction between them. 
     However, it may not be desirable to have to physically tap or bump the wireless mobile device into the other device to initiate the data transfer, or the transaction. 
     SUMMARY OF THE EMBODIMENTS 
     Various embodiments of a method for detecting the proximity of a signal source using wireless systems are disclosed. Broadly speaking, a method is contemplated in which a wireless mobile device wirelessly receives packets from a signal source and determines a received signal strength for each packet. The wireless mobile device may store information based upon the received signal strength for each packet, and calculate from the information stored for all the packets, a current path loss value corresponding to a current distance from the wireless mobile device to the signal source. The wireless mobile device may then determine whether the current distance is sufficient to be an enabling condition such as tap, for example, for a data transfer or a transaction between the wireless mobile device and the signal source. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram of one embodiment of a wireless communication system. 
         FIG. 2  is a diagram of one embodiment of proximity zones between a signal source and a wireless mobile device. 
         FIG. 3  is a block diagram of one embodiment of a wireless mobile device shown in  FIG. 1 . 
         FIG. 4  is a flow diagram depicting the operation of one embodiment of the wireless mobile device shown in  FIG. 3 . 
     
    
    
     Specific embodiments are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the drawings and detailed description are not intended to limit the claims to the particular embodiments disclosed, even where only a single embodiment is described with respect to a particular feature. On the contrary, the intention is to cover all modifications, equivalents and alternatives that would be apparent to a person skilled in the art having the benefit of this disclosure. Examples of features provided in the disclosure are intended to be illustrative rather than restrictive unless stated otherwise. 
     As used throughout this application, the word “may” is used in a permissive sense (i.e., meaning having the potential to), rather than the mandatory sense (i.e., meaning must). Similarly, the words “include,” “including,” and “includes” mean including, but not limited to. 
     Various units, circuits, or other components may be described as “configured to” perform a task or tasks. In such contexts, “configured to” is a broad recitation of structure generally meaning “having circuitry that” performs the task or tasks during operation. As such, the unit/circuit/component can be configured to perform the task even when the unit/circuit/component is not currently on. In general, the circuitry that forms the structure corresponding to “configured to” may include hardware circuits. Similarly, various units/circuits/components may be described as performing a task or tasks, for convenience in the description. Such descriptions should be interpreted as including the phrase “configured to.” Reciting a unit/circuit/component that is configured to perform one or more tasks is expressly intended not to invoke 35 U.S.C. §112, paragraph six, interpretation for that unit/circuit/component. 
     The scope of the present disclosure includes any feature or combination of features disclosed herein (either explicitly or implicitly), or any generalization thereof, whether or not it mitigates any or all of the problems addressed herein. Accordingly, new claims may be formulated during prosecution of this application (or an application claiming priority thereto) to any such combination of features. In particular, with reference to the appended claims, features from dependent claims may be combined with those of the independent claims and features from respective independent claims may be combined in any appropriate manner and not merely in the specific combinations enumerated in the appended claims. 
     DETAILED DESCRIPTION 
     As mentioned above, some wireless mobile devices may have the capability to physically tap or bump another wireless mobile device or a stationary wireless device to initiate (i.e., tap event) an exchange of data such as a monetary transaction or data transfer, for example. In some scenarios these devices typically include accelerometers or other sensors that detect the bump, and can then initiate a security or handshake between the devices. In other scenarios, a wireless mobile device may send out a signal and when the wireless mobile device is close enough to a passive non-powered device, the electromagnetic field created by the wireless mobile device signal may power up the non-powered device through magnetic coupling. These types of proximity taps are typically restricted to a few centimeters. As described in the following embodiments of  FIG. 1  through  FIG. 4 , various embodiments are disclosed in which a wireless mobile device may be able to determine its distance from another device that is emitting a particular signal, whether stationary or mobile, and to determine whether that distance is close enough to enable a data transfer or some other type of transaction with the other device (i.e., to be considered a tap event). 
     Turning now to  FIG. 1 , a block diagram of one embodiment of a wireless communication system is shown. It is noted that the system of  FIG. 1  is merely one example of any of a variety of wireless communication systems. The wireless communication system  10  includes a base station  102  which communicates over a wireless transmission medium (as indicated by the zig-zag) with one or more user equipment (UE) devices (e.g.,  106 A through  106 N). The base station  102  is also coupled a network  100  via another interface, which may be wired or wireless. Each of the UE devices  106 A through  106 N are also coupled to each other UE device  106 A through  106 N via a wireless transmission medium. Lastly, as shown, UE device  106 B is coupled via the wireless transmission medium to a wireless access point  104 . It is noted that components identified by reference designators that include both a number and a letter may be referred to by the number only where appropriate. 
     The base station  102  may be a base transceiver station (BTS) or cell site, and may include hardware that enables wireless communication with one or more of the UEs  106 . The base station  102  may also be equipped to communicate with the network  100 . Thus, the base station  102  may facilitate communication between the UEs  106  and/or between the UEs  106  and the network  100 . The communication area (or coverage area) of the base station  102  may be referred to as a “cell.” In various embodiments, the base station  102 , the UEs  106 , and the wireless access point  104  may be configured to communicate over the transmission medium using any of various wireless communication radio access technologies such as LTE, GSM, CDMA, WLL, WAN, WiFi, WiMAX, Bluetooth, Bluetooth LE, and others for example. 
     In one embodiment, each of the UEs  106 A- 106 N may be representative of a wireless mobile device with wireless network connectivity such as a mobile phone, a hand-held device, a computer or a tablet, or virtually any type of wireless device. As described further below, the UE  106  may include at least one processor (shown in  FIG. 3 ) that is configured to execute program instructions stored in a memory (also shown in  FIG. 3 ). Accordingly, in some embodiments, the UE  106  may perform one or more portions of the functionality described below by executing such stored instructions. However, in other embodiments, the UE  106  may include one or more hardware elements and/or one or more programmable hardware elements such as an FPGA (field-programmable gate array) that may be configured to perform the one or more portions the functionality described below. In still other embodiments, any combination of hardware and software may be implemented to perform the functionality described below. 
     In one embodiment, the wireless access point  104  may be representative of a stationary or mobile point of sale terminal that is wirelessly transmitting packets at some predetermined interval. For example, a cash register at a retail business may include a wireless transceiver for conducting wireless transactions. In another embodiment, the wireless access point  104  may be representative of a stationary or mobile access point such as a wireless router, for example, that is wirelessly transmitting packets at some predetermined interval and which provides access to a computer network, and or the Internet. In various other embodiments, the wireless access point  104  may generally provide access between the UE  106  and any of a variety of computer and/or cellular network functions. 
     As described further below in conjunction with the descriptions of  FIG. 2  through  FIG. 4 , in some embodiments, the UE  106  may be configured to wirelessly receive packets from a signal source such as another UE  106 , or the wireless access point  104 , for example. The UE  106  may also determine the distance to the signal source, and determine whether that distance is sufficient to enable an exchange of data with the signal source (i.e., the device transmitting the packets). 
     Turning to  FIG. 2 , a diagram of illustrating one embodiment of proximity zones between a user equipment device and another wireless device is shown. As shown, UE  106 A is some distance away from the wireless access point  104  and the UE  106 B. As indicated by the circles, the distance from the wireless access point  104  and the UE  106 B is delineated into zones. More particularly, zone  0  corresponds to a first radius, zone  1  corresponds to a second radius, zone  2  corresponds to a third radius, and zones n and m correspond to respective fourth radii, where n and m may be any whole number, and where zone  0  is closer than zone n or m. As the UE  106 A gets closer to the wireless access point  104 , the UE  106 A enters zone n of the wireless access point  104  and if the UE  106 A continues to move closer, it will transition from zone n to zone  2  to zone  1 , and finally to zone  0 . In a similar way, as the UE  106 A moves closer to UE  106 B it will enter zone m and transition to zones  2 ,  1 , and  0 . 
     In one embodiment, each zone may correspond to a different distance for each device. For example, depending on the type of device and particular application, a given device may have zones that correspond to one set of distances, and another device may have zones that correspond to a different set of distances. In addition, as mentioned above each wireless access point  104  may provide a different service. 
     In various embodiments, the wireless access point  104  may broadcast packets at a predetermined interval. In one particular embodiment, the wireless access point  104  and the UE  106 B may broadcast the packets using the Bluetooth LE protocol. As such, the packets may be encoded as advertising packets. The advertising packets may include the address of the transmitting device, information corresponding to connectivity capability, a universal unique identifier (UUID) that identifies the device as “tappable,” and the transmit power at which the packet was transmitted, among others. However, it is contemplated in other embodiments the packets may be broadcast with a different encoding, and they may be broadcast using any type of wireless communication standard. In various embodiments, the wireless access point  104  may act as a server, and the UE  106 A may act as a client in a client-server arrangement. 
     In one embodiment, when the UE  106 A begins receiving these advertising packets, UE  106 A may begin determining the distance to the wireless access point  104  based upon the received signal strength indication (RSSI) of the packets. In addition, the UE  106 A may determine whether the distance is sufficient to enable a transaction or data transfer between the UE  106 A and the wireless access point  104 . In one embodiment, once the determination is made, application software running on the UE  106 A may determine whether to automatically and without user intervention begin the transaction or transfer, or whether user intervention may be needed. 
     In another embodiment, the UE  106 B may act as a server. More particularly, in such an embodiment, the UE  106 B may broadcast packets in a way similar to the wireless access point  104 . However, the packet broadcast may, in one embodiment, not be continuous, but rather when prompted by particular application software, or when activated by user interaction with a software application. In either case, if the UE  106 B begins broadcasting the advertising packets, when the UE  106 A begins receiving these advertising packets, UE  106 A may begin determining the distance to the UE  106 B based upon the received signal strength (RSSI) of the packets. In addition, the UE  106 A may determine whether the distance is sufficient to enable a transaction or data transfer between the UE  106 A and the UE  106 B. 
     As described in greater detail below in conjunction with the descriptions of  FIG. 3  and  FIG. 4 , in various embodiments, the UE  106 A may include a proximity unit that may include hardware, software, or a combination that may be used by one or more applications running on the UE  106 A to determine the distance to a signal source, and to determine based upon some predetermined parameters whether the distance corresponds to an enabling condition (i.e., a tap event) for an exchange of data between the UE  106 A and the UE  106 B. 
     Referring to  FIG. 3 , a block diagram of one embodiment of a user equipment device of  FIG. 1  is shown. It is noted that components that correspond to components shown in  FIG. 1  are numbered identically for clarity and simplicity. The UE  106  includes processor(s)  202  (or processor core(s)  202 ) which is coupled to display circuitry  204  which is in turn coupled to the display  240 . The processor(s)  202  is also coupled to a memory management unit (MMU)  220 , which is coupled to a memory  206 . The processor(s)  202  is also coupled to a receiver/transmitter (R/T) unit  230 , and to a proximity detection unit  260 . The UE  106  also includes an I/O interface  210  that is coupled to the processor(s)  202 , and may be used for coupling the UE  106  to a computer system, or other external device. It is noted that in one embodiment the components shown within UE  106  of  FIG. 2  may be manufactured as stand alone components. However, it is contemplated that in other embodiments various ones of the components may be part of one or more chipsets, or they may be part of a system on chip (SOC) implementation. 
     In various embodiments, the processors  202  may be representative of a number of different types of processors that may be found in a wireless communications device. For example, processor(s)  202  may include general processing capability, digital signal processing capability, as well as hardware accelerator functionality, as desired. The processor(s)  202  may include baseband processing and therefore may digitally process the signals received by the R/T unit  230 . The processor(s)  202  may also process data that may be transmitted by the R/T unit  230 . The processor(s)  202  may also perform a number of other data processing function such as running operating system and user applications for the UE  106 . 
     In one embodiment, the MMU  220  may be configured to receive addresses from the processor(s)  202  and to translate those addresses to locations in memory (e.g., memory  206 ) and/or to other circuits or devices, such as the display circuitry  204 , R/T unit  230 , and/or display  240 . The MMU  220  may also return data to the processor(s)  202  from the locations in memory  206 . The MMU  220  may be configured to perform memory protection and page table translation or set up. In some embodiments, the MMU  220  may be included as a portion of the processor(s)  202 . The display circuit  204  may be configured to perform graphics processing and provide display signals to the display  240 . 
     The R/T unit  230  may, in one embodiment, include analog radio frequency (RF) circuitry for receiving and transmitting RF signals via the antenna  235  to perform the wireless communication. The R/T unit  230  may also include down-conversion circuitry to lower the incoming RF signals to the baseband or intermediate frequency (IF) as desired. For example, the R/T unit  230  may include various RF and IF filters, local oscillators, mixers, and the like. Since the UE  106  may operate according to a number of radio access technologies, the R/T unit  230  may include a corresponding number of RF front end portions to receive and down-convert, as well as up-convert and transmit the respective RF signals of each technology. For example, in one specific implementation, the R/T unit  230  may include an LTE front end and an IS-2000 front end. 
     In various embodiments, the processor(s)  202  may execute software stored within a memory such as memory  206  and memory  266 , for example, to perform functionality associated with determining the distance to a signal source, and determining whether the distance corresponds to a tap event as mentioned above, and described further below. Accordingly, memory  206  and memory  266  may be representative of any type of non-transitory computer readable storage medium or device such as any device in the random access memory (RAM) family of devices, for example. Additionally, the software instructions may be stored on a portable/removable storage media and transferred to memory  206  and/or memory  266 . In other embodiments however, the UE  106  may include hardware associated with the processor(s)  202  and/or the R/T  230  to perform functionality associated with determining the distance to a signal source, and determining whether the distance corresponds to a tap event as mentioned above. In still other embodiments, the UE  106  may include any suitable combination of hardware, firmware and /or software to perform functionality associated with the tune-away mode as mentioned above, and described further below in conjunction with the description of  FIG. 4 . 
     In one embodiment, the proximity unit  260  may be configured to store packets received from a signal source such as a wireless access point  104  or another UE  106 . The proximity unit  260  may use the RSSI values to calculate a current path loss value from a number of RSSI values. In one embodiment, the proximity unit  260  may calculate a path loss value from an average of a number of RSSI values. The path loss value may be calculated as the difference between the transmitted power of the packets and the received power of the packets as measured by the proximity unit  260 . The path loss value corresponds to the distance from the UE  106  to the signal source because generally the greater the distance, the greater the path loss will be. Thus, in one embodiment, lower path loss values correspond to shorter distances. As mentioned above, in one embodiment, the packet may include a value corresponding to the transmitted power of the packet. In another embodiment, the transmitted power of the packet may already be known, based upon the type of device broadcasting the packets. In such cases, the device type may be included in the packets. 
     The proximity unit  260  may store enough packets to reliably calculate stable RSSI values and corresponding path loss values. However, because RSSI measurements and calculations can be less reliable as distance from the signal source increases, the proximity unit  260  may be configured to gather (sample) more packets the farther away the UE  106  is from the signal source (and thus the higher the zone), and to sample fewer packets as the UE  106  gets closer to the signal source. In one embodiment, more samples may be gathered when the UE  106  is in higher zones because, as described further below, there may be many outlier values, and many of the high and low RSSI outlier values may be discarded. This active filtering occurs dynamically and automatically during operation. Accordingly, the proximity unit  260  may initialize as being in the farthest zone, and thus sample and store a larger number of packets, and then compare to values associated with lower zones. Each zone may correspond to a maximum and a minimum path loss value, thereby creating a path loss value range. If the current path loss value falls outside the range for a given zone, the proximity unit  260  compares the current path loss value to the range of the next adjacent zone. This continues until the current path loss value either falls within the range of a particular zone or the current path loss value falls below the minimum value of the lowest (i.e., closest zone). The selection of the next adjacent zone is determined by whether the current path loss value is higher than the maximum value or lower than the minimum value. 
     In one embodiment, the proximity unit  260  may receive information from an application executing on processor  202 . More particularly, in one embodiment, the determination of whether a particular distance corresponds to a tap event may be dependent on the type of application that is running For example, a user may not want to initiate a payment terminal transaction 25 feet away from the terminal, but may allow a payment transaction from two feet. Thus, the application software may provide specific parameters such as the tap event distance, or the corresponding zone to the proximity unit  260 , to allow the proximity unit  260  to make the determination. However, in other embodiments, the proximity unit  260  may provide the current distance and/or the corresponding zone to the application software to enable the application software to make the final tap even determination. 
     In addition, in one embodiment, to prevent an inadvertent second tap event once a tap event has been detected, the proximity unit  260  may be configured to determine whether the zone has increased from the zone that UE  106  was in when the last tap event was detected. Otherwise the proximity unit  260  may not re-arm for another tap event. In other words, in one embodiment, to detect a subsequent tap event the proximity unit  260  must detect that the UE  106  moved away from the signal source far enough to be in the next higher zone, before moving back into the zone in which tap event would be detected. 
     It is noted that in one embodiment, the UE  106  may be configured to continuously monitor for the advertising packets and thereby act as a client device. However, in other embodiments, the UE  106  may be configured to monitor for the advertising packets in response to instructions from application software executing on processor(s)  202 . 
     It is further noted that the UE  106  may also operate as the server device, as described above in reference to the operation of UE  106 B in the description of  FIG. 2 . Accordingly, the UE  106  may be configured to send packets such as the advertising packets, for example. In one embodiment, the UE  106  may begin sending the packets in response to execution of particular application software executing on the processor(s)  202 . Alternatively, the UE  106  may begin sending the packets in response to another type of trigger. 
     In  FIG. 4 , a flow diagram depicting the operation of one embodiment of the wireless user equipment device of  FIG. 1  through  FIG. 3  is shown. Referring collectively to  FIG. 1  through  FIG. 4  and beginning in block  401  of  FIG. 4 , the UE  106  may be receiving packets from a signal source such as a wireless access point (e.g.,  104 ) or another wireless device such as another UE. The proximity unit  260  may store the incoming packets in a storage such as memory  266 , or memory  206 , as desired (block  403 ). As described above, the number of packets may correspond to the zone within which the UE determines that it is currently within. Upon first receiving the packets, the proximity unit  260  may start in the farthest zone. 
     The proximity unit  260  may calculate RSSI values from the packets in the storage (block  405 ). From the RSSI values and the transmitted power values of the stored packets, the proximity unit  260  may calculate a current path loss value, which may be the difference between the received signal strength and the transmitted signal strength. This current path loss value corresponds to the current distance that the UE is away from the signal source (block  407 ). In one embodiment, the proximity unit  260  may discard some number of the highest and lowest RSSI values, and average the remaining RSSI values. In one embodiment the average may be a straight average. In another embodiment, the average may be a weighted average, with more weight being given to more recent values. The number of discarded values may depend upon the current zone, with more values being discarded in farther zones. More particularly, as the distance between the signal source and the UE increases, there may be more opportunities for multipath artifacts, which may present themselves abnormally weak signals. In addition, abnormally high strength signals for a given zone may also be present due, for example, to alternative signal paths. In various embodiments the proximity unit  260  may compare the RSSI values to a pair of per-zone threshold values, one high and one low for each zone. The per-zone threshold values may be determined using any of a variety of statistical methods, for example. 
     The proximity unit  260  may then compare the current path loss value to the maximum and minimum values that make up the range for the current zone. If the current path loss value is not within the range of the current zone (block  409 ), the proximity unit  260  may check to determine if the current zone is the lowest zone (block  411 ). If it is not the lowest (i.e., closest zone), the proximity unit  260  starts comparing the current value to the next lower adjacent zone range (block  413 ). In addition, the proximity unit  260  may continue to receive packets and calculate the current path loss values concurrent with the comparison with the various zone ranges. Further, as the UE moves closer to the signal source from zone to zone, and the proximity unit  260  compares the current path loss values in lower zones, the proximity unit  260  uses fewer packets to calculate the current path loss value (block  415 ). If the current path loss value is still not in the range of the next adjacent zone, the proximity unit  260  continues changing to the next lowest zone (block  413 ), checking until the current value is either being compared to the lowest zone (block  411 ), or the value falls within the range of the current zone. Once the current path loss value falls in the range of the current zone (block  409 ), the proximity unit  260  may determine if the current range corresponds to a tap event (block  417 ). In one embodiment, the proximity unit  260  may compare the distance that corresponds to current zone with one or more predetermined parameters such as the distance from the signal source. As mentioned above the parameters may be provided by application software executing on the processor(s)  202 . 
     If the proximity unit  260  determines that the current zone does not qualify as a tap event, operation proceeds as described above in conjunction with the description of block  401 . However, referring back to block  417 , if the proximity unit  260  determines that the current zone does qualify as a tap event, the proximity unit  260  may notify the application software of the tap event (block  419 ). 
     As mentioned above, once a tap event has been detected, the proximity unit  260  may reduce the occurrence of any subsequent inadvertent tap events. More particularly, in one embodiment, the proximity unit  260  will not re-arm proximity detection until it determines that the UE has moved away from the signal source by at least one zone (block  421 ). If the proximity unit  260  detects that the current path loss value falls within at least one next higher zone, then operation as described above in conjunction with the description of block  401 . 
     Although the embodiments above have been described in considerable detail, numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations and modifications.

Metadata:
Filing Date: 20150928
Publication Date: 20160705
Grant Date: 20160705
Priority Date: 20120831
Inventors: LINDE JOAKIM
TUCKER BRIAN J.
Assignee: APPLE INC
CPC Classifications: [{"code": "H04W4/021", "inventive": true, "first": false, "tree": "[]"}, {"code": "H04W88/02", "inventive": false, "first": false, "tree": "[]"}, {"code": "H04W4/023", "inventive": true, "first": false, "tree": "[]"}, {"code": "H04W88/08", "inventive": false, "first": false, "tree": "[]"}, {"code": "H04W4/008", "inventive": true, "first": true, "tree": "[]"}, {"code": "H04W4/021", "inventive": true, "first": false, "tree": "[]"}, {"code": "H04W4/023", "inventive": true, "first": false, "tree": "[]"}, {"code": "H04B17/318", "inventive": true, "first": false, "tree": "[]"}, {"code": "H04W4/80", "inventive": true, "first": true, "tree": "[]"}, {"code": "H04W4/80", "inventive": true, "first": true, "tree": "[]"}, {"code": "H04L67/06", "inventive": true, "first": false, "tree": "[]"}, {"code": "H04W88/08", "inventive": false, "first": false, "tree": "[]"}, {"code": "H04W88/02", "inventive": false, "first": false, "tree": "[]"}, {"code": "H04W4/021", "inventive": true, "first": false, "tree": "[]"}, {"code": "H04W4/023", "inventive": true, "first": false, "tree": "[]"}]
Family ID: 50187505