Power-Saving Offloading Location Service
Through the auxiliary positioning service of low-power wireless communication chipsets, the IEEE 802.11mc fine timing measurement protocol is used to solve the problems of inaccurate indoor positioning and high power consumption, and realize energy-saving indoor and outdoor positioning services.
Patent Information
- Application Number
- CN202080081663.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-11-25
- Filing Date
- 2020-10-28
- Publication Date
- 2025-07-18
- Estimated Expiration
- 2040-10-28
AI Technical Summary
The prior art has problems of inaccurate positioning, unreliability and excessive power consumption in indoor location services, especially when using the main processor and operating system of mobile devices for location services.
The auxiliary position service is used to measure the distance between the device and the wireless communication device through the IEEE 802.11mc fine timing measurement protocol, and notify the operating system after meeting the virtual boundary conditions, thereby controlling the power state of the main processor.
While reducing power consumption, it provides accurate indoor location services, supports geofencing and asset tracking, suitable for indoor and outdoor environments.
Smart Images

Figure CN114729979B_ABST
Abstract
Description
Background Art
[0001] Location services, such as geofencing and asset tracking, are challenging when attempted indoors. Although Global Navigation Satellite System (GNSS) technologies, such as Global Positioning System (GPS) technology, can sometimes connect to communication devices within a building, communication signals from GNSS satellites are attenuated and scattered by building infrastructure (such as rooftops, walls, and other objects). As a result, the resulting indoor location is often not accurate or reliable enough to be useful. In addition, many GNSS chipsets are not accurate enough to be particularly useful at the indoor scale (e.g., down to the location within individual small rooms or separate rooms). Moreover, many location services can include continuous power-hungry operations by the main processor and operating system of communication devices such as mobile phones, wearable computing devices, or Internet of Things (IoT) devices. Such operations may consume unacceptable processing power and electrical energy. Summary of the Invention
[0002] The described technology provides a communication device that assists location services by receiving virtual boundary conditions from an operating system. The virtual boundary conditions are received by a wireless communication chipset (e.g., a Wi-Fi chipset) of the communication device. The Wi-Fi chipset measures one or more distances between the communication device and one or more wireless communication devices (e.g., Wi-Fi access points) using a wireless communication distance measurement protocol (e.g., Wi-Fi Fine Timing Measurement or FTM), determines that one or more measured distances satisfy the virtual boundary conditions, and notifies the operating system that one or more measured distances satisfy the virtual boundary conditions.
[0003] This Summary of the Invention is provided to introduce a set of concepts in a simplified form that will be further described below in the Detailed Description. This Summary of the Invention is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
[0004] Other implementations are also described and recited herein. Brief Description of the Drawings
[0005] Figure 1 An indoor geofencing using an example Wi-Fi assisted indoor location service is shown.
[0006] Figure 2 Detection of geofence exit using an example Wi-Fi assisted indoor location service is shown.
[0007] Figure 3 Detection of geofence entry using an example Wi-Fi assisted indoor location service is shown.
[0008] Figure 4Illustrates the detection of a geofence proximity event using an example Wi-Fi assisted indoor location service.
[0009] Figure 5 Illustrates the detection of a geographical location proximity event using an example Wi-Fi assisted indoor location service.
[0010] Figure 6 Illustrates an example system for providing an example Wi-Fi assisted indoor location service.
[0011] Figure 7 Illustrates an example Wi-Fi chipset for an example Wi-Fi assisted indoor location service.
[0012] Figure 8 Illustrates an example operation of an example Wi-Fi assisted indoor location service.
[0013] Figure 9 Illustrates an example operating environment and system for performing an example Wi-Fi assisted indoor location service. Detailed Description
[0014] As discussed, GNSS location services within a building are useless or nearly useless. Additionally, indoor location services that heavily utilize the main processor and operating system of a mobile device consume unacceptable processor power and battery power over time. Thus, the described techniques employ a lower power wireless communication chipset (e.g., Wi-Fi chipset, Bluetooth chipset, and other sensors) to handle a substantial portion of common location services, relegating processing to the (multiple) microprocessor components and operating system of the mobile device to handle only a subset of location service processing. In this way, the lower power chipset can detect location transitions (e.g., across different geofences, between indoor and outdoor locations) and other location services before higher power operations are performed in the operating system of the mobile device. Accordingly, the described techniques provide effective indoor location services while limiting power consumption (e.g., saving available battery power). Additionally, the described techniques can also be used in outdoor locations.
[0015] Furthermore, Wi-Fi assisted indoor location service is an example of a power-saving offloading location service using a wireless communication device. Other wireless communication technologies, including Bluetooth technology, can be employed.
[0016] In one implementation, the described technology utilizes wireless communication signal round-trip time (RTT) or ranging measurements, such as those introduced by the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard, to assist in indoor asset tracking and / or geofencing (collectively included in "location services") using low-power operation. The FTM technology is an example Wi-Fi distance measurement protocol that allows a computing device to measure the distance to a nearby Wi-Fi access point (AP) or other wireless communication device (e.g., a peer electronic communication device such as a mobile phone) using the round-trip delay time, although similar techniques can be employed in other wireless communication technologies including Bluetooth. The distance between different wireless communication devices, different Bluetooth-enabled devices, etc. can also be measured. Other sensors and wireless communication distance measurement protocols can also be used to assist such location services, including but not limited to GNSS sensors and motion detection sensors (e.g., accelerometers, gyroscopes, pedometers).
[0017] A communication device supporting FTM can find the set of the closest FTM-supporting APs by performing a full or partial Wi-Fi scan or by querying a pre-populated database identifying the APs and their corresponding reference geographical locations. The reference geographical location can be set on the AP during the setup or configuration of the AP. The operating system or application executed on the communication device can use the reference geographical location of the AP to determine the threshold distance and the associated geofence, AP, and / or geographical location of interest. The reference geographical location for each AP (or each other wireless communication device) is predetermined because the AP and / or communication device employing the location service can determine the current location of the AP (or each other wireless communication device) through queries to the AP, access to the AP location database, and other methods.
[0018] Figure 1 An indoor geofencing using an example Wi-Fi-assisted indoor location service is shown. It should be understood that the described technology can also be used for outdoor locations. View 100 includes the boundary of building 102 where communication device 104 is located. Additionally, there are three Wi-Fi access points (APs) - AP 106, AP 108, and AP 110 inside building 102. In Figure 1 this case, the Wi-Fi chipset of communication device 104 and the APs support the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard to assist in indoor asset tracking and / or geofencing (collectively referred to as "location services") using low-power operation. Other sensors and distance detection protocols can also be used to assist such location services, including but not limited to GNSS sensors and motion detection sensors (e.g., accelerometers, gyroscopes, pedometers). Thus, the Wi-Fi chipset in communication device 104 can use the FTM protocol to monitor the distance from communication device 104 to each AP.
[0019] In the illustrated implementation, a geofence region associated with each AP can be defined by setting a minimum threshold distance and a maximum threshold distance for each AP (see the minimum threshold distance 112 and the maximum threshold distance 114 of AP 106). As Figure 1 shown for each AP in, each AP individually defines an annular geofence. In another implementation, a single threshold distance from the AP can define a circular geofence around the AP.
[0020] By combining the geofences of multiple APs, a more precise and / or differently shaped geofence can be defined. For example, the (multiple) regions where the geofences of two APs overlap define one or more geofence regions (generally see the region 115 shaped like a double-headed arrow, where the respective geofences of AP 106 and AP 108 overlap). If the geofence of AP 110 is added, the combined geofence of the three APs is defined by the overlap of the three geofences, roughly defined as the circular geofence 116.
[0021] When the distance between the communication device 104 and certain identified APs newly satisfies or no longer satisfies the virtual boundary condition, the operating system can command the Wi-Fi chipset (e.g., via device driver software) to issue a warning to it. For example, in various implementations, the Wi-Fi chipset can signal one or more main processors of the communication device 104, which warns the operating system of the detected event. Other methods of warning the operating system can also be employed.
[0022] By monitoring the distance between the communication device 104 and each AP, the Wi-Fi chipset can detect whether and / or when the communication device 104 crosses one or both of the minimum threshold distance and the maximum threshold distance of each AP. In this way, the communication device 104 can determine whether and / or when it enters or exits the geofence 116 defined by the virtual boundary condition. When a geofence exit or entry is detected, the Wi-Fi chipset can also issue a warning to the operating system and other applications executed by one or more main microprocessor components in the communication device 104.
[0023] Compared with the main processor of the communication device 104, the Wi-Fi chipset can operate at a lower power consumption level. Therefore, in one implementation, the operating system and / or application executed on the main processor of the communication device 104 transfers one or more virtual boundary conditions to the Wi-Fi chipset, and then transitions the main processor to a lower power state (e.g., transitions to a lower power consumption level, such as a sleep mode or other lower power mode). For example, the virtual boundary condition can identify three APs (e.g., by MAC address) and the minimum and maximum threshold distances of each AP, thereby defining the geofence 116.
[0024] The virtual boundary condition can also specify a direction of movement relative to the geofence 116 (e.g., entering or exiting the geofence 116). To enter the geofence, the distance between the communication device 104 and the AP will be reduced below a maximum threshold distance or increased above a minimum threshold distance. To exit the geofence, the distance between the communication device 104 and the AP will be increased above the maximum threshold distance or reduced below the minimum threshold distance.
[0025] For example, in the illustrated implementation, the virtual boundary condition defines the geofence 116 relative to three APs 106, 108, and 110, and considers the case when the communication device 104 is not within the geofence 116 (i.e., any one of the distances between the communication device 104 and one of the APs does not fall within the minimum and maximum threshold distances associated with that AP). If the communication device 104 is not within the geofence 116, an entry event occurs when one or more of the distances between the communication device 104 and each AP all become to fall within the minimum and maximum threshold distances respectively associated with each AP. Conversely, when the communication device 104 is within the geofence 116, an exit event occurs when any one of the distances between the communication device 104 and one of the APs becomes no longer to fall within the minimum and maximum threshold distances associated with that AP.
[0026] The virtual boundary condition can also specify a confidence condition - if the distance condition, exit / entry / approach condition, and / or location condition are met in a manner that satisfies the confidence condition, a warning is triggered. Otherwise, it may be postponed or withheld. For example, if the distance condition, exit / entry / approach condition, and / or location condition are met within a threshold time period, a threshold number of monitoring cycles, or according to some other confidence condition (e.g., which may even involve other sensors such as motion sensors), the Wi-Fi chipset can issue a warning to the operating system
[0027] While one or more main microprocessor components are in a lower power state, the Wi-Fi chipset monitors the distances to three APs. If the Wi-Fi chipset detects that the virtual boundary condition is met, the Wi-Fi chipset can warn the operating system, thereby transitioning one or more main microprocessor components to a higher power mode in response to a change in the position of the communication device 104 relative to the geofence 116.
[0028] Figure 2Illustrates the detection of geofence exit using an example Wi-Fi assisted indoor location service. It should be understood that the described techniques can also be used for outdoor locations. View 200 includes the boundary of building 202, where there are location communication devices 204 (shown at two different locations as communication device 204a and communication device 204b). Additionally, there are three Wi-Fi access points (APs) within building 202 - AP 206, AP 208, and AP 210. In Figure 2 this example, the Wi-Fi chipset of communication device 204 and the APs support the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard to assist indoor asset tracking and / or geofencing (collectively referred to as "location services") using low-power operation. Other sensors and distance detection protocols can also be used to assist such location services, including but not limited to GNSS sensors and motion detection sensors (e.g., accelerometers, gyroscopes, pedometers). Thus, the Wi-Fi chipset in communication device 204 can measure the distance from communication device 204 to each AP using the FTM protocol.
[0029] When the distance between communication device 204 and certain identified APs no longer recently satisfies the virtual boundary conditions, the operating system can command the Wi-Fi chipset (e.g., via device driver software) to issue a warning. The Wi-Fi chipset monitors the distance from communication device 204 to each AP and evaluates these distances against one or more virtual boundary conditions provided by the operating system. In this case, the Wi-Fi chipset detects that during the transition from communication device 204a to 204b, the distance of communication device 204b exceeds the maximum threshold distance to AP 210, indicating that communication device 204b has exited geofence 216. Thus, the Wi-Fi chipset warns the operating system of this exit event, which will (usually) wake up one or more main microprocessor components to a higher power level. The Wi-Fi chipset can also transmit information related to the exit event, such as the distance between communication device 204b and AP 210. In response to such a warning, other data can also be passed to the operating system.
[0030] Figure 3 Illustrates the detection of geofence entry using an example Wi-Fi assisted indoor location service. It should be understood that the described techniques can also be used for outdoor locations. View 300 includes the boundary of building 302, where there are location communication devices 304 (shown at two different locations as communication device 304a and communication device 304b). Additionally, there are three Wi-Fi access points (APs) within building 302 - AP 306, AP 308, and AP 310. In Figure 3Among them, the Wi-Fi chipset and the AP of the communication device 304 support the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard to assist indoor asset tracking and / or geofencing (collectively referred to as "location services") using low-power operation. Other sensors and distance detection protocols can also be used to assist such location services, including but not limited to GNSS sensors and motion detection sensors (e.g., accelerometers, gyroscopes, pedometers). Therefore, the Wi-Fi chipset in the communication device 304 can measure the distance from the communication device 304 to each AP using the FTM protocol.
[0031] When the distance between the communication device 304 and certain identified APs newly meets the virtual boundary conditions, the operating system can instruct the Wi-Fi chipset (e.g., via device driver software) to issue a warning to it. The Wi-Fi chipset monitors the distance from the communication device 304 to each AP and evaluates these distances against one or more virtual boundary conditions provided by the operating system. In this case, the Wi-Fi chipset detects that during the transition from the communication device 304a to 304b, the distance of the communication device 304b decreases to below the maximum threshold distance from the AP 310 and remains above the minimum threshold distance from the AP 310, and is within the minimum and maximum threshold distances of the APs 306 and 308, thus indicating that the communication device 304b has entered the geofence 316. Therefore, the Wi-Fi chipset warns the operating system of this entry event, which will (usually) wake up one or more main microprocessor components to a higher power level. The Wi-Fi chipset can also transmit information related to the entry event, such as the distance between the communication device 304b and the AP. In response to such a warning, other data can also be passed to the operating system.
[0032] Figure 4Illustrates the detection of a geofence proximity event using an example Wi-Fi assisted indoor location service. It should be understood that the described techniques may also be used for outdoor locations. A "geofence method" event represents an event in which a geofence is defined by multiple APs, and the communication device receives signals from a proper subset (but not all) of the designated APs. For example, the AP signal may be too weak, vulnerable to interference, or just turned off because the AP is not operating properly. If the AP signal is sufficiently received by the communication device, the AP is said to be "visible". If the AP signal is not sufficiently received by the communication device, the AP is said to be "invisible". In this way, the communication device can detect whether it meets the threshold distance for visible APs but not for (the) invisible APs. In this case, the communication device may have entered the defined geofence but cannot be certain because it cannot determine the distance to the invisible APs. If the operating system wishes to receive a warning when such a situation is detected, it can instruct the Wi-Fi chipset to monitor the distance according to the virtual boundary conditions associated with the multiple APs, but issue a warning to the operating system when the communication device 404 newly meets the threshold distance for even a proper subset of the APs.
[0033] Go to Figure 4 , view 400 includes communication device 404 (shown as communication device 404a and communication device 404b at two different locations). Additionally, within view 400 there are three Wi-Fi access points (APs) - AP 406, AP 408, and AP 410. In Figure 4 , the Wi-Fi chipset of communication device 404 and the APs support the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard to assist indoor asset tracking and / or geofencing (collectively referred to as "location services") using low power operation. Other sensors and distance detection protocols may also be used to assist such location services, including but not limited to GNSS sensors and motion detection sensors (e.g., accelerometers, gyroscopes, pedometers). Thus, the Wi-Fi chipset in communication device 404 can measure the distance from communication device 404 to each AP using the FTM protocol.
[0034] The operating system commands the Wi-Fi chipset (e.g., via device driver software) to issue a warning when the Wi-Fi chipset detects a "geofence proximity" event regarding the virtual boundary conditions of the set of APs including AP 406, AP 408, and AP 410. Contrary to an entry event that occurs when the distance between communication device 404 and the designated APs meets all the designated threshold distances for all the designated APs for the virtual boundary conditions, a geofence proximity event occurs when the distance of at least a subset of the identified APs newly meets the virtual boundary conditions. In Figure 4In the case where the communication device moves from 404a to 404b, only the distance between the communication device 404b and the designated AP 408 satisfies the designated threshold distance of the designated AP to the virtual boundary condition. Although the entry event for the virtual boundary condition is not satisfied, this transition satisfies the geofence proximity event for the virtual boundary condition. Therefore, if the operating system commands the Wi-Fi chipset to issue a warning in the case of detecting a geofence proximity event, the Wi-Fi chipset of the communication device 404B warns the operating system of the geofence proximity event associated with the virtual boundary condition.
[0035] Figure 5 The detection of a geographical location proximity event using an example Wi-Fi assisted indoor location service is shown. It should be understood that the described technology can also be used for outdoor locations. A "geographical location proximity" event represents an event where the operating system designates a predefined threshold distance d and a geographical location of interest, and when any AP within the predefined threshold distance d from the designated geographical location becomes visible, commands the Wi-Fi chipset to warn the operating system. The geographical location proximity event is helpful in cases where none of the APs "known" to the operating system are visible (e.g., some of the APs within the proximity range are not yet visible to the Wi-Fi chipset and the operating system does not know any of the APs within the proximity range), so that the operating system wants to receive a warning when the communication device approaches the designated geographical location (i.e., within the predefined threshold distance d from the designated geographical location). For example, in response to such a warning, the operating system can start querying nearby APs in order to determine the identities and locations of the nearby APs, which may have been previously unknown or unspecified.
[0036] In this way, the Wi-Fi chipset can detect the AP, determine the AP location, and determine whether the AP is within the predefined threshold distance d from the designated geographical location. If so, the Wi-Fi chipset warns the operator of the occurrence of a "geographical location proximity" event associated with the virtual boundary location designated by the operating system.
[0037] Go to Figure 5 View 500 includes a communication device 504 (shown as communication device 504a and communication device 504b in two different positions). In addition, there is a Wi-Fi access point (AP) - AP 508 within view 500. In Figure 5Among them, the Wi-Fi chipset of the communication device 504 and the AP 508 support the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard to assist indoor asset tracking and / or geofencing (collectively referred to as "location services") using low-power operation. Other sensors and distance detection protocols can also be used to assist such location services, including but not limited to GNSS sensors and motion detection sensors (e.g., accelerometers, gyroscopes, pedometers). Therefore, the Wi-Fi chipset in the communication device 504 can measure the distance from the communication device 504 to the AP 508 using the FTM protocol.
[0038] The operating system commands the Wi-Fi chipset (e.g., via device driver software) to issue a warning when the Wi-Fi chipset detects a "geographical location proximity" event regarding virtual boundary conditions for a specified geographical location (e.g., longitude and latitude). A geofencing proximity event occurs when the communication device moves close enough to any AP such that the AP is visible to the communication device and the AP is within a predefined threshold distance d from the specified geographical location (collectively specified by the virtual boundary conditions). In Figure 5 Among them, when the communication device moves from 504a to 504b, the Wi-Fi chipset determines that it has entered the visibility distance 512 of the AP 508, and the visibility distance 512 is within the predefined threshold distance d from the geographical location 510. This transition satisfies the geographical location proximity event for the virtual boundary conditions. Therefore, if the operating system commands the Wi-Fi chipset to issue a warning in the case of detecting a geographical location proximity event for the specified geographical location and distance d, the Wi-Fi chipset of the communication device 504b will warn the operating system about the geographical location proximity event associated with the virtual boundary conditions. Alternatively, the geofencing proximity event can depend on the communication device entering a maximum threshold distance to such an AP rather than the visibility distance 512.
[0039] Figure 6FIG. 600 shows an example system for providing an example Wi-Fi assisted indoor location service. It should be understood that the described techniques can also be used for outdoor location. System 600 represents an example communication device, such as a mobile phone, a tablet computer, a laptop computer, an Internet of Things (IoT) device, etc. System 600 includes one or more main processors 602, such as a single-core or multi-core microprocessor. The one or more main processors 602 execute an operating system (divided into an operating system kernel 604 and an operating system application programming interface (API) 606, one or more device drivers (see, e.g., Wi-Fi chipset driver 608 and sensor device driver 610)), and may execute one or more applications 612. The operating system kernel 604, the Wi-Fi chipset driver 608, and the sensor device driver 610 interface with the one or more main processors 602, the Wi-Fi chipset 614, and the sensor chipset 616 via a hardware abstraction layer 618, respectively.
[0040] In Figure 6 , the Wi-Fi chipset 614 of the communication device supports the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard to assist indoor asset tracking and / or geofencing (collectively referred to as "location services") using low-power operation. Other sensors and distance detection protocols can also be used to assist such location services, including but not limited to GNSS sensors and motion detection sensors (e.g., accelerometers, gyroscopes, pedometers). Thus, the Wi-Fi chipset 614 in the communication device can measure the distance from the communication device to a designated AP using the FTM protocol.
[0041] The one or more main processors 602 and possibly the Wi-Fi chipset 614 and the sensor chipset 616 can transition between two or more power consumption levels. For example, to save power (e.g., grid power or battery power), the hardware components can transition from a high-power mode to a lower-power mode. In the described techniques, the operating system and / or an application can command the one or more main processors 602 to transition to a lower-power mode and wait for a wake-up event that triggers the one or more main processors 602 to transition back to a higher-power mode. In one implementation, the operating system passes a virtual boundary condition to the Wi-Fi chipset 614 and transitions the one or more main processors 602 to a lower-power mode. When the Wi-Fi chipset 614 detects that the communication device meets the virtual boundary condition (e.g., relative to a nearby visible access point), the Wi-Fi chipset 614 issues a warning to the operating system, which can then trigger the one or more main processors 602 to transition back to a higher-power mode to handle the warning. In some implementations, the Wi-Fi chipset warns the main processor to transition back to a higher-power mode, thereby waking up the operating system.
[0042] In one implementation, the sensing information from the sensor chipset 616 can be used as part of the virtual boundary conditions. For example, the sensor chipset 616 can include one or more accelerometers, one or more gyroscopes, and / or one or more pedometers for detecting movement. If no movement is detected, detected entry, exit, geofence proximity, or location proximity events can be ignored because the communication device is not moving. In another implementation, in the absence of detected movement, the Wi-Fi chipset 614 can save power by not performing distance measurements until movement is detected.
[0043] In another example, the sensor chipset 616 can include a GNSS receiver module capable of monitoring the positioning of the communication device at an outdoor location. For example, the operating system can specify GNSS conditions to the GNSS receiver module, and the GNSS receiver module can determine that the communication device has transitioned between an outdoor location and an indoor location, and either assist the Wi-Fi chipset 614 in determining whether the virtual boundary conditions have been met or notify the operating system itself. Additionally, if the GNSS receiver module is able to determine the location of the communication device and provide sufficient information for location services, the operating system can specify GNSS information to replace any warnings from the Wi-Fi chipset 614, although in other implementations, the FTM solution of the Wi-Fi chipset 614 may be preferred. Communication between the Wi-Fi chipset 614 and the sensor chipset 616 can occur through the hardware abstraction layer 618, through device drivers, through the operating system kernel, through operating system services, and / or through one or more applications.
[0044] In both of these examples, it is expected that using the Wi-Fi chipset consumes more power than using motion sensor measurements, although this is not the case for all configurations. In some implementations, higher layers (e.g., operating system services, applications) may not necessarily facilitate communication between the Wi-Fi chipset and the sensor, but can instead decide when to enable and disable geofencing in the Wi-Fi chipset 614 based on information from the sensor chipset 616.
[0045] Figure 7 An example Wi-Fi chipset 700 for example Wi-Fi assisted indoor location services is shown. It should be understood that the described techniques can also be used for outdoor locations. The Wi-Fi chipset 700 communicates with the rest of the system (e.g., the communication device) via a system interface 702, which can interface with, for example, the hardware abstraction layer. The Wi-Fi chipset 700 communicates with one or more APs via a Wi-Fi communication interface 704. In Figure 7Among them, the Wi-Fi chipset 700 supports the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard to assist indoor asset tracking and / or geofencing (collectively referred to as "location services") using low-power operation. Other sensors and distance detection protocols can also be used to assist such location services, including but not limited to GNSS sensors and motion detection sensors (e.g., accelerometers, gyroscopes, pedometers). Therefore, the Wi-Fi chipset 700 can measure the distance from the communication device to the specified AP using the FTM protocol.
[0046] The Wi-Fi chipset 700 receives location service instructions (e.g., virtual boundary conditions including one or more distance conditions between the communication device and one or more Wi-Fi access points) from the operating system through the system interface 702. The Wi-Fi chipset 700 communicates with one or more APs via the Wi-Fi communication system 706 and the fine timing measurement system 708, which implements the FTM protocol to measure the distance between the communication device and one or more APs. The test system 710 of the Wi-Fi chipset 700 tests the measured distance using one or more virtual boundary conditions specified by the operating system. If the test system 710 determines that the virtual boundary conditions are met, the notification system 712 of the communication device issues a warning to the operating system via the system interface 702. The warning can include but not limited to one or more distances to one or more identified APs, and indications of exit, entry, geofence proximity, or geographical location proximity events. In one or more implementations, a power management system (not shown) is configured to transition one or more main processors of the communication device from a low-power mode to a higher power mode, and from a higher power mode to a low-power mode.
[0047] Figure 8 An example operation 800 of an example Wi-Fi-assisted indoor location service is shown. It should be understood that the described technology can also be used for outdoor locations. The method assists in the location service of a communication device including one or more main processors executing an operating system. The receiving operation 802 receives virtual boundary conditions from the operating system in the Wi-Fi chipset of the communication device. The measuring operation 804 measures one or more distances between the communication device and one or more Wi-Fi access points in the Wi-Fi chipset of the communication device. The testing operation 806 determines in the Wi-Fi chipset of the communication device that one or more measured distances have met the virtual boundary conditions. It should be understood that in most cases where the virtual boundary conditions are not met, the Wi-Fi chipset loops back in the measuring operation 804 for more distance measurements.
[0048] The warning operation 808 notifies the operating system in response to determining that one or more measured distances have met at least one of one or more distance conditions.
[0049] In at least one implementation, after the operating system has transmitted virtual boundary conditions to the Wi-Fi chipset, one or more main processors transition from a higher power mode to a lower power mode. Subsequently, in response to a warning operation, one or more main processors transition from the lower power mode to a higher power mode. It should be understood that in some implementations, after the virtual boundary conditions have been transmitted to the Wi-Fi chipset, the transition of the main processor to the lower power mode may not occur immediately, but may be triggered based on some other event (e.g., the communication device enters sleep due to idleness or the user explicitly puts the communication device to sleep by clicking the power button). If one or more main processors are in the lower power mode before a warning (e.g., notification) operation 808, the result of the warning operation 808 may cause one or more main processors to transition to a higher power mode.
[0050] Figure 9 An example operating environment and system for performing an example Wi-Fi assisted indoor location service are shown. It should be understood that the described techniques may also be used for outdoor location. The communication device 900 may be a client device such as a laptop computer, a mobile device, a desktop computer, a tablet; a server / cloud device; an Internet of Things device; an electronic accessory; or another electronic device. The communication device 900 includes one or more processors 902 and a memory 904. The memory 904 generally includes both volatile memory (e.g., RAM) and non-volatile memory (e.g., flash memory). The operating system 910 resides in the memory 904 and is executed by the processor 902.
[0051] In the example communication device 900, as Figure 9 shown, one or more modules or segments, such as communication software 950, applications 952, location service software 954, and other modules, are loaded into the operating system 910 on the memory 904 and / or the storage device 920 and are executed by the processor(s) 902. The storage device 920 may store communication parameters and other data and be local to the communication device 900, or may be remote and communicatively connected to the communication device 900.
[0052] The communication device 900 includes a power supply 916 that is powered by one or more batteries or other power sources and powers other components of the communication device 900. The power supply 916 may also be connected to an external power source that overrides or recharges the built-in battery or other power source.
[0053] The communication device 900 may include one or more communication transceivers 930, which may be connected to one or more antennas 932 to provide a network connection (e.g., a mobile phone network, )。The communication device 900 includes a Wi-Fi chipset and may also include another communication interface 936. In the implementation of the described technology, the Wi-Fi chipset 956 supports the FTM protocol. The communication device 900 can use an adapter and any other type of communication device to establish a connection over a wide area network (WAN) or a local area network (LAN). It should be recognized that the network connections shown are exemplary, and other communication devices and means for establishing a communication link between the communication device 900 and other devices can be used.
[0054] The communication device 900 may include one or more input devices 934 so that a user can input commands and information (e.g., a keyboard or a mouse). These and other input devices can be coupled to the communication device 900 through one or more interfaces 938, such as a serial port interface, a parallel port, or a universal serial bus (USB). The communication device 900 may also include a display 922, such as a touch screen display.
[0055] The communication device 900 may include various tangible processor-readable storage media and intangible processor-readable communication signals. The tangible processor-readable storage device can be implemented by any available medium accessible by the communication device 900 and includes both volatile and non-volatile storage media, both removable and non-removable storage media. The tangible processor-readable storage medium includes intangible communication signals and includes volatile and non-volatile, removable and non-removable storage media implemented by any method or technology for storing information, such as processor-readable instructions, data structures, program modules, or other data. The tangible processor-readable storage medium includes, but is not limited to, RAM, ROM, EEPROM, flash memory, or other memory technologies, CD-ROM, digital versatile disk (DVD), or other optical disk storage devices, cassette tapes, magnetic tapes, magnetic disk storage devices, or any other tangible medium that can be used to store the desired information and is accessible by the communication device 900. Compared with the tangible processor-readable storage medium, the intangible processor-readable communication signal can implement processor-readable instructions, data structures, program modules, or other data residing in a modulated data signal, such as a carrier wave or other signal transmission mechanism. The term "modulated data signal" refers to a signal whose one or more characteristics are set or changed in a manner that encodes information in the signal. By way of example and not limitation, the intangible communication signal includes signals propagated through wired media, such as a wired network or a direct wired connection, and wireless media, such as acoustic, RF, infrared, and other wireless media.
[0056] Although this specification contains many specific implementation details, these should not be construed as limitations on the scope of any invention or of what may be claimed, but rather as descriptions of features specific to particular embodiments of a particular described technology. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination within a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable sub-combination. In addition, although features may be described as acting in certain combinations and even initially claimed as such, in some cases one or more features from a claimed combination can be excised from the combination, and the claimed combination can be directed to a sub-combination or variant of a sub-combination.
[0057] Similarly, although operations are depicted in the drawings in a particular order, this should not be understood as requiring that the operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In some cases, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the foregoing embodiments should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems generally can be integrated together in a single software product or packaged into multiple software products.
[0058] Accordingly, particular embodiments of the subject matter have been described. Other embodiments are within the scope of the following claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve desirable results. In addition, the processes depicted in the figures do not necessarily require the particular order shown or sequential order to achieve desirable results. In some implementations, multitasking and parallel processing may be advantageous.
[0059] An example method is provided for offloading one or more location services to a wireless communication chipset of a communication device. The communication device includes one or more main processors configured to execute an operating system. The method includes receiving, in the wireless communication chipset of the communication device, virtual boundary conditions from the operating system. The virtual boundary conditions specify at least one threshold distance between the communication device and one or more wireless communication devices. In response to the receiving operation, the one or more main processors transition from a higher power mode to a lower power mode. In the wireless communication chipset of the communication device, one or more distances between the communication device and one or more wireless communication devices are measured using a wireless communication distance measurement protocol. In the wireless communication chipset of the communication device, it is determined that the one or more measured distances have satisfied the virtual boundary conditions. The operating system is notified that the one or more measured distances have satisfied the virtual boundary conditions. In response to the notification operation, the one or more main processors transition from the lower power mode to a higher power mode.
[0060] Another example method of any of the foregoing methods is provided, wherein one or more measured distances are measured using the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard.
[0061] Another example method of any of the foregoing methods is provided, wherein one or more measured distances are measured using round-trip time (RTT) measurements of wireless communication signals.
[0062] Another example method of any of the foregoing methods is provided, wherein the virtual boundary condition specifies a geofence defined by one or more threshold distance conditions between the communication device and one or more wireless communication devices.
[0063] Another example method of any of the foregoing methods is provided, wherein one or more of the threshold distance conditions include a minimum threshold distance and a maximum threshold distance for a specified access point.
[0064] Another example method of any of the foregoing methods is provided, wherein the virtual boundary condition specifies one or more threshold distance conditions that define a geofence, and commands the wireless communication chipset to notify the operating system when one or more measured distances indicate that the communication device has entered the geofence.
[0065] Another example method of any of the foregoing methods is provided, wherein the virtual boundary condition specifies one or more threshold distance conditions that define a geofence, and commands the wireless communication chipset to notify the operating system when one or more measured distances indicate that the communication device has exited the geofence.
[0066] Another example method of any of the foregoing methods is provided, wherein another virtual boundary condition is received by the wireless communication chipset from the operating system, the another virtual boundary condition specifies a geographical location and a predefined threshold distance, and commands the wireless communication chipset to notify the operating system after the communication device detects a wireless communication device at a location within the specified predefined threshold distance from the specified geographical location.
[0067] An example communication device for unloading one or more location services is provided. The communication device includes one or more main processors configured to execute an operating system, and a wireless communication chipset. The wireless communication chipset includes a system interface configured to receive virtual boundary conditions to unload one or more location services from the operating system. The virtual boundary conditions specify at least one threshold distance between the communication device and one or more wireless communication devices, wherein in response to receiving the virtual boundary conditions, one or more main processors transition from a higher power mode to a lower power mode. The wireless communication device further includes a measurement system configured to measure one or more distances between the communication device and one or more wireless communication devices using a wireless communication distance measurement protocol. A test system configured to determine that one or more measured distances have met the virtual boundary conditions. A notification system configured to notify the operating system via the system interface in response to determining that one or more measured distances have met the virtual boundary conditions, wherein in response to the notification, one or more main processors transition from the lower power mode to a higher power mode.
[0068] Another example communication device of any of the foregoing communication devices is provided, wherein one or more measured distances are measured using the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard.
[0069] Another example communication device of any of the foregoing communication devices is provided, wherein one or more measured distances are measured using wireless communication signal round-trip time (RTT) measurements.
[0070] Another example communication device of any of the foregoing communication devices is provided, wherein the virtual boundary conditions specify a geofence defined by one or more threshold distance conditions between the communication device and one or more wireless communication devices.
[0071] Another example communication device of any of the foregoing communication devices is provided, wherein meeting the virtual boundary conditions in the wireless communication chipset of the communication device depends on a Global Navigation Satellite System (GNSS)-based determination that the communication device has transitioned between an outdoor location and an indoor location.
[0072] Another example communication device of any of the foregoing communication devices is provided, wherein meeting the virtual boundary conditions in the wireless communication chipset of the communication device depends on a sensor-based determination that the communication device is moving when the virtual boundary conditions are met.
[0073] An example tangible processor-readable storage medium device of one or more articles of manufacture encoding processor-executable instructions for execution in an electronic communication device provides a process for offloading one or more location services to a wireless communication chipset of the electronic communication device. The electronic communication device includes one or more main processors configured to execute an operating system. The process includes, in the wireless communication chipset of the electronic communication device, receiving virtual boundary conditions from the operating system. The virtual boundary conditions specify at least one threshold distance between the electronic communication device and one or more wireless communication devices. In response to the receiving operation, one or more main processors transition from a higher power mode to a lower power mode. The wireless communication chipset of the electronic communication device uses a wireless communication distance measurement protocol to measure one or more distances between the electronic communication device and one or more wireless communication devices. The wireless communication chipset of the electronic communication device determines that one or more measured distances have met the virtual boundary conditions. Notify the operating system that one or more measured distances have met the virtual boundary conditions. In response to the notification operation, one or more main processors transition from a lower power mode to a higher power mode.
[0074] Any other one or more exemplary tangible processor-readable storage medium devices of any of the foregoing media, wherein one or more measured distances are measured using the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard.
[0075] Any other one or more example tangible processor-readable storage medium devices of any of the foregoing media, wherein one or more of the measured distances are measured using wireless communication signal round-trip time (RTT) measurements.
[0076] Any other one or more example tangible processor-readable storage medium devices of any of the foregoing media, wherein the virtual boundary conditions specify one or more threshold distance conditions defining a geofence and command the wireless communication chipset to notify the operating system when one or more measured distances indicate that the electronic communication device has entered the geofence.
[0077] Any other one or more example tangible processor-readable storage medium devices of any of the foregoing media, wherein the virtual boundary conditions specify one or more threshold distance conditions defining a geofence and command the wireless communication chipset to notify the operating system when one or more measured distances indicate that the electronic communication device has exited the geofence.
[0078] Any other one or more example tangible processor-readable storage medium devices of any of the foregoing media, wherein another virtual boundary condition is received by the wireless communication chipset from the operating system, the another virtual boundary condition specifies a geographical location and a predefined threshold distance, and commands the wireless communication chipset to notify the operating system after the communication device detects a wireless communication device at a location within the specified predefined threshold distance from the specified geographical location.
[0079] An example system for offloading one or more location services to a wireless communication chipset of a communication device is provided. The communication device includes one or more main processors configured to execute an operating system. The system includes means for receiving, in the wireless communication chipset of the communication device, virtual boundary conditions from the operating system. The virtual boundary conditions specify at least one threshold distance between the communication device and one or more wireless communication devices. The system further includes means for, in response to the receiving, transitioning one or more main processors from a higher power mode to a lower power mode. The system further includes means for measuring, in the wireless communication chipset of the communication device, one or more distances between the communication device and one or more wireless communication devices using a wireless communication distance measurement protocol. The system further includes means for determining that one or more measured distances have met the virtual boundary conditions. The system further includes means for notifying the operating system that one or more measured distances have met the virtual boundary conditions. The system further includes means for, in response to the notification, transitioning one or more main processors from the lower power mode to the higher power mode.
[0080] Another example method of any of the foregoing methods is provided, wherein one or more measured distances are measured using the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard.
[0081] Another example method of any of the foregoing methods is provided, wherein one or more measured distances are measured using wireless communication signal Round-Trip Time (RTT) measurements.
[0082] Another example method of any of the foregoing methods is provided, wherein the virtual boundary conditions specify a geofence defined by one or more threshold distance conditions between the communication device and one or more wireless communication devices.
[0083] Another example method of any of the foregoing methods is provided, wherein one or more of the threshold distance conditions include a minimum threshold distance and a maximum threshold distance for a specified access point.
[0084] Another example method of any of the foregoing methods is provided, wherein the virtual boundary conditions specify one or more threshold distance conditions defining a geofence and command the wireless communication chipset to notify the operating system when one or more measured distances indicate that the communication device has entered the geofence.
[0085] Another example method of any of the foregoing methods is provided, wherein the virtual boundary conditions specify one or more threshold distance conditions defining a geofence and command the wireless communication chipset to notify the operating system when one or more measured distances indicate that the communication device has exited the geofence.
[0086] Another example method of any of the foregoing methods is provided, wherein another virtual boundary condition is received by the wireless communication chipset from the operating system, the another virtual boundary condition specifying a geographical location and a predefined threshold distance, and the wireless communication chipset is commanded to notify the operating system after the communication device detects a wireless communication device at a location within the specified predefined threshold distance from the specified geographical location.
[0087] Multiple implementations of the described techniques have been described. However, it should be understood that various modifications may be made without departing from the spirit and scope of the recited claims.
Claims
1. A method for offloading one or more location services to a wireless communication chipset of a communication device, the communication device including one or more main processors configured to execute an operating system, the method including: Receiving, in the wireless communication chipset of the communication device, a virtual boundary condition from the operating system, the virtual boundary condition specifying at least one threshold distance between the communication device and one or more wireless communication devices; In response to the receiving operation, transitioning the one or more main processors from a higher power mode to a lower power mode; Measuring, in the wireless communication chipset of the communication device, one or more distances between the communication device and the one or more wireless communication devices using a wireless communication distance measurement protocol; Determining, in the wireless communication chipset of the communication device, that one or more measured distances have satisfied the virtual boundary condition; Notifying the operating system that the one or more measured distances have satisfied the virtual boundary condition; And In response to the notifying operation, transitioning the one or more main processors from the lower power mode to the higher power mode.
2. The method according to claim 1, wherein the one or more measured distances are measured using the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard.
3. The method according to claim 1, wherein the one or more measured distances are measured using wireless communication signal Round-Trip Time (RTT) measurement.
4. The method according to claim 1, wherein the virtual boundary condition specifies a geofence defined by one or more threshold distance conditions between the communication device and the one or more wireless communication devices.
5. The method according to claim 4, wherein the one or more threshold distance conditions include a minimum threshold distance and a maximum threshold distance for a specified access point.
6. The method according to claim 1, wherein the virtual boundary condition specifies one or more threshold distance conditions defining a geofence and commands the wireless communication chipset to notify the operating system when the one or more measured distances indicate that the communication device has entered the geofence.
7. The method according to claim 1, wherein the virtual boundary condition specifies one or more threshold distance conditions defining a geofence and commands the wireless communication chipset to notify the operating system when the one or more measured distances indicate that the communication device has exited the geofence.
8. The method according to claim 1, wherein another virtual boundary condition is received by the wireless communication chipset from the operating system, the another virtual boundary condition specifying a geographical location and a predefined threshold distance, and commands the wireless communication chipset to notify the operating system after the communication device detects a wireless communication device at a location within the specified predefined threshold distance from the specified geographical location.
9. A communication device for offloading one or more location services, the communication device including: One or more main processors configured to execute an operating system; And A wireless communication chipset, comprising a system interface configured to receive virtual boundary conditions to offload the one or more location services from the operating system, the virtual boundary conditions specifying at least one threshold distance between the communication device and one or more wireless communication devices, wherein in response to the reception of the virtual boundary conditions, the one or more main processors transition from a higher power mode to a lower power mode, a measurement system configured to measure one or more distances between the communication device and the one or more wireless communication devices using a wireless communication distance measurement protocol, a test system configured to determine that one or more measured distances have met the virtual boundary conditions, and a notification system configured to notify the operating system via the system interface in response to determining that the one or more measured distances meet the virtual boundary conditions, wherein in response to the notification, the one or more main processors transition from the lower power mode to the higher power mode.
10. The communication device according to claim 9, wherein the one or more measured distances are measured using the IEEE802.11mc Fine Timing Measurement (FTM) protocol standard.
11. The communication device according to claim 9, wherein the one or more measured distances are measured using wireless communication signal Round-Trip Time (RTT) measurement.
12. The communication device according to claim 9, wherein the virtual boundary conditions specify a geofence defined by one or more threshold distance conditions between the communication device and the one or more wireless communication devices.
13. The communication device according to claim 9, wherein meeting the virtual boundary conditions in the wireless communication chipset of the communication device depends on a Global Navigation Satellite System (GNSS)-based determination that the communication device has transitioned between an outdoor location and an indoor location.
14. The communication device according to claim 9, wherein meeting the virtual boundary conditions in the wireless communication chipset of the communication device depends on a sensor-based determination that the communication device is moving when the virtual boundary conditions are met.
15. A tangible processor-readable storage medium device of one or more tangible articles, encoded with processor-executable instructions for performing, in an electronic communication device including one or more main processors configured to execute an operating system, a process of offloading one or more location services to a wireless communication chipset of the electronic communication device, the process including: receiving, in the wireless communication chipset of the electronic communication device, virtual boundary conditions from the operating system, the virtual boundary conditions specifying at least one threshold distance between the electronic communication device and one or more wireless communication devices; in response to the receiving operation, transitioning the one or more main processors from a higher power mode to a lower power mode; measuring, in the wireless communication chipset of the electronic communication device, one or more distances between the electronic communication device and the one or more wireless communication devices using a wireless communication distance measurement protocol; Determine that one or more measured distances in the wireless communication chipset of the electronic communication device satisfy the virtual boundary condition; Notify the operating system that the one or more measured distances satisfy the virtual boundary condition; And In response to the notification operation, transition the one or more main processors from the low power mode to the higher power mode.
16. The tangible processor-readable storage medium device of one or more tangible articles according to claim 15, wherein the one or more measured distances are measured using the IEEE 802.11mc Fine Timing Measurement (FTM) protocol standard.
17. The tangible processor-readable storage medium device of one or more tangible articles according to claim 15, wherein the one or more measured distances are measured using wireless communication signal Round-Trip Time (RTT) measurement.
18. The tangible processor-readable storage medium device of one or more tangible articles according to claim 15, wherein the virtual boundary condition specifies one or more threshold distance conditions defining a geofence, and commands the wireless communication chipset to notify the operating system when the one or more measured distances indicate that the communication device has entered the geofence.
19. The tangible processor-readable storage medium device of one or more tangible articles according to claim 15, wherein the virtual boundary condition specifies one or more threshold distance conditions defining a geofence, and commands the wireless communication chipset to notify the operating system when the one or more measured distances indicate that the communication device has exited the geofence.
20. The tangible processor-readable storage medium device of one or more tangible articles according to claim 15, wherein another virtual boundary condition is received by the wireless communication chipset from the operating system, the another virtual boundary condition specifies a geographical location and a predefined threshold distance, and commands the wireless communication chipset to notify the operating system after the communication device detects a wireless communication device at a location within the specified predefined threshold distance from the specified geographical location.
Citation Information
Patent Citations
Accessory control with geo-fencing
CN103491505A
State-based location monitoring
US20180352381A1