Reducing power consumption on location reference devices

A device may request location information for a location reference device (LRD); receive, based on the request, the location information for the LRD via a cellular network connection; transmit, via the cellular network, an instruction to direct the LRD to activate a non-cellular radio on the LRD; receive wireless signals outputted via the non-cellular radio; determine a distance between the user device and the LRD based on a strength of the wireless signals received by the user device; and audibly or visually indicate, by the user device, the determined distance between the user device and the LRD.

BACKGROUND

Location reference devices may include “object tracker” devices that are designed to wirelessly report the location of a host device, person, and/or animal. A location reference device may be implemented as, for example, a key chain, a dongle, a wearable computing device (e.g., watches, collars, etc.), and/or another device. Location reference devices may be attached to an object via mounting hardware, adhesives, straps, and/or some via some other technique.

A location reference device may include hardware to determine the location of the location reference device and report the location, such as to a smart phone of a user. The location reference device hardware may include radios, such as cellular radios and radios used to implement short range wireless networks. Such hardware may consume a substantial amount of battery power. Some of the hardware may be continuously powered on so that the location of the location reference device may be traceable at any time. The battery in some location reference devices may be non-replaceable, or difficult to replace, making battery conservation particularly important.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Systems and/or methods, as described herein, may control hardware on a location reference device (LRD) to reduce battery consumption by the LRD. For example, certain low-powered hardware (such as Bluetooth Low Emissions (BLE) hardware) on the LRD may be powered off by default (e.g., hardware that would ordinarily remain powered on by default). The low-powered hardware may be powered only when needed, and then powered off when no longer needed, thereby substantially reducing battery power consumed by the LRD.

A user device, such as a smart phone carried by a person who wishes to locate the LRD, may be used to initially determine a “coarse” location of the LRD via global position system (GPS) hardware on the LRD. The low-powered hardware may be powered on when the user device travels to within a low-powered communications range of the LRD (e.g., a range in which the user device may detect wireless signals output by the low-powered hardware). The low-powered hardware may be powered on in order for the user device to obtain a “fine” location of the LRD. The low-powered hardware may then be powered off when the location of the LRD is no longer needed (e.g., when a user has indicated that the LRD has been found). As a result, the low-powered hardware may be powered on only when needed, thereby substantially reducing battery power consumed by the LRD.

In some implementations, hardware on the LRD may be controlled, without user interaction, based on the proximity of the LRD to the user device. For example, when the LRD is within a particular range of the user device, the LRD may communicate with the user device using “close-range” or “low-powered” communications hardware, such as via Bluetooth® or another short range communication technology. The user device may determine the location of the LRD using the low-powered communications hardware. Further, when in range of the user device via the close-range communication hardware, the LRD may disable “high-powered” location identification hardware (e.g., GPS hardware) and/or “high-powered” communications hardware (e.g., a cellular radio), thereby reducing power consumption by the LRD.

As such, the LRD may refrain from using high-powered hardware when the LRD is within a low-powered communications range of the user device (e.g., a range in which the user device may communicate with the LRD using low-powered communications hardware). The high-powered location identification hardware and the high-powered communications hardware may be re-activated by the LRD when the user device is no longer within a lower-powered communications range, so that the user device may continue to track the location of the LRD.

FIGS. 1 and 2illustrate an example overview of an implementation described herein. InFIGS. 1 and 2, a user device may be used to locate an LRD. For example, when a user wishes to locate the LRD, the user may open a location tracking application on the user device. The user device may communicate with the LRD over a network (e.g., a cellular network and via an application server as described in greater detail below) to wake to the LRD from a passive mode. The LRD may then power on hardware to determine its location, and transmit the location of the LRD (e.g., a “coarse” location which may identify the location of the LRD within the order of a few meters or tens of meters) to the user device via the network. In some implementations, the LRD may periodically transmit its location information periodically. For example, the LRD may determine its “coarse” location using high-powered a global positioning system (GPS) radio. Additionally, or alternatively, the LRD may determine its “coarse” location using a Wi-Fi radio by detecting the presence of a nearby Wi-Fi network of which the location may be known. Additionally, or alternatively, the LRD may determine its “coarse” location using a cellular radio to identify an identifier of a cellular base station of which the location may be known. Additionally, or alternatively, the LRD may determine its “coarse” location using some other technique. The LRD may output the “coarse” location information to the user device via the network using high-powered communications hardware (e.g., a cellular radio). In the example shownFIG. 1, the user device may currently be located outside of a low-powered communications range relative to the LRD.

Referring toFIG. 2, based on the coarse location, the user of the user device may travel towards the LRD (e.g., locate the LRD and/or an object attached to the LRD). When the user device travels to within the low-powered communications range (or when the LRD travels to within the low-powered communications range of the user device), the user device may determine that a “fine location” may now be available (e.g., since the user device is within the low-powered communications range). In order to obtain the fine location (e.g., to assist the user to better locate the LRD), the user device may direct the LRD to power on low-powered hardware (e.g., a Bluetooth radio, a Near-Field Communications (NFC) radio, or the like). As described in greater detail below, the user device may direct the LRD to power on the low-powered hardware via an application server.

The LRD may power on the low-powered hardware, and output wireless signals via the low-powered hardware. The user device may determine the strength of the wireless signals, and may determine the fine location of the LRD based on the signal strength. For example, the stronger the strength, the closer the location of the LRD relative to the user device. The user device may present the fine location of the LRD, and may continuously indicate the distance between the user device and the LRD based on changes in signal strength as the user device travels towards the LRD. Once the user has located the LRD, the user may indicate (e.g., via the user device) that the LRD has been found, and the user device may direct the LRD (e.g., directly or indirectly via an application server communicating with the LRD over the cellular network) to disable its low-powered hardware. Also, the user device may direct the LRD to enter a passive or sleep mode, and to disable or set any other hardware that may no longer be needed to a passive or sleep mode (e.g., GPS hardware, cellular radios, WiFi radios, etc.). As a result, power-consuming radios may be powered off or set to a passive mode when these radios are not needed.

FIG. 3Ais a diagram of an example environment300in which systems and/or methods described herein may be implemented. As shown inFIG. 3A, environment300may include user device310, LRD320, application server330, and network340.

User device310may include a device capable of communicating via a network, such as network340. For example, user device310may correspond to a mobile communication device (e.g., a smart phone or a personal digital assistant (PDA)), a portable computer device (e.g., a laptop or a tablet computer), a gaming device, and/or another type of computing device.

User device310may track and output the location of LRD320. For example, user device310may implement an application, labeled as location tracking application315. When location tracking application315is executed, location tracking application315may determine the location of LRD320, either by direct communication with LRD320or via communication with application server330. User device310may receive the information identifying the location of LRD320(e.g., via location tracking application315). User device310, such as via location tracking application315, may display the location information of LRD320(e.g., on a map).

As mentioned, in some implementations, user device310, such as via location tracking application315, may display location information of LRD320, such as on a geographic map. Additionally, or alternatively, user device310may display a heat map that changes colors based on the distance between user device310and LRD320. Additionally, or alternatively, user device310may output an audible alert based on the distance between user device310and LRD320. For example, the audible alert may change in tone, volume, or in another manner based on the distance between user device310and LRD320. In some implementations, LRD320may output the audible alert.

LRD320may be an object tracker, such as a keychain, a dongle, a wearable computing device (e.g., a watch, a collar, etc.), and/or some other type of object tracker. In some implementations, LRD320may be attached to an object via mounting hardware, adhesives, straps, and/or some via some other technique. LRD320may be attached to an object to track the location of the object (e.g., track the location of personal valuables, pets, etc.). LRD320may include location identification and/or communications hardware, such as a GPS radio, a cellular radio, a WiFi radio, a Bluetooth radio, an NFC radio, a radio frequency ID (RFID) radio, or the like. LRD320may determine the location of LRD using the location identification hardware, and output the location information to user device310via network340. In some implementations (e.g., when LRD320is located within a low-powered communications range), LRD320may refrain from determining its location using the location identification hardware, and may refrain from communication with user device310using high-powered communications hardware. For example, LRD320refraim from determining its location when LRD320detects the presence of user device310via a Bluetooth signal and/or some other type of short-range signal emitted by user device310. LRD320may power on low-powered communications hardware to communicate with user device310in lieu of communicating via high-powered communications hardware.

Application server330may include one or more server devices that may determine the location of LRD320and output the location to user device310(e.g., when user device310requests the location of LRD320). Application server330may direct LRD320to power on and/or power off particular hardware to maximize battery life on LRD320.

Network340may include one or more wired and/or wireless networks. For example, network340may include a cellular network (e.g., a second generation (3G) network, a third generation (3G) network, a fourth generation (4G) network, a fifth generation (5G) network, a long-term evolution (LTE) network, a global system for mobile (GSM) network, a code division multiple access (CDMA) network, an evolution-data optimized (EVDO) network, or the like), a Bluetooth network, an NFC network, an RFID network, a public land mobile network (PLMN), and/or another network. Additionally, or alternatively, network340may include a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a metropolitan network (MAN), the Public Switched Telephone Network (PSTN), an ad hoc network, a managed Internet Protocol (IP) network, a virtual private network (VPN), an intranet, the Internet, a fiber optic-based network, and/or a combination of these or other types of networks.

The quantity of devices and/or networks in environment300is not limited to what is shown inFIG. 3A. In practice, environment300may include additional devices and/or networks; fewer devices and/or networks; different devices and/or networks; or differently arranged devices and/or networks than illustrated inFIG. 3A. Also, in some implementations, one or more of the devices of environment300may perform one or more functions described as being performed by another one or more of the devices of environment300. Devices of environment300may interconnect via wired connections, wireless connections, or a combination of wired and wireless connections.

Control module321may include hardware and/or software to communicate with user device310and/or application server330via a cellular network. For example, control module321may control the operation of location determination module322, high-powered communications module323, and low-powered communications module324. Control module321may include, for example, a processor, microprocessor, or processing logic that may include processing circuitry to interpret and execute instructions. Control module321may additionally include a memory, such as a volatile and/or non-volatile memory that may be used to store and execute the instructions. The operation of control module321to control the functionality of LRD320will be described in more detail below.

Location determination module322may include hardware and/or software to determine the location of LRD320. For example, location determination module322may include a cellular radio, a GPS radio, a Wi-Fi radio, and/or some other type of radio via which a “coarse” location of LRD320may be determined. Location determination module322may continuously determine the location of LRD320, or may determine the location of LRD320as a single event in response to a single request for the location of LRD320.

High-powered communications module323may include hardware and/or software to communicate with user device310and/or application server330via a cellular network. For example, high-powered communications module323may include a cellular radio and/or some other type of radio to communicate with user device310and/or application server330via a cellular network. In some implementations, high-powered communications module323may receive location information of LRD320from location determination module322, and output the location information to user device310via application server330. In some implementations, high-powered communications module323may continuously output the location of LRD320to user device310. Alternatively, high-powered communications module323may output the location LRD320each time the location of LRD320is requested by user device310.

In some implementations, high-powered communications module323may be set to a “sleep” or “low-power” mode. When in such a mode, high-powered communications module323may not be actively communicating with user device310, but may be able to receive a wake command from user device310and/or application server330. Once the wake command is received, high-powered communications module323may enter a “normal” or “active” mode to actively communicate with user device310and/or application server330.

Low-powered communications module324may include hardware and/or software to communicate with user device310via low-powered hardware, such as via a Bluetooth radio, an NFC radio, an RFID device, a Wi-Fi radio, or the like. Low-powered communications module324may output wireless signals to permit user device310to determine a “fine” location of LRD320based on the strength of the wireless signals received by user device310. Low-powered communications module324may output the wireless signals when user device310is within a low-powered communications range of LRD320and when control module321has enabled low-powered communications module324. In some implementations, low-powered communications module324may output the wireless signals in order for user device310to pair with LRD320or for LRD320to detect the wireless signals (e.g., as beacon signals).

FIG. 4illustrates a flowchart of an example process400for controlling hardware on an LRD in order to minimize power consumption by the LRD. In some implementations, process400may be performed by application server330and/or user device310. Additionally, or alternatively, some or all of the blocks of process400may be performed by another device in environment300.

As shown inFIG. 4, process400may include receiving a request for the location of an LRD (block410). For example, application server330may receive the request, from user device310, for the location of LRD320. In some implementations, application server330may receive the request when a user of user device310opens a location tracking application used to track the location of LRD320. Additionally, or alternatively, the user may request the location of the LRD using some other technique (e.g., by outputting a text message to application server330).

In some implementations, the location request may be a one-time location request, or a continuous location request. For example, the user of user device310may request a one-time location of LRD320if LRD320is attached to a non-moving object. User device310may request a continuous location request of LRD320when LRD320is attached to a moving object, person, or animal. In some implementations, the one-time location request may consume less power on LRD320than the continuous location request (e.g., since the continuous location request may cause LRD320to continuously determine and output its location information).

Process400may further include obtaining the location of the LRD using coarse location determination techniques (block420). For example, application server330may obtain the location of LRD320via GPS location determination techniques implemented by LRD320. For example, application server330may “wake” LRD320from a low power or sleep state (e.g., via high-powered communications module323) and request LRD320to determine its location (i.e., a coarse location) using location determination hardware and/or software associated with location determination module322. LRD320may output its location to application server330(e.g., via high-powered communications module323). For a GPS-based location determination, for example, depending on environmental factors, the location of LRD320may typically be determined within a few meters or tens of meters.

If the request for the location of the LRD320(in block410) was a one-time location request, application server330may direct LRD320to obtain the location of LRD320, output the location of LRD320to application server330, and disable location identification hardware on LRD320that may not be needed once the location of LRD320has been obtained. If the request for the location of the LRD320(in block410) was a continuous location request, location determination module3220may direct LRD to continuously obtain the location of LRD320and continuously output the location of LRD320to application server330. In one implementation, LRD320, once woken, may dynamically determine whether LRD320is moving (e.g., based on an acceleration sensor or based on multiple, time-separated location readings). When LRD320that it is in motion, LRD320may operate in a “continuous location request” mode and may otherwise operate in “one-time location request” mode.

Process400may further include outputting the LRD location information to the user device (block430). For example, application server330may transmit the location information of LRD330to user device310. Alternatively or additionally, LRD320may be configured to directly transmit the LRD location information to user device310. User device310, such as via location tracking application315, may provide the most recently received location to the user. As previously mentioned, the coarse location information provided to user device310may be accurate to within a few meters or tens of meters. In some implementations, this level of accuracy may be enough for the user to locate LRD320. In this case, the user may potentially indicate, such as via location tracking application315, that the LRD is located, in which case process400may be terminated and low-powered communications module324may not need to be turned on. In some situations, however, the coarse location information, by itself, may not be enough for the user to locate LRD320.

Process400may also include receiving a fine location request (block440). For example, application server330may receive the fine location request from user device310. In some implementations, user device310may output the fine location request when user device310is within low-powered communications range of LRD320. For example, user device310may determine that user device310is within low-powered communications range of LRD320based on the location information of LRD320received by user device310in block430. In some implementations, user device310may output the fine location request when a user of user device310requests the fine location of LRD320(e.g., to better aid the user in locating LRD320). In some implementations, user device310may output the fine location request when user device310is within low-powered communications range of LRD320and without receiving a request from the user for the fine location. Alternatively, in some implementations, application server330may not need to explicitly receive a fine location request. For example, low-powered communications module324may always be turned on for the duration of a “find operation” (e.g., low-powered communications module324as part of the signaling associated with blocks410/420).

Process400may further include outputting an instruction to direct LRD to activate a low-powered radio (block450). For example, application server330may output an instruction to control module321to cause LRD320to activate low-powered communications hardware associated with low-powered communications module324. Based on receiving the control instruction, LRD320may activate the low-powered communications hardware, and output wireless signals via the low-powered communications hardware. User device310may then obtain the fine location of LRD320based on the strength of the wireless signals received by user device310and/or based on communications via a corresponding low-powered radio technology (e.g., Bluetooth®). User device310may indicate the distance between user device310and LRD320based on the signal strength (e.g., in the form of a visual indication such as a heat-map, an audible indication, etc.). As the user of user device310travels towards and/or away from LRD320, the receive signal strength may fluctuate, and user device310may modify the indication of the distance between user device310and/or LRD320(e.g., by changing colors on the heat map, increasing or decreasing the volume of the audible indication, etc.). The visual and/or audible indications, output by user device310, may aid the user in locating LRD320.

Process400may also include receiving a message that the LRD has been located by the user (block460). For example, application server330may receive, from user device310, a message that LRD320has been located by the user. As an example, the user of user device310may indicate, using user device310, that the LRD has been located (e.g., by pressing a virtual or physical button on user device310designated for indicating that LRD320has been located).

Process400may further include outputting an instruction to direct LRD to disable the low-powered radio and set the LRD into sleep mode (block470). For example, application server330may output the instruction to control module321to direct LRD320to disable the low-powered radio based on receiving the message that LRD320has been located by the user. In some implementations, application server330may output the instruction when application server330receives, from user device310, an indication that user device310is no longer within low-powered communications range of LRD320. Alternatively or additionally, application server330may output the instruction after a predetermined maximum time has elapsed (e.g., after one hour, application server330may assume that the search operation, for LRD320, is over, even when no message has been received). In some implementations, application server330may indicate, to user device310, that application server330will be powering off the low-powered radio on LRD320within a particular period of time (e.g., 30 seconds, 60 seconds, or some other period of time). User device310may present an option for the user of user device310to keep the low-powered radio powered on.

In some implementations, application server330may also direct LRD320to disable hardware and/or software associated with location determination module322(e.g., if LRD320had been continuously outputting its location information). Application server330may also direct LRD320to be set into a sleep or low-powered mode where location determination hardware and communications hardware is disabled, except for hardware that may need to be enabled to receive wake commands. As a result, LRD320may only enable hardware when a user wishes to locate LRD320. Further, low-powered hardware may be enabled only when user device310is within the low-powered communications range of LRD320.

FIG. 5illustrates a flowchart of an example process500for controlling hardware on the LRD to reduce power consumption by the LRD. In some implementations, process500may be performed by user device310. Additionally, or alternatively, some or all of blocks500may be performed by another device in environment300.

As shown inFIG. 5, process500may include requesting location information for an LRD (block510). For example, a user of user device310may request the location of LRD320via location tracking application315. The request may be a one-time location request (e.g., to conserve battery power on LRD320), or a continuous location request (e.g., if LRD320is attached to a moving object). In some implementations, user device310may request the location of LRD320via application server330, and application server330may output a wake command to LRD320in response to receiving the request. Application server330may receive the location of LRD320and output the location information to user device310.

Process500may also include receiving and displaying the LRD location information (block520). For example, user device310may receive the location information for LRD320from application server330. User device310may display the location of LRD320via location tracking application315(e.g., in the form of a map). In some implementations, user device310may display a visual indication of the distance between LRD320and user device310. Additionally, or alternatively, user device310may output an audible indication of the distance between LRD320and user device310. In some implementations, user device310may initially receive a “coarse” location of LRD320since the wake command, outputted by application server330, may direct LRD320to output location information using GPS hardware that may only provide “coarse” location information. User device310may continuously receive the location of LRD320if the location request was a continuous location request.

Process500may further include presenting an option to obtain a fine location of the LRD (block530). For example, user device310may present an option to obtain the fine location of LRD320when user device310is within a low-powered communications range of LRD320. As an example, a user interface of location tracking application315may indicate whether the fine location is available based on whether user device310is within the low-powered communications range of LRD320.

Process500may also include requesting the fine location (block540). For example, user device310may request the fine location of LRD320when user device310is within the low-powered communications range. In some implementations, user device310may request the fine location of LRD320further based on receiving a selection for the fine location from a user of user device310. Alternatively, user device310may request the fine location of LRD320without receiving the selection from the user. In some implementations, user device310may request the fine location of LRD320via application server330. Based on receiving the request, application server330may output a control instruction to direct LRD320to power on low-powered hardware and to output wireless signals via the low-powered hardware.

Process500may further include determining a distance to the LRD based on a strength of received wireless signals outputted by the LRD (block550). For example, user device310may receive the wireless signals outputted by the low-powered hardware of LRD320, and may determine a distance between LRD320and user device310based on the received signal strength.

User device310may indicate the distance between user device310and LRD320based on the signal strength (e.g., in the form of a visual indication such as a heat-map, an audible indication, etc.). As the user of user device310travels towards and/or away from LRD320, the receive signal strength may fluctuate, and user device310may modify the indication of the distance between user device310and/or LRD320(e.g., by changing colors on the heat map, increasing or decreasing the volume of the audible indication, etc.). The visual and/or audible indications, output by user device310, may aid the user in locating LRD320.

Process500may also include receiving an indication that that LRD has been located (block560). For example, user device310may receive the indication from the user (e.g., via location tracking application315) that the LRD has been located. For example, the user may select a physical or virtual button on user device310designated to indicate that LRD320has been located.

Process500may further include outputting a message indicating that the location of the LRD is no longer needed (block570). For example, user device310may output the message, to application server330, indicating that the location of LRD320is no longer needed when the user has located LRD320or has otherwise indicated that the user is no longer interested in receiving the location of LRD320. Based on receiving this message, application server330may direct LRD320to enter a sleep or low-powered mode by disabling low-powered hardware and/or any other hardware that LRD320may have had active.

In some implementations, user device310may output a message that low-powered hardware on LRD320should be disabled, but LRD320should continue to output the coarse location of LRD320. For example, user device310may output this message when user device310is no longer within low-powered communications range of LRD320, but when the user still wishes to track LRD320(e.g., if LRD320is attached to a moving object). Based on receiving this message, application server330may direct LRD320to power off the low-powered hardware (e.g., since user device310may be out of range to receive the wireless signals output by the low-powered hardware).

FIG. 6illustrates a flowchart of an example process600for controlling hardware on the LRD to reduce power consumption by the LRD. In some implementations, process600may be performed by LRD320. Additionally, or alternatively, some or all of blocks600may be performed by another device in environment300.

As shown inFIG. 6, process600may include receiving a wake command (block610). For example, control module321of LRD320may receive the wake command from application server330(e.g., when a user of user device310requests the location of LRD320).

Process600may also include powering on location identification hardware to obtain the location of the LRD (block620). For example, control module321of LRD320may enable location determination module322based on receiving the wake command. Location determination module322may obtain the location of LRD320as described above.

Process600may further include outputting the location to the application server (block630). For example, high-powered communications module323of LRD320may output the location of LRD320to application server330as described above.

Process600may also include receiving a control instruction to enable low-powered hardware on LRD320(block640). For example, control module321of LRD320may receive the control instruction from application server330(e.g., when user device310is within a low-powered communications range of LRD320). Based on receiving the control instruction, control module321may enable low-powered communications module324on LRD320and output wireless signals via the low-powered hardware.

Process600may further include receiving a control instruction to disable hardware and enter a sleep mode (block650). For example, control module321of LRD320may receive the control instruction from application server330. As described above, application server330may output the control instruction to disable low-powered hardware on LRD320when user device310is no longer within low-powered communications range of LRD320. Additionally, or alternatively, application server330may output the control instruction to disable low-powered hardware on LRD320and direct LRD320to enter a sleep mode when a user of user device310has indicated that LRD320has been located or when the user of user device310has otherwise indicated that location information for LRD320is no longer desired.

FIG. 7illustrates an example implementation for controlling hardware on an LRD to reduce power consumption by the LRD. As shown inFIG. 7, user device310(e.g., via location tracking application315), may request the location of LRD320(e.g., when a user of user device310wishes to locate an object attached to LRD320). For example, location tracking application315may request the location of LRD320(arrow7.1) when the user opens the location tracking application on user device310. Location tracking application315may request the location of LRD320from application server330, and application server330may output a wake command to LRD320(arrow7.2) based on receiving the location request. LRD320may then power on location identification hardware to determine the location of LRD320(e.g., a “coarse” location). LRD320may then output its location information to user device310via application server330(arrows7.3and7.4). As described above (e.g., when the location request is a continuous location request), user device310may continuously receive location information for LRD320.

User device310may then display the location of LRD320relative to the location of user device310on a map (e.g., as shown in interface700). In some implementations, user device310may visually display the distance between LRD320and user device310(e.g., as a color or pattern visual indicator). Additionally, or alternatively, user device310may audibly indicate the distance between LRD320and user device310. In some implementations, LRD320may output the audible alert.

InFIG. 7, assume that user device310is located within the low-powered communications range of LRD320(e.g., when the location of LRD320is first requested, or when user device310later travels to within the low-powered communications range of LRD320). Given this assumption, location tracking application315may determine that a “fine” location is available (arrow7.5). Based on determining that the fine location is available, location tracking application315may direct LRD320(e.g., via application server330) to enable low-powered hardware on LRD320(arrows7.6and7.7). In some implementations, location tracking application315may direct LRD320to enable low-powered hardware on LRD320based on receiving a request from the user to receive fine location information. Alternatively, location tracking application315may direct LRD320to enable the low-powered hardware without involving the user.

LRD320may power on the low-powered hardware (arrow7.8), and output wireless signals via the low-powered hardware. At this point, LRD320may discontinue providing its location to user device310, and user device310may determine the location of LRD320based on the strength of wireless signals outputted via the low-powered hardware of LRD320and received by user device310. User device310may display the fine location of LRD320to better aid the user in locating LRD320in relation to when a coarse location is displayed. As user device310travels towards LRD320(e.g., as the user of user device310travels towards LRD320while in possession of user device310), the signal strength of the wireless signals received user device310may increase.

As shown in interface710, user device310may visually indicate the distance between user device310and LRD320as the signal strength increases (or decreases). For example, as the signal strength increases, user device310may visually indicate that the distance between user device310and LRD320is decreasing (e.g., as shown in a map and/or as shown by a change in color and/or pattern in the visual distance indicator). Also, as the signal strength increases, user device310may audibly indicate that the distance between user device310and LRD320is decreasing (e.g., by increasing the volume of the audible indication, adjusting the tone of the audible indication, adjusting the pattern of the audible indication, etc.). In some implementations, LRD320may output the audible alert. Once the user has located LRD320, the user may indicate (e.g., via location tracking application315) that LRD320has been located, and location tracking application315may then direct LRD320to power off the low-powered hardware and enter a sleep mode (e.g., via application server330).

FIG. 8illustrates a flowchart of an example process800for activating radios on an LRD when needed, and deactivating the radios when not needed in order to conserve battery consumption by the LRD. In some implementations, process800may be performed by user device310(e.g., via location tracking application315running within user device310). Alternatively or additionally, some or all of blocks of process800may be performed by one or more other devices, such as by application server330.

As shown inFIG. 8, process800may include monitoring a location of an LRD (block810). For example, location tracking application315may determine or obtain the location of LRD320when a user of user device310requests the location of LRD320. For example, user device310may request and receive the location of LRD320via network340(e.g., from application server330or by directly communicating with LRD320via network340). For example, user device310may transmit a location request to LRD320, which may determine its location via high-powered location identification hardware, and output the location information to user device310via network340(e.g., via high-powered communications hardware). Alternatively, application server330may obtain the location of LRD320and output the location information for LRD320to user device310(e.g., by outputting a wake command to LRD320, as described above).

Process800may also include monitoring a location of the user device (block820). For example, location tracking application315may monitor the location of user device310when user device310receives location information for LRD320. In some implementations, location tracking application315may monitor the location by invoking location identification hardware and/or location identification software processes on user device310.

Process800may further include determining hardware needed to maintain tracking of the LRD (block830). For example, location tracking application315may determine the types of hardware on LRD320that should be active in order for user device310to continuously track LRD320, while minimizing power consumption by LRD320. Location tracking application315may determine the types of hardware that should be active based on the location of LRD320relative to the location of user device310. As an example, assume that LRD320is not within a low-powered communications range of user device310. Given this assumption, location tracking application315may determine that high-powered hardware should be active so that user device310may track the location of LRD320. If, on the other hand, LRD is within a low-powered communications range of user device310, location tracking application315may determine that low-powered hardware should be active, and that high-powered hardware should be inactive.

Process may also include outputting a control instruction to activate or deactivate particular hardware (block880). For example, location tracking application315may output a control instruction to direct LRD320to activate or deactivate particular hardware (e.g., the hardware that location tracking application315determined should be active or inactive). In some implementations, location tracking application315may output the control instruction to LRD320via application server330. As an example, location tracking application315may output a control instruction to direct LRD320to deactivate high-powered hardware and activate low-powered hardware when LRD320enters a low-powered communications range of user device310. LRD320may receive the control instruction, discontinue use of the high-powered hardware, and power on low-powered hardware. User device310may track the location of LRD320based on a signal strength of wireless signals output by LRD320via low-powered hardware.

Process800may be repeated, and location tracking application315may continuously output control instructions to activate or deactivate hardware on LRD320so that user device310can continue to monitor the location of LRD320while minimizing the power consumption of LRD320. For example, location tracking application315may continuously monitor the location of LRD320with respect to the location of user device310, determine that high-powered hardware on LRD320should be deactivated when LRD320is within a low-powered communications range of user device310, and output a control instruction to deactivate the high-powered hardware and activate the low-powered hardware.

In some implementations, location tracking application315may output a control instruction to direct LRD320to reactivate high-powered hardware (e.g., while user device310is still within the low-powered communications range of LRD320). For example, location tracking application315may output the control instruction (e.g., via a control channel associated with the low-powered hardware, or via application server330) to direct LRD320to reactivate high-powered hardware when a signal strength, of a wireless signal outputted by LRD320via low-powered hardware, drops below a particular threshold.

LRD320may then determine the location of LRD320using high-powered location determination hardware, and output this location information to user device310using high-powered communications hardware (e.g., to permit user device310to continue tracking LRD320when LRD320is no longer within a low-powered communications range of user device310). If user device310continues to receive wireless signals after LRD320has re-activated high powered hardware, and if the signal strength of wireless signals outputted by the low-powered hardware of LRD320rises above a particular threshold, location tracking application315may direct LRD320to again deactivate the high powered hardware.

While process800describes activating and deactivating location determination hardware and communications hardware on LRD320, process800is not so limited. For example, location determination software processes and/or communications software processes may be activated and/or deactivated, in addition to, or instead of, the location determination hardware and/or the communications hardware.

FIGS. 9-12illustrate example implementations for controlling hardware on LRD320to reduce power consumption by LRD320while permitting user device310to continuously track the location of LRD320. InFIG. 9, LRD320may determine its location using high-powered location identification hardware (e.g., when user device310is outside of a low-powered communications range of LRD320). As shown inFIG. 9, LRD320may output its location information to user device310using high-powered communications hardware. For example, LRD320may output its location information via a cellular network, accessible using the high-powered communications hardware. LRD320may output its location information user device310(e.g., via application server330) so that user device310can track the location of LRD320. LRD320may output its location information to user device310when user device310is outside of a low-powered communications range of LRD320. Location tracking application315may be implemented as part of user device310, and may monitor the location of LRD320relative to user device310. LRD320may determine that LRD320should continue use of high-powered hardware (e.g., since user device310is outside of the low-powered communications range of LRD320).

Referring toFIG. 10, LRD320may output its location information to LRD320(arrow10.1) using high-powered hardware. When user device310moves to within a low-powered communications range of LRD320(or when LRD320moves to within a low-powered communications range of user device310), location tracking application315may generate a control instruction to direct LRD320to discontinue use of high-powered hardware (arrow10.2). Location tracking application315may output the control instruction LRD320via application server330(arrows10.3and10.4).

Referring toFIG. 11, LRD320may discontinue use of high-powered hardware, and may hence discontinue communications with the cellular network (e.g., communications for reporting the location of LRD320), thereby reducing power consumption by LRD320. LRD320may instead output wireless signals via low-powered communications hardware (e.g., wireless signals that may be received by user device310when user device310is within the low-powered communications range). Based on the strength of the received wireless signals, location tracking application315may determine the location of LRD320without the need for LRD320to determine its own location or report its location information using high-powered location determination hardware. As a result, user device310may continue to track the location of LRD320even after LRD320discontinues the use of high-powered hardware.

Referring toFIG. 12, location tracking application315may generate a control instruction to direct LRD320to re-activate high-powered hardware when user device310is located within a low-powered communications range, but outside a threshold range in which the high-powered hardware should be reactivated (e.g., a high-powered hardware re-activation threshold). In some implementations, location tracking application315may generate the control instruction when the signal strength of wireless signals, output by low-powered hardware of LRD320and received by user device310, drops below a particular threshold (e.g., indicating that user device310is still located within the low-powered communications range, but is outside of the high-powered hardware re-activation threshold range).

Location tracking application315may output the control instruction to direct LRD320(e.g., via application server330or directly to LRD320via the lower powered communications hardware) to reactivate high-powered hardware. LRD320may then determine the location of LRD320using high-powered location detection hardware, and output this location information to user device310using high-powered communications hardware (e.g., to permit user device310to continue tracking LRD320when LRD320is no longer within a low-powered communications range of user device310). If user device310continues to receive wireless signals after LRD320has re-activated high powered hardware, and if the signal strength of wireless signals outputted by the low-powered hardware of LRD320rises above a particular threshold, location tracking application315may direct LRD320to again deactivate the high powered hardware.

FIG. 13illustrates an example implementation for tracking the location of an LRD via crowd-sourcing techniques. As shown inFIG. 13, a first user device310(e.g., user device310-1), may determine the location of LRD320based on wireless signals output by LRD320via low-powered hardware (e.g., when user device310-1is located within a low-powered communications range of LRD320, and when high-powered hardware of LRD320is inactive). User device310-1may then output location information of LRD320to a second user device310(e.g., user device310-2) that is outside of the low-powered communications range of LRD320. As a result, user device310-2may track the location of LRD320when user device310-2is outside of the low-powered communications range and when high-powered hardware of LRD320is inactive.

FIG. 14is a diagram of example components of device1400. One or more of the devices described above (e.g., with respect toFIGS. 1, 2, 3A, 3B, 7, and, and9-13) may include one or more devices1400. Device1400may include bus1410, processor1420, memory1430, input component1440, output component1450, and communication interface1460. In another implementation, device1400may include additional, fewer, different, or differently arranged components.

Bus1410may include one or more communication paths that permit communication among the components of device1400. Processor1420may include a processor, microprocessor, or processing logic that may interpret and execute instructions. Memory1430may include any type of dynamic storage device that may store information and instructions for execution by processor1420, and/or any type of non-volatile storage device that may store information for use by processor1420.

Input component1440may include a mechanism that permits an operator to input information to device1400, such as a keyboard, a keypad, a button, a switch, etc. Output component1450may include a mechanism that outputs information to the operator, such as a display, a speaker, one or more light emitting diodes (LEDs), etc.

Communication interface1460may include any transceiver-like mechanism that enables device1400to communicate with other devices and/or systems. For example, communication interface1460may include an Ethernet interface, an optical interface, a coaxial interface, or the like. Communication interface1460may include a wireless communication device, such as an infrared (IR) receiver, a Bluetooth® radio, or the like. The wireless communication device may be coupled to an external device, such as a remote control, a wireless keyboard, a mobile telephone, etc. In some embodiments, device1400may include more than one communication interface1460. For instance, device1400may include an optical interface and an Ethernet interface.

The foregoing description of implementations provides illustration and description, but is not intended to be exhaustive or to limit the possible implementations to the precise form disclosed. Modifications and variations are possible in light of the above disclosure or may be acquired from practice of the implementations. For example, while a series of blocks have been described with regard toFIGS. 4-6 and 8, the order of the blocks may be modified in other implementations. Further, non-dependent blocks may be performed in parallel.

Further, while certain connections or devices are shown (e.g., inFIGS. 1, 2, 3A, 3B, 7, and, and9-13), in practice, additional, fewer, or different, connections or devices may be used. Furthermore, while various devices and networks are shown separately, in practice, the functionality of multiple devices may be performed by a single device, or the functionality of one device may be performed by multiple devices. Further, multiple ones of the illustrated networks may be included in a single network, or a particular network may include multiple networks. Further, while some devices are shown as communicating with a network, some such devices may be incorporated, in whole or in part, as a part of the network.