Exemplary embodiments of this disclosure may relate generally to apparatuses, systems, methods and computer program products for providing wireless thermal management of wireless communication devices. The exemplary embodiments may utilize a wireless thermal management system to mitigate heat associated with smart glasses.
Artificial reality is a form of reality that has been adjusted in some manner before presentation to a user, which may include, for example, a virtual reality, an augmented reality, mixed reality, a hybrid reality, Metaverse reality or some combination or derivative thereof. Artificial reality content may include completely computer-generated content or computer-generated content combined with captured (e.g., real-world) content. In some instances, artificial reality may be associated with applications, products, accessories, services, or some combination thereof, for example, to create content in an artificial reality or otherwise used in (e.g., to perform activities in) an artificial reality. Head-mounted displays (HMDs) including one or more near-eye displays may often be used to present visual content to a user for use in artificial reality applications.
Power and thermal management of HMDs, such as smart glasses, may have a significant impact on user experience, battery life, safety, and stability. For example, battery impact (e.g., power cost) and heat from live streaming a video on smart glasses may increase as the Wi-Fi link capacity gets poorer. Live streaming may increase uplink load and may result in high power consumption for wireless subsystems of smart glasses. Current runtime estimates typically fall short of product requirements for many smart glasses during instances of live streaming video, which may ultimately result in turning off (e.g., shutdown) the smart glasses in instances in which the temperature of the smart glasses is too high. This impact may be hastened or amplified as more data is transferred via Wi-Fi in conjunction with other uses of smart glasses, for example, live streaming a video as a user is uploading photos taken by the smart glasses to a secondary device.
In view of the foregoing drawbacks, it may be beneficial to provide wireless power and thermal management to reduce power consumption of smart devices under thermal stress to increase runtime and improve product quality, safety, battery life, and stability.
Some examples of the present disclosure are described for a wireless thermal management system which may help maintain or reduce thermal conditions for artificial reality devices, HMDs, and/or smart glasses to an acceptable level. The wireless thermal management system may include a temperature sensor, a processor, a communications network, and a media client.
Some examples of the present disclosure may utilize a Wi-Fi link capacity estimate(s) and/or a throughput (TPut) estimate(s) to quantify power consumption of a communication network to determine whether thermal mitigation is needed to reduce power consumption of a communication device. The exemplary embodiments may also utilize temperature sensors for capturing and determining thermal stress levels of a HMD for thermal mitigation purposes.
In an example, a method of mitigating heat may include establishing a wireless link between a media client and a device. The method may further include performing a Wi-Fi link capacity estimation, in real time, associated with an established wireless link. The method may further include executing a TPut estimation, in real time, of the established wireless link. The method may further include assessing a thermal stress level associated with the temperature of an HMD. The method may further include determining latency sensitivity associated with a process or application. The method may further include calculating a Wi-Fi link metric based on the TPut estimation and the Wi-Fi link capacity indicating power consumption. The method may further include determining to mitigate heat in the device, by reducing a transmission rate of data associated with a transmission from the media client to the device, based on a thermal stress level and/or a Wi-Fi link metric.
In another example, a method of mitigating heat may include establishing a wireless link between a media client and a device. The method may further include performing a Wi-Fi link capacity estimation, in real time, associated with an established wireless link. The method may further include executing a throughput estimation, in real time, of the established wireless link. The method may further include assessing a thermal stress level associated with the temperature of an HMD. The method may further include determining latency sensitivity associated with a process or application. The method may further include calculating a Wi-Fi link metric based on the Wi-Fi link capacity and/or a maximum (max) Wi-Fi link capacity indicating power consumption. The method may further include determining to mitigate heat in the device by batching and limiting transmission of data from Wi-Fi, based on the thermal stress level and/or the Wi-Fi link metric, to mitigate heat associated with the device.
In some examples of the present disclosure, a method to facilitate wireless thermal management is provided. The method may include receiving at least one wireless link capacity estimate from a first device. The wireless link capacity estimate may indicate an estimated data transfer or an estimated transmission rate associated with a communication device. The method may further include receiving at least one throughout estimate from a second device. The at least one throughput estimate may be associated with a data transfer rate during a time period. The method may further include determining, based on the at least one wireless link capacity estimate or the at least one throughput estimate, a wireless link metric indicating or denoting a power consumption or a load associated with the communication device. The method may further include determining, based on the wireless link metric, whether to apply a level of thermal mitigation to the communication device.
In some other examples of the present disclosure, an apparatus to facilitate wireless thermal management is provided. The apparatus may include one or more processors and a memory including computer program code instructions. The memory and computer program code instructions are also configured to, with the one or more processors, cause the apparatus to at least perform operations including receiving at least one wireless link capacity estimate from a first device. The wireless link capacity estimate may indicate an estimated data transfer or an estimated transmission rate associated with the apparatus. The memory and computer program code instructions are also configured to, with the one or more processors, cause the apparatus to receive at least one throughout estimate from a second device. The at least one throughput estimate may be associated with a data transfer rate during a time period. The memory and computer program code instructions are also configured to, with the one or more processors, cause the apparatus to determine, based on the at least one wireless link capacity estimate or the at least one throughput estimate, a wireless link metric indicating or denoting a power consumption or a load associated with the apparatus. The memory and computer program code instructions are also configured to, with the one or more processors, cause the apparatus to determine, based on the wireless link metric, whether to apply a level of thermal mitigation to the apparatus.
In yet some other examples of the present disclosure, a computer program product to facilitate wireless thermal management is provided. The computer program product includes at least one computer-readable storage medium having computer-executable program code instructions stored therein. The computer-executable program code instructions may include program code instructions configured to receive at least one wireless link capacity estimate from a first device. The wireless link capacity estimate may indicate an estimated data transfer or estimated transmission rate associated with a communication device. The computer program product may further include program code instructions configured to receive at least one throughout estimate from a second device. The at least one throughput estimate may be associated with a data transfer rate during a time period. The computer program product may further include program code instructions configured to determine, based on the at least one wireless link capacity estimate or the at least one throughput estimate, a wireless link metric indicating or denoting a power consumption or a load associated with the communication device. The computer program product may further include program code instructions configured to determine, based on the wireless link metric, whether to apply a level of thermal mitigation to the communication device.
Additional advantages will be set forth in part in the description which follows or may be learned by practice. The advantages will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive, as claimed.
The summary, as well as the following detailed description, is further understood when read in conjunction with the appended drawings. For the purpose of illustrating the disclosed subject matter, there are shown in the drawings exemplary embodiments of the disclosed subject matter; however, the disclosed subject matter is not limited to the specific methods, compositions, and devices disclosed. In addition, the drawings are not necessarily drawn to scale. In the drawings:
The figures depict various embodiments for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein.
Some embodiments of the present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the invention are shown. Indeed, various embodiments of the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Like reference numerals refer to like elements throughout. As used herein, the terms “data,” “content,” “information” and similar terms may be used interchangeably to refer to data capable of being transmitted, received or stored in accordance with embodiments of the disclosure. Moreover, the term “exemplary”, as used herein, is not provided to convey any qualitative assessment, but instead merely to convey an illustration of an example. Thus, use of any such terms should not be taken to limit the spirit and scope of embodiments of the disclosure.
As defined herein a “computer-readable storage medium,” which refers to a non-transitory, physical or tangible storage medium (e.g., volatile or non-volatile memory device), may be differentiated from a “computer-readable transmission medium,” which refers to an electromagnetic signal.
As referred to herein a “wireless link,” and/or a “Wi-Fi link” may be referred to interchangeably and may refer to a wireless connection between two points or nodes, in which the points or nodes may be connected via any wireless modality, such as, Wi-Fi, Bluetooth, cellular, ultra-wideband (UWB), etc. and may, but need not, establish a connection with the
Internet.
As referred to herein, a “Wi-Fi link capacity,” may refer to a capacity of a Wi-Fi link.
As referred to herein, a “Wi-Fi link capacity estimate” or “Wi-Fi link capacity estimate/Received Signal Strength Indicator (RSSI)” (i.e., Wi-Fi link capacity estimate/RSSI) may refer to an estimate of a maximum achievable data rate over a link (e.g., a wireless link and/or Wi-Fi link).
As referred to herein, a “thermal stress level,” may refer to the temperature at a given region, space, or point of a device.
As referred to herein, a “throughput,” may refer to an amount of data that travels or propagates across a network from a source to a destination, over a given period of time.
As referred to herein, a “TPut estimate” may refer to an estimate, in real time, of a data rate over a link (e.g., a wireless link and/or Wi-Fi link).
As referred to herein, an “application,” may refer to a computer software package that performs a specific function(s) for an end user or, in some examples, for another application(s).
Applications may use a computing device's operating system (OS) and other supporting programs to function. Applications may request services from and communicate with other technologies via an application programming interface (API).
As referred to herein, a “media client” may refer to any entity that converts media data (e.g., photos, videos, etc.) captured via a camera into data packets and/or bits.
As referred to herein, “thermal mitigation” may refer to methods or techniques to manage a wireless link in order to reduce the temperature of a device to ensure maximal runtime and stability from a thermal point of view.
As referred to herein, a “batch” or “batching” may refer to a method(s) or technique(s) to aggregate data packets at one end of a wireless link (e.g., source of data) and send these aggregated data packets at a single time or burst to the other end (e.g., or point, a destination) of the wireless link.
As referred to herein, “foreground” may refer to an application that may be running/executing or active with user interaction and/or visibility.
As referred to herein, “background” may refer to an application that may be running/executing without user interaction and/or visibility.
In some examples of the present disclosure, the modality Wi-Fi may be interchangeable with modalities such as, for example, Bluetooth, cellular, ultra-wideband, etc.
It is to be understood that the methods and systems described herein are not limited to specific methods, specific components, or to particular implementations. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting.
Data transfer from a media client or Wi-Fi to an HMD may have a significant impact on battery life, product safety, and stability. For example, battery impact (e.g., power cost) and heat of an HMD from wireless transfer of a media file on the HMD may increase as a wireless link gets poorer. This may happen as the HMD device moves further away from an access point, and/or based on additional interference from other devices, etc. This impact may be amplified as media files move toward a higher quality media on the next generations of HMD devices. Higher quality media may include, for example, moving from 1080p to 4K streaming. In some examples, 1080p is a 1920×1080 display resolution of pixels and 4K is a display resolution of approximately 4,000 pixels. Wireless communication may be a key component that becomes dominant, for example, the fraction of overall power consumption and heat in an HMD attributed to wireless communication may be larger as the Wi-Fi link capacity quality between the HMD and the media client deteriorates. Wireless link capacity deterioration may result in low battery life and may increase heat of an HMD due to increased power consumption. Wireless link capacity quality information obtained from wireless firmware (e.g., implemented/executed by processor 32) and HMD temperature from temperature sensors may be used to reduce battery impact and mitigate heat by limiting or reducing the transmission of data via a wireless connection(s) between a media client or Wi-Fi and an HMD in an instance in which the wireless link is poor.
The examples of the present disclosure may be generally related to systems, apparatuses and/or methods for wireless thermal mitigation using HMDs, and such systems, apparatuses and/or methods may include reducing the transmission of data presented to an HMD, via a wireless link, in an instance in which a determined Wi-Fi link metric in conjunction with a thermal stress level indicates high power consumption and heat associated with the HMD. The systems, apparatuses, and/or methods may increase battery life, safety, and stability in an HMD or other device when compared to conventional systems and/or conventional approaches.
The processor 32 may be a special purpose processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Array (FPGAs) circuits, any other type of integrated circuit (IC), a state machine, and the like. In general, the processor 32 may execute computer-executable instructions stored in the memory (e.g., memory 44 or memory 46) of the node 30 in order to perform the various required functions of the node. For example, the processor 32 may perform signal coding, data processing, power control, input or output processing, or any other functionality that enables the node 30 to operate in a wireless or wired environment. The processor 32 may run application-layer programs (e.g., browsers) or radio access-layer (RAN) programs or other communications programs. The processor 32 may also perform security operations such as authentication, security key agreement, or cryptographic operations, such as at the access-layer and/or application layer for example.
The processor 32 is coupled to its communication circuitry (e.g., transceiver 34 and transmit/receive element 36). The processor 32, through the execution of computer executable instructions, may control the communication circuitry in order to cause the node 30 to communicate with other nodes via the network to which it is connected.
The transmit/receive element 36 may be configured to transmit signals to, or receive signals from, other nodes or networking equipment. For example, in an exemplary embodiment, the transmit/receive element 36 may be an antenna configured to transmit and/or receive radio frequency (RF) signals. The transmit/receive element 36 may support various networks and air interfaces, such as wireless local area network (WLAN), wireless personal area network (WPAN), cellular, and the like. In yet another exemplary embodiment, the transmit/receive element 36 may be configured to transmit and/or receive both RF and light signals. It will be appreciated that the transmit/receive element 36 may be configured to transmit and/or receive any combination of wireless or wired signals. The transmit/receive element 36 may also be configured to connect the UE 30 to an external communications network, such as network 12, to enable the UE 30 to communicate with other nodes (e.g., other UEs 30, network device 160, etc.) of the network.
The transceiver 34 may be configured to modulate the signals that are to be transmitted by the transmit/receive element 36 and to demodulate the signals that are received by the transmit/receive element 36. As noted above, the node 30 may have multi-mode capabilities. Thus, the transceiver 34 may include multiple transceivers for enabling the node 30 to communicate via multiple radio access technologies (RATs), such as universal terrestrial radio access (UTRA) and Institute of Electrical and Electronics Engineers (IEEE 802.11), for example.
The processor 32 may access information from, and store data in, any type of suitable memory, such as the non-removable memory 44 and/or the removable memory 46. For example, the processor 32 may store session context in its memory, as described above. The non-removable memory 44 may include RAM, ROM, a hard disk, or any other type of memory storage device. The removable memory 46 may include a subscriber identity module (SIM) card, a memory stick, a secure digital (SD) memory card, and the like. In other exemplary embodiments, the processor 32 may access information from, and store data in, memory that is not physically located on the node 30, such as on a server or a home computer.
The processor 32 may receive power from the power source 48, and may be configured to distribute and/or control the power to the other components in the node 30. The power source 48 may be any suitable device for powering the node 30. For example, the power source 48 may include one or more dry cell batteries (e.g., nickel-cadmium (NiCd), nickel-zinc (NiZn), nickel metal hydride (NiMH), lithium-ion (Li-ion), etc.), solar cells, fuel cells, and the like. The processor 32 may also be coupled to the GPS chipset 50, which may be configured to provide location information (e.g., longitude and latitude) regarding the current location of the node 30. It will be appreciated that the node 30 may acquire location information by way of any suitable location-determination method while remaining consistent with an exemplary example of the present disclosure.
HMDs 100, such as smart glasses, may communicate with a communication network, such as the Internet. This communication may be through an associated Wi-Fi network, which may be established through a Wi-Fi router, by a Wi-Fi access point (AP), or another type of wireless access point (WAP) 114. This association may allow the HMD 100 to send or receive media or other files from the HMD 100. HMD 100 may be able to communicate via the Wi-Fi network without a companion device 112, such as a phone or a watch, but may also communicate while linked with a companion device 112. Communication with the companion device 112 may include the transfer of data, media, or files, such as captured videos or photos. The companion device may also act as a hot spot for connection to a WAP 114.
Transfer of data, media, or files from HMD 100 to an external device (e.g., companion device 112) may have a significant impact on battery life and Wi-Fi chip power consumption. The battery impact (e.g., or power cost) from transferring data, media, or files from an external device may increase as the Wi-Fi link gets poorer, which may result in increased heat within HMD 100. If there is a good quality Wi-Fi link, where the Wi-Fi link capacity is of a sufficient value, it may be acceptable to transfer data between HMD 100 and companion device 112 without excess power consumption which may result in no extra heat added to HMD 100. A “good quality” link may refer to a Wi-Fi link with a high Received Signal Strength Indicator (RSSI) and low interference. In this scenario, the data processing power cost may be greater than the Wi-Fi transmission power cost on HMD 100. Conversely, a “poor quality” link may refer to a Wi-Fi link with a low RSSI and high interference, where the data processing power cost may be less than the Wi-Fi transmission power cost on the HMD 100.
For example, the none level may refer to 0° C. to 1° C. or any other increment of temperature that may not put stress on the device (e.g., HMD 100) or effect power consumption. Apps info (e.g., Apps info 309) may provide the wireless thermal management system 302 with data to determine the latency sensitivity of the applications in use. The TPut estimate (e.g., TPut estimate 307) may be a real time estimate of data transfer rate over a given time period, in which the time period may be any time period that may effectively aid in the estimation and determination of TPut.
Two outputs are shown in
Batching may refer to processing a large volume of data as packets so that the data (e.g., files, media files and/or the like), may be transferred or transmitted to the device (e.g., HMD 100) by the device 304 at once, or simultaneously. The second thermal mitigation 305 may initiate a process, by the media client 306, of reducing a rate(s) of transmission of data or communication(s) between media client 306 and the device (e.g., HMD 100).
Two of the inputs, TPut estimate (e.g., TPut estimate 307) and Wi-Fi link capacity estimate (e.g., Wi-Fi link capacity estimate/RSSI 301), may be used, by wireless thermal management system 302, to determine a Wi-Fi link metric to determine or quantify power consumption or load on the device (e.g., HMD 100). In some examples, the Wi-Fi link metric may be determined by utilizing or determining the ratio of TPut and Wi-Fi link capacity estimates.
Alternatively, in some other examples, the Wi-Fi link metric may be determined using or implementing the equation Wi-Fi Link Metric=1−(estimated Wi-Fi Capacity link−Max Wi-Fi Capacity link) (e.g., in situations in which a TPut estimation may be unavailable).
The Max Wi-Fi Capacity link may be the maximum amount of data a Wi-Fi chip (e.g., Wi-Fi module 304) may be capable of receiving and/or transmitting. For example, a Wi-Fi chip may be estimated to send 10 megabytes per second (Mbps), indicating the Wi-Fi link capacity estimation, but a user device (e.g., HMD 100) may only be transferring 1 Mbps, indicating the TPut estimate. In this example, the power consumption of the wireless thermal management system 302 may be low represented by a Wi-Fi link metric of 0.1 (e.g., 1 Mbps/10 Mbps, where Wi-Fi Link Metric=TPut Estimate/Wi-Fi Link Capacity Estimate). Conversely, in another instance, the same Wi-Fi chip as described in the previous example may now only have an estimated Wi-Fi capacity of 1 Mbps due to poor Wi-Fi link capacity and the user device (e.g., HMD 100) may be estimated to transfer 1 Mbps, indicating the user device is heavily loaded. Since the user device is transferring (e.g., TPut estimate) the max data capacity over a poor Wi-Fi link capacity (Wi-Fi link metric=1), power consumption may be high associated with the user device. Thus, the Wi-Fi link metric being 1 in this example may indicate that thermal mitigation may be needed. Based on a determined latency sensitivity, thermal stress level, and the determined Wi-Fi link metric, a level of thermal mitigation may be determined as described in more detail with reference to
Referring to
In
Row 403 may represent the thermal stress level of a device (e.g., HMD 100). Thermal stress levels may be categorized by none, light, moderate, and high as shown in
Rows 406 illustrates the level of thermal mitigation necessary to mitigate heat in a device (e.g., HMD 100) in response to the various use cases 401. The thermal mitigation level may be categorized as levels 0, 1, 2, 3, or 4, where 0 may represent no thermal mitigation being applied to a device (e.g., HMD 100) and 4 may represent maximum thermal mitigation applied to the device (e.g., HMD 100). The levels may quantify the amount of thermal mitigation being applied from 0=None to 4=Maximum. As the thermal mitigation level applied to the device increases, the power consumption of the device may be reduced by degrading (e.g., reducing) TPut as a result of the thermal mitigation. In the examples of the present disclosure, the thermal mitigation levels may have any number of levels in any order to indicate level of thermal mitigation needed. Thermal mitigation levels between levels 1 and 4 may indicate a greater need for thermal mitigation to cool a device (HMD 100) as the level increases. In some examples of the present disclosure, the higher the mitigation applied (e.g., level 4 in relation to level 3, level 2 in relation to level 1, etc.), the more reduction in power consumption of a device and more increase in expected degradation of TPut of the device.
The thermal mitigation levels may be further described based on the description of
For example, referring to
For example, referring to
For example, referring to
For example, referring to
In some examples, limiting transmission rate may be referred to as Wi-Fi Tx On Duration, meaning that over a period of a predetermined quantity/number of seconds a certain percentage of the possible transmission may be permitted to be transmitted to the device (e.g., HMD 100). As the level of thermal mitigation increases, batching may increase as well as the Wi-Fi Tx On Duration. For purposes of illustration and not of limitation, consider an instance in which the thermal mitigation level is determined to be level 1 associated with the device (e.g., HMD 100), by the wireless thermal management system 302, in an instance in which transmission may normally be 100 megabytes per second. In this example, since thermal mitigation is level 1, the wireless thermal management system 302 may communicate to Wi-Fi (e.g., Wi-Fi device 304) a Wi-Fi Tx On Duration<80% and a batch rate of 66 ms. Therefore, the transmission of data to the device may not exceed 80% of the maximum rate of transmission (e.g., 80% of 5 Mbps) and batching may be set at 66 ms based on for example a latency sensitive (e.g., indicated as Yes in
Concurrently or thereafter to determining the decrease in transmission rate, the wireless thermal management system 302 may communicate with the media client (e.g., media client 306) to instruct/cause the media client to slow the bit rate at which data is transmitted from the media client to the device (e.g., HMD 100). In this example, the media client 306 may perform the media client action(s) of transmitting the data at the bit rate of 2 Mbps as shown in column 504. In some examples, transmitting the data at the bit rate of 2 Mbps may cause reducing of quality and/or resolution of a display (e.g., display 42) of the device (e.g., HMD 100) as thermal mitigation level increased (e.g., from level 0 to level 1). Although, thermal mitigation actions associated with Wi-Fi may include reduction of bit rate, as described above, to mitigate heat associated with a device (e.g., HMD 100), in another example instead of reducing bit rate, a resolution(s) (e.g., display resolution) may be reduced for thermal mitigation which may be used to cool down the device (e.g., HMD 100). The implementation of thermal mitigation level 2 may occur in a similar manner as thermal mitigation level 1 for a Wi-Fi Tx On Duration <60% and a batch rate of 100 ms executed by the wireless thermal management system 302 and in which the media client 306 performs the media client action(s) of reducing the bit rate of the data transmission at 1 Mbps, as shown in column 504.
Exemplary method 600 may include one or more of the steps described below. In step 602, the method 600 may include establishing a wireless link between a device such as for example HMD 100 and a media client (e.g., media client 306). In some examples, the media client may encode data to be sent to the device. The wireless link between the device (e.g., HMD 100) and media client 306 may be established by Wi-Fi (e.g., by Wi-Fi device 304) or another wireless communication technology (other wireless modalities such as e.g., Bluetooth, cellular, UWB, etc.). Additionally, media client 306 may be configured to transmit data to be processed via the device (e.g., HMD 100) to present information (e.g., video, images, altered reality, etc.)
to the user on a display (e.g., display 42) of the device (e.g., HMD 100). The wireless link between the device (e.g., HMD 100) and media client 306 may be set by the user, but it is also contemplated that the device and the media client 306 may automatically establish a wireless link via the device 304.
In step 604, the method 600 may include the device (e.g., HMD 100) determining a Wi-Fi link capacity estimation in real time of the established wireless link of step 602. For instance, in some examples wireless firmware (e.g., implemented/executed by processor 32) on the HMD 100 may determine the estimation of the Wi-Fi link capacity. In other examples, the wireless thermal management system 302 may determine the Wi-Fi link capacity based on a Wi-Fi link capacity estimate/RSSI 301 received from the device 304. The estimation/determination of the Wi-Fi link capacity may be expressed as bits per second, a decimal, a real value between an upper and lower limit, a percentage, or any value suitable to quantify Wi-Fi Link capacity.
The Wi-Fi link capacity may be based on network speed, network signal strength, an estimate of interference observed, or another suitable manner of estimating/determining Wi-Fi link capacity. The estimation/determination of Wi-Fi link capacity may be performed in real time and may be updated as the capacity changes with time.
In step 606, the method 600 may include the device (e.g., HMD 100) determining a throughput estimation, in real time, associated with the amount of data being transmitted via a wireless link between the media client 306 and the device (e.g., HMD 100). In some examples, wireless firmware (e.g., implemented/executed by processor 32) on the device (e.g., HMD 100) may determine the estimation of the TPut. In some other examples, the wireless thermal management system 302 may determine the TPut based on a TPut estimate 307 received from a component (e.g., processor 32) of the device (e.g., HMD 100). The estimation/determination of the TPut may be expressed as bits per second, a decimal, a real value between an upper and lower limit, a percentage, or any suitable number to quantify TPut. The TPut may be based on transmission speed of data per second or another suitable manner of estimating TPut. The estimation of TPut may be performed in real time, in conjunction with or simultaneously to step 604, and may be updated as the TPut changes with time.
In step 608, the method 600 may include the device (e.g., HMD 100) determining/assessing a thermal stress level in real time as the device is in use. In some examples, one or more temperature sensors (e.g., processor 32) on or within the device may determine the temperature(s) within the device, or outside of the device. The thermal stress level may be determined by the device based in part on the determined temperature of, or associated with, the device. In some examples, the device temperature may be quantized into 4 bins/groups in the following ascending order of stress levels: none, light, moderate and high. The quantization bin size of the bins need not be equal. The thermal stress level may be expressed by any unit utilized to define temperature (e.g., Fahrenheit, Celsius). In some examples, the thermal stress level may be used in conjunction with a power estimation or power consumption of a device (e.g., HMD 100) which may be based on wireless link capacity (e.g., a poor or good wireless link capacity associated with Wi-Fi device 304) to determine thermal mitigation. In some examples, the wireless link capacity may be determined based on the Wi-Fi link capacity estimate/RSSI 301 sent from the Wi-Fi module 304 to the wireless thermal management system 302.
The determined temperature associated with the device (e.g., HMD 100) may be a direct result, or indirect result, of the determined power consumption. For example, in an instance in which the power consumption associated with the device is high, the determined temperature associated with the device may be high. On the other hand, in an instance in which the power consumption is normal or low, the temperature associated with the device may be normal or low. In some examples, the wireless thermal management system 302 may determine the thermal stress level based on a thermal stress level 308 determined by a component (e.g., processor 32) of the device (e.g., HMD 100). The thermal stress level 308 may be based on the determined temperature associated with the device and/or the power consumption associated with the device. In some examples, the Wi-Fi Link Metric may be quantized into 4 bins in the following ascending order of levels: 0-0.25, 0.25-0.5, 0.5-0.75, and >0.75. The final thermal mitigation level (e.g., level 4) may be a monotonically increasing function of both the thermal stress level and the quantized Wi-Fi Link Metric, as shown in
The determination of the thermal stress level may be generated in real time, in which the temperature associated with the device may be determined periodically according to a predetermined time period, where the predetermined time period may be an arbitrary/random number of seconds suitable to determine/assess temperature associated with the device without causing the device to utilize too much power in determining the temperature. If temperature is determined too often the determination of the temperature may, in some instances, increase the temperature of the device (e.g., HMD 100). In some examples, the thermal stress level may be determined in conjunction with, or simultaneously with, the operation of steps 602-606.
In step 610, the method 600 may include the device (e.g., HMD 100) determining latency sensitivity associated with an application(s) and/or function(s) of the device. Each application and/or use case (e.g., use case 401) may register or identify its level of latency sensitivity with the device (e.g., HMD 100). Although in
In step 612, the method 600 may include the device (e.g., HMD 100) determining a Wi-Fi link metric. In some examples, the Wi-Fi link metric may be utilized to represent how much power is being consumed by the device. The Wi-Fi link metric may be determined by using two different options. In option 1, a device (e.g., wireless thermal management system 302) may divide the determined TPut estimate by the determined Wi-Fi link capacity estimate (e.g., Wi-Fi Link Metric=TPut Estimate/Wi-Fi Link Capacity Estimate). In option 2, a device (e.g., wireless thermal management system 302) may subtract one minus the determined Wi-Fi Link Capacity estimate divided by the Max Wi-Fi Link Capacity (e.g., 1−(Wi-Fi Link Capacity Estimate/Max Wi-Fi Link Capacity)). Option 2 may be used as a manner in which to check the determined Wi-Fi link metric utilized in option 1 and/or option 2 may be utilized to determine the Wi-Fi link metric in an instance in which the TPut estimate is unavailable.
Optionally, in step 614, the method 600 may include the device (e.g., HMD 100) mitigating heat associated with the device. The process of mitigating heat of the device may include determination of the Wi-Fi link metric and the assessment of the thermal stress level to determine a level of thermal mitigation that may be necessary to mitigate heat associated with the device. The thermal mitigation level(s) may be determined to be associated with thermal mitigation levels 0, 1, 2, 3 and 4 and these various thermal mitigation levels 0, 1, 2, 3 and 4 may be determined based in part on the combination of the determined thermal stress level and the determined Wi-Fi link metric. For purposes of illustration and not of limitation, if a user is live streaming video on the device (e.g., HMD 100) and the device is determined to have a temperature that is 5.8° C. higher than a resting temperature associated with the device, such higher temperature (e.g., 5.8° C. higher than rest temperature) may result in a high thermal stress level of the device. Consider in this example that the TPut estimate is determined to be 80 megabytes per second and the Wi-Fi link capacity is 100 megabytes per second. Thus, a Wi-Fi metric link may be determined to be 0.8 (e.g., 80 Mbps/100 Mbps) in combination with the high thermal stress level such that a thermal mitigation level may be determined to be 2. In this regard, see for example table 430 of
At operation 706, a device (e.g., wireless thermal management device 302 of HMD 100) may determine, based on the at least one wireless link capacity estimate or the at least one throughput estimate, a wireless link metric indicating or denoting a power consumption or a load associated with a communication device (e.g., HMD 100). At operation 708, a device (e.g., wireless thermal management device 302 of HMD 100) may determine, based on the wireless link metric, whether to apply a level of thermal mitigation to a communication device (e.g., HMD 100). In some examples of the present disclosure, the level of thermal mitigation that may be applied to the communication device may be at least one of none, light, moderate or high thermal stress levels described herein.
In some examples, the applying of a level of thermal mitigation may include reducing a temperature or heat associated with the communication device. In some examples of the present disclosure, the determining of the level of the thermal mitigation may include determining a latency sensitivity associated with transmission of data. The latency sensitivity may be high or low based on a type(s) of content associated with the transmission of data.
In some examples, the applying of the level of thermal mitigation to the communication device may be in response to determining that the wireless link metric exceeds a predetermined threshold(s) (e.g., <0.25, 0.25-0.5, 0.5-0.75, >0.75) and determining a level of latency sensitivity associated with transmission of data (e.g., high, low, none; see e.g.,
The applying of the level of thermal mitigation may be to reduce the data transfer rate by a percentage (e.g., <80%, <60%, <40%, <20%). In some examples a device (e.g., wireless thermal management device 302) may determine that the level of thermal mitigation is at least one level among a plurality of thermal mitigation levels (e.g., none, light, moderate, high thermal stress levels; also e.g., levels 0, 1, 2, 3, 4, etc.). A lowest level (e.g., a none thermal stress level) among the plurality of thermal mitigation levels may be associated with not applying thermal mitigation to the communication device. A highest level (e.g., a high thermal stress level) among the plurality of thermal mitigation levels may be associated with applying a highest thermal mitigation to the communication device in relation to other levels (e.g., none, light, moderate thermal stress levels) of the plurality of thermal mitigation levels.
In some examples of the present disclosure, the applying of the at least one level may include causing a media client (e.g., media client 306) to lower, during a predetermined time period, the data transfer or the transmission rate (e.g., <40% Batching@500 ms) of content configured to be transmitted by the media client.
The determining of the latency sensitivity associated with the transmission of data may include determining a type(s) of content associated with the transmission of the data. For example, the type(s) of content may include, but is not limited to, live streaming, video calling, media transfer (foreground), media transfer (background), SW upgrade, and/or assistance data synch.
In some examples, the determining of the wireless link metric may be based on a determined maximum wireless link capacity in an instance in which a value associated with at least one throughput estimate is unknown, undetermined or unavailable. For instance, the wireless link metric may be determined based on determining 1−(Wi-Fi Link Capacity Estimate/Max Wi-Fi Link Capacity).
The foregoing description of the embodiments has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the patent rights to the precise forms disclosed. Persons skilled in the relevant art may appreciate that many modifications and variations are possible in light of the above disclosure.
Embodiments also may relate to a product that is produced by a computing process described herein. Such a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
The language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the patent rights be limited not by this detailed description, but rather by any claims that issue on an application based hereon. Accordingly, the disclosure of the embodiments is intended to be illustrative, but not limiting, of the scope of the patent rights, which is set forth in the following claims.
Herein, “or” is inclusive and not exclusive, unless expressly indicated otherwise or indicated otherwise by context. Therefore, herein, “A or B” means “A, B, or both,” unless expressly indicated otherwise or indicated otherwise by context. Moreover, “and” is both joint and several, unless expressly indicated otherwise or indicated otherwise by context. Therefore, herein, “A and B” means “A and B, jointly or severally,” unless expressly indicated otherwise or indicated otherwise by context.
The foregoing description of the embodiments has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the patent rights to the precise forms disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure.
Some portions of this description describe the embodiments in terms of applications and symbolic representations of operations on information. These application descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof.
Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product comprising a computer-readable medium containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.
Embodiments also may relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, and/or it may comprise a computing device selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
Embodiments also may relate to a product that is produced by a computing process described herein. Such a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the patent rights be limited not by this detailed description, but rather by any claims that issue on an application based hereon. Accordingly, the disclosure of the embodiments is intended to be illustrative, but not limiting, of the scope of the patent rights, which is set forth in the following claims.
This application claims the benefit of U.S. Provisional Application No. 63/484,353 filed Feb. 10, 2023, the entire content of which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
63484353 | Feb 2023 | US |