Taking architectural diversity into account when positioning devices
Patent Information
- Application Number
- CN202580023473.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-03-28
- Filing Date
- 2025-03-27
- Publication Date
- 2026-10-30
Smart Images

Figure CN123023262A_ABST
Abstract
Description
Cross-references to other applications
[0001] This application claims priority to U.S. Provisional Application No. 63 / 571,400, filed March 28, 2024, entitled “ACCOUNTING FOR ARCHITECTURALDIVERSITY WHEN LOCATING DEVICES”, the entire contents of which are incorporated herein by reference for all purposes. Background Technology
[0002] User devices can use a Find My app to track linked or connected accessory devices. The Find My app can communicate with accessory devices via a wireless network or via a cloud connectivity server that has received the location of the accessory device.
[0003] Some user devices, such as larger handheld tablets, may include multiple antennas. These antennas are typically located on the side or edge of the underside of the casing. Users can hold these larger handheld tablets in various ways. Sometimes, one or more antennas may be covered by the user's hand, causing additional attenuation to the received signal.
[0004] The attenuation of the received signal caused by the user's grip may affect the performance of the Find App when locating linked or connected accessory devices. Attached Figure Description
[0005] Figure 1 Examples of search environments based on some implementation schemes are provided.
[0006] Figure 2 Examples of orientation-based antenna selection according to some implementation schemes are illustrated.
[0007] Figure 3 Flowcharts based on some implementation schemes are shown.
[0008] Figure 4 The diagram illustrates a signal according to some implementation schemes.
[0009] Figure 5 Examples illustrating the effect of antenna patterns on received signals according to some implementation schemes are given.
[0010] Figure 6 Flowcharts based on some implementation schemes are shown.
[0011] Figure 7 Examples of orientation and antenna patterns based on some implementation schemes are shown.
[0012] Figure 8 The diagram illustrates a signal according to some implementation schemes.
[0013] Figure 9 Examples of likelihood-based lookup processes based on some implementation schemes are illustrated.
[0014] Figure 10 The diagram illustrates a signal according to some implementation schemes.
[0015] Figure 11 The diagram illustrates a signal according to some implementation schemes.
[0016] Figure 12 Flowcharts based on some implementation schemes are shown.
[0017] Figure 13 Examples of the search process based on some implementation schemes are illustrated.
[0018] Figure 14 Flowcharts based on some implementation schemes are shown.
[0019] Figure 15 Examples of graphical interfaces based on some implementation schemes are shown.
[0020] Figure 16 Examples of graphical interfaces based on some implementation schemes are shown.
[0021] Figure 17 Examples of graphical interfaces based on some implementation schemes are shown.
[0022] Figure 18 Flowcharts based on some implementation schemes are shown.
[0023] Figure 19 Flowcharts based on some implementation schemes are shown.
[0024] Figure 20 Flowcharts based on some implementation schemes are shown.
[0025] Figure 21 This is a block diagram of an example device according to an embodiment of this disclosure. Detailed Implementation
[0026] The following detailed description refers to the accompanying drawings. The same reference numerals may be used to identify the same or similar elements in different drawings. In the following description, specific details, such as particular structures, architectures, interfaces, and techniques, are set forth for illustrative and non-limiting purposes to provide a thorough understanding of various aspects of the various embodiments. However, it will be apparent to those skilled in the art that various aspects of the various embodiments may be practiced in other examples departing from these specific details. In some instances, descriptions of well-known devices, circuits, and methods have been omitted so as not to obscure the description of the various embodiments with unnecessary detail. For the purposes of this document, the phrases “A / B” and “A or B” refer to (A), (B), or (A and B); and the phrase “based on A” means “at least partially based on A,” for example, it can be “based solely on A” or it can be “partially based on A.”
[0027] I. Overview Handheld user equipment may include one or more communication modules (including hardware and software components). Each radio module may include transceiver circuitry that includes one or more antennas. The antennas may be located under the housing and sometimes at the edge.
[0028] Handheld user devices (such as smartphones or tablets) can have different form factors. Even a single device can have different stock keeping units (SKUs), each with a different form factor. The form factor can influence a user's preference for holding the handheld user device. For example, while a user might hold a smartphone with one hand, resting it on their palm, they might hold a tablet with both hands in either a horizontal or vertical orientation.
[0029] In some implementations, a user can use a handheld user equipment (User Equipment) to locate accessory devices that can be connected to the handheld User Equipment. Accessory devices that can be located by the handheld User Equipment are referred to as findable devices. For example, a user can use an app on their handheld User Equipment to locate a stylus or remote control. The handheld User Equipment can analyze signals received from the findable device to estimate its location. A graphical interface displayed on the screen of the handheld User Equipment guides the user to the findable device.
[0030] In some implementations, the handheld user equipment (User Equipment) can locate the accessory device based on wireless signals it receives from the accessory device. The handheld User Equipment can calculate the distance between the accessory device and the handheld User Equipment, the angle of arrival of the signal from the accessory device, or the relative position of the accessory device relative to the handheld User Equipment by analyzing the wireless signals received from the accessory device. The wireless signals from the accessory device can be Bluetooth, Bluetooth Low Energy (BLE), WiFi, or ultra-wideband signals.
[0031] In the example use case, a user can open a Find My app on their handheld user device (e.g., a tablet) to locate an accessory device, such as a stylus or other accessory device. The user can select the stylus on the app's graphical user interface. Selecting the stylus initiates a Find My session. When the tablet initiates the Find My process to locate the stylus, the handheld user device can send a request to the stylus. This request can cause the stylus to send a signal. For example, the tablet can request the stylus to send a Bluetooth or BLE quick notification signal. The tablet can use the signal sent from the stylus to locate the stylus and display the stylus's location on the app's graphical user interface in a way that guides the user to the stylus's location.
[0032] Users can hold the tablet and follow on-screen indicators to locate the stylus. A user's grip may block one or more of the tablet's antennas, resulting in a degraded quality of the stylus signal received by the blocked antenna. This signal quality degradation can therefore affect the accuracy of stylus positioning. It is desirable to use the signal received from an unblocked antenna to utilize the best available signal quality.
[0033] Based on the shape factor, antenna location, tablet orientation, and the most common way a user holds the tablet in that given orientation, a probability or likelihood of antenna blockage can be assigned to the tablet's antenna. The probability or likelihood value can be obtained through field user experience testing.
[0034] Similarly, average power degradation can be assigned to each antenna of the tablet based on the factors mentioned above. Average power degradation for different form factors, orientations, or SKUs can be obtained through field user experience testing.
[0035] In some implementations, for a given form factor or SKU of the tablet computer, the probability of power degradation or blockage for each antenna for different orientations of the tablet computer can be configured and stored in the device. This configuration can be done during the manufacturing or calibration of the tablet computer.
[0036] Using additional information from other components of the device, the lookup app can determine the tablet's orientation. Using a configured table, the lookup app can determine the probability that each antenna of the device is blocked, or the reduction in received signal power (if any) for each antenna of the device.
[0037] Based on power drop information or the probability of antenna blockage, a tablet's find-a-dots app or other hardware or software components can determine that its received signals can be used to locate one or more antennas of the stylus. The find-a-dots app can use a signal from the antenna with the strongest signal (e.g., the lowest power drop or the lowest likelihood of blockage). In some implementations, the tablet (e.g., the find-a-dots app) can use signals from more than one antenna, combine the signals from those antennas, and use the combined signal to locate the stylus.
[0038] In some implementations, the Find My app may prompt the user to change the orientation of the device. For example, based on configuration information regarding the likelihood of power drop or obstruction for a given orientation, the tablet may determine a preferred orientation and one or more preferred antennas whose signal quality or strength is strongest compared to the signal strength of all antennas across all orientations. If the tablet's orientation differs from the preferred orientation when searching for the stylus, the Find My app may prompt the user to change orientation. The Find My app may also suggest that the user hold the table in the preferred orientation. To ensure that the user's grip does not obstruct the best antenna, the Find My app may also prompt the user to hold the device or identify areas not intended for holding the tablet. The app may communicate the optimal orientation, grip, or areas to avoid holding the tablet on the graphical user interface.
[0039] In some implementations, prompting the user to adjust the orientation of the tablet may not be desirable. The techniques described herein can utilize additional characteristics of the antenna and its signals to improve stylus finding or positioning. For example, the antenna pattern is a characteristic of the antenna and can be used as part of the techniques described herein. The antenna pattern indicates how the antenna radiates or receives energy in different directions. In some implementations, the antenna pattern of each antenna of the user device (e.g., a tablet) can be measured and stored in the tablet. The antenna pattern can be measured during the manufacture or calibration of the device and can be configured or stored in the device.
[0040] In some implementations, the tablet computer may select one or more antennas based on the tablet computer's orientation, the likelihood of power degradation or obstruction, and the antenna patterns of one or more of the tablet computer's antennas. For example, in the case of an estimate of the stylus's position, the tablet computer may determine the antenna with the strongest signal based on: the antenna pattern of the antenna, the estimated position of the stylus, or the likelihood of power degradation or obstruction for the current orientation of the device.
[0041] In another implementation, based on information about the likelihood of power drop or obstruction for a given orientation, the antenna pattern of the tablet's antennas, and the estimated position of the stylus, the tablet can determine an optimal orientation and one or more optimal antennas whose signal quality or strength is strongest compared to the signal strength of other antennas across all orientations. If the tablet's current orientation differs from the optimal orientation when searching for the stylus, the search app can prompt the user to change orientation. The search app can also suggest that the user hold the table in the optimal orientation. To ensure that the user's grip does not obstruct the optimal antennas, the search app can also prompt the user to hold the device or identify areas not intended for holding the tablet. The app can convey the optimal orientation, grip, or areas to avoid holding the tablet on the graphical user interface.
[0042] In some implementations, the tablet computer can use the signal from the optimal antenna to position the stylus. In other implementations, the tablet computer can use signals from one or more antennas to position the stylus. The antenna signals can be combined to obtain a combined signal. The tablet computer can use the combined signal to position the stylus.
[0043] In some implementations, for example, when signals exist on two channels, the tablet can select the channel with the strongest signal. For instance, a stylus can transmit Bluetooth signals on multiple channels (e.g., carrier frequencies). The tablet can select the Bluetooth channel with the strongest signal. In another example, the stylus signal can be received on multiple antennas (e.g., multiple channels). The tablet can select the antenna with the strongest signal as the receiving antenna and analyze the signal on the selected antenna to locate the stylus.
[0044] Signal strength can be determined by sampling the received signal and calculating the power of the measured samples. Multiple power measurements can also be averaged to obtain a single measurement, which represents the signal strength over the duration of the measurement. Signal strength can be quantized and identified by a corresponding quantization index. This representation of signal strength is known as the Received Signal Strength Indication (RSSI). The higher the RSSI value, the stronger the received signal.
[0045] In some instances, the average of multiple RSSIs can be used to select a channel or antenna. In one example, several RSSIs sampled over regular time instances are averaged. However, such time-based averaging may not be sufficient for selecting the optimal channel or antenna. For instance, this might be necessary when user mobility is low and all RSSI samples are collected while the user is in a temporarily unfavorable channel position. In this case, the tablet could select a channel based on negative bias samples from the unfavorable channel. Another way to obtain an average RSSI is to sample the RSSI as the user moves a certain distance (e.g., linear, rotational, or angular displacement). Using distance-based RSSI filtering (e.g., averaging) reduces negative bias and increases the likelihood of selecting the optimal channel or antenna.
[0046] In some implementations, the tablet computer can determine that it has moved a certain distance. While the tablet computer has moved that distance, it can receive signals from the stylus on multiple channels, where the channels can be different radio frequencies or different antennas. The tablet computer can perform signal measurements (e.g., RSSI measurements) to calculate a measurement result (e.g., filtered or averaged RSSI) for each of the multiple channels based on the measurements. Based on the measurement results, the tablet computer can select a channel from the multiple channels. Using the measurement results, the tablet computer can determine the relative position of the stylus with respect to the tablet computer based on the measurement results of the selected channel.
[0047] In some implementations, the tablet computer can receive signals associated with a stylus at the antenna of a handheld user equipment. The tablet computer can perform signal measurements. Using information from the measurements and antenna pattern configuration, the tablet computer can determine the relative position of the locateable device with respect to the handheld user equipment. For example, given received RSSI values measured at different locations and the antenna pattern, the tablet computer can estimate the angle of arrival (Angle of Arrival) of the signal from the stylus, which produces the measured RSSI. Using ranging techniques and the angle of arrival, the tablet computer can estimate the stylus's position.
[0048] In some implementations, the find-a-dots application can generate a user interface to be displayed on the screen of a handheld user device. The user interface may include text and graphic portions. The process may determine the distance between the stylus and the tablet based on received signals from the stylus. The find-a-dots application may determine the text to be displayed on the text portion of the user interface based on the received signals or the distance. Additionally or alternatively, the find-a-dots application may determine one or more images with one or more characteristics to be displayed on the graphic portion of the user interface, wherein the process may determine one or more characteristics of the one or more images based on signals. For example, the size or orientation of the image may be based on signal strength or an estimated distance between the tablet and the stylus. The characteristics of the image can be continuously updated as the user moves around while searching with the stylus.
[0049] According to the techniques described herein, the location of an accessory device can be determined. In one example, a tablet can use RSSI from a BLE beacon to estimate the distance between the stylus and the tablet. In another example, multi-channel transmission can be used to improve the performance of BLE-based positioning. Techniques such as Time of Arrival (TOA), Time Difference of Arrival (TDOA), Angle of Arrival (AOA), and Angle Difference of Arrival (ADOA) can be used to infer location based on the time it takes for a signal to travel from the transmitter to the receiver. In another example, a convolutional neural network (CNN)-based positioning technique can be used. This method uses a CNN to transform the positioning problem into a regression problem. In yet another example, a Kalman filter-based positioning technique can be used.
[0050] II. System Environment Figure 1 An example of a search environment 100 according to some embodiments is illustrated. Environment 100 may include a handheld user equipment 104 and a searchable device 108. The handheld user equipment 104 may be communicatively coupled to the searchable device 108. For example, the handheld user equipment 104 may be paired with the searchable device 108 via a communication link according to Bluetooth, WiFi, or cellular protocols.
[0051] Process 140 (e.g., an application or daemon) may run on handheld user equipment 104. Process 140 may be a lookup application for locating a findable device (e.g., an accessory or other device, such as findable device 108) coupled to handheld user equipment 104.
[0052] The handheld user equipment 104 may include one or more antennas, such as antennas 120-A / B / C. One or more antennas may receive signals from the findable device 108. For example, process 140 may receive signals from the findable device 108 on its antennas (e.g., antennas 120-A / B / C). Process 140 may locate the findable device 108 by analyzing the received signals. In some instances, the user may move to search for the findable device, and the signals may be acquired at different times or locations. In some instances, antennas 120-B and 120-C may receive Bluetooth signals from the findable device 108.
[0053] The handheld user equipment 104 may include a screen 132. Process 140 may use the user interface 130 to display information related to the location of the findable device 108 on the screen 132. The user interface 130 may include one or more text sections 134. The one or more text sections 134 may display information about the device being located, indications of whether the findable device is near or far, or guidance instructions (such as directions of movement).
[0054] Additionally or alternatively, the user interface 130 may include one or more graphical portions 136. The one or more graphical portions 136 may include one or more user interface elements. A user interface element may include one or more images. A user interface element may indicate received signal strength or distance to the findable device 108. The one or more graphical portions 136 may include one or more user interface elements to indicate the relative position of the findable device 108 or guide the user toward the findable device 108.
[0055] As the user moves the handheld user equipment 104 toward the findable device 108, process 140 may continue to receive and analyze signals from the findable device 108. Process 140 may recalculate the relative position of the findable device 108 with respect to the handheld user equipment 104 and update the information displayed on the user interface 130.
[0056] III. Orientation-Based Antenna Selection Users can hold the device in different orientations (e.g., vertical or horizontal). In a given orientation, some antennas are more likely to be blocked by the user's grip, while others are more likely to remain unobstructed. The process selects the antennas less likely to be blocked and uses the signal received on those antennas to locate the findable device.
[0057] A. Description Field tests can be performed to determine the different orientations and hand positions used by users when searching for accessory devices. The power drop on each antenna due to hand grip and orientation can be configured and stored in the device. Handheld user equipment can select antennas based on the configured information and the device's orientation.
[0058] Figure 2 An example of orientation-based antenna selection 200 according to some implementation schemes is illustrated. The handheld user equipment 204 may be... Figure 1 An example of a handheld user equipment 104 is shown. The handheld user equipment 204 may include antennas 220-A / B / C.
[0059] The location of the antenna in the handheld user equipment 204 may depend on its form factor and the characteristics of the specific device (e.g., SKU). For example, the location of the antenna in a tablet computer with only WiFi capability may differ from the location of the antenna in a similar model tablet computer with both WiFi and cellular capabilities. The antenna location, the likelihood of power drop or obstruction due to user grip at different orientations, and other information (such as the antenna pattern for each device) can be configured and stored in the device. The Find My app or other applications or processes on the handheld user equipment may have access to the configured or stored information.
[0060] In some instances, when a user holds the handheld user equipment 204 in a longitudinal orientation 230, antenna 220-C may be obstructed, for example, by the user's hand. In other cases, when a user holds the handheld user equipment 204 in a lateral orientation 240, antennas 220-C and 220-B may be obstructed, for example, by the user's hand.
[0061] Process 250 may determine the orientation of the handheld user equipment 204. For example, process 250 may use information received from the accelerometer, gyroscope, magnetometer or other sensors of the handheld user equipment 204 to determine the orientation of the equipment.
[0062] Based on the orientation of the handheld user equipment 204, process 250 may select the antenna to be used for locating the findable device. For example, process 250 may determine that the handheld user equipment 204 is in a longitudinal orientation 230, and antenna 220-A or 220-B may be selected accordingly for locating the findable device. In another example, process 250 may determine that the handheld user equipment 204 is in a lateral orientation 240, and antenna 220-A may be selected accordingly for locating the findable device.
[0063] In some implementations, process 250 may refer to table 255. Table 255 may include received signal power drop in decibels (dB) for different orientations. Table 255 may have antenna columns listing the antennas of the handheld user equipment 204 (e.g., 220-A / B / C). Table 255 may include columns for grip drop power (e.g., values PGD 1-3) associated with longitudinal orientation 230, and another column for grip drop power (e.g., values LGD 1-3) associated with lateral orientation 240. As used herein, the term "grip drop" may refer to the decrease in received signal power (in dB) of the antenna due to the position of the user's hand relative to the antenna for different orientations of the handheld user equipment 204. Each row of the table is associated with an antenna and includes grip drop power for either longitudinal or lateral orientation. For example, Table 255 may indicate that when the device is held in a longitudinal orientation 230, the received signal on antenna 220-A may experience a power drop of 1 dB due to user gripping. Similarly, Table 255 may indicate that when the device is held in a lateral orientation 240, the received signal on antenna 220-A may experience a power drop of 1 dB due to user gripping. Table 255 may be configured, for example, during manufacturing through testing and measurement.
[0064] In some implementations, process 250 may determine the orientation of the handheld user equipment 204. Using table 255, process 250 may identify and select an antenna with the minimum power drop (e.g., grip drop) for locating the findable device.
[0065] In other embodiments, the handheld user equipment 204 may determine the grip drop of the antenna based on measurements of the strength of the received signal on which a findable device is located. The handheld user equipment 204 (e.g., process 250) may select the antenna with the highest received signal strength or the lowest grip drop.
[0066] In some implementations, process 250 may select more than one antenna for locating the findable device. Process 250 may filter or combine the received signals on the selected antennas and use the filtered or combined signals to locate the findable device.
[0067] Measurement 260 shows the power attenuation caused by the mismatch between the antenna of the handheld user equipment 204 and the findable device 208. For example, -40 dBm is observed when both the handheld user equipment 204 and the findable device 208 are in a vertical position (the rightmost figure in measurement 260). In some instances, measurement 260 may have been measured during the manufacture or calibration of the handheld user equipment 204, and these measurements may have been stored or configured on the device.
[0068] B. Process Figure 3 , Figure 6 , Figure 12 , Figure 14 , Figure 18 , Figures 19 to 20 Example flowcharts illustrating processes 300, 600, 1200, 1400, 1800, 1900, and 2000 are shown according to at least several examples. These processes, and any other processes described herein, are illustrated as logic flowcharts, where each operation represents a series of operations that can be implemented in hardware, computer instructions, or combinations thereof. In the context of computer instructions, an operation may represent computer-executable instructions stored on one or more non-transitory computer-readable storage media that perform the operation when executed by one or more processors. Generally, computer-executable instructions include routines, programs, objects, components, data structures, etc., that perform a particular function or implement a particular data type. The order in which operations are described is not intended to be construed as limiting, and any number of described operations may be combined in any order and / or in parallel to implement the described process.
[0069] Additionally, any or all of the processes described herein may be executed under the control of one or more computer systems configured to have specific executable instructions and be implementable as code (e.g., executable instructions, one or more computer programs, or one or more applications), which is executed jointly on one or more processors by hardware or a combination thereof. As described above, the code may be stored on a non-transitory computer-readable storage medium, for example, in the form of a computer program comprising multiple instructions executable by one or more processors.
[0070] Figure 3 A flowchart illustrating a process 300 according to some embodiments is shown. Process 300 may be performed or implemented by a handheld user device (such as handheld user device 104) or its components (such as process 140 or controller 2100).
[0071] Process 300 may include, at 310, determining the orientation of a handheld user equipment. The handheld user equipment may include multiple antennas. The process operating within the handheld user equipment may use accelerometer, gyroscope, or magnetometer information to determine the orientation of the handheld user equipment.
[0072] Process 300 may include: at 320, selecting an antenna from the plurality of antennas, at least in part, based on orientation. The handheld user equipment may use a configured lookup table and the orientation of the handheld user equipment to select the antenna.
[0073] The handheld user equipment can determine the Received Signal Strength Indication (RSSI) for each of the multiple antennas. The handheld user equipment can select the antenna with the highest RSSI.
[0074] Process 300 may include, at 330, processing the signal received by the antenna from the findable device. For example, a handheld user equipment may obtain the RSSI of the received signal.
[0075] Process 300 may include, at 340, determining the relative position of the searchable device with respect to the position of the handheld user equipment based on signals received from the searchable device. For example, the handheld user equipment may use a ranging or positioning process to locate the searchable device.
[0076] In some implementations, the handheld user equipment (User Equipment) may generate prompts to instruct the user that they should adjust the orientation of the equipment. The prompts can be displayed on the screen of the handheld User Equipment using a user interface. The handheld User Equipment (e.g., the process) may detect the adjustment of orientation and accordingly select an antenna for locating a findable device.
[0077] In some implementations, the handheld user equipment (HUE) may generate prompts to instruct the user to adjust their grip on the device. The prompts can be displayed on the HUE's screen using a user interface. The HUE (e.g., the process) may detect the adjustment in grip and accordingly select an antenna for locating a findable device.
[0078] IV. Selection using RSSI A handheld user equipment (e.g., a process operating on a handheld user equipment) can select an antenna for locating a findable device based on RSSI. The handheld user equipment can select an antenna whose received signal meets certain conditions.
[0079] A. RSSI signal diagram Figure 4 A signal diagram 400 is illustrated according to some embodiments. Signal diagram 400 depicts the RSSI of antennas 320-A and 320-B over time. Antenna 320-A can be an example of antenna 120-A or 220-A. Antenna 320-B can be an example of antenna 120-B or 220-B.
[0080] In some implementations, the handheld user equipment can compare the RSSI of each antenna with a configured threshold. If the RSSI of the received signal on an antenna is greater than the threshold, the handheld user equipment can select that antenna.
[0081] In some implementations, the handheld user equipment can compare the RSSI of the received signals on each of the antennas. The handheld user equipment can select the antenna with the largest RSSI value. For example, during period 415, the RSSI of antenna 320-A is greater than the RSSI of antenna 320-B, and the handheld user equipment can select and use antenna 320-A to locate the findable device. At 420, the RSSI of antenna 320-A may be equal to the RSSI of antenna 320-B. The handheld user equipment can continue to use antenna 320-B, use both antennas 320-A and 320-B, or switch to antenna 320-B. During period 425, the RSSI of antenna 320-B is greater than the RSSI of antenna 320-A, and the handheld user equipment can select and use antenna 320-B to locate the findable device.
[0082] In some instances, a change in RSSI can indicate a change in orientation. In other instances, a change in RSSI can indicate that the corresponding antenna is blocked, for example, due to a user's grip. For example, at 420, the RSSI of antenna 320-A drops. The handheld user equipment can determine that the drop in the RSSI of antenna 320-A is due to antenna 320-A being blocked, for example, by a user's hand, or that the drop is due to a change in the orientation of the handheld user equipment.
[0083] A findable device can transmit one or more beacons. A handheld user equipment (UE) can receive the beacons and measure the received energy of the beacons. For example, a handheld UE can sample the received signal over time and calculate the average energy of the samples. A receiver can only measure RSSI, and in some instances, it may not be able to directly measure distance. However, a receiver (e.g., a handheld UE) can measure and identify trends in RSSI measurements, such as an increase or decrease in RSSI depending on the direction of movement of the device. An increase in RSSI may indicate that the device is getting closer to the findable device, while a decrease in RSSI may indicate that the device is moving away from the findable device.
[0084] Environmental factors can affect RSSI measurements. In some instances, the measured RSSI may still fluctuate even when the accessory and handheld user equipment remain stationary. Some fluctuations are due to stationary and slow-moving conditions of the wireless channel between the searchable device and the handheld user equipment. This type of fluctuation is known as slow fading. Some fluctuations may be due to continuous and rapid environmental changes, such as trees, moving leaves, and moving objects (such as people, cars, etc.). These fluctuations are known as fast fading. As discussed above, RSSI can also be affected by gripping or being covered by other objects or people.
[0085] RSSI measurements can be affected by the size of the device and its form factor. Even at a given form factor, different features (e.g., support for WiFi or cellular) can affect RSSI measurements. The variance of RSSI measurements under different orientations can determine the sensitivity of the measurement relative to orientation. In some instances, RSSI measurements of smaller devices may be more sensitive to changes in orientation.
[0086] B. Antenna pattern An antenna can be associated with its antenna pattern. The antenna pattern indicates the amount of amplification or attenuation that varies with the direction of the received signal propagation. In some directions, the received signal may be amplified, while in others, such as in the null direction, the antenna may receive little or no signal energy. Therefore, in some instances, a decrease in received power can be associated with the antenna pattern.
[0087] Figure 5 Example 500 illustrates the effect of an antenna pattern on a received signal according to some embodiments. Example 502 depicts an antenna pattern 525 of antenna 520. Antenna 520 may be an example of antenna 120-A / B / C or 220-A / B / C. In some instances, the length of the line segment connecting point 550 to a point on antenna pattern 525 represents the gain or attenuation of a signal received (or transmitted) in a propagation direction collinear with that line segment, e.g., proportional to the gain or attenuation of the signal. For example, in example 502, signal 530 is proportional to antenna gain 540 (e.g., g). max The antenna pattern is received collinearly with the direction of its maximum gain, and therefore the received signal is affected by the maximum gain of antenna 520. In some instances, the antenna pattern is normalized based on the maximum gain, such that g max = 1. The antenna is not amplified, and the maximum received power is the received power of the signal.
[0088] Similarly, in Example 506, signal 535 is received in a direction collinear with antenna gain 545 (gain = g). In the normalized antenna pattern, any gain g is less than or equal to 1. In Example 506, the received signal is attenuated by a factor g.
[0089] In some implementations, the antenna pattern of the handheld user equipment's antennas can be stored in the handheld user equipment. For example, during the manufacturing of the device, the antenna pattern of each antenna under different conditions can be measured and stored in the handheld user equipment. For example, the antenna pattern can be measured in free space, or it can be measured when the user holds the device in different orientations.
[0090] Handheld user equipment can determine whether an antenna is blocked based on measurements and antenna patterns. For example, if the power drop is due to the antenna pattern, the handheld user equipment may not be able to determine that the antenna is blocked.
[0091] In some instances, the antenna pattern of an antenna in a radio access network may differ from that of an antenna in another radio access network. For example, the antenna pattern of WiFi may differ from that of Bluetooth. Considering the differences in antenna patterns between antennas of different radio access technologies when determining the location of discoverable devices provides consistent performance and user experience.
[0092] In some implementations, the location of the antenna and the presence of antennas for other radio access technologies can affect the antenna pattern. For example, the antenna pattern for a given radio technology (e.g., WiFi) may differ depending on the form factor or SKU. Furthermore, whether the handheld user equipment includes an antenna for another radio technology (such as Bluetooth or cellular) can affect the antenna pattern of the WiFi antenna. Measuring the antenna pattern of the antenna under the final form factor or SKU can provide consistent performance and user experience across different form factors or SKUs.
[0093] C. Process Figure 6 A flowchart illustrating a process 600 according to some embodiments is shown. Process 600 may be performed or implemented by a handheld user device (such as handheld user device 104) or its components (such as process 140 or controller 2100).
[0094] Process 600 may include, at 610, determining the antenna pattern of a first antenna of the handheld user equipment. The handheld user equipment has multiple antennas. The antenna pattern may be measured and stored in the device, for example, during manufacturing, calibration, or testing. The antenna pattern indicates how the antenna radiates or receives signal energy.
[0095] For example, to measure an antenna pattern, the antenna can be placed in a controlled environment. A fixed antenna is placed at one location. A locator controller is used to reposition the antenna at various angles. If the antenna is transmitting, the fixed antenna receives the signal. If the antenna is receiving, it can pick up the signal transmitted by the fixed antenna. At each location, the signals received by the fixed antenna or the antenna are connected. This signal is related to its angle of arrival. The resulting antenna pattern can be stored in the device.
[0096] Process 600 may include, at 620, processing a first signal received by a first antenna to obtain one or more measurements. The first signal may be transmitted by a findable device and may include one or more signals received by the first antenna. The one or more measurements may include measuring the energy, strength, or power of the received signal.
[0097] Process 600 may include, at 630, calculating a measurement result based on one or more measurements. The measurement result may include filtering the measurement, such as averaging, or combining the measurement with measurements from other antennas. For example, the one or more measurements may include the RSSI of one or more measurements. Process 300 may filter the RSSI of the one or more measurements to obtain an RSSI result. The filtering may be a low-pass filter that averages the one or more RSSIs based on the length of the filter. The filter may be designed to calculate a weighted average of the one or more RSSIs.
[0098] RSSI values can represent signal strength measured over a time interval or as the handheld user equipment moves a certain distance. In one example, the one or more RSSI measurements are obtained over a configured time period (e.g., through time-based filtering or averaging). In another example, RSSI measurements are obtained as the handheld user equipment moves a configured distance (e.g., through distance-based filtering or averaging).
[0099] Process 600 may include, at 640, determining that the first antenna is blocked based on the measurement results and the antenna pattern of the first antenna. For example, the signal transmitted by the findable device may be a known signal with a known transmit power. Based on path loss estimation and received power, process 600 may estimate the ranging or distance from the findable device to the handheld user equipment.
[0100] In some instances (e.g., Ultra-Wideband (UWB) systems), round-trip time can be used to calculate the ranging or distance between a searchable device and a handheld user equipment. The handheld user equipment can be used in time... U 1 Transmitting signals. When the findable device receives a signal, it can transmit the signal back to the handheld user equipment, which can then transmit the signal to the handheld user equipment in time. U 2 Received. The handheld user equipment can utilize round-trip time (...). U 2 - U 1 ) and the speed of light c To calculate the distance, for example, distance = 0.5 ∙ (U 2 - U 1 ) ∙ c .
[0101] Based on the estimated location of the locatable device and the receiving antenna pattern, process 600 can calculate the average expected received power. If the received power is significantly lower than expected, process 600 can determine that the antenna is blocked and the additional drop is caused by the user's hand or grip.
[0102] Process 600 may include, at 650, selecting a second antenna from the plurality of antennas. The antenna may be selected based on the received RSSI on the second antenna. In some instances, the antenna pattern of the second antenna may be considered when selecting the second antenna. For example, process 600 may estimate the RSSI of each antenna using an estimate of the location of the locateable device and the antenna patterns of all antennas of the handheld user equipment. Process 600 may select the antenna with the highest RSSI. In another example, the handheld user equipment may measure the RSSI on all antennas, and process 600 may select the antenna with the highest RSSI value.
[0103] In some implementations, the handheld user equipment can be selected with more than one antenna. For example, it can be selected with... K The maximum RSSI value K One antenna. Process 600 can combine the RSSIs of the selected antennas and use the combined RSSIs to locate the findable device.
[0104] Process 600 may include, at 660, processing a second signal received from the second antenna. For example, a handheld user equipment may calculate the RSSI or angle of arrival of the second signal associated with the received signal. In some examples, signal processing may include procedures and processes associated with the received signal.
[0105] Process 600 may include, at 670, determining the relative position of the searchable device with respect to the handheld user equipment based on the second signal. For example, the handheld user equipment may use RSSI, antenna pattern, angle of arrival, or other parameters or measurements to determine the position of the searchable device with respect to the handheld user equipment.
[0106] V. Antenna pattern Antenna patterns can affect the accuracy of locating findable devices. When users move around with their handheld user equipment while searching for findable devices, the received signal from the findable device can be affected by variations in antenna gain or attenuation. Therefore, it is desirable to consider the impact of antenna patterns when locating findable devices.
[0107] A. The influence of antenna pattern and orientation on RSSI Figure 7Examples of orientations and antenna patterns 700 according to some embodiments are illustrated. The illustrated patterns (e.g., antenna patterns 725-A and 725-B) are merely examples of antenna patterns, and antenna patterns can be different for different antennas and can take different shapes. Consider a handheld user equipment 704 initially oriented laterally at 730. Handheld user equipment 704 can be an example of handheld user equipment 104 or 204. Handheld user equipment 704 may include antennas 720-A and 720-B. Antenna 720-A may be associated with antenna pattern 725-A, and antenna 720-B may be associated with antenna pattern 725-B. Handheld user equipment 704 may be communicatively coupled to a findable device 708. Findable device 708 can be an example of findable device 108.
[0108] When in lateral orientation 730, the propagation direction of the signal from the findable device 708 may be collinear with the non-zero antenna gain of the antenna pattern. In some instances, consider receiving signals in directions where the antenna gain is greater than a threshold (e.g., 0.5 (half-power beamwidth)). For example, a signal on link 710-A may be received by antenna 720-A, which is constrained by antenna pattern 725-A. However, the findable device 708 may be located in a null region of antenna pattern 725-B of antenna 720-B. Therefore, the handheld user equipment 704 may not receive signals from the findable device 708 on antenna 720-B.
[0109] When in longitudinal orientation 740, the signal on link 715-B can be received by antenna 720-B, which is subject to antenna pattern 725-B. However, the signal on link 710-A may fall into the null region of antenna pattern 725-A and is no longer received by antenna 720-A. To continue locating the findable device 708, handheld user equipment 704 can switch antennas and use the signal received on antenna 720-B to locate the findable device 708.
[0110] The handheld user equipment can use a reference coordinate system to locate the findable device 708. In some instances, the origin of the reference coordinate system can be the location of the handheld user equipment 704. When the origin of the reference coordinate system is the location of the handheld user equipment 704, the location of any point (including the location of the findable device 708) is relative to the location of the handheld user equipment 704.
[0111] B. RSSI signal diagram constrained by antenna pattern When locating a findable device, the user can move the handheld user equipment. For example, while holding the handheld user equipment, the user can rotate it and change its orientation. The user can turn around at a given location and receive feedback on the screen to indicate the direction with greater received signal strength or the direction of the findable device. The user can also move around in the environment to allow the handheld user equipment to perform measurements and estimate the location of the findable device.
[0112] Movement of a device (whether angular or linear displacement) can alter the antenna gain of the received signal, for example, due to the antenna pattern. In addition, the received signal may experience rapid or slow fading caused by the forward or reverse superposition of signals reflected from the receiver. Angular rotation is an example of angular displacement.
[0113] Figure 8 A signal diagram 800 according to some embodiments is illustrated. The dark trace marked with "+" depicts the RSSI of antenna 720-A, and the gray trace marked with "o" depicts the RSSI of antenna 720-B. Fluctuations in the RSSI signal may be caused by device movement, which can subject the received signal to fading and antenna gain changes.
[0114] During time period 815, the RSSI of antenna 720-A is greater than the RSSI of antenna 720-B. At 820, the RSSIs of the two antennas 720-A / 720-B may be equal or substantially the same. During time period 825, the RSSI of antenna 720-B is greater than the RSSI of antenna 720-A. At 830, the RSSIs of the two antennas 720-A / 720-B may again be equal or substantially the same. In some instances, time periods 815 or 825 may be very short compared to the rate of movement of the handheld user equipment; for example, the RSSI may cross once or more while the handheld user equipment is in a given location. In other instances, time periods 815 or 825 may continue until the user equipment has moved a given distance (e.g., rotated by an angle or linearly shifted by a distance).
[0115] In one example, RSSI may cross once or multiple times when the handheld user equipment is in a given location. This can happen when the average received power on antennas 720-A and 720-B is similar but experiences different fading. Fading can cause random fluctuations in received power, resulting in RSSI patterns crossing once or multiple times. Fading is an effect that occurs when two or more signals reflect each other and undergo constructive and destructive interference. When the arrival phase difference of a pair of signals changes from 0 degrees to 180 degrees, the pair of signals changes from constructive interference to destructive interference. The wavelength of the signals and the geometry affecting the reflection are also important. The magnitude of the spatial average can be a function of the wavelength and the estimated distance, which may indicate the magnitude of the geometry of the interaction.
[0116] A two-ray model can be used to model the received signal. The two-ray model, or ground reflection model, is a multipath radio propagation model. This model considers both the direct (e.g., line-of-sight (LOS)) path between the transmitter and receiver and the ground reflection path. Depending on the phase difference between the LOS ray and the reflected ray, the received signal may suffer constructive or destructive interference. The received power in a two-ray model can be affected by the distance relative to the reflecting surface, the frequency, and the antenna height.
[0117] Whether direct and reflected rays interfere constructively or destructively depends on the phase of the two signals at the receiver. When the two signals received at the receiver are in phase, they may interfere constructively. However, if the signals are in opposite phases relative to each other, they may interfere destructively.
[0118] When the receiver and transmitter are close together, even a small change in position can cause a significant phase change. Therefore, when the receiver is close to the transmitter, a small movement of either the transmitter or receiver can change constructive interference into destructive interference.
[0119] However, when the transmitter and receiver are far apart, a small movement of either the transmitter or receiver may not cause a large phase difference between the direct and reflected rays. Therefore, if the receiver is in deep fading—for example, when the direct and reflected rays are in almost opposite phase (e.g., a 180-degree phase difference)—it may have to move a longer distance to escape deep fading (the opposite of the case when the transmitter and receiver are close together). Moving a longer distance is equivalent to taking a longer time. Therefore, when the user is moving and the handheld user equipment is far from the findable device, it may take a longer time for the handheld user equipment to escape deep fading than when it is close to the findable device.
[0120] An average RSSI can be obtained by averaging several measured RSSIs. Obtaining an average RSSI can reduce the impact of fading on the measured RSSIs. If the average RSSI is obtained by averaging RSSIs measured over a fixed period of time, and the handheld user equipment is far from the findable device, all measured RSSIs can be obtained when the handheld user equipment is in deep fading. Averaging these RSSIs may not reduce the impact of fading on the average RSSI. However, if instead of averaging RSSIs measured over a fixed period of time, the average RSSI is averaged over RSSIs measured after the handheld user equipment has moved a distance large enough to allow the handheld user equipment to escape deep fading, then averaging the RSSI can reduce the impact of fading.
[0121] C. Likelihood-based directional estimation As users move through the environment, handheld user equipment (User Equipment) receives increasingly more signals from locateable devices. These signals may be received from different directions, influenced by varying antenna gain based on antenna patterns, and have traveled different distances to reach the handheld User Equipment. The handheld User Equipment can use information accumulation as it receives signals from locateable devices to refine its estimation of the devices' locations.
[0122] Figure 9 An example of a likelihood-based lookup process 900 according to some embodiments is illustrated. Environment 905 may include a handheld user equipment 904. Handheld user equipment 904 may be an example of handheld user equipment 104, 204, or 704. Environment 905 may also include a findable device 908. Findable device 908 may be an example of findable device 108 or 708. Handheld user equipment 904 may include an antenna 920-A / 920-C. Antenna 920-A / 920-C may be an example of antenna 120-A / 120-C, 220-A / 220-C, or 720-A / 720-C.
[0123] At 915, handheld user equipment 904 may initiate a search process to locate findable device 908. Handheld user equipment 904 may be located at a first position at a first time instance t1. This process (e.g., a search application or daemon) may identify a point grid 930 in environment 905. Handheld user equipment 904 (e.g., a process running on handheld user equipment 904) may assess the likelihood that findable device 908 is located at each point in grid 930. At 915, handheld user equipment 904 may not receive sufficient signal from findable device 908. Therefore, findable device 908 may have a similar likelihood at most points in grid 930. The shaded area at 915 indicates the area where findable device 908, identified by handheld user equipment 904, may be located. The unshaded area around handheld user equipment 904 may indicate an area where findable device 908 is unlikely to be located.
[0124] In one example, the likelihood of the findable device 908 being located at each point of grid 930 can be calculated using hypothesis testing and associated methods and techniques. For example, at each point, two hypotheses can be considered: a null hypothesis and an alternative hypothesis. The null hypothesis can be an assumption that the findable device is not located at that point. The null hypothesis can be denoted by H0. The alternative hypothesis can be the logical opposite of the null hypothesis, for example, an assumption that the findable device is located at that point. The alternative hypothesis can be denoted by H1. Based on noise distribution, fading channels, the location of the handheld user equipment, and measurements based on received signals, the handheld user equipment can perform different hypothesis tests. The handheld user equipment can determine the probability or likelihood associated with each of the hypotheses H0 or H1. In one example, the handheld user equipment can determine the log-likelihood ratio, for example, Log(Pr(H1) / Pr(H0)), where Pr(H1) is the probability associated with the alternative hypothesis H1, and Pr(H0) is the probability associated with the null hypothesis H0. The ratio Pr(H1) / Pr(H0) can be called the likelihood ratio, and Log() is a logarithmic function.
[0125] If the likelihood or probability of a findable device at a location is greater than a threshold, that location can be marked and displayed on the user interface.
[0126] At 925, the handheld user equipment 904 may be located at the second position at the second time instance t2. The handheld user equipment 904 may have moved from the first position to the second position, for example, via angular displacement, linear displacement, or both.
[0127] Handheld user equipment 904 may have received additional signals from findable device 908. Using the received signals and / or information about the antenna pattern, handheld user equipment 904 can refine and update the likelihood of findable device 908 at each point in grid 930. The shaded area at snapshot 925 indicates the area where findable device 908 might be located. For example, handheld user equipment 904 can repeat the likelihood calculation for findable device 908 at each point in grid 930. Areas with a likelihood greater than a threshold can be marked on the user interface as candidate locations for findable device 908.
[0128] At 935, the handheld user equipment 904 may be located in the third position at the third time instance t3. The handheld user equipment 904 may have moved from the second position to the third position, for example, via angular displacement, linear displacement, or both.
[0129] Handheld user equipment 904 may have received additional signals from the findable device 908. Using information from the received signals or antenna pattern, handheld user equipment 904 can refine and update the likelihood of the findable device 908's presence at each point in grid 930. The shaded area at snapshot 935 indicates the area where the findable device 908 might be located. This update identifies points in grid 930 where the findable device 908 might be located, points previously identified as impossible.
[0130] At 945, the handheld user equipment 904 may be located in the fourth position at the fourth time instance t4. The handheld user equipment 904 may have moved from the third position to the fourth position, for example, via angular displacement, linear displacement, or both.
[0131] The handheld user equipment 904 may have received additional signals from the findable device 908. By using information from the received signals or antenna pattern, the handheld user equipment 904 can refine and update the likelihood of the findable device 908 existing at each point in the grid 930. At 945, the handheld user equipment 904 can identify the location of the findable device 908.
[0132] A re-evaluation of the likelihood of the locatable device 908 at each point in the grid 930 can be performed using signals received on one or more handheld user equipment 904 antennas.
[0133] In some instances, the process may not provide the exact location of the findable device 908. However, the likelihood may be small enough for the handheld user device 904 to provide the user with textual or graphical cues via a user interface. For example, the user interface may display an arrow or arc in the direction of the findable device 908.
[0134] D. Filtering and Combination To estimate the location of a locating device, a handheld user equipment (User Equipment) can use received signals from more than one antenna. In some implementations, the Handheld User Equipment may select a signal from one antenna rather than others, for example, based on signal strength or quality. In some implementations, the Handheld User Equipment may filter or combine signals from several antennas, for example, by applying techniques such as coherent combining, maximum ratio combining, or weighted averaging.
[0135] Figure 10illustrates a signal diagram 1000 in accordance with some embodiments. Diagram 1005 may illustrate the RSSI of antenna 720-A / 720-B. The dark trace with a "+" marker depicts the RSSI of antenna 720-A, and the gray trace with an "o" marker depicts the RSSI of antenna 720-B. Fluctuations in the RSSI signal may be caused by movement of the device, which subjects the received signal to fading and antenna gain variations.
[0136] During the period between t0 and t1, the RSSI of antenna 720-A is greater than the RSSI of antenna 720-B. At 1020, the RSSI of the two antennas 720-A / 720-B may be equal or substantially the same. During the period between 1020 and 1030 (e.g., t2 to t4), the RSSI of antenna 720-B is greater than the RSSI of antenna 720-A. At 1030, the RSSI of the two antennas 720-A / 720-B may again be equal or substantially the same.
[0137] In some embodiments, at 1020, the handheld user equipment may switch antennas and select antenna 720-B for measurement. In some embodiments, the handheld user equipment may use signals from both antennas 720-A / 720-B. For example, diagram 1015 illustrates filtering the signals received on antenna 720-A and antenna 720-B. Diagram 1015 is an example of applying a "max" function to the RSSI of both antenna 720-A and 720-B, where the "max" function returns the maximum value of the RSSI received on antenna 720-A and 720-B.
[0138] In maximum ratio combining, the received signal P1 on antenna 720-A may be normalized with the antenna gain G1 of antenna 720-A based on the antenna pattern 725-A of antenna 720-A. Similarly, the received signal P2 on antenna 720-B may be normalized with the antenna gain G2 of antenna 720-B based on the antenna pattern 725-B of antenna 720-B. The normalized signals may be combined, for example, P1 / G1 + P2 / G2. In other examples, the signals S1 and S2 may be averaged, for example, P1 + P2, or a weighted average in the form of a1 ∙ P1 + a2 ∙ P2 may be applied, where the weights a1 and a2 satisfy 0 < a1, a2 and a1 + a2 = 1. The resulting filtered or combined signal may be used to locate a findable device.
[0139] E. Time-based and location-based RSSI filtering The search process may receive one or more RSSI measurements from a handheld user equipment and filter them to obtain measurements for locating the searchable device. In one example, the process may receive one or more RSSI measurements associated with a channel and use the filtered output to locate the searchable device. The channel may be a receiving antenna, a communication channel, or a frequency band. For example, Bluetooth or WiFi communication may include one or more channels.
[0140] Figure 11 A signal diagram 1100 is illustrated according to some implementation schemes. Diagram 1100 includes time-based filtering 1165 and position-based filtering 1175.
[0141] In the time-based filter 1165, time can be divided into time windows of equal length, such as time window 1115. For example, time intervals T1-T2, T2-T3, T3-T4, T4-T5, T5-T6, and T6-T7 can have the same duration as time window 1115.
[0142] The handheld user equipment can filter RSSI measurements acquired on channel 1110 during a time window (e.g., time window 1115) to obtain one or more measurement results. The measurement result can be the average RSSI value of the RSSI measurements on channel 1110. The handheld user equipment can use one or more measurement results to locate a findable device.
[0143] Figure 1130 illustrates an example of the displacement (distance traveled) of a handheld user equipment over time. For instance, between time 0 and T8, the handheld has a displacement D1. At T9, the handheld user equipment has made a total displacement D2, and similarly, at T10, a total displacement D3 has been made; at T11, a total displacement D4 has been made; at T12, a total displacement D5 has been made; at T13, a total displacement D6 has been made; and at T14, a total displacement D7 has been made. In one example, a distance window 1125 can be defined when the handheld displacement equals a configured value. This value can be a linear displacement, such as 0.5 meters (m), 1 m, or 2 m. This value can also be an angular displacement, such as 10 degrees, 20 degrees, 30 degrees, or 45 degrees.
[0144] For example, in Figure 1130, assuming that D2-D1, D3-D2, D4-D3, D5-D4, D6-D5, and D7-D6 are the same displacement D, then the distance windows would be T8-T9, T9-T10, T10-T11, T11-T12, T12-T13, and T13-T14. Note that (-) represents subtraction, and (-) is used to indicate a range. For example, (T2-T1) is the difference between T2 and T1, and T1-T2 indicates the range or time period between T1 and T2.
[0145] The handheld user equipment can filter RSSI measurements acquired on channel 1120 during a distance window (e.g., distance window 1125) to obtain one or more measurement results. The measurement result can be the average RSSI value of the RSSI measurements on channel 1120. The handheld user equipment can use one or more measurement results to locate a findable device.
[0146] F. Process Figure 12 A flowchart illustrating a process 1200 according to some implementation schemes is shown. Process 1200 may be performed or implemented by a handheld user device (such as handheld user device 104) or its components (such as process 140 or controller 2100).
[0147] Process 1200 may include: at 1210, determining that the handheld user equipment has moved a certain distance. This distance may be a linear displacement or an angular displacement. This distance may be a configured value, such as a linear displacement of 1 meter or an angular displacement of 45 degrees.
[0148] Process 1200 may include, at 1220, receiving signals from a findable device on multiple channels as the handheld user equipment moves that distance. The channels may be communication channels, such as Bluetooth channels. In other examples, each channel may be associated with an antenna of the handheld user equipment.
[0149] Process 1200 may include: at 1230, performing a measurement of the signal. For example, a handheld user equipment may measure the RSSI of the signal received on each channel.
[0150] Process 1200 may include, at 1240, calculating a measurement result for each of the plurality of channels based on the measurement. The handheld user equipment may filter the signal measurements. For example, the handheld user equipment may perform time-based or location-based filtering on the measurements to obtain one or more measurement results.
[0151] In some implementations, the handheld user equipment can select a channel from the plurality of channels based on measurement results. For example, the handheld user equipment can select an antenna based on measurement results.
[0152] Process 1200 may include: at 1250, determining the relative position of the locateable device with respect to the position of the handheld user equipment based on the measurement results.
[0153] VI. Pattern Matching Handheld user equipment can use information such as the predicted or estimated received power of the signal from the findable device, one or more measurements at different times or locations, and the antenna pattern of the receiving antenna.
[0154] A. Description Figure 13 An example of a lookup process 1300 according to some embodiments is illustrated. The lookup process 1300 may include a handheld user equipment 1304. The handheld user equipment 1304 may be an example of a handheld user equipment 104, 204, 704, or 904. The lookup process 1300 may also include a findable device 1308. The findable device 1308 may be an example of a findable device 108, 708, or 908.
[0155] At 1305, the handheld user equipment 1304 may be located at position L1 at time S1. The handheld user equipment 1304 may receive signals from the searchable device 1308. The received signals may be affected by the antenna pattern 1325. The handheld user equipment 1304 may measure the RSSI of the received signals and filter one or more measurements to obtain measurement results.
[0156] The handheld user equipment 1304 can move in the illustrated direction of movement. At 1315, the handheld user equipment 1304 may be located at position L2 at time S2. The handheld user equipment 1304 can continue to receive signals from the searchable device 1308. The received signals may be affected by the antenna pattern 1325. However, due to the movement, at 1315, the received signals may be affected by a different antenna gain of the antenna pattern 1325 compared to at 1305. For example, at position S1, the direction of the signal from the searchable device 1308 may be aligned with the direction of the antenna pattern 1325 having a gain G1. Similarly, at position S2, the direction of the signal from the searchable device 1308 may be aligned with a different direction of the antenna pattern 1325 having a gain G2. Gains G1 and G2 may be different. In some instances, at the same distance from the findable device 1308, different rotations of the handheld user equipment 1304 can cause the received signal to be affected by different parts of the antenna pattern, which can lead to signal fluctuations due to the antenna pattern.
[0157] The handheld user equipment 1304 can use information from the configuration of the antenna pattern 1325, measurements at 1305 and 1315, and displacement between L1 and L2 to estimate the location of the findable device 1308. For example, the handheld user equipment 1304 can estimate the angle of arrival and distance of the findable device 1308, which, when combined with the antenna pattern 1325, matches the measured RSSI.
[0158] For example, given the received RSSI values measured at different locations (e.g., locations L1 and L2), and information about the configuration or storage of the antenna pattern 1325, the handheld user equipment 1304 can estimate the angle of arrival θ1 or θ2 of the signal from the findable device 1308, which angle of arrival produces the measured RSSI. Using ranging techniques and with the angle of arrival, the handheld user equipment 1304 can estimate the position of the stylus.
[0159] B. Process Figure 14 A flowchart illustrating a process 1400 according to some embodiments is shown. Process 1400 may be performed or implemented by a handheld user device (such as handheld user device 104) or its components (such as process 140 or controller 2100).
[0160] Process 1400 may include: at 1410, receiving a signal associated with a findable device at the antenna of a handheld user equipment.
[0161] Process 1400 may include: at 1420, performing a measurement of the signal. For example, the RSSI of the signal may be measured.
[0162] Process 1400 may include, at 1430, determining an antenna pattern associated with the antenna of the handheld user equipment. The antenna pattern of the receiving antenna may be configured and stored on the handheld user equipment. A lookup process running on the handheld user equipment may retrieve the stored antenna pattern information.
[0163] In some implementations, the antenna pattern can be measured during device manufacturing or calibration. The antenna pattern can also be measured with the user holding the antenna or the device having the antenna. Alternatively or additionally, the antenna pattern can be measured with the user in close proximity to the antenna and or without holding the antenna or associated device (e.g., a handheld user equipment).
[0164] Process 1400 may include: at 1440, determining the relative position of the findable device with respect to the position of the handheld user equipment based on measurements and the antenna pattern. The handheld user equipment may determine the position of the findable device by matching the measured RSSI with the antenna pattern to obtain the angle of arrival of the signal from the findable device.
[0165] In some implementations, process 1400 may generate estimated measurements. For example, the signal transmitted by the findable device may be a known signal with a known transmit power. Based on the estimated distance between handheld user equipments, path loss, transmit power, and antenna pattern, process 1400 may calculate an estimated receive power or an estimated RSSI. Assuming the signal arrives at different angles and through different directions of the antenna pattern, process 1400 may generate multiple estimates.
[0166] Process 1400 compares the estimated RSSI with the measured RSSI and identifies the estimate that matches the measurement. Process 1400 determines the angle of arrival of the estimated value that matches the measurement as the angle of arrival of the signal from the searchable device. Using the estimates of distance and angle of arrival, process 1400 determines the location of the searchable device.
[0167] In some implementations, process 1400 may identify a grid of points in the environment. Process 1400 may evaluate the likelihood of a findable device being located at each point in the grid. Process 1400 may use a user interface to identify areas where a findable device may be located.
[0168] Process 1400 can obtain additional measurements and update the likelihood of the locating device at each point.
[0169] VII. User Interface Handheld user devices can use a user interface to convey information to the user related to locating a findable device. The user interface may include text or graphic information that guides the user to the location of the findable device.
[0170] A. Description Figure 15 An example of a graphical interface 1500 according to some implementation schemes is shown. A handheld user device 1504 may be... Figure 1 Example of user equipment 104. Handheld user equipment 1504 may include screen 1532. Screen 1532 may be Figure 1 An example of screen 132. The search process running on handheld user equipment 1504 can provide information about the search process for findable device 1508 on user interface 1530. Findable device 1508 can be an example of findable device 108. The search process can be an example of process 300, 600, 1200, 1400, 1800, or 1900.
[0171] The search application can provide a user interface 1530. The user interface 1530 may include one or more text sections 1534 and one or more graphical sections 1536. The text sections may include information about the searchable device 1508; for example, when locating the stylus, the text section 1534 may display the message: “Search: Stylus”. One or more text sections 1534 may display indications or guidance instructions (such as directions of movement) regarding the proximity or distance of the searchable device.
[0172] Textual indications of distance can be coarse and discrete. For example, user interface 1530 may have three states, such as "hearing," "near," or "far." Continuous guidance can be provided to the user using graphical representations of user interface elements. For example, user interface elements may be bubbles that grow as the estimated RSSI increases (e.g., getting closer), or bubbles that shrink as the estimated RSSI decreases (e.g., getting farther away).
[0173] One or more graphical portions 1536 may include one or more user interface elements, such as images. An image may indicate the received signal strength or the distance to the findable device 108. One or more graphical portions 136 may include user interface elements, such as images, to indicate the relative position of the findable device 108 or to guide the user toward the findable device 108.
[0174] As the user moves toward the findable device 1508 with the handheld user equipment 1504, the search process can continue to receive and analyze signals from the findable device 1508. The search process can recalculate the relative position of the findable device 1508 with respect to the handheld user equipment 1504 and update the information continuously displayed on the user interface 1530.
[0175] In one example, at 1505, the handheld user device 1504 may be in a portrait orientation and located at L3 at time S3. User interface elements (e.g., graphics) may include a circle 1540 and an annulus 1545. The radius of the circle 1540 or the thickness of the annulus 1545 may be based on RSSI received from the findable device 1508. The received RSSI may indicate the distance between the handheld user device 1504 and the findable device 1508. A higher RSSI value indicates that the handheld user device 1504 is closer to the findable device 1508. At L3, the handheld user device 1504 may be farther from the findable device 1508, and therefore, the radius of the circle 1540 or the thickness of the annulus 1545 may be smaller. The text portion 534 may include text information indicating that the device being located is a "stylus", that the handheld user device 1504 is "far" from the findable device 1508, that the signal strength is "weak" but "improving", and may encourage the user to "continue moving".
[0176] At 1515, the handheld user device 1504 may be located at L3 at time S3. The handheld user device 1504 may be landscape oriented. Even if the screen may be locked, the user interface 1530 may be rotated to adjust the text portion 1534 or the graphics portion 1536 based on the orientation of the handheld user device 1504.
[0177] The received RSSI at 1515 may be higher than the received RSSI at 1505. The inner circle 1540 may have a larger radius than the radius at 1505. Similarly, the outer ring 1545 may have a greater thickness at 1515 than the thickness at 1505. The text portion 534 may include text information indicating that the device being located is a "stylus", the handheld user device 1504 is "listening" (e.g., very close to the findable device 1508), the signal strength is "strong", and may indicate to the user that they have "arrived".
[0178] B. Directional Indication Figure 16 An example of a graphical interface 1600 according to some implementation schemes is illustrated. A handheld user device 1604 may be an example of a handheld user device 104. A search process may run on the handheld user device 1604 to locate a searchable device 1608. Searchable device 1608 may be an example of searchable device 108.
[0179] User interface 1630 may be an example of user interface 130 or 1530. The graphical portion 1636 of user interface 1630 may include an image indicating the relative position of the findable device 1608 relative to the handheld user device 1604.
[0180] In one example, at 1605, the handheld user equipment 1604 may be located at position L5 at time S5. The graphic portion 1636 may include a shape with a pointer (e.g., a pointing end) that can point to the location of the findable device 1608. As the user moves, the size of the shape can indicate the distance from the findable device 1608, and the pointing end of the shape can indicate the direction of movement toward the findable device 1608 (e.g., the location of the findable device 1608). Continuous measurement and position estimation can allow the handheld user equipment 1604 to continuously update the size and orientation of the image, for example, with each new measurement or each update of the location of the findable device 1608.
[0181] In another example, at 1615, the handheld user device 1604 may be located at position L6 at time S6. The graphical portion 1636 may include an image indicating the distance to the findable device 1608, for example, similar to... Figure 15In addition to the images shown, the graphic portion 1636 may include arrows 1650 indicating the relative position of the locateable device 1608 with respect to the handheld user equipment 1604. The direction of the arrows 1650 may be continuously updated based on new measurements and new position estimates.
[0182] C. Instructions to change orientation As explained above, information associated with each antenna can be obtained during manufacturing or calibration and stored in the handheld user equipment. This information may include power offsets (e.g., power drops) associated with each antenna based on the orientation of the handheld user equipment. Figure 2 Table 255 in the table.
[0183] A handheld user equipment can determine one or more preferred antennas in one or more orientations. Preferred antennas or orientations can be associated with an application. For example, a handheld user equipment can use configuration information to determine one or more preferred antennas in one or more orientations associated with a lookup application.
[0184] When a handheld user device (User Device) is running a Find Out application, the Handheld Device (e.g., the Find Out application) can determine the orientation of the Handheld User Device. The Handheld User Device can also determine that its orientation is not a preferred orientation among preferred orientations. The Find Out application can generate and display messages to suggest or instruct the user to change the orientation of the Handheld User Device to the preferred orientation.
[0185] Figure 17 An example of a graphical user interface 1700 depicting user interface information according to some embodiments is illustrated. Handheld user equipment 1704 may be handheld user equipment 104 or other examples of handheld user equipment described above. Handheld user equipment 1704 may include a screen for displaying user interface 1730. User interface 1730 may be user interface 130 or other examples of user interfaces described above.
[0186] When the handheld user equipment 1704 is in landscape orientation, it can determine that the preferred orientation is portrait orientation. A message 1760 may be displayed on the user interface 1730. The message 1760 may include user interface elements (e.g., graphics or images) to visually suggest or instruct the user to change the orientation of the handheld user equipment 1704 to the preferred orientation, such as portrait. The message 1760 may also include a text component to suggest or instruct the user to change the orientation of the handheld user equipment 1704 to the preferred orientation. In some embodiments, as part of implementing the techniques described herein, the handheld user equipment 1704 may determine the user interface 1730, including the message 1760. For example, the user interface 1730 may prompt the user to change the orientation to a preferred orientation for locating accessory devices. Thus, based on antenna placement (e.g., a specific SKU), typical user grip (e.g., how a user typically holds the handheld user equipment), and / or predicted or measured antenna obstruction, the handheld user equipment 1704 may determine that an orientation would be more suitable for locating and may prompt the user to rotate to another orientation.
[0187] In some implementations, message 1760 may be displayed for a configured duration. After the configured duration has elapsed, message 1760 may disappear, and the location information of the locating device may be displayed on the screen. In other implementations, message 1760 may remain on the screen until the user changes the orientation of the device to the preferred orientation.
[0188] In some implementations, once the orientation is changed to a preferred orientation, for example Figure 17 By aligning the vertical orientation of the interface, the user interface 1770 can be displayed for locating or finding a findable device. The user interface 1770 is... Figure 15 and Figure 16 An example of the user interface described in [the document].
[0189] D. Process Figure 18 A flowchart illustrating a process 1800 according to some implementation schemes is shown. Flowchart 1800 may be executed or implemented by a handheld user device (such as handheld user device 104) or its components (such as process 140 or controller 2100).
[0190] Process 1800 may include, at 1810, generating a user interface to be displayed on the screen of a handheld user device. The user interface may include text or graphical portions.
[0191] Process 1800 may include: at 1820, determining the distance between the findable device and the handheld user equipment based on a received signal from the findable device. The received signal may be an ultra-wideband (UWB) signal or a Bluetooth signal. For example, the signal may be a Bluetooth or Bluetooth Low Energy (BLE) Fast Advertisement packet.
[0192] Process 1800 may include: at 1830, determining the text to be displayed on a text portion of the user interface based on the received signal. The signal strength of the received signal may indicate the distance between the findable device and the handheld user equipment. If the estimated distance is greater than a first threshold, the text portion may indicate that the findable device is "far" from the user's location. If the estimated distance is between the first and second thresholds, the text portion may indicate that the findable device is "near" the user's location. If the estimated distance is less than the second threshold, the text portion of the user interface may indicate that the user has "arrived" and should be able to locate the findable device.
[0193] The signal may include information about the device identifier. The text portion of the user interface can display information about the findable device obtained from the received signal.
[0194] Process 1800 may include, at 1840, determining one or more images having one or more characteristics. The one or more images may be displayed on a graphical portion of the user interface. The one or more characteristics of the images may include size, color, color gradation, and the orientation or direction of the tips.
[0195] Process 1800 may include, at 1850, determining one or more characteristics of one or more images based on a signal. This signal may determine the distance between the handheld user equipment and the findable device. The characteristics of the image may be determined based on the distance. For example, as the distance between the handheld user equipment and the findable device decreases, the color of the shape may become a warmer color, such as closer to red or orange, or the color may become a darker shade of the initial or base color. Similarly, as the distance increases, the color may become a cooler color, such as closer to blue, or the color may become a lighter shade of the initial base color. In another example, the shape may become larger as the distance decreases. Similarly, the shape may become smaller as the distance increases.
[0196] In some implementations, the shape can indicate the orientation of the locatable device. The handheld user equipment can determine the location of the locatable device based on received signals and update the orientation of the image based on the location of the locatable device.
[0197] Figure 19 A flowchart of process 1900 according to some implementation schemes is illustrated. Process 1900 may be performed or implemented by a handheld user device (such as handheld user device 104) or its components (such as process 140 or controller 2100).
[0198] Process 1900 may include, at block 1910, determining the distance between the searchable device and the handheld user equipment. For example, process 1900 may determine the distance based on received signal and path loss estimation. In another example, process 1900 may determine the distance based on time of flight and the speed of light.
[0199] Process 1900 can determine the distance between a findable device and a handheld user equipment based on a received signal from the findable device. The received signal can be an ultra-wideband (UWB) signal or a Bluetooth signal. For example, the signal can be a Bluetooth or Bluetooth Low Energy (BLE) Fast Advertisement packet.
[0200] Process 1900 may include: at box 1920, determining text information to be displayed on the handheld user equipment. The text information may be displayed on a text portion of the user interface. The signal strength of the received signal may indicate the distance between the findable device and the handheld user equipment. If the estimated distance is greater than a first threshold, the text information may include the string "far" and may indicate that the findable device is "far" from the user's location. Assuming the estimated distance is between the first and second thresholds, in this case, the text information may include the string "near" and may indicate that the findable device is "near" from the user's location. If the estimated distance is less than the second threshold, the text information on the user interface may include the string "arrived" and may indicate that the user has "arrived" and should be able to locate the findable device.
[0201] The signal may include information about the device identifier. The text section of the user interface may display textual information about the locatable device obtained from the received signal.
[0202] Process 1900 may include, at 1930, determining one or more characteristics for one or more user interface elements to be displayed on a handheld user device. One or more user interface elements may be displayed on a graphical portion of the user interface. One or more characteristics of the one or more user interface elements may include size, color, color gradation, and the orientation or direction of the tip.
[0203] Process 1900 may include, at 1940, generating a user interface to be displayed on the screen of a handheld user device. The user interface may include text information and one or more user interface elements.
[0204] In some implementations, the shape can indicate the orientation of the locatable device. The handheld user equipment can determine the location of the locatable device based on received signals and update the orientation of the image based on the location of the locatable device.
[0205] Figure 20A flowchart of process 2000 according to some implementation schemes is illustrated. Process 2000 may be performed or implemented by a handheld user device (such as handheld user device 104) or its components (such as process 140 or controller 2100).
[0206] Process 2000 may include, at box 2010, generating a prompt to instruct the user to adjust the orientation of the handheld user equipment. The prompt may be displayed on the screen of the handheld user equipment using a user interface. In some examples, the prompt may be a message (e.g., message 1760) displayed on a user interface (e.g., user interface 1730). The prompt may instruct the user to adjust the orientation of the handheld user equipment to a preferred or more suitable orientation for locating the findable device.
[0207] Process 2000 may include, at block 2020, detecting an adjustment to the orientation of the handheld user equipment. The handheld user equipment may detect that the orientation is now in a preferred orientation. In some examples, the handheld user equipment may use signals from an accelerometer, gyroscope, magnetometer, or other sensors of the handheld user equipment to detect the adjustment to the orientation.
[0208] Process 2000 may include: at block 2030, selecting an antenna from a plurality of antennas based on adjustments. In some examples, the handheld user equipment may use a configured lookup table and the orientation of the handheld user equipment to select an antenna. In some examples, the handheld user equipment may determine the Received Signal Strength Indication (RSSI) of each of its plurality of antennas and select the antenna with the highest RSSI (as described above relative to...). Figure 4 (As described).
[0209] Process 2000 may include: at block 2040, determining the relative position of the searchable device based on signals received from the searchable device by the antenna. The handheld user equipment may use the signals received from the searchable device to determine the relative position. For example, the handheld user equipment may measure the RSSI of signals received from the searchable device on one or more channels to determine the position of the searchable device relative to the handheld user equipment (as described above relative to...). Figure 6 (As described).
[0210] In some examples, the handheld user equipment can determine that its current orientation is the preferred orientation and omit the prompt generation, then proceed to determine the relative location of the findable device. For example, if the handheld user equipment is in a portrait orientation, VIII. Example Device Figure 21 This is a block diagram of an example device according to an embodiment of this disclosure. Figure 21This is a block diagram of controller 2100 according to some implementation schemes. Controller 2100 may be included in user equipment, controller equipment, dwell equipment, hub equipment, accessory equipment, vehicle entertainment center, wearable device (e.g., smartwatch, headset, etc.), or any other suitable electronic device. Controller 2100 may implement any or all of the controller functions, behaviors, and capabilities described herein, as well as other functions, behaviors, and capabilities not explicitly described.
[0211] For example, applications of a home automation system can be executed on the processing subsystem 2110, which allows the communication interface 2116 to use LAN-related protocols and technologies to send updates related to the primary location.
[0212] Controller 2100 may include a processing subsystem 2110, a storage device 2112, a user interface 2114, a communication interface 2116, a secure element 2118, and a cryptographic logic module 2120. Controller 2100 may also include other components (not explicitly shown), such as a battery, a power controller, and other components capable of operating to provide various enhanced capabilities. In various embodiments, controller 2100 may be implemented in a desktop computer, laptop computer, tablet computer, smartphone, wearable computing device, or other system with any desired form factor. Furthermore, as described above, controller 2100 may be implemented partly in a base station and partly in a mobile unit that communicates with the base station and provides a user interface.
[0213] Storage device 2112 may be implemented, for example, using a disk, flash memory, or any other non-transitory storage medium or combination of media, and may include volatile or non-volatile media. In some embodiments, storage device 2112 may store one or more application or operating system programs to be executed by processing subsystem 2110, including computer-executable instructions or programs for implementing any or all of the operations performed by the controller as described herein. Storage device 2112 may include non-transitory computer-readable media for storing computer-executable instructions or programs. Processing subsystem 2110 may include one or more processors configured to access storage device 2112. For example, storage device 2112 may store a unified controller application that can read an attachment definition record and generate a graphical user interface for controlling the attachment based on the information therein. In some embodiments, some (or all) of the controller functionality described herein may be implemented in an operating system program rather than an application. In some embodiments, storage device 2112 may also store applications designed for a specific attachment or a specific category of attachments (e.g., an IP camera application for managing IP camera attachments or a security application for interacting with door lock attachments).
[0214] User interface 2114 may include input devices such as touchpad, touchscreen, scroll wheel, clickable touch dial, dial pad, buttons, switches, keypad, microphone, etc.; and output devices such as video screen, indicator lights, speakers, headphone jack, etc., along with supporting electronic components (e.g., digital-to-analog converters or analog-to-digital converters, signal processors, etc.). Users can operate the input devices of user interface 2114 to invoke the functions of controller 2100, and can view or listen to the output from controller 2100 through the output devices of user interface 2114.
[0215] Processing subsystem 2110 may be implemented as one or more integrated circuits, such as one or more single-core or multi-core microprocessors or microcontrollers, examples of which are known in the art. In operation, processing subsystem 2110 may control the operation of controller 2100. In various embodiments, processing subsystem 2110 may execute programs in response to program code and maintain multiple concurrently executing programs or processes. At any given time, some or all of the program code to be executed may reside in processing subsystem 2110 or in a storage medium (such as storage device 2112).
[0216] With appropriate programming, the processing subsystem 2110 can provide various functionalities to the controller 2100. For example, in some embodiments, the processing subsystem 2110 can implement the various processes (or parts thereof) described above as implemented by the controller. The processing subsystem 2110 can also execute other programs (including programs that can be stored in the storage device 2112) to control other functions of the controller 2100. In some embodiments, these programs can interact with the attachment, for example, by generating messages to be transmitted to the attachment or by receiving messages from the attachment. Such messages may conform to the Uniform Attachment Protocol as described above.
[0217] Communication interface 2116 may provide voice or data communication capabilities to controller 2100. In some embodiments, communication interface 2116 may include: access to wireless voice or data networks (e.g., using cellular phone technology), data network technologies (such as 5G, 4G / LTE, Wi-Fi) ® Radio frequency (RF) transceiver components for short-range wireless communication (e.g., using Bluetooth) based on IEEE 802.11 series standards or other mobile communication technologies or any combination thereof. ® Standard and / or Bluetooth ®Components of LE standards, NFC, etc., or other components. In some embodiments, in addition to or instead of a wireless interface, the communication interface 2116 may also provide wired network connectivity (e.g., Ethernet). The communication interface 2116 may be implemented using a combination of hardware (e.g., driver circuitry, antenna, modulator / demodulator, encoder / decoder, and other analog or digital signal processing circuitry) and software components. In some embodiments, the communication interface 2116 may concurrently support multiple communication channels using the same or different transmitters.
[0218] The secure element 2118 may be an integrated circuit or the like that securely stores cryptographic information for the controller 2100. Examples of information that may be stored within the secure element 2118 include the controller’s long-term public and private keys (such as LTPKC and LTSKC as described above) and a list of paired attachments (e.g., a lookup table that maps attachment IDs to the attachment’s long-term public key LTPKA of the attachment that has completed the pairing setup or pairing addition process as described above).
[0219] In some implementations, cryptographic operations may be implemented in a cryptographic logic module 2120 that communicates with the secure element 2118. Physically, the cryptographic logic module 2120 may be implemented, as needed, in the same integrated circuit or a different integrated circuit (e.g., a processor in the processing subsystem 2110) that has the secure element 2118. The cryptographic logic module 2120 may include various logic circuits (fixed or programmable as needed) that implement or support the cryptographic operations of the controller 2100 (including any or all of the cryptographic operations described above). The secure element 2118 or the cryptographic logic module 2120 may appear as a “black box” to the rest of the controller 2100. Thus, for example, the communication interface 2116 may receive messages it cannot decrypt in encrypted form and may simply deliver the messages to the processing subsystem 2110. The processing subsystem 2110 may also be unable to decrypt the messages, but it may recognize the messages as encrypted and deliver them to the cryptographic logic module 2120. Cryptographic logic module 2120 can decrypt messages (e.g., using information extracted from secure element 2118) and determine which information should be returned to processing subsystem 2110. Therefore, some information may be available only within secure element 2118 and cryptographic logic module 2120. If secure element 2118 and cryptographic logic module 2120 are implemented on a single integrated circuit executing code only from a secure internal store, this could make extracting information very difficult, thus providing a high level of security. Other specific implementations are also possible.
[0220] IX. Exemplary Implementation Additional aspects of this disclosure are provided in the following embodiments: Example 1: A method comprising: determining the orientation of a handheld user equipment including a plurality of antennas; selecting an antenna from the plurality of antennas based at least in part on the orientation; processing a signal received by the antenna from a findable device; and determining, based on the signal, the relative position of the findable device with respect to the position of the handheld user equipment.
[0221] Example 1.1: According to the method of Example 1, determining the orientation of the handheld user device includes: generating a prompt to indicate an adjustment to the orientation; and detecting the adjustment to the orientation.
[0222] Example 1.2: According to the method of Example 1, the method further includes: generating a prompt to indicate an adjustment to the grip; detecting the adjustment to the grip; and selecting the antenna based on the adjustment.
[0223] Example 1.3: According to the method described in Example 1, the locatable device is an accessory device.
[0224] Example 1.4: The method according to Example 1, wherein the orientation is determined based on measurements by an accelerometer, gyroscope, or magnetometer.
[0225] Example 1.5: According to the method of Example 1, the method further includes: determining a received signal strength indication (RSSI) associated with the antenna; and determining a grip descent associated with the antenna.
[0226] Example 1.6: The method described in Example 1.5, wherein the determination of the grip descent is based on a configured lookup table.
[0227] Example 1.7: The method according to Example 1.5, wherein selecting the antenna includes determining that the grip drop of the antenna is less than the grip drop of at least one other antenna among the plurality of antennas.
[0228] Example 1.8: According to the method described in Example 1, the method further includes: determining the antenna pattern of the antenna.
[0229] Example 1.9: The method according to Example 1.8, wherein the selection of the antenna is based on the antenna pattern of the antenna.
[0230] Example 1.10: According to the method of Example 1, the method further includes: determining that the received signal strength indication (RSSI) of the antenna is greater than the RSSI of other antennas among the plurality of antennas, wherein the selection of the antenna is based on the determination that the RSSI of the antenna is greater than the RSSI of the other antennas among the plurality of antennas.
[0231] Example 2: One or more non-transitory computer-readable media, the one or more non-transitory computer-readable media including computer-executable instructions, which, when executed by one or more processors of a handheld user device, cause the handheld user device to perform at least the following operations: determine the orientation of the handheld user device, the handheld user device including a plurality of antennas; select an antenna from the plurality of antennas based at least in part on the orientation; process a signal received by the antenna from a findable device; and determine the relative position of the findable device with respect to the position of the handheld user device based on the signal.
[0232] Example 2.1: According to one or more non-transitory computer-readable media as described in Example 2, the one or more non-transitory computer-readable media further includes additional computer-executable instructions, which, when executed by the one or more processors, cause the handheld user equipment to further perform the following operations: determine a received signal strength indication (RSSI) associated with the antenna; and determine a grip descent associated with the antenna.
[0233] Example 2.2: One or more non-transitory computer-readable embodiments according to Example 2.1, wherein selecting the antenna includes determining that the grip drop of the antenna is less than the grip drop of the other antennas among the plurality of antennas.
[0234] Example 2.3: According to Example 2, one or more non-transitory computer-readable media further include additional computer-executable instructions, which, when executed by the one or more processors, cause the handheld user equipment to further determine the antenna pattern of the antenna.
[0235] Example 3: A handheld user equipment (User Equipment) includes a plurality of antennas; a memory configured to store computer-executable instructions; and a processor configured to access the memory and execute the computer-executable instructions to at least perform the following operations: determining the orientation of the handheld User Equipment; selecting an antenna from the plurality of antennas based at least in part on the orientation; processing signals received by the antennas from a findable device; and determining the relative position of the findable device with respect to the position of the handheld User Equipment based on the signals.
[0236] Example 3.1: According to the handheld user equipment of Example 3, determining the orientation of the handheld user equipment includes: generating a prompt to indicate an adjustment to the orientation; and detecting the adjustment to the orientation.
[0237] Example 3.2: According to the handheld user equipment of Example 3, wherein the memory is configured to store additional computer-executable instructions, which, when executed by the processor, cause the handheld user equipment to further perform the following operations: determine a received signal strength indication (RSSI) associated with the antenna; and determine a grip descent associated with the antenna.
[0238] Example 3.3: According to the handheld user equipment of Example 3, wherein the memory is configured to store additional computer-executable instructions, which, when executed by the processor, cause the handheld user equipment to further perform the following operations: determine that the received signal strength indication (RSSI) of the antenna is greater than the RSSI of at least one other antenna among the plurality of antennas, and wherein the selection of the antenna is based on the determination that the RSSI of the antenna is greater than the RSSI of the at least one other antenna among the plurality of antennas.
[0239] Example 3.4: The handheld user equipment according to Example 3, wherein the memory is configured to store additional computer-executable instructions, which, when executed by the processor, cause the handheld user equipment to further perform the following operations: generate a prompt to indicate an adjustment to the grip; detect the adjustment to the grip; and select the antenna based on the adjustment.
[0240] Example 4: A method comprising: determining an antenna pattern of a first antenna of a handheld user equipment having a plurality of antennas; processing a first signal received by the first antenna to obtain one or more measurements; calculating a measurement result based on the one or more measurements; determining whether the first antenna is blocked based on the measurement result and the antenna pattern of the first antenna; in response to determining that the first antenna is blocked: selecting a second antenna from the plurality of antennas; processing a second signal received from a findable device via the second antenna; and determining the relative position of the findable device with respect to the position of the handheld user equipment based on the second signal.
[0241] Example 4.1: According to the method of Example 4, in response to determining that the first antenna is not blocked, the method further includes: determining the relative position of the findable device with respect to the position of the handheld user equipment based on the first signal.
[0242] Example 4.2: The method according to Example 4, wherein the measurement result is a Received Signal Strength Indication (RSSI).
[0243] Example 4.3: According to the method described in Example 4, the selection of the second antenna is based on the antenna pattern of the second antenna and the measured Received Signal Strength Indication (RSSI) of the second signal.
[0244] Example 4.4: According to the method of Example 4, the measurement is a first measurement; and the method further includes: combining the received signal strength indication (RSSI) of the second antenna with the RSSI of the third antenna to obtain a second measurement result; and determining the relative position of the locatable device is also based on the second measurement result.
[0245] Example 4.5: According to the method of Example 4, determining that the first antenna is blocked includes: estimating the expected RSSI based on the antenna pattern of the first antenna; and determining that the difference between the expected RSSI and the measurement result is greater than a threshold.
[0246] Example 5: One or more non-transitory computer-readable media, the one or more non-transitory computer-readable media including computer-executable instructions, which, when executed by one or more processors of a computing device, cause the computing device to perform the method according to any one of Examples 4 to 4.5.
[0247] Example 6: A system comprising: a memory configured to store computer-executable instructions; and a processor configured to access the memory and execute the computer-executable instructions to at least perform the method according to any one of Examples 4 to 4.5.
[0248] Example 7: A method comprising: determining that a handheld user equipment has moved a certain distance; receiving signals from a findable device on a plurality of channels while the handheld user equipment has moved the distance; performing measurements on the signals; calculating a measurement result for each of the plurality of channels based on the measurements; and determining a relative position of the findable device relative to the position of the handheld user equipment based on the measurement results.
[0249] Example 7.1: According to the method of Example 7, the distance is a first distance, and the first distance depends on the wavelength or a second distance between the handheld user equipment and the findable device.
[0250] Example 7.2: According to the method described in Example 7, the method further includes: selecting a channel from the plurality of channels based on the measurement results.
[0251] Example 7.3: According to the method described in Example 7, the signal is a Bluetooth Low Energy (BLE) Quick Advertisement signal.
[0252] Example 7.4: The method according to Example 7, wherein the measurement is the Received Signal Strength Indication (RSSI) of the signal.
[0253] Example 7.5: The method described in Example 7, wherein the measurement result is based on the filtered RSSI of the plurality of channels.
[0254] Example 7.6: The method described in Example 7, wherein each of the plurality of channels is a Bluetooth Low Energy (BLE) channel.
[0255] Example 7.7: According to the method of Example 7, each of the plurality of channels is associated with one antenna of the plurality of channels.
[0256] Example 8: One or more non-transitory computer-readable media, the one or more non-transitory computer-readable media including computer-executable instructions, which, when executed by one or more processors of a computing device, cause the computing device to perform the method according to any one of Examples 7 to 7.7.
[0257] Example 9: A system comprising: a memory configured to store computer-executable instructions; and a processor configured to access the memory and execute the computer-executable instructions to at least perform the method according to any one of Examples 7 to 7.7.
[0258] Example 10: A method comprising: receiving a signal associated with a findable device at an antenna of a handheld user equipment; performing a measurement of the signal; determining an antenna pattern associated with the antenna of the handheld user equipment; and determining, based on the measurement and the antenna pattern, the relative position of the findable device with respect to the position of the handheld user equipment.
[0259] Example 10.1: According to the method of Example 10, determining the relative position of the findable device includes: generating an estimated measurement based on the signal and the antenna pattern; and comparing the estimated measurement with the measurement.
[0260] Example 10.2: According to the method of Example 10, determining the relative position of the findable device includes generating a point grid; and for points in the point grid, evaluating the likelihood that the findable device is located at the point.
[0261] Example 10.3: According to the method of Example 10.2, the method further includes: comparing the likelihood of the point in the point grid with the likelihood or threshold of other points in the point grid; and determining the relative position of the findable device relative to the position of the handheld user equipment based on the comparison of the likelihood of the point in the point grid with the likelihood or threshold of other points in the point grid.
[0262] Example 10.4: According to the method of Example 10, the method further includes: determining a direction associated with the measurement, wherein each of the directions corresponds to a measurement in the measurement.
[0263] Example 10.5: The method according to Example 10.4, wherein determining the relative position is also based on the direction.
[0264] Example 11: One or more non-transitory computer-readable media, the one or more non-transitory computer-readable media comprising computer-executable instructions, which, when executed by one or more processors of a computing device, cause the computing device to perform the method according to any one of Examples 10 to 10.5.
[0265] Example 12: A system comprising: a memory configured to store computer-executable instructions; and a processor configured to access the memory and execute the computer-executable instructions to perform at least the method according to any one of Examples 10 to 10.5.
[0266] Example 13: A method comprising: determining a distance between the findable device and the handheld user equipment based on received signals from a findable device and characteristics of an antenna of a handheld user equipment; determining text information for display on the handheld user equipment based on correlating the distance with a first standard among a plurality of standards; determining one or more characteristics of one or more user interface elements for display on the handheld user equipment based on correlating the distance with the first standard; and generating a user interface to be displayed on the screen of the handheld user equipment, the user interface including the text information and the one or more user interface elements.
[0267] Example 13.1: According to the method of Example 13, one or more user interface elements include a circle or annulus.
[0268] Example 13.2: According to the method described in Example 13.1, the characteristics of the antenna include the antenna pattern of the antenna.
[0269] Example 13.3: According to the method of Example 13.1, wherein the one or more user interface elements include a circle, and one of the one or more characteristics is the radius of the circle.
[0270] Example 13.4: According to the method of Example 13.1, wherein the one or more user interface elements include a ring, and one of the one or more characteristics is the thickness of the ring.
[0271] Example 13.5: According to the method of Example 13, the text information includes “listen”, “near” or “far”; and the method further includes: selecting one of “listen”, “near” or “far” based on the received signal strength indication (RSSI) of the signal.
[0272] Example 13.6: According to the method of Example 13, wherein one or more user interface elements include an image for indicating the relative orientation of the findable device with respect to the handheld user device.
[0273] Example 13.7: The method according to Example 13.6, wherein the image includes an arrow or pointer pointing to the relative direction of the findable device relative to the handheld user device.
[0274] Example 14: One or more non-transitory computer-readable media, the one or more non-transitory computer-readable media comprising computer-executable instructions, which, when executed by one or more processors of a computing device, cause the computing device to perform the method according to any one of Examples 13 to 13.7.
[0275] Example 15: A system comprising: a memory configured to store computer-executable instructions; and a processor configured to access the memory and execute the computer-executable instructions to perform at least the method according to any one of Examples 13 to 13.7.
[0276] Various examples can be further implemented in a wide variety of operating environments. In some cases, the operating environment may include one or more user computers, computing devices, or processing devices that can be used to operate any of a number of applications. User or client devices may include any of a number of general-purpose personal computers, such as desktop or laptop computers running standard operating systems, as well as cellular devices, wireless devices, and handheld user devices running mobile software and capable of supporting multiple networking and messaging protocols. The system may also include multiple workstations running a variety of commercially available operating systems and any of other known applications for purposes such as development and database management. These devices may also include other electronic devices, such as virtual terminals, thin clients, gaming systems, and other devices capable of communicating via a network.
[0277] Most examples utilize at least one network familiar to those skilled in the art to support communication using any of the various commercial protocols such as TCP / IP, OSI, FTP, UPnP, NFS, CIFS, and AppleTalk. The network can be, for example, a local area network (LAN), a wide area network (WAN), a virtual private network (VPN), the Internet, an intranet, an extranet, the public switched telephone network (PSTN), an infrared network, a wireless network, and any combination thereof.
[0278] In examples utilizing a web server, the web server can run any of a variety of server or middleware applications, including HTTP servers, FTP servers, CGI servers, data servers, Java servers, and business application servers. The server may also be able to execute programs or scripts in response to requests from user devices, such as by executing one or more applications, which can be implemented in any programming language (such as Java). ®One or more scripts or programs written in C, C#, or C++, or any scripting language such as Perl, Python, or TCL, and combinations thereof. The server may also include a database server, including but not limited to those retrievable from Oracle. ® Microsoft ® Sybase ® and IBM ® Those obtained through commercial purchases.
[0279] The environment can include various data repositories and other storage media, as discussed above. These can reside in various locations, such as on storage media local to one or more computers or on storage media of any or all computers on a network (and / or reside within one or more computers). In a particular set of examples, information can reside in a storage area network (SAN) familiar to those skilled in the art. Similarly, any necessary files for performing functions belonging to a computer, server, or other network device may be stored locally and / or remotely as needed. Where the system includes computerized devices, each such device can include hardware elements that can be electrically coupled via a bus, including, for example, at least one central processing unit (CPU), at least one input device (e.g., mouse, keyboard, controller, touchscreen, or keypad), and at least one output device (e.g., display device, printer, or speaker). Such systems may also include one or more storage devices, such as disk drives, optical storage devices, and solid-state storage devices such as RAM or ROM, as well as removable media devices, memory cards, flash memory cards, and so on.
[0280] Such devices may also include computer-readable storage medium readers, communication devices (e.g., modems, network interface cards (wireless or wired), infrared communication devices, etc.), and working memory as described above. Computer-readable storage medium readers may be connected to or configured to receive non-transitory computer-readable storage media representing remote, local, fixed, and / or removable storage devices, as well as storage media for temporarily and / or more permanently containing, storing, transmitting, and retrieving computer-readable information. Systems and various devices typically also include multiple software applications, modules, services, or other elements residing within at least one working memory device, including operating systems and applications such as client applications or browsers. It should be understood that alternative examples may have many variations as described above. For example, custom hardware may also be used, and / or specific elements may be implemented in hardware, software (including portable software such as applets), or both. Furthermore, connections to other computing devices such as network input / output devices may be employed.
[0281] Non-transitory storage media and computer-readable media used for containing code or portions thereof may include any suitable media known or used in the art, including storage media such as, but not limited to, volatile and non-volatile, removable and non-removable media, which may be implemented in any method or technique for storing information such as computer-readable instructions, data structures, program modules or other data, including RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, DVD or other optical storage devices, magnetic tape cassettes, magnetic tape, disk storage devices or other magnetic storage devices, or any other media that may be used to store desired information and may be accessed by system devices. Other ways and / or methods for implementing the various examples will be understood by those skilled in the art, at least in part, based on the disclosure and teachings provided herein.
[0282] Accordingly, the specification and drawings should be regarded as illustrative rather than restrictive. However, it will be apparent that various modifications and changes may be made thereto without departing from the broader spirit and scope of this disclosure as set forth in the claims.
[0283] Other variations are within the scope of this disclosure. Therefore, although the disclosed technology is susceptible to various modifications and alternative constructions, certain illustrative examples are shown in the accompanying drawings and have been described in detail above. However, it should be understood that this disclosure is not intended to be limited to the specific forms disclosed, but rather is intended to cover all modifications, alternative constructions, and equivalents falling within the scope and spirit of this disclosure as defined by the appended claims.
[0284] Unless otherwise specified herein or clearly contradicted by the context, the use of the terms “a,” “an,” and “the,” and similar indicative words, in the context of describing the disclosed examples (particularly in the context of the following claims), shall be construed as covering both the singular and plural. Unless otherwise stated, the terms “comprising,” “having,” “including,” and “containing” shall be understood as open-ended terms (i.e., meaning “including but not limited to”). The term “connected” is construed as being partially or wholly contained, attached to, or joined together, even in the presence of an intermediary. Unless otherwise specified herein, the description of numerical ranges herein is intended merely as a simple way of individually referring to each individual value falling within that range, and each individual value is incorporated into the specification as if individually referenced herein. All methods described herein can be performed in any suitable order unless otherwise specified herein or otherwise clearly contradicted by the context. Unless otherwise stated, the use of any and all examples or exemplary language (e.g., “such as”) provided herein is merely intended to better illustrate examples of this disclosure and does not limit the scope of this disclosure. Nothing in the specification should be construed as indicating that any unstated element is essential to the practice of this disclosure.
[0285] Unless otherwise specified, disjunctive languages such as the phrase "at least one of X, Y, or Z" are understood in context to generally refer to items, terms, etc., which can be X, Y, or Z, or any combination thereof (e.g., X, Y, and / or Z). Therefore, such disjunctive languages are generally not intended and should not imply that some examples require the existence of at least one of X, at least one of Y, or at least one of Z. The phrase "based on A" means "at least partially based on A," for example, it can be "based only on A" or it can be "partially based on A."
[0286] This document describes preferred examples of this disclosure, including the best modes known to the inventors for carrying out this disclosure. Variations of those preferred examples will become apparent to those skilled in the art after reading the foregoing description. The inventors expect those skilled in the art to appropriately employ such variations, and the inventors intend to practice this disclosure in ways different from those specifically described herein. Therefore, this disclosure includes all modifications and equivalents of the subject matter recited in the appended claims, as permitted by applicable law. Furthermore, unless otherwise indicated herein or otherwise clearly contradicted by the context, this disclosure encompasses any combination of all possible variations of the foregoing elements.
[0287] All references cited in this article, including publications, patent applications and patents, are incorporated herein by reference, as each reference is individually and specifically indicated to be incorporated by reference and elaborated in the entire text.
[0288] As illustrated herein, flowcharts provide examples of sequences of various process actions. Flowcharts can indicate operations to be performed by software or firmware routines, as well as physical operations. Flowcharts can illustrate examples of concrete implementations of the states of a finite state machine (FSM), which can be implemented in hardware or software. Although shown in a specific order or sequence, the order of actions can be modified unless otherwise specified. Therefore, the illustrated diagrams should be understood as examples only, and processes can be performed in different orders, and some actions can be performed in parallel. Additionally, one or more actions may be omitted; therefore, not all concrete implementations will perform all actions.
[0289] With respect to the various operations or functions described herein, they can be described or defined as software code, instructions, configuration, or data. Content can be directly executable (in "object" or "executable" form), source code, or differential code ("incremental" or "patch" code). The software content described herein can be provided via an artifact on which the content is stored or via a method of operating a communication interface to transmit data via the communication interface. Machine-readable storage media enables a machine to perform the described functions or operations and includes any mechanism that stores information in a machine-accessible form, such as recordable / non-recordable media (e.g., read-only memory (ROM), random access memory (RAM), disk storage media, optical storage media, flash memory devices, etc.). Communication interfaces include any mechanism that interfaces with any of hardwired media, wireless media, optical media, etc., to communicate with another device, such as memory bus interfaces, processor bus interfaces, Internet connections, disk controllers, etc. Communication interfaces can be configured by providing configuration parameters or transmitting signals to prepare the communication interface to provide data signals describing the software content. Communication interfaces can be accessed via one or more commands or signals transmitted to the communication interface.
[0290] Detailed description is provided with reference to the accompanying drawings. The same reference numerals may be used to identify the same or similar elements in different drawings. In the foregoing description, specific details, such as particular structures, architectures, interfaces, and techniques, are set forth for illustrative and not limiting purposes to provide a thorough understanding of various aspects of some embodiments. However, it will be apparent to those skilled in the art that they benefit from this disclosure that various aspects may be practiced in other examples departing from these specific details. In some instances, descriptions of well-known devices, circuits, and methods have been omitted so as not to obscure the description of the aspects with unnecessary detail.
[0291] Furthermore, the various components described herein can be means for performing the described operations or functions. Each component herein includes software, hardware, or a combination thereof. Components can be implemented as software modules, hardware modules, special-purpose hardware (e.g., special-purpose hardware, application-specific integrated circuits (ASICs), digital signal processors (DSPs), etc.), embedded controllers, hardwired circuits, etc.
[0292] Various modifications may be made to the disclosure and specific implementation of this invention in addition to the content described herein without departing from the scope of the invention. Therefore, the illustrations and examples herein should be interpreted as illustrative rather than restrictive. The scope of the invention should be measured only by reference to the appended claims below.
[0293] Although the foregoing aspects have been described in considerable detail, many variations and modifications will become apparent to those skilled in the art once the foregoing disclosure is fully understood. Therefore, the following claims are intended to be construed as encompassing all such variations and modifications.
[0294] X. Privacy As described above, one aspect of the present invention is the collection and use of data related to a user's location and associated devices. This disclosure contemplates that, in some instances, such collected data may include personally identifiable information (PII) data that uniquely identifies or can be used to contact or locate a specific person. Such personal information data may include demographic data, location-based data, telephone numbers, email addresses, Twitter IDs, home addresses, data or records related to a user's health or fitness level (e.g., vital sign measurements, medication information, exercise information), date of birth, health record data, or any other identifying information or personal or health information.
[0295] This disclosure recognizes that the use of such personal information data in the techniques of this invention can benefit users. For example, personal information data can be used to enhance the user's experience with map-making services. Furthermore, this disclosure also anticipates other uses of personal information data that benefit users.
[0296] This disclosure anticipates that entities responsible for the collection, analysis, disclosure, transfer, storage, or other use of such personal information data will comply with robust privacy policies and / or privacy measures. In particular, such entities should implement and adhere to privacy policies and measures recognized as meeting or exceeding industry or governmental requirements for maintaining the privacy and security of personal information data. Such policies should be easily accessible to users and should be updated as the collection and / or use of data changes. Personal information from users should be collected for legitimate and reasonable entity purposes and should not be shared or sold outside of these legitimate purposes. Furthermore, such collection / sharing should be conducted only after receiving informed consent from users. Additionally, such entities should consider taking any necessary steps to protect and safeguard the right to access such personal information data and ensure that other entities with access to personal information data comply with the privacy policies and procedures of those other entities. Furthermore, such entities may be subject to third-party assessments to demonstrate their compliance with widely accepted privacy policies and privacy measures. In addition, policies and measures should be adapted to the specific types of personal information data collected and / or accessed, and to applicable laws and standards, including considerations of specific jurisdictions. For example, in the United States, the collection or acquisition of certain health data may be governed by federal and / or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA); while in other countries, health data may be subject to other regulations and policies and should be handled accordingly. Therefore, different privacy practices should be maintained for different types of personal data in each country.
[0297] Regardless of the foregoing, this disclosure also anticipates implementation schemes for users to selectively block the use or access to personal information data. That is, this disclosure anticipates providing hardware and / or software components to prevent or block access to such personal information data. For example, in relation to updating the home location of a home automation system, this technology can be configured to allow users to opt-in or opt-out at any time during or after service registration to participate in the collection of personal information data. In addition to providing opt-in and opt-out options, this disclosure also anticipates providing notifications related to access to or use of personal information. For example, users may be notified when downloading an application that their personal information data will be accessed, and then reminded again just before the application accesses the personal information data.
[0298] Furthermore, the intent of this disclosure is that personal information data should be managed and processed in a manner that minimizes the risk of unintentional or unauthorized access or use. Once data is no longer needed, this risk can be minimized by restricting data collection and deleting data. In addition, and where applicable, including in certain health-related applications, data de-identification can be used to protect user privacy. Where appropriate, de-identification can be facilitated by removing specific identifiers (e.g., date of birth), controlling the amount or characteristics of stored data (e.g., collecting location data at the city level rather than the address level), controlling how data is stored (e.g., aggregating data among users), and / or other methods.
[0299] Therefore, while this disclosure broadly covers the use of personal information data to implement one or more of the various disclosed embodiments, it is also contemplated that various embodiments can be implemented without access to such personal information data. That is, various embodiments of the present technology will not become inoperable due to the absence of all or part of such personal information data.
Claims
1. A method, the method comprising: Determine the orientation of a handheld user equipment, the handheld user equipment including multiple antennas; The antenna is selected from the plurality of antennas based at least in part on the orientation; Process the signals received by the antenna from the searchable device; as well as The relative position of the searchable device with respect to the location of the handheld user equipment is determined based on the signal.
2. The method of claim 1, wherein determining the orientation of the handheld user equipment comprises: Generate prompts to instruct adjustments to the orientation; as well as The adjustment to the orientation is detected.
3. The method according to claim 1, further comprising: Generate prompts to indicate adjustments to the grip; Detect the adjustment to the grip; as well as The antenna is selected based on the aforementioned adjustments.
4. The method of claim 1, wherein the searchable device is an accessory device.
5. The method of claim 1, wherein determining the orientation is based on measurements from an accelerometer, gyroscope, or magnetometer.
6. The method according to claim 1, further comprising: Determine the Received Signal Strength Indication (RSSI) associated with the antenna; as well as Determine the grip descent associated with the antenna.
7. The method of claim 6, wherein the determination of the grip descent is based on a configured lookup table.
8. The method of claim 6, wherein selecting the antenna includes determining that the grip drop of the antenna is less than the grip drop of at least one other antenna among the plurality of antennas.
9. The method according to claim 1, further comprising: Determine the antenna pattern of the antenna.
10. The method of claim 9, wherein the selection of the antenna is based on the antenna pattern of the antenna.
11. The method according to claim 1, further comprising: The antenna is determined to have a received signal strength indication (RSSI) greater than that of the other antennas in the plurality of antennas, wherein the selection of the antenna is based on the determination that the RSSI of the antenna is greater than that of the other antennas in the plurality of antennas.
12. One or more non-transitory computer-readable media, the one or more non-transitory computer-readable media comprising computer-executable instructions, which, when executed by one or more processors of a handheld user equipment, cause the handheld user equipment to perform at least the following operations: The orientation of the handheld user equipment is determined, the handheld user equipment including multiple antennas; The antenna is selected from the plurality of antennas based at least in part on the orientation; Process the signals received by the antenna from the searchable device; as well as The relative position of the searchable device with respect to the location of the handheld user equipment is determined based on the signal.
13. The one or more non-transitory computer-readable media of claim 12, further comprising additional computer-executable instructions, which, when executed by the one or more processors, cause the handheld user equipment to perform the following operations: Determine the Received Signal Strength Indication (RSSI) associated with the antenna; and Determine the grip descent associated with the antenna.
14. One or more non-transitory computer-readable claims 13, wherein selecting the antenna includes determining that the grip drop of the antenna is less than the grip drop of the other antennas among the plurality of antennas.
15. The one or more non-transitory computer-readable media of claim 12, wherein the one or more non-transitory computer-readable media further comprises additional computer-executable instructions, which, when executed by the one or more processors, cause the handheld user equipment to further determine the antenna pattern of the antenna.
16. A handheld user equipment, the handheld user equipment comprising: Multiple antennas; A memory configured to store computer-executable instructions; and A processor configured to access the memory and execute computer-executable instructions to perform at least the following operations: Determine the orientation of the handheld user equipment; The antenna is selected from the plurality of antennas based at least in part on the orientation; Process the signals received by the antenna from the searchable device; as well as The relative position of the searchable device with respect to the location of the handheld user equipment is determined based on the signal.
17. The handheld user equipment of claim 16, wherein determining the orientation of the handheld user equipment comprises: Generate prompts to instruct adjustments to the orientation; as well as The adjustment to the orientation is detected.
18. The handheld user equipment of claim 16, wherein the memory is configured to store additional computer-executable instructions, which, when executed by the processor, cause the handheld user equipment to further perform the following operations: Determine the Received Signal Strength Indication (RSSI) associated with the antenna; and Determine the grip descent associated with the antenna.
19. The handheld user equipment of claim 16, wherein the memory is configured to store additional computer-executable instructions, which, when executed by the processor, cause the handheld user equipment to further perform: determining that the received signal strength indication (RSSI) of the antenna is greater than the RSSI of at least one other antenna among the plurality of antennas, and wherein the selection of the antenna is based on the determination that the RSSI of the antenna is greater than the RSSI of the at least one other antenna among the plurality of antennas.
20. The handheld user equipment of claim 16, wherein the memory is configured to store additional computer-executable instructions, which, when executed by the processor, cause the handheld user equipment to further perform the following operations: Generate prompts to indicate adjustments to the grip; Detecting the adjustment to the grip; and The antenna is selected based on the aforementioned adjustments.
