System and method of associating devices based on actuation of input devices and signal strength

Information

  • Patent Grant
  • 9510383
  • Patent Number
    9,510,383
  • Date Filed
    Thursday, October 2, 2014
    10 years ago
  • Date Issued
    Tuesday, November 29, 2016
    7 years ago
Abstract
Various operations may be performed based on a distance-related function associated with two or more devices. For example, an association procedure for two or more devices may be based on one or more determined distances. Similarly, presence management may be based on one or more determined distances. A distance-related function may take various form including, for example, a distance between devices, two or more distances between devices, a rate of change in a relative distance between devices, relative acceleration between devices, or some combination of two or more of the these distance-related functions.
Description
BACKGROUND

1. Field


This application relates generally to wireless communication, and more specifically, to distance-based functionality in a wireless communication system.


2. Background


In a wireless communication system various provisions may be made to enable two or more wireless devices to communicate with one another and, in some applications, to enable one wireless device to access functionality provided by another wireless device. For example, when a wireless device enters a coverage area of another wireless device, the wireless devices may perform an association operation to enable the two devices to communicate with one another. In addition, other related operations such as presence management may be performed to enable a wireless device to affect the operation of another wireless device.


Examples of association include setting up a wireless laptop and an wireless access point to communicate or setting up communication between a wireless cell phone or entertainment device (e.g., an MP3 player) and a peripheral device such as a wireless headset (e.g., headphones, an ear piece, etc.) or watch. Briefly, association may involve exchanging messages that enable the wireless devices to determine whether they are capable of communicating with one another and whether they are authorized to do so. For example, the wireless devices may exchange messages that indicate their respective capabilities. In conjunction with this procedure, the wireless devices may negotiate or cooperate in some other manner to agree on a set of parameters to be used for communicating. Moreover, in some applications the wireless devices may utilize an authentication procedure of some type to verify the identity of each other. This identity information may be used by the wireless devices to, for example, determine whether they are authorized to communicate with one another.


Various operations may be performed to enable or otherwise facilitate association. For example, some applications may employ signal strength-based association where it is assumed that the wireless devices are close enough to associate if a received signal strength exceeds a threshold. Other applications may employ RFID-related technology whereby wireless devices are allowed to associate with another if they are close enough so that one device induces RF energy in another device.


In some applications a wireless device may employ presence management to provide certain functionality based on the proximity of the wireless device to another device. For example, in some applications presence management may be employed to modify a user interface of a computer based on which user is sitting in front of the computer. Presence management also may be used to modify the characteristics of a room (e.g., lighting, temperature, music, etc) based on who is in the room.


In practice, an operation such as association or presence management may involve some user interaction with the wireless device to initiate or complete the operation. For example, during association a user may manually set each wireless device into an association or discovery mode, navigate through some software interfaces to a list of discovered wireless devices, select a wireless device, and potentially input some information about the wireless device. In a typical example, information to be entered by a user may include authentication codes or multiple access code information. Similarly, during presence management a user may press a configuration button (e.g., associated with a car seat, a home theater system, etc.), type in a username and password, insert a card, or invoke wireless detection of the presence of a device.


In practice, operations such as association and presence management may not provide a desired level of functionality or may be inconvenient for a user. For example, presence management may be relatively course in nature in that it simply involves determine whether a connection with another wireless device may be detected. In addition, the steps performed by a user to accomplish association, presence management, or other operations (e.g., as mentioned above) may be relatively complicated and confusing for the user. Consequently, a need exists for alternative methods for performing such operations.


SUMMARY

A summary of sample aspects of the disclosure follows. For convenience, one or more aspects of the disclosure may be referred to herein simply as “some aspects.”


This application relates in some aspects to performing an act based on at least one distance between devices. For example, one of various techniques may be employed to determine a distance-related function such as distance or relative motion between two devices. A determination may then be made as to whether the determined distance function meets specified criteria. If so, a corresponding action may then be taken.


In some aspects association between two or more devices may be based on one or more determined distances. For example, an association procedure may be initiated or facilitated in some manner by determining whether the devices are within a given range of one another and/or are moved with respect to one another in a certain manner.


Distance-based association may be employed in a variety of use cases. For example, in a personal or body area network a large number of different piconets may be owned and managed by different entities (e.g., people or networked devices). Moreover, these piconets may have different associated power level requirements and data rates that overlap. Through the use of distance-based association, a new device entering the network may be efficiently associated with a desired piconet or other device in the network. For example, devices may be associated with one another if they are within one foot of each other. Similarly, if several devices are close to one another, the closest devices (e.g., the two closest devices) of these devices may be associated with one another. In addition, distance-based association may be employed to provide secure communication, such as in a point-of-sale application where the relative proximity of two devices is used to ensure that the two devices are authorized to conduct a transaction.


In some aspects presence management may be based on one or more determined distances. Here, various presence management operations may be invoked if it is determined that two or more devices are within a given range of one another and/or are moved with respect to one another in a certain manner. As an example, distance-based presence management may enable a user in possession of a presence management-enabled device to be presented with different presence management responses as the user moves closer to or further away from another presence management-enabled device. Similarly, distance-based presence management may enable a user that is walking through a room to be presented with a different presence management response as opposed to when the same user stops in the room or when the user remain seated in the room.


A distance-related function as taught herein may take various forms. For example, such a function may relate to a distance between devices, two or more distances between devices if the devices are moved with respect to one another, a rate of change in the relative distance between devices, relative acceleration between devices, some other distance-related function, or some combination of two or more of the these distance-related functions.


A distance-related function as taught herein may be implemented in various ways. For example, a distance may be measured by determining the amount of time it takes for signals to travel from one device to another device and then back (e.g., a round-trip time). Such a round-trip time may be calculated, for example, using two-way ranging or by sending interrogation and response signals between the devices. A distance also may be determined using a time-of-arrival measurement or a received power measurement. A rate of change in relative distance may be determined through the use of, for example, a time-of-arrival measurement, a received power measurement, acceleration readings, imaging techniques, detection of changes in electrical and magnetic fields, or detection of Doppler shifts. Relative acceleration between devices may be determined from the rate of change in relative distance data.





BRIEF DESCRIPTION OF THE DRAWINGS

These and other features, aspects and advantages of the disclosure will be more fully understood when considered with respect to the following detailed description, appended claims and accompanying drawings, wherein:



FIG. 1 is a simplified block diagram of several sample aspects of a communication system adapted to perform distance-based operations;



FIG. 2 is a flowchart of several sample aspects of operations that may be performed by a device to perform distance-based operations;



FIG. 3 is a flowchart of several sample aspects of operations that may be performed by a device to perform distance-based operations;



FIG. 4 is a flowchart of several sample aspects of operations that may be performed by devices to determine at least one distance;



FIG. 5 is a simplified block diagram of several sample aspects of a wireless device adapted to perform distance-based operations;



FIG. 6 is a simplified block diagram of several sample aspects of communication components; and



FIG. 7 is a simplified block diagram of several sample aspects of a device adapted to perform distance-based operations.





In accordance with common practice the various features illustrated in the drawings may not be drawn to scale. Accordingly, the dimensions of the various features may be arbitrarily expanded or reduced for clarity. In addition, some of the drawings may be simplified for clarity. Thus, the drawings may not depict all of the components of a given apparatus (e.g., device) or method. Finally, like reference numerals may be used to denote like features throughout the specification and figures.


DETAILED DESCRIPTION

Various aspects of the disclosure are described below. It should be apparent that the teachings herein may be embodied in a wide variety of forms and that any specific structure, function, or both being disclosed herein is merely representative. Based on the teachings herein one skilled in the art should appreciate that an aspect disclosed herein may be implemented independently of any other aspects and that two or more of these aspects may be combined in various ways. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects set forth herein. In addition, such an apparatus may be implemented or such a method may be practiced using other structure, functionality, or structure and functionality in addition to or other than one or more of the aspects set forth herein. As an example, in some aspects a distance-related function as taught herein may relate to a one distance, while in other aspects a distance-related function may relate to a distance and a rate of change of distance.



FIG. 1 illustrates certain aspects of a communication system 100 where a first device 102 may communicate with a second device 104 via a wireless communication link 106. As an example, the device 102 may enter a wireless coverage area of the device 104 and various provisions may then be taken as discussed below to enable the devices 102 and 104 to communicate. In particular, the devices 102 and 104 include functionality whereby operations such as association and presence management are initiated, terminated, or performed in accordance with one or more distance relationships between the devices 102 and 104.


The devices 102 and 104 in the example of FIG. 1 are depicted in a simplified manner to emphasize certain components that may provide functionality relating to distance determination and associated processing. Specifically, the device 102 is depicted to emphasize components that may be employed in a device that ultimately determines one or more distances between the devices 102 and 104 and performs one or more operations based on that determination. Conversely, the device 104 is depicted to emphasize components that may be employed in a device that may perform operations in conjunction with the distance determining device. As will be discussed in more detail below, the device 104 may include functionality that facilitates the distance determination by the device 102 and may also perform one or more operations based on that determination. It should be appreciated that a given device may incorporate the functionality depicted for device 102, the functionality depicted for device 104, or some combination thereof.


The device 102 includes a distance function determiner component (hereafter, distance determiner 108) that is adapted to perform various functions relating to determining one or more distance-related parameters. For example, the distance determiner 108 may determine an absolute distance between the devices 102 and 104, two or more distances between the devices 102 and 104 (e.g., in the event the devices 102 and 104 are moved with respect to one another), a rate of change in the relative distance between the devices 102 and 104, relative acceleration between the devices 102 and 104, or some other distance-related function. As will be discussed in more detail below, the distance determiner 108 may thus include appropriate components or may cooperate with one or more other components (e.g., a radio 110) to repeatedly determine the distance between the devices 102 and 104.


The device 102 also includes an indication generator 112 that is adapted to generate an indication relating to the determined distance parameter(s). For example, the indication generator 112 may generate an indication of the determined absolute distance(s), rate of change in relative distance, relative acceleration, etc. In addition, the indication generator 112 may include a comparator 114 that compares a determined distance with a distance comparison parameter 116 (e.g., a threshold) that may be maintained in the device 102 (e.g., in a data memory). The indication generator 112 may then generate a comparison result indication in accordance with the comparison. As an example, the comparison result indication may indicate that a determined distance is less than a threshold.


The device 102 includes a processor component 118 that is adapted to perform various functions based on at least one determined distance. For example, the processor component 118 may invoke one or more operations depending on the value of the indication. In addition, or in the alternative, the operations performed by the processing component may utilize the indication in some manner.


In the example of FIG. 1 the processor component 118 provides functionality relating to association (e.g., including authentication) and presence management. For example, an association procedure, an authentication procedure, or both, may be invoked or may be dependent on a given distance-related relationship between the devices 102 and 104. Similarly, a presence management procedure may be invoked or may be dependent upon a given distance-related relationship between the devices 102 and 104. To provide such functionality, the processor component 118 may include an association processor component 120, an authentication processor component 122, and a presence management processor component 124.


The device 104 may include several components that operate in conjunction with corresponding components of device 102. For example, the device 104 may include a radio 126 adapted to communicate via one or more wireless communication links (e.g., the link 106) with one or more wireless devices (e.g., the radio 110 of the device 102). The device 104 also may include a processor component 128 that provides functionality that is complementary to the functionality of the processor component 118. Accordingly, the processor component 128 may include an association processor 130, an authentication processor 132, and a presence management processor 134. The device 104 also may include a distance function component 136 for performing one or more distance-related functions in conjunction with the distance determiner 108. Also, the device 104 may include an indication generator 138 that may generate, for example, distance-related indications used by the device 104 or the device 102.


The devices 102 and 104 may take various forms. For example, in some aspects the devices 102 and 104 may comprises various combinations of a headset, a microphone, a medical device, a biometric sensor, a heart rate monitor, a pedometer, an EKG device, a user I/O device, a watch, a remote control, a switch, a tire pressure monitor, an entertainment device, a computer, a point-of-sale device, a hearing aid, a set-top box, a cell phone, or some other device with some form of wireless signaling capabilities. In some aspects the device 104 may comprises an access device (e.g., a Wi-Fi access point) for a communication system. For example, the device 104 may provide connectivity to another network (e.g., a wide area network such as the Internet) via a wired or wireless communication link. Accordingly, the device 104 may enable the device 102 (e.g., a Wi-Fi station) to access the other network. In addition, it should be appreciated that one or both of the devices 102 and 104 may be portable or, in some cases, relatively non-portable.


The devices 102 and 104 may include various components that perform functions bases on signals transmitted or received via the wireless communication link. For example, a headset may include a transducer adapted to provide an audible output based on a signal received via the wireless communication link. A watch may include a display adapted to provide a visual output based on a signal received via the wireless communication link. A medical device may include a sensor adapted to generate sensed signals to be transmitted via the wireless communication link.


The devices 102 and 104 may support or otherwise use various wireless communication links and wireless network topologies. For example, in some aspects the devices 102 and 104 may comprise or form part of a body area network or a personal area network (e.g., an ultra-wideband network). In addition, in some aspects the devices 102 and 104 may comprise or form part of a local area network or a wide area network. The devices 102 and 104 also may support or otherwise use one or more of a variety of wireless communication protocols or standards including, for example, CDMA, TDMA, OFDM, OFDMA, WiMAX, Wi-Fi, and other wireless technologies. Accordingly, the devices 102 and 104 may include appropriate components to establish one or more communication links using various wireless technologies.


Sample operations of the system 100 will now be discussed in more detail in conjunction with the flowcharts of FIGS. 2, 3 and 4. FIG. 2 relates to operations that may be performed, for example, by the device 102. FIG. 3 relates to operations that may be performed, for example, by the device 104. FIG. 4 relates to operations that may be performed to determine one or more distances between the devices 102 and 104. For convenience, the operations of FIGS. 2, 3, and 4 (or any other operations discussed herein) may be described as being performed by specific components (e.g., devices 102 and 104). It should be appreciated, however, that these operations may be performed in conjunction with and/or by other components and, in some cases, using a different number of components. It also should be appreciated that one or more of the operations described herein may not be employed in a given implementation.


Referring initially to FIG. 2, as represented by block 202 a first device such as device 102 commences distance-based operations (e.g., enables a ranging mode) in conjunction with establishing communication with a second device such as device 104. Here, the device 102 may determine whether it has entered a wireless coverage area associated with the device 104. These operations may be initiated automatically or may be initiated based an action by a user who wishes to associate the device 102 with the device 104. In the former case, a discovery mode may be continually enabled such that the device 102 may repeatedly scan to determine whether it has entered a coverage area of a wireless network (e.g., a body area network or personal area network) or a coverage area of some other wireless device. In the latter case, the user may utilize (e.g., actuate) an input device of the device 102 to initiate a discovery mode that causes the device 102 (e.g., the radio 110) to commence scanning for nearby wireless networks or wireless devices. In conjunction with the operations of block 202, the user may bring the device 102 within a certain range of the device 104.


Referring to FIG. 3, the device 104 also may perform operations that are similar and/or complementary to the operations of block 202. For convenience, the sample operations of FIG. 3 are depicted from the perspective of a first device. In other words, in the context of FIG. 3 the first device may comprise the device 104 and the second device may comprise the device 102 (in contrast with the corresponding relationships described above in conjunction with FIG. 2).


As represented by block 302, the device 104 also may commence distance-based operations by, for example, attempting to discover nearby wireless devices. As discussed above, this may be initiated automatically or in response to some action by the user (e.g., utilizing an input device of the device 104). In addition, or in the alternative, the device 104 may commence a discovery procedure in response to a signal received from the device 102. It should be appreciated that other techniques may be employed to commence discovery or some other similar procedure for initiating communication between devices such as devices 102 and 104.


Referring again to FIG. 2, as represented by block 204 the device 102 (e.g., the distance determiner 108) determines at least one distance between the devices 102 and 104. To this end, the device 102 may receive and process one or more signals from the device 104. In addition, the device 102 may generate various signals and transmit the signals to the device 104. As represented by blocks 206 and 208, the device 102 (e.g., the indication generator 112) may generate one or more indications corresponding to the one or more determined distances. The operations of blocks 204-208 may be invoked in conjunction with invoking the operations of block 202. Thus, these operations may be invoked automatically or in response to some action on the part of a user of the device 102.


As represented by block 304 of FIG. 3, the device 104 may perform operations that are similar and/or complementary to the operations of blocks 204-208. For example, the device 104 (e.g., the indication generator 138) may generate an indication relating to the at least one distance between the device 104 and the device 102. To this end, the device 104 (e.g., the distance function component 136) may perform one or more operations relating to determining the distance between the devices 104 and 102. For example, the distance function component 136 may process one or more signals received from the device 102 relating to a distance determination operation. The component 136 may then generate one or more responsive signals and transmit the signals back to the device 102.


One or more of various techniques may be employed to determine a distance between the devices 102 and 104. For example, in some implementations distance may be measured using time-of-arrival measurements, round-trip time measurements, signal strength measurements, Doppler shift measurements, or some other suitable technique. Several examples of techniques for measuring distance will be discussed in conjunction with FIG. 4, commencing at block 402.


As represented by block 404, in some implementations a device such as the device 102 that initiates the distance measurement operations sends one or more signals to a responsive device such as device 104. For example, the initiating device may send a message to a responding device instructing the other device to send one or more signals back to the initiating device. Thus, in the example of FIG. 1 the distance determiner 108 of the device 102 may cooperate with a transmitter of the radio 110 to transmit appropriate signals to the device 104.


As represented by block 406, the responding device may process the received signals and generate responsive signals (e.g., forming a message). In FIG. 1 the distance function component 136 may cooperate with a receiver of the radio 126 to receive the signals from the device 102.


As represented by block 408, the responsive signals are then transmitted from the responding device to the initiating device. In FIG. 1 the distance function component 136 and the indication generator 138 may thus cooperate with the radio 126 (e.g., the transmitter) to transmit the signals to the device 102.


As represented by block 410, the initiating device processes the received responsive signals, as necessary, to determine a distance between the initiating and responding devices. In FIG. 1 the distance function component 108 may again cooperate with the radio 126 (e.g. the receiver) to receive the signals from the device 104.


Block 412 represents that the above operations may be repeated if there is another distance measure to be taken. Here, it should be appreciated that multiple distance determinations may be made concurrently, in a sequential manner, or in some other manner.


Sample operations of blocks 404 through 410 will now be discussed in more detail in conjunction with specific examples relating to time-of-arrival measurements, round-trip time measurements and signal strength measurements. It should be appreciated that these are but a few of the measurement techniques that may be employed and that the teachings herein may be used in conjunction with other measurement techniques.


In some implementations utilizing time-of-arrival to determine distance the initiating device may measure the times-of-arrival of signals received from the responding device. For example, at block 404 the initiating device (e.g., the distance determiner 108) may request that the responding device transmit several signals to be used for time-of-arrival measurements. At blocks 406 and 408, the responding device may then generate appropriate signals and transmit them to the initiating device. For example, the distance function component 136 and the indication generator 138 may cause the radio 126 to transmit appropriate signals to the radio 110. Then, at block 410 the initiating device (e.g., the distance determiner 108) may perform time-of-arrival measurements and, based on these measurements, determine the distance between the initiating device and the responding device.


In some implementations the responding device may determine the distance between the devices by performing time-of-arrival measurement operations on signals received from the initiating device. In this case, at block 404 the initiating device (e.g., the distance determiner 108 in conjunction with a transmitter of the radio 110) may transmit signals to be used for the time-of-arrival measurements to the responding device. At block 406 the responding device (e.g., the distance function component 136) may perform time-of-arrival measurements and, in some cases, determine the distance between the responding device and the initiating device based on these measurements. In this case, the indication generator 138 may generate an indication relating to the derived distance-related information. At block 408 the responding device (e.g., the indication generator 138) may send the results of the time-of-arrival measurements or the determined distance to the initiating device. At block 410 the initiating device (e.g., the distance determiner 108) may process the received information to provide a determined distance between the devices 102 and 104 for subsequent operations.


In some implementations utilizing round-trip time measurements the initiating device (device 102) may transmit a message to the responding device at a given time (block 404). At block 406 the distance function component 136 may determine the amount of time between receipt of the request signal by the device 104 and the transmission of a responsive signal by the device 104 (i.e., a turnaround time). Alternatively, in cooperation with the radio 126, the distance function component 136 may ensure that a response signal is transmitted within a defined a turnaround time. The device 104 may thus generate a responsive message (e.g., including an indication of the turnaround time as generated, in some cases, by the indication generator 138) and transmit the message to the device 102 (block 408). At block 410 the device 102 may process the received responsive signal to calculate the round-trip time and, in turn, a distance between the devices 102 and 104. To this end, the distance determiner 108 may determine (e.g., in cooperation with the radio 110) the point in time at which the responsive message was received at the device 102. The distance determiner 108 may then determine the round-trip time from the time elapsed between the transmission of the signal at block 404 to the reception of the responsive signal at block 410, excluding the turnaround time of the device 104 supplied with the responsive message.


In some implementations utilizing received signal strength to determine distance the initiating device may measure the signal strength of signals received from the responding device. For example, at block 404 the initiating device (device 102) may transmit a message to the responding device requesting that the responding device transmit a signal at a known signal strength (e.g., a constant energy level). At block 406, in response to the received signal the responding device (e.g., the distance function component 136 in cooperation with indication generator 138) may cause the radio 126 to transmit an appropriate signal or signals to the device 102 (block 408). At block 410, the distance determiner 108 may then calculate the distance between the devices 102 and 104 based on the strength of the corresponding signal(s) received by the radio 110.


In some implementations utilizing received signal strength to determine distance the responding device may measure the signal strength of signals received from the initiating device. In the example of FIG. 1 the device 104 may receive one or more signals having a known signal strength from the device 102 at block 404. In this case, at block 406 the distance function component 136 may calculate the distance between the devices 104 and 102 based on the strength of the signal(s) received by the radio 126. At block 408, the indication generator 138 may send an indication relating to the derived distance information back to the device 102. At block 410 the initiating device (e.g., the distance determiner 108) may then process the received information to provide a determined distance between the devices 102 and 104 for subsequent operations.


Referring again to block 206 of FIG. 2, the device 102 (e.g., the indication generator 112) generates an indication relating to the at least one determined distance generated at block 204. As discussed above, the distance determination and indication generation operations may involve determining one or more distance-related parameters including, for example, a distance between the devices 102 and 104, two or more distances between the devices 102 and 104, a rate of change in the relative distance between the devices 102 and 104, and relative acceleration between the devices 102 and 104. Here, a rate of change in distance (e.g., relative velocity) between the devices 102 and 104 may be determined, for example, by determining a distance between the devices at one point in time, determining a distance between the devices at one or more other points in time, and calculating the change(s) in distance over the associated time period(s). Similar information may be utilized to determine relative acceleration between the devices 102 and 104 using known techniques such as taking a derivative of the rate of change information. It should be appreciated that an indication relating to at least one distance may take a form other than those explicitly mentioned herein.


In some aspects the indication may simply specify a single determined distance between the devices 102 and 104. As will be discussed in more detail below, this form of indication may be compared with one or more threshold distances to determine whether the devices 102 and 104 are separated by a distance that is deemed acceptable for performing some function.


An indication also may specify several determined distances between the devices 102 and 104. For example, the distance between the devices 102 and 104 may be checked at various times. Such an operation may be performed in conjunction with different types of distance determination scenarios.


For example, in some aspects a distance between devices may be checked more than once to provide a more accurate distance reading. Here, clearly erroneous readings may be discarded. In addition, in some cases an average determined distance may be calculated or a mean determined distance and a standard deviation may be calculated. Accordingly, in this scenario the indication may comprise several similar determined distances, a determined distance along with a standard deviation of the determined distances, a range of the determined distances, or some other similar information.


In some aspects multiple distance readings may be employed in a scenario where performance of an operation is predicated on the devices 102 and 104 being moved in a defined pattern with respect to one another. For example, the devices 102 and 104 may initially be placed a first distance apart, then placed a second distance apart, and so forth. Accordingly, in this scenario the indication may comprise a pattern of several determined distances.


In some aspects multiple distance readings may be employed to determine a rate of change in relative distance between the devices 102 and 104. For example, a first distance between the devices may be determined at a first point in time and a second distance between the devices determined at a second point in time. A rate of change in distance may then be determined, for example, by calculating the ratio of the change in distance (e.g., first distance minus second distance) to the elapsed time (e.g. second point in time minus first point in time). Thus, in this scenario the indication may comprise the determined rate of change in relative distance (e.g., an indication of relative velocity).


In some aspects multiple readings of the rate of change in relative distance may be employed. For example, performance of an operation may be predicated on the rate of change in distance (e.g., relative velocity) between the devices 102 and 104 being changed in a defined pattern. Here, the devices 102 and 104 may be moved with respect one another at different velocities over different time periods. In this scenario the indication may comprise a plurality of different rates of change in relative distance.


Similarly, multiple readings of the rate of change in relative distance may be utilized to obtain a profile of the relative acceleration between the devices 102 and 104. For example, acceleration information may be obtained by taking the derivative of relative velocity information collected over a period of time. Thus, in this scenario the indication may comprise the determined relative acceleration at a given point in time.


In a similar manner as discussed above, multiple acceleration readings may be employed where the performance of an operation is predicated on the relative acceleration between the devices 102 and 104 being changed in a defined pattern. Thus, in this scenario the indication may comprise an acceleration profile defining a plurality of relative accelerations.


In some aspects a device may determine several types of distance-related parameters. For example, the device 102 may determine an absolute distance between the devices 102 and 104 and may determine a rate of change in relative distance between the devices 102 and 104. Here, it should be appreciated that in some aspects different distance measurement techniques may be employed to measure these different types of distance-related parameters. For example, a given measurement technique may determine a certain type of distance measurement more effectively than other measurement techniques.


As represented by block 208, the indication generated at block 206 is compared with one or more distance comparison parameters 116 (FIG. 1). The nature of the comparison operation depends on the particular form of the indication.


For example, if an indication relating to a single distance was generated at block 206, this form of indication may be compared with one or more distance thresholds 144 to determine whether the devices 102 and 104 are separated by a distance that is within a range of distances deemed acceptable for performing some function. For example, initiation of a function may be predicated on the devices being less than or more than a certain distance apart (e.g., 1 meter, 3 meters, etc.). Alternatively, initiation of a function may be predicated on the devices being separated by a distance that falls within a range defined by two distance thresholds 144.


In some aspects more than one level of functionality may be defined whereby different levels of functionality are employed based on different distances between the devices 102 and 104. Here, one type of functionality may be employed in the event the determined distance falls within one range (e.g., the devices 102 and 104 are relatively close to one another) while another type of functionality may be employed in the event the determined distance falls within another range (e.g., the devices 102 and 104 are further apart from one another). In this case, the determined distance may be compared to one, two, or more distance thresholds 144.


As noted above, if several indications relating to several distances were generated at block 206, these indications may be compared with one or more distance thresholds 144. In some implementations the distance thresholds 144 may relate to a pattern of distances where the distance between devices is to be changed between various distances in a defined pattern 148. In practice, a tolerance may be associated with each distance threshold of the pattern 148 to account for relatively minor deviations between the determined distances and the defined pattern 148.


If an indication relating to a rate of change in relative distance was generated at block 206, this indication may be compared with a defined rate of change 146. The defined rate of change 146 may comprise, for example, an upper threshold for the rate of change, a lower threshold for the rate of change, a range of rates of change, or a defined pattern 148 of rates of change. As an example of the latter scenario, the ranging criteria may specify that the rate of change between devices is to be changed between various rates of change in a defined pattern 148. Again, a tolerance may be associated with each defined rate of change in the defined a pattern 148 to account for relatively minor deviations between the determined rates of change and the defined pattern 148.


If an indication relating to relative acceleration was generated at block 206, this indication may be compared with a defined acceleration profile 150. The defined acceleration profile 150 may comprise, for example, an upper threshold for acceleration, a lower threshold for the acceleration, a range of accelerations, or a pattern of accelerations. As an example of the latter scenario, the ranging criteria may specify that the relative acceleration between devices is to be changed between accelerations according to a defined acceleration profile 150 (e.g., in a known pattern). Similar to the above scenarios, a range of tolerance may be associated with the accelerations of the defined acceleration profile 150 to account for relatively minor deviations between the determined accelerations and the defined acceleration profile 150.


It should be appreciated that the comparisons of block 208 may be implemented in various ways. For example, the determined distance may simply be subtracted from a distance comparison parameter. In addition, in some implementation multiple comparisons may be made. Such an approach may be used, for example, when the distance is repeatedly checked for a period of time, when several measurements are made to reduce transient conditions, to perform operations relating to a rate of change in relative distance or to relative acceleration, or when a combination of two or more types of determined distances are employed. As an example of the latter scenario, as will be discussed in more detail below an operation may be invoked or modified based on the rate of change in relative distance between devices as well as the absolute distance between the devices.


In conjunction with the operations of block 208, the indication generator 112 may generate a comparison result indication that is indicative of the results of the comparison or some other similar operation. For example, such an indication may indicate that a device did or did not meet the desired criteria for performing a distance-based operation.


As represented by block 209, the device 102 may then take appropriate action based on the results of the comparison. For example, if the comparison result indication indicates that distance criteria have (or a distance criterion has) been met, the device 102 may invoke or terminate a given function or alter the operation of a function in some manner. If the comparison of block 208 is not successful, the operations of FIG. 2 may terminate, and then be invoked at some other point in time.


As represented by block 210, in some implementations distance-based criteria may be used as a prerequisite for commencing association-related operations. For example, if the distance between the devices 102 and 104 is less than a threshold value and/or if the devices 102 and 104 are moved in a proper manner with respect to one another, the device 102 may commence an association procedure with device 104. In addition, as represented by blocks 305 and 306 of FIG. 3, the device 104 may perform operations that are similar and/or complementary to the operations of blocks 209 and 210. Thus, if an association operation is allowed (e.g., based on receipt of a message from the device 102 indicating a successful comparison at block 208), the device 104 may commence association operations in cooperation with the device 102. In some aspects association may be automatically invoked if the devices are within a given distance of one another and/or are moved in a certain manner with respect to one another.


Although block 210 follows blocks 204 through 208 in the example of FIG. 2, these operations are not necessarily performed in the illustrated order. For example, in some implementations the distance determining operations may be performed after the commencement of an association procedure. Thus, one or more distance-related functions as taught herein may be invoked as part of an association procedure. In addition, in some implementations distance determining operations may serve as both a prerequisite to an association procedure and form a part of an association procedure.


In some aspects an association procedure may involve pairing the devices 102 and 104 to enable certain types of communication between the devices 102 and 104. For example, the association procedure may involve establishing application-level communication among the devices 102 and 104.


A variety of operations may be performed in conjunction with an association procedure or in conjunction with some other distance-based operation. For example, blocks 212 and 214 in FIG. 2 and blocks 308 and 310 in FIG. 3 illustrate several procedures that may optionally be invoked in conjunction with the association procedures of blocks 210 and 306, respectively.


As represented by block 212, in some applications an association procedure (e.g., a pairing process) may employ a human synchronization test. For example, such a test may be based on a human synchronization ability whereby a given person may easily actuate two switches substantially simultaneously, yet it may be very difficult for an onlooker to anticipate the right time to actuate a switch at substantially the same time as another person. Accordingly, the operations of block 212 may involve instructing the user (e.g., via a visual command on a display, via a specific configuration of lighting elements such as LEDs, or via an audio command) to simultaneously activate input devices (e.g., actuate switches) on the devices 102 and 104. The association procedure may thus involve determining whether a switch on the device 102 is actuated (e.g., depressed and/or released) at substantially the same time as a switch on the device 104 is actuated. As represented by block 308 of FIG. 3, the device 104 may perform operations that are similar and/or complementary to the operations of block 212. As will be discussed in more detail below, a variety of user input devices (e.g., other than switches) may be used for this operation.


The synchronization test may be implemented in a variety of ways. For example, in some implementations the device 102 may compare the times that the respective switches on the devices 102 and 104 are depressed, the times that the respective switches on the devices 102 and 104 are released, or both. In some implementations the synchronization test may involve multiple actuations of the switches. For example, the user may pick several random timings to simultaneously press and release the buttons on each device. In this case, each device will generate a sequence of times associated with the actuations of its switch. The device 102 may then compare the timings of the sequences in an attempt to determine whether the same person actuated the switches on the devices 102 and 104. In either of the above implementations, if the actuation timings from the devices 102 and 104 are sufficiently similar, the devices 102 and 104 may be associated with one another.


In some implementations comparison of actuation times may involve comparison of a first indication representative of a time (or times) of actuation of a user input device of one device (e.g., device 102) with a second indication representative of a time (or times) of actuation of a user input device of another device (e.g., device 104). For example, the association processor 122 may acquire the first indication via a user input device of device 102 and receive the second indication from the device 104. The association processor 122 may then compare the two indications to determine whether the actuation of the user input device of the device 102 occurred substantially simultaneously with the actuation of the user input device of the device 104.


Although block 212 follows block 210 in the example of FIG. 2, these operations are not necessarily performed in the illustrated order. For example, in some implementations the synchronization test may be performed before the commencement of an association procedure (e.g., as a prerequisite to commencing the association procedure). In addition, in some implementations a synchronization test may serve as both a prerequisite to an association procedure and form a part of an association procedure.


As represented by block 214, in some implementations the association procedure may involve authenticating the devices 102 and 104 with respect to one another. In general, authentication relates to verifying an identity of another device. Through the use of an authentication procedure, a device may verify that is authorized to communicate with the other device and verify that a given set of operations may be performed in conjunction with the other device. As an example of the latter scenario, a given device may allow a requesting device to access certain services provided by the device if the requesting device has appropriate authorization. Such services may include, for example, connection to a network, access to a pay-per-view service, access to protected media such as data, audio, video, or some combination thereof.


Authentication may be performed in a variety of ways. In some implementations an authentication procedure may involve sending security credentials (e.g., passwords) and/or user biometric information from one device to another. In a typical scenario, each device will authenticate the other device. For example, the device 102 may authenticate the device 104 and the device 104 may authenticate the device 102. Thus, as represented by block 310 of FIG. 3, the device 104 may perform operations that are similar and/or complementary to the operations of block 214. In this way, each device may send security credentials or other suitable information to the other device and receive corresponding information from the other device.


In view of the above, it should be appreciated that association-related operations may be invoked, terminated, or affected by any suitable distance-related characteristics of two or more devices. For example, association operations may depend on an absolute distance between devices, a defined pattern of distances between devices, a rate of change in relative distance between devices, a relative acceleration between devices, or some combination thereof. Thus, association may depend (e.g., is invoked, terminated, affected, etc.) on whether a measured parameter (e.g., distance, rate of change, or acceleration) between devices is less than, greater than, or substantially similar to (e.g., equal to) a threshold value (e.g., a corresponding defined parameter), or is below, above, or within a range of such threshold values.


Consequently, a diverse range of association functionality may be provided in accordance with teachings herein. For example, an association procedure may be initiated once an incoming device is close enough to an existing device. Such an approach may prove advantageous in the event the surrounding area includes a large number of devices associated with various networks.


In some aspects a user may press a button to activate association and may then use the motion of physically bringing a first device close to and then away from the second device to associate the two devices. This approach allows for an intuitive association method that may also provide a mechanism for readily differentiating the associating devices from other wireless devices in the same area.


In addition, if a user is using a device to wirelessly send a password to a computer, then the computer could “select” the correct device in the immediate vicinity based on which device is currently stationary, in addition to other factors such as distance. Similarly if the user walks up to a computer the computer may turn on or configure itself in an appropriate manner. Further, if multiple users are near the computer, the computer may configure itself based on the closest user, or based on the closest user with the highest priority. In contrast, if the user walks past the computer, the computer may more quickly go back to sleep.


The use of distance-based techniques as taught herein may be employed in conjunction with a variety of association-related operations (e.g., pairing, authentication, etc.). For example, a point-of-sale terminal may utilize a distance parameter and/or a rate of change in relative distance parameter to identify a device to be used for a sales transaction. Here, a rate of change in relative distance may be used to measure a swiping action at the point-of-sale as a user moves one device (e.g., a point-of-sale enabled cell phone) across a second device (the point-of-sale terminal) to initiate a transaction. This technique may provide an effective way to differentiate between other devices in the surrounding area, and may provide a relatively simple user interface for the transaction.


Association may be one-to-one, one-to-many, many-to-one, or many-to-many. For example, an audio device (e.g., an MP3 player) may associate with several nearby headsets to enable the users of those headsets to listen to the audio provided by the audio device. It should be appreciated that the above examples are merely illustrative of a few applications and that distance-based association may be employed in a wide variety of applications.


As represented by block 216, presence management may be provided based on one or more distances between devices. In some aspects this form of presence management relates to the performance of certain operations based on a location of a device with respect to another device and/or motion of the device with respect to the other device. In some aspects presence management also may be based on an identity of a device (e.g., the other device). For example, certain actions may be taken for certain devices. Here a device may be identified by a unique address, an assigned identifier, or in some other manner.


Presence management operations may, in some aspects, relate to invoking presence management, determining whether certain operations are to be performed in conjunction with presence management, and terminating presence management. For example, a computer may present different user interfaces depending upon which user is sitting in front of the computer. To this end, the user may possess a device that enables the computer to uniquely identify the user. Similarly, a presence management-enabled device may be adapted to modify the characteristics of a room (e.g., the lighting, the temperature, music being played, etc.) based on which person or persons are in the room. In another example, the user interface of a portable device (e.g., a cell phone) may be adapted to provide remote control functionality when the portable device is close to a stereo, a television, or some other device that may be controlled. These are but a few examples of presence management. It should be understood that presence management encompasses many other scenarios and operations.


In some implementations, presence management functionality may be employed independently of the association-related functionality discussed above. For example, distance-based presence management as taught herein may be employed in a device that utilizes an association procedure or in a device that does not utilize an association procedure. In the former case, distance-based presence management as taught herein may be employed in a device where the association is not distance-based. Also, a device employing distance-based association as taught herein may or may not provide presence management functionality.


Referring to the example of FIG. 2, operations similar to the operations of blocks 202, 204, 206, 208, and 212 may be performed in conjunction with presence management. For example, a decision as to whether to invoke or terminate presence management may be based on the result of (e.g., the indication generated from) the comparison operations of block 208 and/or the synchronization operations of block 212. Thus, presence management may be automatically invoked if the devices are within a given distance of one another (e.g., 3 meters) and/or are moved in a certain manner with respect to one another. Similarly, one or more of the operations performed during presence management may be based on the results of the comparison of block 208.


In a similar manner as discussed above for association, although block 216 follows blocks 204 through 208 in the example of FIG. 2, these operations are not necessarily performed in the illustrated order. For example, in some implementations the distance determining operations may be performed after the commencement of a presence management procedure. Thus, one or more distance-related functions as taught herein may be invoked as part of a presence management procedure. In addition, in some implementations distance determining operations may serve as both a prerequisite to a presence management procedure and form a part of a presence management procedure.


Presence management may involve operations performed by the device 102 as well as, in some circumstances, operations performed by the device 104. Accordingly, as represented by block 312 of FIG. 3, the device 104 may perform operations that are similar and/or complementary to the operations of blocks 216.


In some aspects a device (e.g., the device 102, the device 104, or both) may be configured based on a distance-related indication. Such configuration may include, in some aspects, one or more of configuring an output of a user interface, invoking a function, adapting operations, and providing access to functionality. In some aspects the configuration may be based on the identity of another device. For example, the device 102 may be configured based on the identity of the device 104, or vice versa. In some aspects a device may transmit information to or receive information from another device, wherein the information is based on the indication. As an example, such information may be generated, selected, or modified depending upon the indication.


In a typical implementation presence management may be employed in the device 102 to affect the operation of the device 102 if the device 102 is brought within a specified range of device 104 and/or is moved in an appropriate manner with respect to device 104. In one sample use case presence management may configure the device 102 to provide remote control functionality capable of controlling the device 104. In conjunction with this reconfiguration, the device 102 may present a different interface to the user by, for example, modifying a display of the display screen and modifying the functionality of one or more input devices (e.g., buttons or soft keys) of the device 102. In addition, the device 102 may be enabled to send uniquely configured information (e.g., remote control instructions, etc.) to the device 104.


As a device 102 is brought within a specified range of device 104 and/or is moved in an appropriate manner with respect to the device 104, presence management also may be employed in the device 104 to affect its operation. Continuing with the sample use case mentioned above, the device 104 may now enable the device 102 (e.g., and no other devices) to control selected functionality of the device 104 or of one or more other devices if distance-based conditions, and optionally device identity conditions, are met. For example, the device 104 may present a unique interface to the user of device 102 by modifying the display on the display screen of the device 104 or another device (e.g., a television or a television receiver). In some aspects the device 104 may provide presence management for the device 102 based on the indication by, for example, facilitating configuration of the device 102. To this end, the device 104 may send appropriate messages to the device 102 that facilitate configuration of the device 102 (e.g., as discussed above). In a typical example, configuration of the device 102 may include modifying the output of the user interface of the device 102.


In another sample use case, a given device such as device 104 may allow access to certain of its functionality depending on the identity of another device and depending on at least one distance between the devices. In the example of FIG. 1, if the identity and distance-based conditions are met, the device 104 may provide uniquely configured information to the device 102. For example, the presence management functionality enabled on the device 104 may provide access to a service such as network connectivity or pay-for-use media such as data, audio, and video. It should be appreciated that the presence management functionality enabled on the device 104 may take various other forms


Presence management operations may be invoked, terminated, or affected by any suitable distance-related characteristics of two or more devices. For example, presence management operations may depend on an absolute distance between devices, a defined pattern of distances between devices, a rate of change in relative distance between devices, a relative acceleration between devices, or some combination thereof. Thus, presence management may depend (e.g., is invoked, terminated, affected, etc.) on whether a measured parameter (e.g., distance, rate of change, or acceleration) between devices is less than, greater than, or substantially similar to (e.g., equal to) a threshold value (e.g., a corresponding defined parameter), or is below, above, or within a range of such threshold values.


Consequently, a diverse range of presence management functionality may be provided in accordance with teachings herein. For example, if a user runs into a room with a presence-management enabled device then sits on the couch, a presence-management-enabled television may turn on to breaking news. Conversely, if the same user walks into the room and sits on the couch, the television may turn on and play a recent recording of the user's favorite program.


It should be appreciated that the components described herein may take a variety of forms. For example, FIG. 5 illustrates that a wireless device 500 (e.g., similar to the device 102 and/or the device 104) may include in broad terms functionality relating to a user input device 502, a communication device 504, a distance, motion, and acceleration measuring circuit 506, and a position/motion detector 508.


The user input device 502 may comprise one or more of a variety of components that enable a user to provide some form of input to the wireless device 500. For example, the user input device 502 may comprise one or more switches such as a pushbutton or a keypad. The user input device 502 also may comprise a touch-screen, a touchpad, or other similar input mechanism. The user input device 502 may comprise a pointing device such as a mouse, trackball, an electronic pen, a pointing stick, etc. The user input device 502 also may be adapted to receive non-mechanical forms of input such as an audio (e.g., voice) input, an optical-based input, an RF-based input, or some other suitable form of input. As discussed above, the user input device 502 may be utilized by the user to initiate some function in the wireless device such as facilitating authentication or presence management. As an example of the latter case, the user input device 502 may comprise the input device discussed above that is activated at substantially the same time on both of the devices 102 and 104.


The communication device 504 may comprise various components that facilitate communicating with another device. For example, as discussed herein the communication device 504 may comprise a radio (e.g., the radio 110 and/or the radio 126) with associated transmitter and receiver components 510 and 512, respectively, that include various components (e.g., signal generators and signal processors) that facilitate communication over a wireless medium.


The communication device 504 may employ a variety of wireless physical layer schemes. For example, the physical layer may utilize some form of CDMA, TDMA, OFDM, OFDMA, or other modulation and multiplexing schemes.


In some aspects the communication device 504 may communicate via a pulsed-based physical layer. In some aspects the physical layer may utilize ultra-wideband pulses that have a relatively short length (e.g., on the order of a few nanoseconds) and a relatively wide bandwidth. In some aspects an ultra-wide band system may be defined as a system having a fractional bandwidth on the order of approximately 20% or more and/or having a bandwidth on the order of approximately 500 MHz or more.


The circuit 506 may comprise one or more of a variety of components adapted to measure one or more of distance, motion, and acceleration. As discussed above, various techniques may be employed to measure distance including, for example, two-way ranging, interrogations/response signals, received power measurements, acceleration readings, digital or analog imaging, detecting changes in electrical and magnetic fields, and detecting a Doppler shift in signals. Accordingly, the circuit 506 may employ corresponding circuitry (e.g., RF circuitry, optics, accelerometers, signal strength sensors, electrical and magnetic fields sensors, or Doppler shift sensors) to measure distance using one or more these techniques. In a specific example, an optical device such as a video device may employ video processing to compute the rate of change in relative distance based on frame differences and similarities. In another example, the rate of change in relative distance may be determined by identifying a rate of change in the relative orientation of electrical and magnetic fields. Also, in some applications an accelerometer may be used to obtain a measurement of distance, velocity, or acceleration.


In some implementations, one or more of the components of the circuit 506 may be implemented in the wireless communication device 504. For example, an implementation that determines distance by calculating the round-trip time of RF signals may utilize the transmitter and receiver components of a radio to transmit and receive ranging signals (e.g., ultra-wideband pulses) or other signals that are used to calculate a round-trip time.


In some implementations a position and/or motion detector 508 may be employed to determine one or more distance-related parameters associated with two or more devices. For example, through the use of an accelerometer in one or more of the devices, the rate of change in relative distance between two devices may be more easily obtained or determined with greater accuracy. In some implementations one or more of the components the position/motion detector 508 may be implemented in the circuit 506.


The teachings herein may be incorporated into (e.g., implemented within or performed by) a variety of devices. For example, one or more aspects taught herein may be incorporated into a phone (e.g., a cellular phone), a personal data assistant (“PDA”), an entertainment device (e.g., a music or video device), a headset (e.g., headphones, an earpiece, etc.), a microphone, a medical device (e.g., a biometric sensor, a heart rate monitor, a pedometer, an EKG device, etc.), a user I/O device (e.g., a watch, a remote control, a light switch, a keyboard, a mouse, etc.), a tire pressure monitor, a computer, a point-of-sale device, an entertainment device, a hearing aid, a set-top box, or any other suitable device. Moreover, these devices may have different power and data requirements. In some aspects, the teachings herein may be adapted for use in low power applications (e.g., through the use of a pulse-based signaling scheme and low duty cycle modes) and may support a variety of data rates including relatively high data rates (e.g., through the use of high-bandwidth pulses).


The teachings herein may be incorporated into a device employing various components for communicating with at least one other device. FIG. 6 depicts several sample components that may be employed to facilitate communication between devices. Here, a first device (e.g., an access terminal) 602 and a second device (e.g., an access point) 604 are adapted to communicate via a communication link 606 over a suitable medium.


Initially, components involved in sending information from the device 602 to the device 604 (e.g., a reverse link) will be treated. A transmit (“TX”) data processor 608 receives traffic data (e.g., data packets) from a data buffer 610 or some other suitable component. The transmit data processor 608 processes (e.g., encodes, interleaves, and symbol maps) each data packet based on a selected coding and modulation scheme, and provides data symbols. In general, a data symbol is a modulation symbol for data, and a pilot symbol is a modulation symbol for a pilot (which is known a priori). A modulator 612 receives the data symbols, pilot symbols, and possibly signaling for the reverse link, and performs modulation (e.g., OFDM or some other suitable modulation) and/or other processing as specified by the system, and provides a stream of output chips. A transmitter (“TMTR”) 614 processes (e.g., converts to analog, filters, amplifies, and frequency upconverts) the output chip stream and generates a modulated signal, which is then transmitted from an antenna 616.


The modulated signals transmitted by the device 602 (along with signals from other devices in communication with the device 604) are received by an antenna 618 of the device 604. A receiver (“RCVR”) 620 processes (e.g., conditions and digitizes) the received signal from the antenna 618 and provides received samples. A demodulator (“DEMOD”) 622 processes (e.g., demodulates and detects) the received samples and provides detected data symbols, which may be a noisy estimate of the data symbols transmitted to the device 604 by the other device(s). A receive (“RX”) data processor 624 processes (e.g., symbol demaps, deinterleaves, and decodes) the detected data symbols and provides decoded data associated with each transmitting device (e.g., device 602).


Components involved in sending information from the device 604 to the device 602 (e.g., a forward link) will be now be treated. At the device 604, traffic data is processed by a transmit (“TX”) data processor 626 to generate data symbols. A modulator 628 receives the data symbols, pilot symbols, and signaling for the forward link, performs modulation (e.g., OFDM or some other suitable modulation) and/or other pertinent processing, and provides an output chip stream, which is further conditioned by a transmitter (“TMTR”) 630 and transmitted from the antenna 618. In some implementations signaling for the forward link may include power control commands and other information (e.g., relating to a communication channel) generated by a controller 632 for all devices (e.g. terminals) transmitting on the reverse link to the device 604.


At the device 602, the modulated signal transmitted by the device 604 is received by the antenna 616, conditioned and digitized by a receiver (“RCVR”) 634, and processed by a demodulator (“DEMOD”) 636 to obtain detected data symbols. A receive (“RX”) data processor 638 processes the detected data symbols and provides decoded data for the device 602 and the forward link signaling. A controller 640 receives power control commands and other information to control data transmission and to control transmit power on the reverse link to the device 604.


The controllers 640 and 632 direct various operations of the device 602 and the device 604, respectively. For example, a controller may determine an appropriate filter, reporting information about the filter, and decode information using a filter. Data memories 642 and 644 may store program codes and data used by the controllers 640 and 632, respectively.



FIG. 6 also illustrates that the communication components may include one or more components that perform ranging-related operations as taught herein. For example, a ranging control component 646 may cooperate with the controller 640 and/or other components of the device 602 to send and receive ranging-related signals and information to another device (e.g., device 604). Similarly, a ranging control component 648 may cooperate with the controller 632 and/or other components of the device 604 to send and receive ranging-related signals and information to another device (e.g., device 602).


The components described herein may be implemented in a variety of ways. Referring to FIG. 7, an apparatus 700 is represented as a series of interrelated functional blocks that may represent functions implemented by, for example a processor, software, some combination thereof, or in some other manner as taught herein.


As shown in FIG. 7, the apparatus 700 may include one or more modules 702, 704, 706, 708, 710, 712, 714, 716, 718, 720, 722, and 724 that may perform one or more of the functions described above with regard to various figures. For example, a processor for inputting 702 may facilitate user input and may correspond to, for example, component 502 discussed above. A processor for generating an indication 704 may generate one or more indications as taught herein and may correspond to, for example, component 112 and/or component 138 discussed above. A processor for associating 706 may provide various functionality relating to association as taught herein and may correspond to, for example, component 120 and/or component 130 discussed above. A processor for authenticating 708 may provide various functionality relating to authentication as taught herein and may correspond to, for example, component 122 and/or component 132 discussed above. A processor for providing presence management 710 may provide various functionality relating to presence management as taught herein and may correspond to, for example, component 124 and/or component 134 discussed above. A processor for comparing 712 may provide various functionality relating to comparing distance-based information as taught herein and may correspond to, for example, component 114 discussed above. A processor for using a time-of-arrival measurement 714 may provide various functionality relating to time-of-arrival measurements as taught herein and may correspond to, for example, component 108 and/or component 136 discussed above. A processor for measuring 716 may provide various functionality relating to measuring distance as taught herein and may correspond to, for example, component 108 and/or component 136 discussed above. A processor for communicating 718 may provide various functionality relating to communicating with another device as taught herein and may correspond to, for example, component 504 discussed above. A processor for transmitting 720 may provide various functionality relating to transmitting information to another device as taught herein and may correspond to, for example, component 510 discussed above. A processor for receiving 722 may provide various functionality relating to receiving information from another device as taught herein and may correspond to, for example, component 512 discussed above. A processor for using ultra-wideband pulses may provide various functionality relating to determining distance using ultra-wideband pulses as taught herein and may correspond to, for example, component 108 and/or component 110 discussed above.


As noted above, FIG. 7 illustrates that in some aspects these components may be implemented via appropriate processor components. These processor components may in some aspects be implemented, at least in part, using structure as taught herein. In some aspects a processor may be adapted to implement a portion or all of the functionality of one or more of these components. In some aspects one or more of the components represented by dashed boxes are optional.


In some aspects the apparatus 700 may comprise an integrated circuit. Thus, the integrated circuit may comprise one or more processors that provide the functionality of the processor components illustrated in FIG. 7. For example, in some aspects a single processor may implement the functionality of the illustrated processor components, while in other aspects more than one processor may implement the functionality of the illustrated processor components. In addition, in some aspects the integrated circuit may comprise other types of components that implement some or all of the functionality of the illustrated processor components.


In addition, the components and functions represented by FIG. 7, as well as other components and functions described herein, may be implemented using any suitable means. Such means also may be implemented, at least in part, using corresponding structure as taught herein. For example, in some aspects means for inputting may comprise a user input device, means for generating an indication may comprise an indication generator, means for associating may comprise an association processor, means for authenticating may comprise an authentication processor, means for providing presence management may comprise a presence management processor, means for comparing may comprise a comparator, means for using a time-of-arrival measurement may comprise a distance determiner, means for measuring may comprise a distance determiner, means for communicating may comprise a radio, means for transmitting may comprise a transmitter, means for receiving may comprise a receiver, and means for using ultra-wideband pulses may comprise a radio. One or more of such means also may be implemented in accordance with one or more of the processor components of FIG. 7.


Those of skill in the art would understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.


Those of skill would further appreciate that any of the various illustrative logical blocks, modules, processors, means, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware (e.g., a digital implementation, an analog implementation, or a combination of the two, which may be designed using source coding or some other technique), various forms of program or design code incorporating instructions (which may be referred to herein, for convenience, as “software” or a “software module”), or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.


The various illustrative logical blocks, modules, and circuits described in connection with the aspects disclosed herein may be implemented within or performed by an integrated circuit (“IC”), an access terminal, or an access point. The IC may comprise a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, electrical components, optical components, mechanical components, or any combination thereof designed to perform the functions described herein, and may execute codes or instructions that reside within the IC, outside of the IC, or both. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.


It is understood that any specific order or hierarchy of steps in any disclosed process is an example of a sample approach. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the processes may be rearranged while remaining within the scope of the present disclosure. The accompanying method claims present elements of the various steps in a sample order, and are not meant to be limited to the specific order or hierarchy presented.


The steps of a method or algorithm described in connection with the aspects disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module (e.g., including executable instructions and related data) and other data may reside in a data memory such as RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, a hard disk, a removable disk, a CD-ROM, or any other form of computer-readable storage medium known in the art. A sample storage medium may be coupled to a machine such as, for example, a computer/processor (which may be referred to herein, for convenience, as a “processor”) such the processor can read information (e.g., code) from and write information to the storage medium. A sample storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in user equipment. In the alternative, the processor and the storage medium may reside as discrete components in user equipment. Moreover, in some aspects any suitable computer-program product may comprise a computer-readable medium comprising codes (e.g., executable by at least one computer) relating to one or more of the aspects of the disclosure. In some aspects a computer program product may comprise packaging materials.


The previous description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects without departing from the scope of the disclosure. Thus, the present disclosure is not intended to be limited to the aspects shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims
  • 1. A method of associating a mobile device with a medical device, comprising: actuating a first input device of the medical device;transmitting at least one signal by the medical device to the mobile device;actuating a second input device of the mobile device at substantially the same time as, or within a defined time interval after or before, the actuation of the first input device of the medical device;determining, by the mobile device, a plurality of indications of signal strengths of the at least one signal transmitted by the medical device; andperforming an association procedure between the mobile device and the medical device based on the plurality of indications.
  • 2. The method of claim 1, further comprising performing an authentication procedure between the mobile device and the medical device.
  • 3. The method of claim 2, wherein the authentication procedure comprises receiving, by the mobile device, credential information associated with the medical device, wherein performing the authentication procedure between the mobile device and the medical device is further based on the credential information.
  • 4. The method of claim 2, wherein the authentication procedure comprises receiving, by the mobile device, biometric information associated with the medical device, wherein performing the authentication procedure between the mobile device and the medical device is further based on the biometric information.
  • 5. The method of claim 1, wherein the association procedure comprises establishing application-level communication between the mobile device and the medical device.
  • 6. The method of claim 5, wherein the application-level communication comprises biometric information.
  • 7. The method of claim 1, wherein the medical device comprises a biometric sensor.
  • 8. The method of claim 1, wherein the medical device is configured to monitor a heart rate of a user.
  • 9. The method of claim 1, wherein the medical device is configured to generate electrocardiogram (EKG) information associated with a user.
  • 10. The method of claim 1, wherein the first input device of the medical device comprises a switch.
  • 11. The method of claim 1, wherein the second input device of the mobile device comprises a switch.
  • 12. A communication system, comprising: a medical device, comprising: a first input device; anda transmitter configured to transmit at least one signal in response to an actuation of the first input device; anda mobile device, comprising: a second input device configured to be actuated at substantially the same time as, or within a defined time interval after or before, the actuation of the first input device of the medical device;an indication generator configured to generate a plurality of indications of signal strengths of the at least one signal transmitted by the medical device; andan association processor configured to perform an association procedure of the mobile device with the medical device based on the plurality of indications.
  • 13. The communication system of claim 12, further comprising an authentication processor configured to perform an authentication procedure between the mobile device and the medical device.
  • 14. The communication system of claim 13, wherein the authentication processor is configured to perform the authentication procedure by at least receiving credential information associated with the medical device, wherein performing the authentication procedure between the mobile device and the medical device is further based on the credential information.
  • 15. The communication system of claim 13, wherein the authentication processor is configured to perform the authentication procedure by at least receiving biometric information associated with the medical device, wherein performing the authentication procedure between the mobile device and the medical device is further based on the biometric information.
  • 16. The communication system of claim 12, wherein the association processor is further configured to perform the association procedure by at least establishing application-level communication between the mobile device and the medical device.
  • 17. The communication system of claim 16, wherein the application-level communication comprises biometric information.
  • 18. The communication system of claim 12, wherein the medical device comprises a biometric sensor.
  • 19. The communication system of claim 12, wherein the medical device comprises a sensor for monitoring a heart rate of a user.
  • 20. The communication system of claim 12, wherein the medical device comprises a sensor configured to generate electrocardiogram (EKG) information associated with a user.
  • 21. The communication system of claim 12, wherein the first input device of the medical device comprises a switch.
  • 22. The communication system of claim 12, wherein the second input device of the mobile device comprises a switch.
  • 23. A communication system for associating a mobile device with a medical device, comprising: first means for receiving an input from a user of the medical device;means for transmitting at least one signal from the medical device to the mobile device;second means for receiving an input from a user of the mobile device at substantially the same time as, or within a defined time interval after or before, the reception of the input by the first input receiving means of the medical device;means for determining a plurality of indications of signal strengths of the at least one signal transmitted by the transmitting means; andmeans for associating the mobile device with the medical device based on the plurality of indications.
  • 24. The communication system of claim 23, further comprising means for authenticating the medical device by the mobile device.
  • 25. The communication system of claim 24, wherein the means for authenticating comprises means for receiving credential information associated with the medical device, the authentication of the medical device being based on the credential information.
  • 26. The communication system of claim 24, wherein the means for authenticating comprises means for receiving biometric information associated with the medical device, the authentication of the medical device being based on the biometric information.
  • 27. The communication system of claim 23, wherein the means for associating comprises means for establishing application-level communication between the mobile device and the medical device.
  • 28. The communication system of claim 27, wherein the application-level communication comprises biometric information.
  • 29. The communication system of claim 23, wherein the medical device comprises means for sensing at least one biometric parameter of a user.
  • 30. The communication system of claim 23, wherein the medical device comprises means for monitoring a heart rate of a user.
  • 31. The communication system of claim 23, wherein the medical device comprises means for generating electrocardiogram (EKG) information associated with a user.
  • 32. The communication system of claim 23, wherein the first input receiving means of the medical device comprises a switch.
  • 33. The communication system of claim 23, wherein the second input receiving means of the mobile device comprises a switch.
  • 34. A mobile device, comprising: an input device;a receiver configured to receive at least one signal from a medical device at substantially the same time as, or within a defined time interval after, an actuation of the input device;an indication generator configured to generate a plurality of indications related to of signal strengths of the at least one signal received from the medical device; andan association processor configured to associate the mobile device with the medical device based on the plurality of indications.
  • 35. The mobile device of claim 34, further comprising an authentication processor configured to perform an authentication procedure with the medical device.
  • 36. The mobile device of claim 35, wherein the authentication processor is configured to perform the authentication procedure by at least receiving credential information from the medical device by way of the receiver.
  • 37. The mobile device of claim 35, wherein the authentication processor is configured to perform the authentication procedure by at least receiving biometric information from the medical device by way of the receiver.
  • 38. The mobile device of claim 34, wherein the association processor is configured to establish application-level communication between the mobile device and the medical device.
  • 39. The mobile device of claim 38, wherein the application-level communication comprises biometric information.
  • 40. The mobile device of claim 38, wherein the application-level communication comprises information related to a heart rate of a user.
  • 41. The mobile device of claim 38, wherein the application-level communication comprises electrocardiogram (EKG) information associated with a user.
  • 42. The mobile device of claim 34, wherein the input device comprises a switch.
  • 43. A medical device, comprising: an input device;a transmitter configured to transmit at least one signal to a mobile device in response to an actuation of the input device, wherein the at least one signal is used for determining a distance between the medical device and the mobile device;a receiver configured to receive at least one other signal from the mobile device at substantially the same time as, or within a defined time interval after, the actuation of the input device; andan association processor configured to perform an association procedure to associate the medical device with the mobile device based on the at least one other signal from the mobile device.
  • 44. The medical device of claim 43, further comprising an authentication processor configured to perform an authentication procedure with the mobile device.
  • 45. The medical device of claim 44, wherein the authentication processor is configured to perform the authentication procedure by at least transmitting credential information to the mobile device by way of the transmitter.
  • 46. The medical device of claim 44, wherein the authentication processor is configured to perform the authentication procedure by at least transmitting biometric information to the mobile device by way of the transmitter.
  • 47. The medical device of claim 43, wherein the association processor is configured to establish application-level communication between the mobile device and the medical device.
  • 48. The medical device of claim 47, wherein the application-level communication comprises biometric information.
  • 49. The medical device of claim 43, further comprising a biometric sensor configured to generate biometric information associated with a user, wherein the transmitter is configured to transmit the biometric information to the mobile device.
  • 50. The medical device of claim 43, further comprising a heart rate sensor configured to generate hear rate information associated with a user, wherein the transmitter is configured to transmit the heart rate information to the mobile device.
  • 51. The medical device of claim 43, further comprising an electrocardiogram (EKG) sensor configured to generate EKG information associated with a user, wherein the transmitter is configured to transmit the EKG information to the mobile device.
  • 52. The medical device of claim 43, wherein the input device comprises a switch.
CLAIM OF PRIORITY UNDER 35 U.S.C. §119

This application is a continuation of patent application Ser. No. 11/692,100, filed on Mar. 27, 2007, which, in turn, claims the benefit of and priority to U.S. Provisional Patent Application No. 60/792,035, filed Apr. 14, 2006, both of which are incorporated by reference herein. This application is related to patent application filed concurrently herewith, entitled “SYSTEM AND METHOD FOR ASSOCIATING DEVICES BASED ON BIOMETRIC INFORMATION,” with Ser. No. 14/504,659, the disclosure of which is incorporated by reference herein. This application is also related to patent application Ser. No. 11/692,097, entitled “DISTANCE-BASED PRESENCE MANAGEMENT,” the disclosure of which is incorporated by reference herein.

US Referenced Citations (355)
Number Name Date Kind
4006477 Yost, Jr. et al. Feb 1977 A
5382957 Blume Jan 1995 A
5687169 Fullerton Nov 1997 A
5764696 Barnes et al. Jun 1998 A
5812081 Fullerton Sep 1998 A
5832035 Fullerton Nov 1998 A
5907427 Scalora et al. May 1999 A
5952956 Fullerton Sep 1999 A
5960031 Fullerton et al. Sep 1999 A
5963581 Fullerton et al. Oct 1999 A
5969663 Fullerton et al. Oct 1999 A
5970148 Meier Oct 1999 A
5995534 Fullerton et al. Nov 1999 A
6025795 Hulderman et al. Feb 2000 A
6031862 Fullerton et al. Feb 2000 A
6091374 Barnes Jul 2000 A
6111536 Richards et al. Aug 2000 A
6133876 Fullerton et al. Oct 2000 A
6177903 Fullerton et al. Jan 2001 B1
6218979 Barnes et al. Apr 2001 B1
6295019 Richards et al. Sep 2001 B1
6297773 Fullerton et al. Oct 2001 B1
6300903 Richards et al. Oct 2001 B1
6304623 Richards et al. Oct 2001 B1
6332193 Glass et al. Dec 2001 B1
6346886 De La Huerga Feb 2002 B1
6351652 Finn et al. Feb 2002 B1
6354946 Finn Mar 2002 B1
6400307 Fullerton et al. Jun 2002 B2
6400329 Barnes Jun 2002 B1
6421389 Jett et al. Jul 2002 B1
6430208 Fullerton et al. Aug 2002 B1
6437756 Schantz Aug 2002 B1
6462701 Finn Oct 2002 B1
6466125 Richards et al. Oct 2002 B1
6469628 Richards et al. Oct 2002 B1
6483461 Matheney et al. Nov 2002 B1
6489893 Fullerton et al. Dec 2002 B1
6492904 Richards Dec 2002 B2
6492906 Richards et al. Dec 2002 B1
6501393 Richards et al. Dec 2002 B1
6504483 Richards et al. Jan 2003 B1
6512455 Finn et al. Jan 2003 B2
6512488 Schantz Jan 2003 B2
6519464 Santhoff et al. Feb 2003 B1
6529568 Richards et al. Mar 2003 B1
6538615 Schantz Mar 2003 B1
6539213 Richards et al. Mar 2003 B1
6549567 Fullerton Apr 2003 B1
6552677 Barnes et al. Apr 2003 B2
6556621 Richards et al. Apr 2003 B1
6560463 Santhoff May 2003 B1
6571089 Richards et al. May 2003 B1
6573857 Fullerton et al. Jun 2003 B2
6577691 Richards et al. Jun 2003 B2
6585597 Finn Jul 2003 B2
6593886 Schantz Jul 2003 B2
6606051 Fullerton et al. Aug 2003 B1
6611234 Fullerton et al. Aug 2003 B2
6611811 Deaton et al. Aug 2003 B1
6614384 Hall et al. Sep 2003 B2
6614387 Deadman Sep 2003 B1
6621462 Barnes Sep 2003 B2
6636566 Roberts et al. Oct 2003 B1
6636567 Roberts et al. Oct 2003 B1
6636573 Richards et al. Oct 2003 B2
6642903 Schantz Nov 2003 B2
6650894 Berstis et al. Nov 2003 B1
6661342 Hall et al. Dec 2003 B2
6667724 Barnes et al. Dec 2003 B2
6670909 Kim Dec 2003 B2
6671310 Richards et al. Dec 2003 B1
6674396 Richards et al. Jan 2004 B2
6677796 Brethour et al. Jan 2004 B2
6700538 Richards Mar 2004 B1
6710736 Fullerton et al. Mar 2004 B2
6717992 Cowie et al. Apr 2004 B2
6748040 Johnson et al. Jun 2004 B1
6750757 Gabig, Jr. et al. Jun 2004 B1
6759948 Grisham et al. Jul 2004 B2
6760387 Langford et al. Jul 2004 B2
6762712 Kim Jul 2004 B2
6763057 Fullerton et al. Jul 2004 B1
6763282 Glenn et al. Jul 2004 B2
6774764 Ghosh et al. Aug 2004 B2
6774846 Fullerton et al. Aug 2004 B2
6774859 Schantz et al. Aug 2004 B2
6778603 Fullerton et al. Aug 2004 B1
6781530 Moore Aug 2004 B2
6782048 Santhoff Aug 2004 B2
6788730 Richards et al. Sep 2004 B1
6822604 Schantz et al. Nov 2004 B2
6823022 Fullerton et al. Nov 2004 B1
6836223 Moore Dec 2004 B2
6836226 Moore Dec 2004 B2
6844816 Melton et al. Jan 2005 B1
6845253 Schantz Jan 2005 B1
6847675 Fullerton et al. Jan 2005 B2
6862575 Anttila et al. Mar 2005 B1
6879878 Glenn et al. Apr 2005 B2
6882301 Fullerton Apr 2005 B2
6895034 Nunally et al. May 2005 B2
6895236 Shuster May 2005 B2
6898434 Pradhan et al. May 2005 B2
6900732 Richards May 2005 B2
6906625 Taylor et al. Jun 2005 B1
6907244 Santhoff et al. Jun 2005 B2
6907270 Blanz Jun 2005 B1
6912240 Kumar et al. Jun 2005 B2
6914949 Richards et al. Jul 2005 B2
6917280 Griffith et al. Jul 2005 B1
6919838 Santhoff Jul 2005 B2
6922166 Richards et al. Jul 2005 B2
6922177 Barnes et al. Jul 2005 B2
6925109 Richards et al. Aug 2005 B2
6933882 Fullerton Aug 2005 B2
6937639 Pendergrass et al. Aug 2005 B2
6937663 Jett et al. Aug 2005 B2
6937667 Fullerton et al. Aug 2005 B1
6937674 Santhoff et al. Aug 2005 B2
6947492 Santhoff et al. Sep 2005 B2
6950485 Richards et al. Sep 2005 B2
6954480 Richards et al. Oct 2005 B2
6959031 Haynes et al. Oct 2005 B2
6959032 Richards et al. Oct 2005 B1
6961285 Niemiec et al. Nov 2005 B2
6961541 Overy et al. Nov 2005 B2
6963727 Shreve Nov 2005 B2
6980613 Krivokapic Dec 2005 B2
6989751 Richards Jan 2006 B2
7002473 Glick et al. Feb 2006 B2
7003289 Kolls Feb 2006 B1
7010290 Dent Mar 2006 B2
7015793 Gabig, Jr. et al. Mar 2006 B2
7020224 Krivokapic Mar 2006 B2
7026983 Spratt Apr 2006 B2
7027425 Fullerton et al. Apr 2006 B1
7027483 Santhoff et al. Apr 2006 B2
7027493 Richards Apr 2006 B2
7030806 Fullerton Apr 2006 B2
7039392 McCorkle et al. May 2006 B2
7042417 Santhoff et al. May 2006 B2
7046187 Fullerton et al. May 2006 B2
7046618 Santhoff et al. May 2006 B2
7058414 Rofheart et al. Jun 2006 B1
7069111 Glenn et al. Jun 2006 B2
7075476 Kim Jul 2006 B2
7079827 Richards et al. Jul 2006 B2
7098769 Ott Aug 2006 B2
7099367 Richards et al. Aug 2006 B2
7099368 Santhoff et al. Aug 2006 B2
7116266 Vesel et al. Oct 2006 B1
7119659 Bonalle et al. Oct 2006 B2
7129886 Hall et al. Oct 2006 B2
7132975 Fullerton et al. Nov 2006 B2
7139647 Larsen Nov 2006 B2
7145954 Pendergrass et al. Dec 2006 B1
7148791 Grisham et al. Dec 2006 B2
7149533 Laird et al. Dec 2006 B2
7151490 Richards Dec 2006 B2
7167525 Santhoff et al. Jan 2007 B2
7170408 Taylor et al. Jan 2007 B2
7178719 Silverbrook et al. Feb 2007 B2
7181192 Panasik et al. Feb 2007 B2
7184938 Lansford et al. Feb 2007 B1
7188244 Matsuno Mar 2007 B2
7190722 Lakkis et al. Mar 2007 B2
7190729 Siwiak Mar 2007 B2
7206334 Siwiak Apr 2007 B2
7206559 Meade et al. Apr 2007 B2
7209724 Richards et al. Apr 2007 B2
7209753 Raith et al. Apr 2007 B2
7230980 Langford et al. Jun 2007 B2
7239277 Fullerton et al. Jul 2007 B2
7245900 Lamb et al. Jul 2007 B1
RE39759 Fullerton Aug 2007 E
7256727 Fullerton et al. Aug 2007 B2
7271779 Hertel Sep 2007 B2
7277715 Starr et al. Oct 2007 B2
7308356 Melaku et al. Dec 2007 B2
7310532 Knauerhase et al. Dec 2007 B2
7363494 Brainard et al. Apr 2008 B2
7366509 Akgun et al. Apr 2008 B2
7383984 Silverbrook et al. Jun 2008 B2
7398392 Weber Jul 2008 B2
7505443 McNew et al. Mar 2009 B2
7554979 Ikeda Jun 2009 B2
7581113 Smith et al. Aug 2009 B2
7660419 Ho Feb 2010 B1
7684754 Glass et al. Mar 2010 B2
7724705 Erola et al. May 2010 B2
7739157 Bonner et al. Jun 2010 B2
7783532 Hsu et al. Aug 2010 B2
7818762 Liu et al. Oct 2010 B2
7870021 Mankoff Jan 2011 B2
7870229 Spector Jan 2011 B2
8151334 Lauper Apr 2012 B2
8332270 Sprigg et al. Dec 2012 B2
8552903 Julian et al. Oct 2013 B2
8595070 Barnes et al. Nov 2013 B1
20010014870 Saito et al. Aug 2001 A1
20010042010 Hassell Nov 2001 A1
20020002504 Engel et al. Jan 2002 A1
20020004783 Paltenghe et al. Jan 2002 A1
20020010627 Lerat Jan 2002 A1
20020046084 Steele et al. Apr 2002 A1
20020065713 Awada et al. May 2002 A1
20020091569 Kitaura et al. Jul 2002 A1
20020091571 Thomas et al. Jul 2002 A1
20020107738 Beach et al. Aug 2002 A1
20020111140 Kim Aug 2002 A1
20020111907 Ling Aug 2002 A1
20020116271 Mankoff Aug 2002 A1
20020117544 Wolf et al. Aug 2002 A1
20020128903 Kernahan Sep 2002 A1
20020138345 Dickson et al. Sep 2002 A1
20020138346 Kodaka et al. Sep 2002 A1
20020169665 Hughes et al. Nov 2002 A1
20020169668 Bank et al. Nov 2002 A1
20020169892 Miyaoku et al. Nov 2002 A1
20020178060 Sheehan Nov 2002 A1
20020194303 Suila et al. Dec 2002 A1
20030004808 Elhaoussine et al. Jan 2003 A1
20030004821 Dutta et al. Jan 2003 A1
20030055726 Sohya et al. Mar 2003 A1
20030074259 Slyman et al. Apr 2003 A1
20030093283 Morsa May 2003 A1
20030093314 Leung et al. May 2003 A1
20030108009 Petersen Jun 2003 A1
20030115152 Flaherty Jun 2003 A1
20030117635 Roberts Jun 2003 A1
20030158796 Balent Aug 2003 A1
20030195806 Willman et al. Oct 2003 A1
20030217153 Rao et al. Nov 2003 A1
20030233190 Jones Dec 2003 A1
20040054592 Hernblad Mar 2004 A1
20040054732 Carter et al. Mar 2004 A1
20040064351 Mikurak Apr 2004 A1
20040117250 Lubow et al. Jun 2004 A1
20040137886 Ross et al. Jul 2004 A1
20040143500 Lopez et al. Jul 2004 A1
20040156326 Chithambaram Aug 2004 A1
20040158490 Sakamura et al. Aug 2004 A1
20040158492 Lopez et al. Aug 2004 A1
20040203963 Shivaram et al. Oct 2004 A1
20040214565 Shinmei Oct 2004 A1
20040218574 Sata et al. Nov 2004 A1
20040222302 Matsumori Nov 2004 A1
20040233621 Maeoka et al. Nov 2004 A1
20040240565 Santhoff et al. Dec 2004 A1
20040243519 Perttila et al. Dec 2004 A1
20040254836 Emoke et al. Dec 2004 A1
20050004840 Wanninger Jan 2005 A1
20050027984 Saito et al. Feb 2005 A1
20050038574 Gila et al. Feb 2005 A1
20050040230 Swartz et al. Feb 2005 A1
20050114213 Smith et al. May 2005 A1
20050131761 Trika et al. Jun 2005 A1
20050132234 Dawson Jun 2005 A1
20050135304 Wentink et al. Jun 2005 A1
20050138576 Baumert et al. Jun 2005 A1
20050184145 Law et al. Aug 2005 A1
20050200671 Mistry et al. Sep 2005 A1
20050204152 Breitbach Sep 2005 A1
20050212750 Marvit et al. Sep 2005 A1
20050230473 Fajkowski Oct 2005 A1
20050237270 Adams et al. Oct 2005 A1
20060003776 Natori et al. Jan 2006 A1
20060014532 Seligmann et al. Jan 2006 A1
20060015404 Tran Jan 2006 A1
20060026070 Sun Feb 2006 A1
20060030341 Pham Feb 2006 A1
20060068822 Kalhan Mar 2006 A1
20060073851 Colando et al. Apr 2006 A1
20060074784 Brown Apr 2006 A1
20060111967 Forbes May 2006 A1
20060130100 Pentland Jun 2006 A1
20060177030 Rajagopalan et al. Aug 2006 A1
20060178932 Lang Aug 2006 A1
20060180664 Barrett et al. Aug 2006 A1
20060194569 Hsueh Aug 2006 A1
20060256074 Krum et al. Nov 2006 A1
20060293968 Brice et al. Dec 2006 A1
20070017259 Cho et al. Jan 2007 A1
20070043626 Duvall et al. Feb 2007 A1
20070057051 Bortolin et al. Mar 2007 A1
20070061302 Ramer et al. Mar 2007 A1
20070087732 Hsueh Apr 2007 A1
20070124209 Walker et al. May 2007 A1
20070131759 Cox et al. Jun 2007 A1
20070136657 Blumenthal et al. Jun 2007 A1
20070136775 MacKay et al. Jun 2007 A1
20070138270 Reblin Jun 2007 A1
20070150339 Retter et al. Jun 2007 A1
20070173266 Barnes, Jr. et al. Jul 2007 A1
20070174116 Keith et al. Jul 2007 A1
20070174259 Amjadi Jul 2007 A1
20070182546 Virk et al. Aug 2007 A1
20070200671 Kelley et al. Aug 2007 A1
20070203792 Rao Aug 2007 A1
20070241189 Slavin et al. Oct 2007 A1
20070249288 Moallemi et al. Oct 2007 A1
20070259690 Julian et al. Nov 2007 A1
20070270129 Luo Nov 2007 A1
20070276537 Walker et al. Nov 2007 A1
20070287386 Agrawal et al. Dec 2007 A1
20080040229 Gholston Feb 2008 A1
20080052169 O'Shea et al. Feb 2008 A1
20080072066 Vogler et al. Mar 2008 A1
20080074264 Sharpe et al. Mar 2008 A1
20080077484 Main et al. Mar 2008 A1
20080120186 Jokinen et al. May 2008 A1
20080133349 Nazer et al. Jun 2008 A1
20080133366 Evans et al. Jun 2008 A1
20080154714 Liu et al. Jun 2008 A1
20080154827 Connors Jun 2008 A1
20080167991 Carlson et al. Jul 2008 A1
20080189170 Ramachandra Aug 2008 A1
20080208688 Byerley et al. Aug 2008 A1
20080221984 Abhyanker Sep 2008 A1
20080238615 Carpenter Oct 2008 A1
20080240440 Rose et al. Oct 2008 A1
20080262928 Michaelis Oct 2008 A1
20080270231 Li et al. Oct 2008 A1
20080300970 Scheibe Dec 2008 A1
20080300984 Li Dec 2008 A1
20090061884 Rajan et al. Mar 2009 A1
20090076911 Vo et al. Mar 2009 A1
20090076912 Rajan et al. Mar 2009 A1
20090088182 Piersol et al. Apr 2009 A1
20090098903 Donaldson et al. Apr 2009 A1
20090108064 Fernandes et al. Apr 2009 A1
20090164309 Mgrdechian et al. Jun 2009 A1
20090178144 Redlich et al. Jul 2009 A1
20090233575 Morrison Sep 2009 A1
20100066498 Fenton Mar 2010 A1
20100153205 Retter et al. Jun 2010 A1
20100174615 Weaver Jul 2010 A1
20100185504 Rajan et al. Jul 2010 A1
20100205043 Edwards Aug 2010 A1
20100241574 Salazar Sep 2010 A1
20100257020 Bryant et al. Oct 2010 A1
20100280960 Ziotopoulos et al. Nov 2010 A1
20100289640 Annamalai Nov 2010 A1
20100299224 Borom et al. Nov 2010 A1
20110028160 Roeding et al. Feb 2011 A1
20110119132 Morton et al. May 2011 A1
20110215138 Crum Sep 2011 A1
20110250901 Grainger et al. Oct 2011 A1
20110276385 Keller Nov 2011 A1
20120239500 Monahan Sep 2012 A1
20130006773 Lutnick et al. Jan 2013 A1
20130030915 Statler et al. Jan 2013 A1
20150024689 Agrawal Jan 2015 A1
20150163658 Julian et al. Jun 2015 A1
Foreign Referenced Citations (130)
Number Date Country
1432949 Jul 2003 CN
1633660 Jun 2005 CN
1672382 Sep 2005 CN
1694122 Nov 2005 CN
1716223 Jan 2006 CN
1799061 Jul 2006 CN
1879121 Dec 2006 CN
101384031 Mar 2009 CN
101731017 Jun 2010 CN
1589723 Oct 2005 EP
1758308 Feb 2007 EP
1926335 May 2008 EP
2184927 May 2010 EP
11353555 Dec 1999 JP
2000275328 Oct 2000 JP
2001034658 Feb 2001 JP
2001145785 May 2001 JP
2001223712 Aug 2001 JP
2001325507 Nov 2001 JP
2002027571 Jan 2002 JP
2002073666 Mar 2002 JP
2002074131 Mar 2002 JP
2002109237 Apr 2002 JP
2002132886 May 2002 JP
2002149945 May 2002 JP
2002150102 May 2002 JP
2002525641 Aug 2002 JP
2002251555 Sep 2002 JP
2002279274 Sep 2002 JP
2002291047 Oct 2002 JP
2002374261 Dec 2002 JP
2003006543 Jan 2003 JP
2003023367 Jan 2003 JP
2003051771 Feb 2003 JP
2003067606 Mar 2003 JP
2003115001 Apr 2003 JP
2003187140 Jul 2003 JP
2003208381 Jul 2003 JP
2003256705 Sep 2003 JP
2003263582 Sep 2003 JP
2004094543 Mar 2004 JP
2004516989 Jun 2004 JP
2004220522 Aug 2004 JP
2004236166 Aug 2004 JP
2004248215 Sep 2004 JP
2004272463 Sep 2004 JP
2004326303 Nov 2004 JP
2004328542 Nov 2004 JP
2004334885 Nov 2004 JP
2004362470 Dec 2004 JP
2005011318 Jan 2005 JP
2005020350 Jan 2005 JP
2005045756 Feb 2005 JP
2005078173 Mar 2005 JP
2005128903 May 2005 JP
2005128965 May 2005 JP
2005141686 Jun 2005 JP
2005209114 Aug 2005 JP
2005528016 Sep 2005 JP
2005303659 Oct 2005 JP
2005328290 Nov 2005 JP
2005533316 Nov 2005 JP
2005534260 Nov 2005 JP
2006011806 Jan 2006 JP
2006018511 Jan 2006 JP
2006018824 Jan 2006 JP
2006020004 Jan 2006 JP
2006091355 Apr 2006 JP
2006129000 May 2006 JP
2006139431 Jun 2006 JP
2006197458 Jul 2006 JP
2006227901 Aug 2006 JP
2006246433 Sep 2006 JP
2006295249 Oct 2006 JP
2007025854 Feb 2007 JP
2007502087 Feb 2007 JP
2007072906 Mar 2007 JP
2007133461 May 2007 JP
2007201851 Aug 2007 JP
2007213276 Aug 2007 JP
2008225540 Sep 2008 JP
2008293123 Dec 2008 JP
2009104350 May 2009 JP
2009188922 Aug 2009 JP
2010515168 May 2010 JP
2013500538 Jan 2013 JP
102002006894 Aug 2002 KR
20020096946 Dec 2002 KR
20030011744 Feb 2003 KR
20030018741 Mar 2003 KR
20040020309 Mar 2004 KR
20040069122 Aug 2004 KR
100512362 Sep 2005 KR
20060014942 Feb 2006 KR
20060018235 Feb 2006 KR
20060064222 Jun 2006 KR
20060124430 Dec 2006 KR
20070016301 Feb 2007 KR
2150790 Jun 2000 RU
2267156 Dec 2005 RU
20050100782 Feb 2006 RU
2301450 Jun 2007 RU
I228364 Feb 2005 TW
I252324 Apr 2006 TW
I252628 Apr 2006 TW
I252639 Apr 2006 TW
I252671 Apr 2006 TW
WO-9613920 May 1996 WO
WO-0178423 Oct 2001 WO
WO-0221478 Mar 2002 WO
WO-0225823 Mar 2002 WO
WO-0250732 Jun 2002 WO
WO-02054353 Jul 2002 WO
WO-03107289 Dec 2003 WO
WO-2004008276 Jan 2004 WO
WO-2004014037 Feb 2004 WO
WO-2005045455 May 2005 WO
WO-2005064515 Jul 2005 WO
WO-2005110208 Nov 2005 WO
WO-2005122483 Dec 2005 WO
WO-2006030341 Mar 2006 WO
WO-2006092772 Sep 2006 WO
WO-2007026745 Mar 2007 WO
WO-2008027965 Mar 2008 WO
WO-2008146576 Dec 2008 WO
WO-2008157804 Dec 2008 WO
WO-2008157806 Dec 2008 WO
2009140438 Nov 2009 WO
2010096617 Aug 2010 WO
2011014292 Feb 2011 WO
Non-Patent Literature Citations (12)
Entry
Bardia Alavi, et al., “Indoor Geolocat ion Distance Error Modeling using UWB Channel Measurements” ,2005 IEEE 16th International Symposium on Personal, Indoor and Mobile Radio Communications, Sep. 11-14, 2005.
Blundo, C. et al.: “Secure E-Coupons,” Electronic Commerce Research, vol. 5, No. 1, pp. 117-139, Kluwer, Dordrecth, NL, (Jan. 1, 2005), XP002380651, ISSN: 1389-5753, Section 8.4.
“Digital Watermarking Alliance”, Oct. 19, 2006, 8 pages, Retrieved from the Internet: URL: http://www.digitalwatermarkingalliance.org/faqs.asp [retrieved on Jul. 21, 2014].
“Examples of Judging whether Business-Related Inventions are Patentable” http://www.jpo.go.jp/tetuzuki/t—tokkyo/bijinesu/biz—pat—case.htm, Apr. 2003.
International Search Report—PCT/US07/066731, International Search Authority—European Patent Office—Nov. 9, 2007.
Itao T., “Relationship Mechanism for Dynamic and User Preference-Aware Service Creation”, Journal of the Information Processing Society of Japan, Japan, IPSJ, Mar. 15, 2003, vol. 44, No. 3, pp. 812-825.
Kirvoski D., et al., “Spread Spectrum Watermarking of Audio Signals”, IEEE Transactions on Signal Processing, vol. 51, No. 4, pp. 1020-1033, Apr. 2003.
Lester, J et al., ““Are You With Me ?”—Using Accelerometers to Determine if Two Devices are Carried by the Same Person”, LNCS, Pervasive Computing, Apr. 2004,vol. 3001, pp. 33-50.
Okazaki, “Eight Methods for Capitalizing on Access Log Analysis, which are Essential to SEO, Marketing and Redesign”, Web Creators, NdN Corporation, Japan, Mar. 1, 2005, vol. 39, pp. 148-155.
Roumeliotis, T., “Five geofencing ideas for mobile marketing from brands and retailers,”, Mobile Commerce Daily, Jul. 16, 2010, 2 pages, Retrieved from http://www.mobilecommercedaily.com/five-geofencing-ideas-for-mobile-marketing-from-brands-and-retailers.
Taiwan Search Report—TW096113260—TIPO—Apr. 26, 2011.
Written Opinion—PCT/US2007/066731, International Search Authority—European Patent Office, Nov. 9, 2007.
Related Publications (1)
Number Date Country
20150017951 A1 Jan 2015 US
Provisional Applications (1)
Number Date Country
60792035 Apr 2006 US
Continuations (1)
Number Date Country
Parent 11692100 Mar 2007 US
Child 14504595 US