Thermal management of electronic devices
Through the coordinated work of maintaining thermal profiles and thermal management engines, the thermal management problem of electronic devices in different contexts is solved, dynamic adjustment of temperature thresholds is achieved, and equipment performance and safety is improved.
Patent Information
- Application Number
- CN202380045680.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-06-13
- Filing Date
- 2023-04-21
- Publication Date
- 2025-01-17
AI Technical Summary
Electronic devices encounter power and thermal management problems in different contexts, and the prior art is difficult to effectively adjust temperature thresholds to adapt to different usage modes, resulting in reduced or damaged hardware components performance, and a single default thermal profile cannot meet multiple context needs.
Provides a method and apparatus to automatically or interactively adjust temperature thresholds based on context changes of electronic devices by maintaining thermal profiles, utilizing a thermal management engine and graphical user interface, selecting suitable thermal profiles to reduce thermal exposure or improve performance .
It realizes dynamic adjustment of temperature thresholds according to context changes, improves the performance and security of electronic devices in different usage modes, and avoids hardware damage. It is suitable for multiple contextual environments.
Smart Images

Figure CN119325586A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates generally to thermal management of electronic devices and graphical user interfaces for managing thermal configurations of electronic devices. Background Art
[0002] Electronic devices are used for different forms of communication, including business applications, gaming applications, and social media interactions. The energy and processing requirements of electronic devices can vary based on the context or mode in which they are used. Electronic devices may encounter power and thermal issues, such as those due to the use of high-frequency multi-core processors that generate heat. Techniques for addressing thermal issues in mobile environments are closely related to the thermal configuration that can be performed for the corresponding device. Summary of the invention
[0003] Systems and techniques for providing thermal management of electronic devices are described herein. According to at least one example, a method for maintaining a thermal profile is provided. The method includes: setting the electronic device to a first thermal profile based on a first context associated with the electronic device; receiving a context change indicating that the electronic device is associated with a second context; and setting the electronic device to a second thermal profile based on the second context.
[0004] In another example, an apparatus for maintaining a thermal profile is provided, the apparatus comprising at least one memory and at least one processor (e.g., configured in a circuit) coupled to the at least one memory. The at least one processor is configured to: set the apparatus to a first thermal profile based on a first context associated with the apparatus; receive a context change indicating that the apparatus is associated with a second context; and set the apparatus to a second thermal profile based on the second context.
[0005] In another example, a non-transitory computer-readable medium of an electronic device is provided, having instructions stored thereon, which, when executed by one or more processors, cause the one or more processors to perform the following operations: setting the electronic device to a first thermal profile based on a first context associated with the electronic device; receiving a context change indicating that the electronic device is associated with a second context; and setting the electronic device to a second thermal profile based on the second context.
[0006] In another example, an apparatus for maintaining a thermal profile is provided. The apparatus includes: a component for setting the apparatus to a first thermal profile based on a first context associated with the apparatus; a component for receiving a context change indicating that the apparatus is associated with a second context; and a component for setting the apparatus to a second thermal profile based on the second context.
[0007] In some aspects, one or more devices described herein are part of and / or include a mobile device (e.g., a mobile phone or other mobile device), a wearable device, an extended reality (XR) device (e.g., a virtual reality (VR) device, an augmented reality (AR) device, or a mixed reality (MR) device), a head mounted device (HMD) device, a wireless communication device, a camera, a personal computer, a laptop computer, a server computer, a vehicle or a computing device or component of a vehicle, another device, or a combination thereof. In some aspects, the device includes a camera or multiple cameras for capturing one or more images. In some aspects, the device also includes a display for displaying one or more images, notifications, and / or other displayable data. In some aspects, the device described above may include one or more sensors (e.g., one or more inertial measurement units (IMUs), such as one or more gyroscopes, one or more gyroscopes, one or more accelerometers, any combination thereof, and / or other sensors).
[0008] This summary is not intended to identify the key or essential features of the claimed subject matter, nor is it intended to be used in isolation to determine the scope of the claimed subject matter. The subject matter should be understood by reference to appropriate parts of the entire specification of this patent, any or all drawings, and each claim.
[0009] The foregoing and other features and embodiments will become more fully apparent upon reference to the following description, claims and accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] The following is a detailed description of the illustrative embodiments of the present application in conjunction with the accompanying drawings:
[0011] Figure 1 is a schematic diagram illustrating an example of an electronic device for adjusting a thermal profile based on a change in context or usage of the electronic device according to some examples of the present disclosure;
[0012] Figure 2A is a schematic diagram illustrating an example interactive graphical user interface according to some examples of the present disclosure, in which a user may select or confirm a new thermal profile for an electronic device;
[0013] Figure 2B , Figure 2C and Figure 2D is a schematic diagram illustrating an example of a graphical user interface according to some examples of the present disclosure;
[0014] Figure 2E is a schematic diagram illustrating example user input according to some examples of the present disclosure, wherein a user may interact with a quick panel button or object on a graphical user interface to establish a temperature setting for an application;
[0015] Figure 3 is a flow chart illustrating an example process for changing or updating a thermal profile of an electronic device according to some examples of the present disclosure;
[0016] Figure 4 is a schematic diagram illustrating an example of an electronic device configured to obtain various types of inputs for changing or adjusting a thermal profile of the electronic device according to some examples of the present disclosure;
[0017] Figure 5 is a flow chart illustrating an example process for changing or adjusting a thermal profile of an electronic device according to some examples of the present disclosure; and
[0018] Figure 6 An example computing device architecture is shown according to some examples of the present disclosure. DETAILED DESCRIPTION
[0019] Provided below are certain aspects and embodiments of the present disclosure. Some of these aspects and embodiments can be applied independently and some of them can be applied in combination, which is obvious to those skilled in the art. In the following description, for the purpose of explanation, specific details are set forth in order to provide a thorough understanding of the embodiments of the present application. However, it is obvious that various embodiments can be put into practice without these specific details. The accompanying drawings and description are not intended to be limiting.
[0020] The following description provides only exemplary embodiments and is not intended to limit the scope, applicability or configuration of the present disclosure. Rather, the following description of the exemplary embodiments will provide an enabling description for implementing the exemplary embodiments for those skilled in the art. It should be understood that various changes may be made to the functions and arrangements of the elements without departing from the spirit and scope of the present application as set forth in the appended claims.
[0021] Electronic devices may include mobile devices (e.g., mobile phones), wearable devices (e.g., smart watches, smart glasses, etc.), tablets, extended reality (XR) devices (e.g., virtual reality (VR) devices, augmented reality (AR) devices, mixed reality (MR) devices), networked devices, laptops, and other devices. Electronic devices (e.g., mobile phones, etc.) are configured with hardware components that enable the electronic device to fulfill or execute a specific context or application. For example, an electronic device (e.g., a mobile device or an XR device, such as a head-mounted display or HMD) may include a structure that allows a user to position the mobile device / XR device in front of the user's eyes to obtain a VR experience. The electronic device may implement a camera to capture images or video frames of a scene including various items (such as people, animals, and / or any object). The electronic device may have one or more sensors that can sense various conditions, such as the orientation, position, temperature, humidity, altitude, etc. of the electronic device. Other sensors may include sensors for facial recognition, fingerprint recognition, thermal sensors, motion or gesture recognition, and the like.
[0022] Electronic devices may operate at different temperatures, depending on the purpose or operating context of the device. For example, one corresponding application run by an electronic device may cause or generate more heat than another application. An electronic device with a certain temperature may be more harmful or more likely to cause damage to a user's body when held to the user's eyes or ears than when held in the user's hand. The way in which the electronic device is used may also have different effects on body parts. In addition, high temperatures of the device and / or high temperatures of components within the device may affect the integrity and physical connections of the components, resulting in degraded performance or complete failure of the components.
[0023] In some cases, when a temperature is detected to be above a temperature threshold or a thermal threshold, the electronic device may perform a thermal mitigation procedure to mitigate undesirable consequences that may occur due to overheating within the system of the device. A single default temperature threshold setting for a device is feasible for preventing damage to hardware components of the electronic device. However, there are many different contexts or uses for electronic devices, which may not all be suitable for a single default thermal profile. In addition, if the temperature threshold is not adjusted for the electronic device, the high temperature may cause harm to the user of the electronic device.
[0024] Systems, apparatus, electronic devices, methods (also referred to as processes), and computer-readable media (collectively referred to herein as "systems and techniques") are described herein for providing management of thermal profiles associated with electronic devices. In some aspects, the systems and techniques can determine the context in which the electronic device is used, and can adjust or set a temperature threshold (also referred to as a thermal threshold) or a thermal profile of the electronic device. In some cases, the systems and techniques can adjust the temperature threshold or thermal profile of the electronic device based on a usage mode of the electronic device (e.g., a first mode associated with extended reality versus a second mode associated with normal use of the electronic device in the hands of a user) and / or based on user input provided by a user of the electronic device via a graphical user interface. For example, the systems and techniques can change the thermal profile automatically or based on the display or presentation of an interactive graphical user interface that enables a user to provide input to select or confirm a context and / or a new thermal profile.
[0025] A particular thermal profile may include or be associated with a particular temperature threshold, and may include thermal mitigation techniques that may be performed to allow the electronic device to reach the particular temperature threshold. Examples of such thermal mitigation techniques may include using or not using certain hardware components (e.g., temporarily stopping the use of a high-power processor until the temperature drops below a certain amount below the temperature threshold), reducing the use of certain hardware components (e.g., temporarily reducing the processing speed of one or more hardware components), reducing the functionality of the device, any combination thereof, and / or other thermal mitigation techniques.
[0026] The systems and techniques can manage thermal profiles of electronic devices so that different temperature thresholds can be provided for different contexts of the electronic device. In some examples, the electronic device can select or set a thermal profile (e.g., associated with an associated temperature threshold) from a plurality of different thermal profiles based on the operating conditions of the electronic device. In an illustrative example, an electronic device can be used in the context of VR, where the electronic device is used near the user's eyes. Because in a VR context, the user's eyes are closer to the electronic device, the eyes are more exposed to the high temperatures generated by the electronic device. Hands can withstand or adapt to higher temperatures than the user's eyes or ears. Therefore, when an electronic device is used for a VR experience, a thermal profile can be selected or set that is configured to reduce the heat exposure of the user's eyes (and therefore have a lower temperature threshold) relative to other thermal profiles or a default thermal profile.
[0027] When the electronic device transitions from one use or application (e.g., from a VR context) to another use or application (e.g., to a phone call context, a gaming context, etc.), the electronic device can detect the context change of the electronic device and can select a different thermal profile (and corresponding temperature threshold) to increase or decrease the temperature of the electronic device. The allowable temperature increase can allow the electronic device to improve performance, such as by allowing higher usage of certain hardware components. In some aspects, any change in the thermal profile will generally result in the temperature threshold being below the highest temperature junction Tj.
[0028] Various aspects of the application will be described in conjunction with the accompanying drawings.
[0029] Figure 1 is a schematic diagram illustrating an example of an electronic device 100 configured to adjust thermal profile settings based on a change in context or based on other factors as further described herein. In some aspects, the electronic device 100 can be configured to perform one or more functions such as, for example, imaging functions, image data segmentation functions, detection functions (e.g., object detection, pose detection, face detection, shape detection, scene detection, motion detection, etc.), image processing functions, extended reality (XR) functions (e.g., positioning / tracking, detection, classification, mapping, content rendering, etc.), device management and / or control functions, gaming functions, computer vision, robotics functions, automation, and / or any other computing functions.
[0030] exist Figure 1 In the illustrative example shown, the electronic device 100 may include one or more camera devices, such as camera 102 and camera 104, one or more sensors 106 (e.g., ultrasonic sensors, inertial measurement units, depth sensors that determine depth using any suitable technology (e.g., based on time of flight (ToF), structured light, or other depth sensing technology or system), touch sensors, microphones, thermometers, etc.), memory 108, one or more computing components 110, thermal management engine 120, and thermal profile database 122. In some cases, the electronic device 100 may optionally include one or more other / additional sensors, such as, but not limited to, pressure sensors (e.g., atmospheric pressure barometric pressure sensors and / or any other pressure sensors), gyroscopes, accelerometers, magnetometers, thermometers, and / or any other sensors. Sensors may be included to capture the movement or gestures of a user's hands or other body parts in the air or gestures provided on a touch-sensitive display. In some examples, the electronic device 100 may include additional components, such as light emitting diode (LED) devices, caches, communication interfaces, displays, memory devices, etc. The following is combined with Figure 6 An example architecture and example hardware components that may be implemented by electronic device 100 are further described.
[0031] The electronic device 100 may be a part of a single computing device or multiple computing devices, or implemented by a single computing device or multiple computing devices. In some examples, the electronic device 100 may be a part of an electronic device (or multiple devices), such as a camera system (e.g., a digital camera, an IP camera, a video camera, a security camera, etc.), a phone system (e.g., a smart phone, a cellular phone, a conference system, etc.), a laptop or notebook computer, a tablet computer, a set-top box, a smart TV, a display device, a game console, an XR device (such as a head-mounted device (HMD) that can perform virtual reality (AR), augmented reality (AR), or mixed reality (MR) functions), an Internet of Things (IoT) device, a smart wearable device, or any other suitable electronic device.
[0032] In some implementations, the camera 102, the camera 104, the one or more sensors 106, the memory 108, the one or more computing components 110, the thermal management engine 120, and / or the thermal profile database 122 may be part of the same computing device. For example, in some cases, the camera 102, the camera 104, the one or more sensors 106, the memory 108, the one or more computing components 110, the thermal management engine 120, and / or the thermal profile database 122 may be integrated with or integrated into a camera system, a smartphone, a laptop, a tablet, a smart wearable device, an XR device (such as an HMD), an IoT device, a gaming system, and / or any other computing device. In other implementations, the camera 102, the camera 104, the one or more sensors 106, the memory 108, the one or more computing components 110, the thermal management engine 120, and / or the thermal profile database 122 may be part of two or more separate computing devices or implemented by two or more separate computing devices.
[0033] The one or more computing components 110 of the electronic device 100 may include, for example but not limited to, a central processing unit (CPU) 112, a graphics processing unit (GPU) 114, a digital signal processor (DSP) 116, and / or an image signal processor (ISP) 118. In some examples, the electronic device 100 may include other processors or processing devices, such as a computer vision (CV) processor, a neural network processor (NNP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), etc. The electronic device 100 may use one or more computing components 110 to perform various computing operations, such as gesture mode functions described herein, extended reality operations (e.g., tracking, localization, object detection, classification, pose estimation, mapping, content anchoring, content rendering, etc.), detection (e.g., face detection, object detection, scene detection, human detection, etc.), image segmentation, automatic gesture correction, device control operations, image / video processing, graphics rendering, machine learning, data processing, modeling, computing, computer vision, and / or any other operations. Depending on the context, these different components may generate different levels of heat (e.g., governed by specific thermal profiles).
[0034] In some cases, one or more computing components 110 may include other electronic circuits or hardware, computer software, firmware, or any combination thereof to perform any of the various operations described herein. In some examples, one or more computing components 110 may include more than Figure 1 114, DSP 116, and ISP 118 are merely illustrative examples of computing components provided for explanation purposes. As described above, various components may generate different levels of heat depending on the type of hardware used at any given point in time. In some cases, the generation of heat may be governed by a specific thermal profile from a thermal profile database 122 (which may include a default thermal profile set by the manufacturer of the electronic device 100 in some cases). The selected thermal profile may specify which computing components to use and how to use the computing components (e.g., using a standard or reduced processing speed, with reduced functionality, etc.) to operate the electronic device 100. The thermal profile may also indicate one or more temperature thresholds (e.g., minimum and / or maximum temperature thresholds) under which the electronic device 100 (and its components) can operate. Details on the selection of a thermal profile by the thermal management engine 120 are described below.
[0035] Camera 102 and / or camera 104 may include any image and / or video sensor and / or image / video capture device, such as a digital camera sensor, a video camera sensor, a smart phone camera sensor, an image / video capture device on an electronic device (such as a television or computer), a camera, etc. In some cases, camera 102 and / or camera 104 may be part of a camera system or computing device (e.g., a digital camera, a video camera, an IP camera, a smart phone, a smart TV, a gaming system, etc.). In addition, in some cases, camera 102 and camera 104 may include multiple image sensors, such as a rear sensor device and a front sensor device, and may be part of a dual camera or other multi-camera assembly (e.g., including two cameras, three cameras, four cameras, or other number of cameras). In some examples, camera 102 and / or camera 104 may be part of a camera. In some cases, different thermal profiles may be applied based on the configuration of camera 102 and / or camera 104, the number of cameras being used, and how to process data received from camera 102 and / or camera 104. For example, thermal management engine 120 may analyze, at least in part, data received from cameras 102 / 104 to assess the context of the electronic device for changing the thermal profile.
[0036] The memory 108 may include any storage device such as for storing data, such as, but not limited to, image data, gesture data, scene data, user data, preferences, etc. The memory 108 may store data from any component of the electronic device 100. For example, the memory 108 may store data or measurements from any of the cameras 102 and 104, one or more sensors 106, the computing component 110 (e.g., processing parameters, outputs, videos, images, segmentation maps / masks, depth maps, filtering results, calculation results, detection results, gesture correction data, etc.), the thermal management engine 120, the thermal profile database 122, and / or any other components. In some examples, the memory 108 may include a buffer for storing data processed by the computing component 110 (e.g., various thermal profiles). Figure 1 In some examples, thermal profile database 122 is part of electronic device 100. In some examples, thermal profile database 122 may be part of memory 108. In some cases, thermal profile database 122 may be located remote from electronic device 100 (e.g., thermal profile database 122 may be included in one or more cloud-based servers). In such cases, electronic device 100 may access thermal profile database 122 via a wired or wireless network.
[0037] The thermal management engine 120 may implement one or more algorithms and / or machine learning models configured to implement dynamic adjustment of thermal profile settings as described herein. Figure 1 In the example of the present invention, the thermal management engine 120 is part of the electronic device 100. In some cases, the thermal management engine 120 can be located remotely from the electronic device 100 (e.g., the thermal management engine 120 can be included in one or more cloud-based servers). In such a case, the thermal management engine 120 can communicate with the electronic device 100 via a wired or wireless network.
[0038] In some aspects, based on a change in context associated with the electronic device 100 (e.g., switching from one usage mode of the electronic device 100 to another mode, such as switching from an XR mode to a video mode), the thermal management engine 120 can be configured to adjust or set the electronic device 100 to one or more different thermal profiles and / or provide options (and in some cases recommendations) for the user to set or update the thermal profile via an interactive graphical user interface. For example, in some examples, the thermal management engine 120 can manage a graphical user interface (e.g., such as Figure 2A-2E As shown, as described below), to enable manual selection and / or automatic selection of an updated thermal profile for the electronic device 100 (e.g., based on a selection history learned by a user via a graphical user interface). In some examples, the electronic device 100 may have a set of default settings, in which case, as described herein, the thermal management engine 120 may detect a change in context and automatically apply a new thermal profile for the new context. In some cases, in the event that the thermal management engine 120 automatically selects a thermal profile based on a change in context, the thermal management engine 120 may output a message to notify the user of the change in context and / or the new thermal profile. In some cases, an interactive object may be displayed for the user to select to opt out of the thermal profile change. As described herein, in some aspects, a machine learning or artificial intelligence model may be trained based on various types of user input, which may be received and used to classify or determine a context, and thereby assign a new thermal profile based on the determined context or change in context.
[0039] In some cases, one or more sensors 106 may detect acceleration, angular rate, and / or orientation of the electronic device 100 and generate measurements based on the detected acceleration or other data. In some cases, one or more sensors 106 may detect and measure the orientation, linear velocity, and / or angular rate of the electronic device 100. For example, one or more sensors 106 may measure the movement and / or pitch, roll, and yaw of the electronic device 100. These various detected configurations may be context-dependent, and the thermal management engine 120 may then use these detected configurations to determine a specific thermal profile to be used from the thermal profiles stored in the thermal profile database 122. In some examples, the electronic device 100 may use measurements obtained by one or more sensors 106 and / or data from one or more of the cameras 102 and / or 104 to calculate the posture or orientation of the electronic device 100 in a three-dimensional (3D) space. In some cases, the electronic device 100 may additionally or alternatively use sensor data from the camera 102, the camera 104, one or more sensors 106, and / or any other sensor to perform tracking, posture estimation, mapping, image segmentation, face detection, human body detection, scene detection, object detection, image data pre-processing and / or post-processing, and / or other operations described herein. Any one or more of these data may be provided to the thermal management engine 120. The thermal management engine 120 may use the data to determine whether the context has changed and whether to implement a change in the thermal profile setting based on the change in context. In an illustrative example, the thermal management engine 120 may select a different thermal profile based on the posture of the electronic device 100 changing from being held in the hand to being raised to the user's ear. In another illustrative example, based on image data from the camera 102 and / or the camera 104, the thermal management engine 120 may determine that there are four people in the room close to the electronic device 100. The thermal management engine 120 may also determine the temperature in the room based on temperature data from a sensor in the one or more sensors 106. The thermal management engine 120 may use the combination of data to select a particular thermal profile from the thermal profiles stored in the thermal profile database 122 .
[0040] In one illustrative example, the thermal management engine 120 may determine a first context associated with the electronic device 100. The first context may be about an operating mode, a configuration of the electronic device 100, an application being used, a positioning of the electronic device, any combination thereof, and / or other parameters associated with the electronic device 100. The thermal management engine 120 may set a first thermal profile stored in the thermal profile database 122 based on the first context. A non-limiting example of a first context may be a situation where the electronic device 100 is being used in a phone call mode, such that a user makes a phone call using a phone application of the electronic device 100. The user may select a speaker option on the electronic device 100 so that the electronic device 100 may be placed on a table without being held up to the user's ear. The one or more sensors 106 may determine that the electronic device 100 is not in motion and / or is in a particular orientation (e.g., in a horizontal orientation), which may indicate that the device is not held up to the user's ear. The first thermal profile may be applicable to the first context so that the electronic device 100 may generate a relatively high amount of heat when compared to other contexts because the electronic device 100 is not in contact with or close to the user's body. The amount of heat allowed to be generated for the first thermal profile may be based on a setting selected by the user via a graphical user interface (e.g., Figure 2A-2E The temperature thresholds may be manually set in one or more of the graphical user interfaces of the device, or may be based on default temperature thresholds.
[0041] In some cases, the thermal management engine 120 may determine that a change has occurred from a first context to a second context. A non-limiting example of a second context may be that the user has launched a new application in which the electronic device 100 is configured to provide a virtual reality (VR) experience and is therefore closer to the user's eyes and in a vertical position. In some cases, one or more sensors 106 may determine that the electronic device 100 is moving and / or in a specific orientation (e.g., a vertical orientation), which indicates that the device 100 can be used when close to the user's body. Additionally or alternatively, in some cases, image data from the camera 102 and / or the camera 104 may be used by the electronic device 100 to determine the distance from the electronic device 100 to the user's eyes. As described herein, different body parts (e.g., ears, eyes, hands, etc.) may have different sensitivities to temperature. For example, eyes may be more sensitive to heat than hands. Based on the proximity of the electronic device 100 to the user's eyes, the electronic device 100 may automatically or based on user input provided via a graphical user interface determine a change to a second thermal profile (with a lower temperature threshold), which will cause the electronic device 100 to generate less heat than the first thermal profile.
[0042] Figure 1The components shown in the figure with respect to the electronic device 100 are illustrative examples provided for explanation purposes. In other examples, the electronic device 100 may include more Figure 1 Although electronic device 100 is shown as including certain components, a person of ordinary skill will appreciate that electronic device 100 may include more or fewer components than those shown in FIG. Figure 1 For example, in some instances, the electronic device 100 may include one or more memory devices (e.g., RAM, ROM, cache, etc.), one or more networking interfaces (e.g., wired and / or wireless communication interfaces, etc.), Figure 1 One or more display devices, caches, storage devices and / or other hardware or processing devices not shown. Figure 6 Illustrative examples of computing devices and / or hardware components that may be implemented with electronic device 100 are described.
[0043] Figure 2A is a diagram showing a display that can be displayed via the electronic device 100 (such as Figure 6 Schematic diagram of a series of example graphical user interfaces presented by the output device 635 in the setting screen 202). For example, the setting screen 202 may include a thermal relief option 203. The thermal relief option 203 may be presented as an optional object, which may be selected by the user by interacting with the setting screen 202 (e.g., clicking, pressing, making gestures, via voice input, etc.). If the user selects the thermal relief option 203, the thermal relief user interface 204 may be presented on the display, which has multiple options associated with multiple contexts associated with the electronic device 100. The multiple options allow the user to provide user input for selecting the context in which the electronic device 100 will be used. The example options shown include games, virtual reality / augmented reality (VR / AR), video / browsing, camera, or idle. Other options are also contemplated. For example, in addition to or as a substitute for any option shown as part of the thermal relief user interface 204, a thermal history may also be presented for selection.
[0044] When a user selects a particular context (e.g., an AR / VR context option) from the thermal mitigation user interface 204, the example graphical user interface 206 can present multiple options associated with multiple thermal profiles for the selected context. The user can provide user input to select the level of the temperature threshold. In one example, the threshold can be low, medium, or high. Other options can be presented, such as a sliding scale between a minimum temperature and a maximum temperature. In another example, when the user selects the gaming context option, a graphical user interface 208 can be presented in which a temperature threshold for the gaming context can be selected.
[0045] In some cases, a user can set different thresholds for different contexts by providing input to one or more of the various user interfaces 202-210. For example, in some examples, a high-level object 209 can be presented on the graphical user interfaces 206, 208. For example, if a user selects the high-level object 209 on one of the graphical user interfaces 206 or 208, a high-level graphical user interface 210 can be presented in which the user can select or input a specific temperature threshold for the electronic device 100.
[0046] In some aspects, the high temperature displayed in the graphical user interface 210 can be set by the manufacturer of the electronic device 100 according to temperature thresholds associated with hardware components of the electronic device 100 (e.g., based on values or limits that are harmful to device circuitry). For example, the high temperature threshold can be set so that the hardware components may be damaged at any temperature above the high temperature threshold. In one example, the maximum temperature threshold can include a maximum temperature junction Tj. In some cases, the graphical user interface 210 is configured so that the high temperature threshold cannot be adjusted by the user.
[0047] The electronic device 100 may automatically set thresholds and / or temperature ranges for different contexts based on the geographic region in which the electronic device 100 is located, the time of year (e.g., summer or winter), the location of the electronic device 100 relative to the user, weather reports or predicted temperatures for a particular location, any combination thereof, and / or other factors, or the user of the electronic device 100 may set (e.g., by providing input to one or more of the graphical user interfaces 206, 208, or 210) thresholds and / or temperature ranges for different contexts. For example, as described herein, different body parts (e.g., ears, eyes, hands, etc.) may have different sensitivities to temperature, so the settings may relate to specific types of body parts. In another example, the sensitivity of temperature to various contexts may vary from region to region. For example, in cold regions of the earth, a thermal profile may allow for more heat to be generated than in hotter regions of the earth. In some aspects, the thermal management engine 120 may manually or automatically (e.g., via graphical user interfaces 206, 208, or 210) adjust the thermal profile based on the location of the electronic device 100. Figure 2A ) to adjust the thermal profiles stored in the thermal profile database 122 using one or more of the user interfaces 206 , 208 , or 210 shown in FIG. Figure 2B , Figure 2C and Figure 2D2 is a schematic diagram showing examples of graphical user interfaces 222, 224, and 226 including various selectable objects or applications. Each of the example graphical user interfaces 222, 224, and 226 provides a user-selectable quick panel button or object that can be selected to establish temperature settings for an application. For example, the graphical user interfaces 222, 224, and 226 show how a user can select a temperature setting from a quick panel button or selectable object illustrated as a game object (e.g., Figure 2B Game objects in 223, Figure 2C Game objects 225 and Figure 2D Game object 227 in changes the temperature threshold.
[0048] In particular, Figure 2B The graphical user interface 222 of FIG. 1 shows a panel of selectable objects for the settings of the electronic device 100, including rotation mode, airplane mode, etc. The graphical user interface 222 also includes a selectable game object 223 related to the thermal profile of the game application. In the graphical user interface 222, the game object 223 is set to "high" in terms of its temperature threshold (e.g., via Figure 2A The high temperature threshold value set by the graphical user interface 208 or 210). Figure 2C The graphical user interface 224 and Figure 2D GUI 226 also includes game object 225 and game object 227. Game object 225 in GUI 224 is set to medium (corresponding to a medium temperature threshold and associated thermal mitigation techniques), and game object 227 in GUI 226 is set to low (corresponding to a medium temperature threshold and associated thermal mitigation techniques).
[0049] A user can tap game object 223, 225, or 227 to change the thermal profile (and the corresponding temperature threshold and associated thermal mitigation techniques), such as when the main body of the object (game) is being used by the user. In some examples, electronic device 100 can be configured such that tapping a game object (e.g., game object 223, 225, or 227) can cause the temperature threshold to switch between low, medium, and high (or other levels or ranges). For example, if the temperature threshold of a game is set to high, a user can tap game object 223 to switch the game's temperature threshold to medium (which results in the display of game object 225). In some examples, electronic device 100 can be configured such that a long press (e.g., by holding a finger on a portion of the touch screen for a threshold length of time) on a game object (e.g., game object 223, 225, or 227) can convert the graphical user interface to a detailed settings screen, such as Figure 2AThe user can then select the setup screen 202, the graphical user interface 204, the graphical user interface 206, the graphical user interface 208, or the graphical user interface 210. Figure 2A The thermal profile of the gaming application may be adjusted by providing input to one or more of the settings screen 202, GUI 204, GUI 206, GUI 208, or GUI 210 to change or set the temperature threshold for the application. Other types of interactions with the GUIs 222, 224, or 226 may also be performed to adjust the thermal profile of the gaming application.
[0050] Figure 2E 230 is a schematic diagram showing an example graphical user interface 232 in which a quick panel button 233 for an augmented reality (AR) / virtual reality (VR) mode may be set to a low temperature threshold. When the mode is set to low and the electronic device 100 is used in the context of AR / VR through a game or other application, a low thermal profile (and a corresponding low temperature threshold) is set for the AR / VR context. In some examples, the electronic device 100 may be configured so that a user can select a quick panel button 233 associated with an AR / VR application to convert the temperature threshold between low, medium, and high (or other levels or ranges). For example, if the temperature threshold for the AR / VR context is set to high, the user may select (e.g., by pressing, gesturing, etc.) the quick panel button 233 to convert the temperature threshold of the AR / VR context to low (resulting in the display of the quick panel button 233). The user may select the quick panel button 233 again to convert the temperature threshold of the AR / VR context from low to medium. In some examples, the electronic device 100 may be configured so that the user can perform a long press on the quick panel button 233 to convert the graphical user interface to a detailed settings screen, such as Figure 2A 202 , graphical user interface 204 , graphical user interface 206 , graphical user interface 208 , or graphical user interface 210 .
[0051] Figure 3 is a block diagram illustrating an example of a process 300 for updating a thermal profile based on a context. The process 300 may be interactive (e.g., based on user input via a graphical user interface, such as Figure 2A-2E ) or non-interactively (e.g., based on automatic selection of a thermal profile). At block 302, process 300 includes obtaining a thermal profile. For example, electronic device 100 may obtain a thermal profile from a file stored in Figure 1The thermal profile is obtained from a plurality of thermal profiles shown in the thermal profile database 122. The thermal profile may be configured to or have settings specific to the electronic device 100 (eg, how to modify the operation of the computing component 110 and / or which components to use for a given context).
[0052] At block 304, process 300 includes determining whether there is a change in context. For example, as described herein, thermal management engine 120 may determine that a context change has occurred based on sensor data from sensor 106, camera data from camera 104, the location of electronic device 100 relative to the user, the geographic region in which electronic device 110 is located, etc. At block 306, if a context change is detected at block 306, process 300 includes outputting options associated with the change in context and / or the change in thermal profile via a graphical user interface on a display of electronic device 100. In one example, these options may allow the user to interact with, for example, Figure 2A-2E The illustrated graphical user interface interacts to select a new thermal profile and / or temperature threshold, to approve a change to a thermal profile, or to provide other user input associated with a change to a thermal profile.
[0053] In some aspects, the manner in which the user interacts with the graphical user interface in conjunction with changing the thermal profile may occur in stages. For example, during a first stage, the thermal management engine 120 may consider changing the thermal profile via the graphical user interface (e.g., Figure 2A-2E ). In one example, the thermal management engine 120 may receive data based on user selections via a graphical user interface. The thermal management engine 120 may learn or identify a user's preferred settings based on one or more thermal profile selections made by the user via a graphical user interface. Such data may be stored and managed by the thermal management engine 120. For example, a model (e.g., a machine learning model, such as a neural network) may be trained to detect or learn certain patterns of user selections when a specific change in context occurs (e.g., when a specific context occurs, the user always sets the electronic device 100 to a specific thermal profile). The second stage may include the thermal management engine 120 automatically making a thermal profile selection in response to detecting a specific context change. During the second stage, the options presented to the user via the graphical user interface may include a message or notification indicating that a change to a specific thermal profile has occurred. In this scenario, a model may be applied in which a context change pattern is detected and the thermal management engine 120 automatically sets the thermal profile to a new thermal profile that the user desires or that the user traditionally sets. This multi-stage approach is more efficient for the user because the first stage enables the system to learn the user's preferences, which enables the preferred thermal profile to be set in the second stage without user interaction.
[0054] At block 308 , process 300 updates (eg, by selecting or setting) the electronic device 100 to a new thermal profile based on one or more of a context change, a user interaction, or a stored preference that caused thermal management engine 120 to update the thermal profile.
[0055] In some aspects, to control the thermal profile and corresponding temperature thresholds and / or mitigation techniques, a user may perform one or more gestures and / or provide input via one or more software or hardware buttons of the electronic device 400 . Figure 4 406 is a schematic diagram illustrating an example of an electronic device 400 in which input may be provided via an interface 401 and / or hardware buttons 404 and 406 in the electronic device 400. For example, a user may draw a "T" shape 402 to initiate or cause a change to a different thermal mode (associated with different thermal profiles and corresponding temperature thresholds). In one illustrative example, a user may input a "T" shape 402 by providing a T-shaped gesture input (e.g., drawing a "T" shape 402 in a field of view of a camera of the electronic device). In such an example, the electronic device 400 may detect a gesture based on one or more images captured by a camera (not shown) of the electronic device 400. In another illustrative example, a user may draw a "T" shape 402 directly on an interface 401 (which may include a touch interface) of the electronic device 400.
[0056] In some cases, for the current context (e.g., an AR / VR context, a camera context, a video context, etc.), such as after drawing the "T" shape 402, the user can press the volume up button 404 to increase the temperature threshold, or press the volume down button 406 to decrease the temperature threshold. In some examples, the user can provide input for increasing or decreasing the temperature threshold by selecting one or a series of buttons such as the volume up button 404 and / or the volume down button 406 in a particular order. In some aspects, such as after drawing the "T" shape 402, the user can draw (e.g., via a gesture in the field of view of the camera of the electronic device 400 or a gesture directly on the touch interface of the electronic device 400) a "+" shape 403 for increasing the temperature threshold or a "-" shape (not shown) for decreasing the temperature threshold.
[0057] Figure 5An example method for maintaining a thermal profile in accordance with the systems and techniques described herein is shown. Process 500 can be performed by an electronic device, such as a mobile device (e.g., a mobile phone or other mobile device), a wearable device, an extended reality (XR) device (e.g., a virtual reality (VR) device, an augmented reality (AR) device, or a mixed reality (MR) device), a head mounted device (HMD) device, a wireless communication device, a camera, a personal computer, a laptop computer, a server computer, a vehicle or a computing device or component of a vehicle, another device, or a combination thereof.
[0058] At block 502, the electronic device (or a component thereof) may set the electronic device to a first thermal profile based on a first context associated with the electronic device. The first context may be associated with one of a cellular telephone mode of the electronic device, a gaming mode of the electronic device, an augmented reality mode of the electronic device, a video conferencing mode of the electronic device, or a video mode of the electronic device.
[0059] At block 504, the electronic device (or a component thereof) may receive a context change indicating that the electronic device is associated with a second context. In some aspects, the context change is manually set based on user input received via a graphical user interface (e.g., setup screen 202, graphical user interface 204, graphical user interface 206, graphical user interface 208, or graphical user interface 210). In some cases, the electronic device (or a component thereof) may automatically detect the context change (e.g., based on detecting a change from a gaming application to a camera application).
[0060] At block 506, the electronic device (or a component thereof) may set the electronic device to a second thermal profile based on the second context. The second context may be associated with a different one (compared to the first context) of a cellular phone mode, a gaming mode, an augmented reality mode, a video conferencing mode, and a video mode. In some aspects, the electronic device (or a component thereof) may further set the electronic device to the second thermal profile based on a user input associated with a selection of the second thermal profile.
[0061] In some aspects, an electronic device (or its component) may output multiple options associated with multiple contexts associated with the electronic device via a graphical user interface of the electronic device. The multiple contexts in such aspects include at least a first context and a second context. The electronic device (or its component) may receive a first input associated with the selection of an option corresponding to a second context via a graphical user interface. The electronic device (or its component) may output multiple options associated with multiple thermal profiles via a graphical user interface based on receiving the first input. In such a case, the multiple thermal profiles may include at least a first thermal profile and a second thermal profile. The electronic device (or its component) may receive a second input associated with the selection of an option corresponding to a second thermal profile via a graphical user interface. The electronic device (or its component) may then set the electronic device to a second thermal profile based on receiving the second input.
[0062] In some cases, the electronic device (or its component) may receive a gesture input from a user via the electronic device. The electronic device (or its component) may set the electronic device to a thermal regulation mode based on the gesture input. When in the thermal regulation mode, the electronic device (or its component) may receive additional user input via the electronic device. In some examples, the additional user input is received via one or more physical buttons of the electronic device. The electronic device (or its component) may then also set the electronic device to a second thermal profile based on the additional user input.
[0063] In some aspects, the electronic device (or a component thereof) may output a notification via a graphical user interface of the electronic device indicating a potential change in performance of an application based on setting the electronic device to the second thermal profile.
[0064] In some cases, the electronic device (or a component thereof) may select the second thermal profile for use with the electronic device based on at least one previous selection of the second thermal profile made via a graphical user interface. In some examples, the electronic device (or a component thereof) may output a notification indicating selection of the second thermal profile for use with the electronic device via a graphical user interface.
[0065] In some examples, the processes described herein (e.g., process 300 and process 500) can be performed by one or more computing devices or apparatuses. For example, as described above, process 500 can be performed by an electronic device (e.g., a mobile device, an XR device, etc.). In one illustrative example, the processes described herein (e.g., process 300 and / or process 500) can be performed by Figure 1 In some examples, the processes described herein (eg, process 300 and / or process 500) may be performed by a user having Figure 6The computing device architecture 600 shown in the figure may be executed by one or more computing devices. In some cases, such a computing device or apparatus may include a processor, a microprocessor, a microcomputer, or other components of a device configured to perform the steps of process 300 and / or process 500. In some examples, such a computing device or apparatus may include one or more sensors configured to capture image data and / or other sensor measurements. For example, a computing device may include a smart phone, a head-mounted display, an electronic device, or other suitable device. In some examples, such a computing device or apparatus may include a camera configured to capture one or more images or videos. In some cases, such a computing device may include a display for displaying an image. In some examples, one or more sensors and / or cameras are separated from the computing device, in which case the computing device receives the sensed data. Such a computing device may also include a network interface configured to transmit data.
[0066] The components of the computing device may be implemented in circuits. For example, these components may include and / or may be implemented using electronic circuits or other electronic hardware, which may include one or more programmable electronic circuits (e.g., microprocessors, graphics processing units (GPUs), digital signal processors (DSPs), central processing units (CPUs), and / or other suitable electronic circuits), and / or these components may include and / or may use computer software, firmware, or any combination thereof and / or be implemented using computer software, firmware, or any combination thereof to perform the various operations described herein. The computing device may also include a display (a display may be included as an example of an output device or in addition to an output device), a network interface configured to communicate and / or receive data, any combination thereof, and / or other components. The network interface may be configured to communicate and / or receive data based on an Internet Protocol (IP) or other types of data.
[0067] Process 300 and process 500 are illustrated as a logical flow diagram, the operations of which represent a sequence of operations that can be implemented in hardware, computer instructions, or a combination thereof. In the context of computer instructions, the operations represent computer-executable instructions stored on one or more computer-readable storage media that, when executed by one or more processors, perform the operations. Typically, computer-executable instructions include routines, programs, objects, components, data structures, etc. that perform specific functions or implement specific data types. The order of the operations described is not intended to be construed as limiting, but rather any number of the described operations may be combined in any order and / or in parallel to implement the processes.
[0068] Additionally, the processes described herein (e.g., process 300 and / or process 500) may be performed under the control of one or more computer systems configured with executable instructions, and may be implemented by hardware or a combination thereof as code (e.g., executable instructions, one or more computer programs, or one or more applications) that is collectively executed on one or more processors. As described above, the code may be stored on a computer-readable or machine-readable storage medium, for example, in the form of a computer program that includes multiple instructions that may be executed by one or more processors. The computer-readable or machine-readable storage medium may be non-transitory.
[0069] Figure 6 An example computing device architecture 600 is shown for an example computing device that can implement the various techniques described herein. For example, the computing device architecture 600 can implement Figure 1 6. The components of computing device architecture 600 are shown in electrical communication with each other using connections 605, such as a bus. Example computing device architecture 600 includes a processing unit (CPU or processor) 610 and computing device connections 605 that couple various computing device components including computing device memory 615, such as read-only memory (ROM) 620 and random access memory (RAM) 625, to processor 610.
[0070] The computing device architecture 600 may include a cache of high-speed memory directly connected to the processor 610, adjacent to the processor 610, or integrated as part of the processor 610. The computing device architecture 600 may copy data from the memory 615 and / or the storage device 630 to the cache 612 for fast access by the processor 610. In this way, the cache can provide a performance improvement that avoids delays in the processor 610 while waiting for data. These modules and other modules can control or be configured to control the processor 610 to perform various actions. Other computing device memories 615 may also be used. The memory 615 may include multiple different types of memories with different performance characteristics. The processor 610 may include any general-purpose processor and hardware or software services stored in the storage device 630 and configured to control the processor 610, as well as a special-purpose processor in which software instructions are incorporated into the processor design. The processor 610 may be a self-contained system including multiple cores or processors, buses, memory controllers, caches, etc. Multi-core processors may be symmetric or asymmetric.
[0071] To enable user interaction with the computing device architecture 600, the input device 645 can represent any number of input mechanisms, such as a microphone for voice, a touch-sensitive screen for gesture or graphic input, a keyboard, a mouse, motion input, voice, etc. The output device 635 can also be one or more of a plurality of output mechanisms known to those skilled in the art, such as a display, a projector, a television, a speaker device. In some cases, a multi-mode computing device can enable a user to provide multiple types of input to communicate with the computing device architecture 600. The communication interface 640 can generally govern and manage user input and computing device output. There is no limitation to operating on any particular hardware arrangement, and therefore the basic features here can be easily replaced by improved hardware or firmware arrangements that have been developed.
[0072] The storage device 630 is a non-volatile memory and may be a hard disk or other type of computer readable medium that can store computer accessible data, such as a magnetic tape cartridge, a flash memory card, a solid state storage device, a digital versatile disk, a cassette, a random access memory (RAM) 625, a read only memory (ROM) 620, and a mixture thereof. The storage device 630 may include software, code, firmware, etc. for controlling the processor 610. Other hardware or software modules are contemplated. The storage device 630 may be connected to the computing device connection 605. In one aspect, a hardware module that performs a particular function may include a software component stored in a computer readable medium that is combined with a hardware component (such as the processor 610, the connection 605, the output device 635, etc.) required to perform the function.
[0073] The term "computer-readable medium" includes, but is not limited to, portable or non-portable storage devices, optical storage devices, and various other media capable of storing, containing or carrying instructions and / or data. Computer-readable media may include non-transitory media in which data may be stored and which do not include carrier waves and / or transient electronic signals propagated wirelessly or via a wired connection. Examples of non-transitory media may include, but are not limited to, disks or tapes, optical storage media (such as compact disks (CDs) or digital versatile disks (DVDs)), flash memory, memory, or storage devices. Computer-readable media may have codes and / or machine-executable instructions stored thereon, which may represent any combination of procedures, functions, subroutines, programs, routines, subroutines, modules, software packages, classes, or instructions, data structures, or program statements. A code segment may be coupled to another code segment or hardware circuit by passing and / or receiving information, data, independent variables, parameters, or memory contents. Information, independent variables, parameters, data, etc. may be passed, forwarded, or sent via any suitable means including memory sharing, message passing, token passing, network transmission, etc.
[0074] In some embodiments, computer-readable storage devices, media, and memories may include cables or wireless signals containing bit streams, etc. However, when referred to, non-transitory computer-readable storage media explicitly excludes media such as energy, carrier signals, electromagnetic waves, and signals themselves.
[0075] Specific details are provided in the description above to provide a thorough understanding of the embodiments and examples provided herein. However, it will be appreciated by those of ordinary skill in the art that these embodiments can be put into practice without these specific details. For clear explanation, in some instances, the present technology can be presented as including various functional blocks, and each functional block includes equipment, device components, steps or routines in the method implemented with a combination of software or hardware and software. Other components other than those components shown in the accompanying drawings and / or described herein can be used. For example, circuits, systems, networks, processes and other components can be displayed as components in the form of block diagrams, so as not to confuse the embodiments with unnecessary details. In other cases, well-known circuits, processes, algorithms, structures and techniques can be shown without unnecessary details, so as to avoid confusing the embodiments.
[0076] Various embodiments may be described above as a process or method, which is depicted as a flow chart, a schematic diagram of a flow chart, a data flow diagram, a structural diagram or a block diagram. Although a flow chart may describe an operation as a sequential process, many operations may be performed in parallel or simultaneously. In addition, the order of these operations may be rearranged. A process may be terminated when its operation is completed, but there may be additional steps not included in the accompanying drawings. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination may correspond to the function returning to a calling function or a main function.
[0077] The processes and methods according to the examples described above can be implemented using computer executable instructions stored in or otherwise available from a computer readable medium. Such instructions may include, for example, instructions and data that cause or otherwise configure a general-purpose computer, a special-purpose computer, or a processing device to perform a certain function or group of functions. Parts of the computer resources used may be accessible via a network. Computer executable instructions may be, for example, binary files, intermediate format instructions (such as assembly language), firmware, source code. Examples of computer readable media that can be used to store instructions, information used, and / or information created during the method according to the described examples include disks or optical disks, flash memory, USB devices provided with non-volatile memory, network storage devices, etc.
[0078] Devices implementing the processes and methods disclosed herein may include hardware, software, firmware, middleware, microcode, hardware description language, or any combination thereof, and may be implemented in any of a variety of form factors. When implemented in software, firmware, middleware, or microcode, program code or code fields (e.g., computer program products) for performing necessary tasks may be stored in a computer-readable medium or machine-readable medium. The processor may perform the necessary tasks. Typical examples of form factors include laptops, smart phones, mobile phones, tablet devices, or other small form factor personal computers, personal digital assistants, rack-mounted devices, stand-alone devices, etc. The functions described herein may also be embodied in peripheral devices or plug-in cards. As a further example, such functions may also be implemented on circuit boards between different chips or different processes executed in a single device.
[0079] Instructions, media for transmitting such instructions, computing resources for executing them, and other structures for supporting such computing resources are example means for providing the functionality described in this disclosure.
[0080] In the foregoing description, various aspects of the application are described in conjunction with the specific embodiments of the application, but those skilled in the art will recognize that the application is not limited thereto. Therefore, although the illustrative embodiments of the application have been described in detail herein, it should be understood that the inventive concept can be implemented and adopted in many ways, and the appended claims are intended to be interpreted as including such changes, unless limited by the prior art. The various features and aspects of the application described above can be used individually or in combination. In addition, the embodiments can be used in any number of environments and applications outside of those described herein, without departing from the broader spirit and scope of this specification. Therefore, this specification and the accompanying drawings are considered to be illustrative rather than restrictive. For the purpose of illustration, the method is described in a specific order. It should be appreciated that in alternative embodiments, these methods can be performed in an order different from the described order.
[0081] One of ordinary skill will appreciate that the less than ("<") and greater than (">") symbols or terms used herein may be replaced with less than or equal to ("≤") and greater than or equal to ("≥") symbols without departing from the scope of the present specification.
[0082] Where a component is described as being “configured to” perform certain operations, such configuration may be accomplished by, for example, designing electronic circuits or other hardware to perform the operations, by programming electronic circuits (e.g., a microprocessor or other suitable electronic circuits) to perform the operations, or any combination thereof.
[0083] The phrase "coupled to" refers to any component that is physically connected to another component, directly or indirectly, and / or any component that communicates directly or indirectly with another component (e.g., connected to another component via a wired or wireless connection and / or other suitable communication interface).
[0084] Claim language or other language in this disclosure that refers to "at least one of" a group and / or "one or more of" a group means that one member of the group or multiple members of the group (in any combination) satisfies the claim. For example, claim language that refers to "at least one of A and B" or "at least one of A or B" means A, B, or A and B. In another example, claim language that refers to "at least one of A, B, and C" or "at least one of A or B" means A, B, C, or A and B, or A and C, or B and C, or A and B and C. The language "at least one of" a group and / or "one or more of" a group does not limit the group to the items listed in the group. For example, claim language that refers to "at least one of A and B" or "at least one of A or B" may mean A, B, or A and B, and may additionally include items not listed in the group of A and B.
[0085] Various illustrative logic blocks, modules, circuits and algorithmic steps described in conjunction with the examples disclosed herein can be implemented as electronic hardware, computer software, firmware or a combination thereof. In order to clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits and steps have been described above generally according to their functions. Such functions are implemented as hardware or software depending on specific applications and the design constraints imposed on the entire system. Those skilled in the art can implement the described functions in different ways for each specific application, but such implementation decisions should not be interpreted as causing departure from the scope of the application.
[0086] The techniques described herein may also be implemented in electronic hardware, computer software, firmware, or any combination thereof. Such techniques may be implemented in any of a variety of devices, such as general-purpose computers, wireless communication device phones, or integrated circuit devices with multiple uses (including applications in wireless communication device phones and other devices). Any features described as modules or components may be implemented together in an integrated logic device, or implemented separately as discrete but interoperable logic devices. If implemented in software, the technique may be implemented at least in part by a computer-readable data storage medium including program code (including instructions), and when the instructions are executed, one or more of the methods, algorithms, and / or operations described above are executed. The computer-readable data storage medium may form part of a computer program product, which may include packaging materials. The computer-readable medium may include a memory or data storage medium, such as a random access memory (RAM) (such as a synchronous dynamic random access memory (SDRAM)), a read-only memory (ROM), a non-volatile random access memory (NVRAM), an electrically erasable programmable read-only memory (EEPROM), a flash memory, a magnetic or optical data storage medium, and the like. Additionally or alternatively, these techniques may be implemented at least in part by a computer-readable communication medium that carries or communicates program code in the form of instructions or data structures and can be accessed, read, and / or executed by a computer, such as a propagated signal or wave.
[0087] The program code may be executed by a processor, which may include one or more processors, such as one or more digital signal processors (DSPs), general-purpose microprocessors, application-specific integrated circuits (ASICs), field-programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuits. Such a processor may be configured to perform any of the techniques described in this disclosure. A general-purpose processor may be a microprocessor; however, in an alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors combined with a DSP core, or any other such configuration. Therefore, the term "processor" as used herein may refer to any of the foregoing structures, any combination of the foregoing structures, or any other structure or device suitable for implementing the techniques described herein.
[0088] Illustrative aspects of the disclosure include:
[0089] Aspect 1. A method for maintaining a thermal profile, comprising: setting an electronic device to a first thermal profile based on a first context associated with the electronic device; receiving a context change indicating that the electronic device is associated with a second context; and setting the electronic device to a second thermal profile based on the second context.
[0090] Aspect 2. The method according to aspect 1, wherein the context change is manually set based on user input received via a graphical user interface.
[0091] Aspect 3. The method according to any one of aspects 1 to 2, wherein setting the electronic device to the second thermal profile is also based on user input associated with selection of the second thermal profile.
[0092] Aspect 4. The method according to any one of aspects 1 to 3, wherein the context change is automatically detected by the electronic device.
[0093] Aspect 5. The method according to any one of Aspects 1 to 4 further includes: outputting, via a graphical user interface of the electronic device, a plurality of options associated with a plurality of contexts associated with the electronic device, the plurality of contexts including at least a first context and a second context; and receiving, via the graphical user interface, a first input associated with a selection of an option corresponding to the second context.
[0094] Aspect 6. The method according to Aspect 5 further includes: outputting multiple options associated with multiple thermal profiles via a graphical user interface based on receiving a first input, the multiple thermal profiles including at least a first thermal profile and a second thermal profile; receiving a second input associated with a selection of an option corresponding to a second thermal profile via the graphical user interface; and, setting the electronic device to the second thermal profile based on receiving the second input.
[0095] Aspect 7. The method according to any one of Aspects 1 to 6 further includes: receiving gesture input from a user via the electronic device; setting the electronic device to a thermal regulation mode based on the gesture input; receiving additional user input via the electronic device while in the thermal regulation mode; and setting the electronic device to a second thermal profile based on the additional user input.
[0096] Aspect 8. A method according to aspect 7, wherein the additional user input is received via one or more physical buttons of the electronic device.
[0097] Aspect 9. The method according to any one of aspects 1 to 8 further comprises: indicating a notification of a potential change in the performance of the application via a graphical user interface of the electronic device.
[0098] Aspect 10. A method according to any one of Aspects 1 to 9, wherein the first context is associated with one of a cellular telephone mode of the electronic device, a gaming mode of the electronic device, an augmented reality mode of the electronic device, a video conferencing mode of the electronic device, or a video mode of the electronic device, and wherein the second context is associated with a different one of the cellular telephone mode, the gaming mode, the augmented reality mode, the video conferencing mode, and the video mode.
[0099] Aspect 11. The method according to any one of aspects 1 to 10, further comprising: selecting the second thermal profile for the electronic device based on at least one previous selection of the second thermal profile via a graphical user interface.
[0100] Aspect 12. The method according to aspect 11 further comprises: outputting a notification indicating selection of the second thermal profile for the electronic device via a graphical user interface.
[0101] Aspect 13. A device for maintaining a thermal profile, comprising: at least one memory; and at least one processor, the at least one processor coupled to the at least one memory and configured to: set the device to a first thermal profile based on a first context associated with the device; receive a context change indicating that the device is associated with a second context; and, set the device to a second thermal profile based on the second context.
[0102] Clause 14. The apparatus according to clause 13, wherein the context change is manually set based on user input received via a graphical user interface.
[0103] Aspect 15. The apparatus of any one of aspects 13 to 14, wherein the at least one processor is configured to set the apparatus to the second thermal profile further based on user input associated with selection of the second thermal profile.
[0104] Aspect 16. The apparatus according to any one of aspects 13 to 15, wherein the at least one processor is configured to automatically detect a context change.
[0105] Aspect 17. An apparatus according to any one of Aspects 13 to 16, wherein the at least one processor is configured to: output, via a graphical user interface, a plurality of options associated with a plurality of contexts associated with the apparatus, the plurality of contexts including at least a first context and a second context; and receive, via the graphical user interface, a first input associated with a selection of an option corresponding to the second context.
[0106] Aspect 18. An apparatus according to Aspect 17, wherein the at least one processor is configured to: output multiple options associated with multiple thermal profiles via a graphical user interface based on receiving a first input, the multiple thermal profiles including at least a first thermal profile and a second thermal profile; receive a second input associated with a selection of an option corresponding to a second thermal profile via the graphical user interface; and, based on receiving the second input, set the apparatus to the second thermal profile.
[0107] Aspect 19. An apparatus according to any one of Aspects 13 to 18, wherein the at least one processor is configured to: receive gesture input from a user; set the apparatus to a thermal regulation mode based on the gesture input; receive additional user input from the user while in the thermal regulation mode; and also set the device to a second thermal profile based on the additional user input.
[0108] Clause 20. The apparatus of clause 19, wherein the further user input is received via one or more physical buttons of the apparatus.
[0109] Aspect 21. An apparatus according to any one of Aspects 13 to 20, wherein the at least one processor is configured to: based on setting the apparatus to the second thermal profile, output a notification indicating a potential change in the performance of the application via a graphical user interface.
[0110] Aspect 22. An apparatus according to any one of Aspects 13 to 21, wherein the first context is associated with one of a cellular telephone mode of the apparatus, a gaming mode of the apparatus, an augmented reality mode of the apparatus, a video conferencing mode of the apparatus, or a video mode of the apparatus, and wherein the second context is associated with a different one of the cellular telephone mode, the gaming mode, the augmented reality mode, the video conferencing mode, and the video mode.
[0111] Aspect 23. An apparatus according to any one of aspects 13 to 22, wherein the at least one processor is configured to: select the second thermal profile for the apparatus based on at least one previous selection of the second thermal profile via a graphical user interface.
[0112] Aspect 24. The apparatus according to any one of aspects 13 to 23, wherein the at least one processor is configured to: output a notification indicating selection of the second thermal profile for the apparatus via a graphical user interface.
[0113] Aspect 25. A non-transitory computer-readable medium of a computing device having instructions stored thereon, which when executed by one or more processors cause the one or more processors to perform operations according to any one of aspects 1 to 24.
[0114] Aspect 26. An apparatus for maintaining a thermal profile, the apparatus comprising one or more components for performing the operations according to any one of aspects 1 to 24.
Claims
1. A method for maintaining a thermal profile, comprising: setting the electronic device to a first thermal profile based on a first context associated with the electronic device; receiving a context change, the context change indicating that the electronic device is associated with a second context; as well as Based on the second context, the electronic device is set to a second thermal profile.
2. The method according to claim 1, wherein: The context change is manually set based on user input received via a graphical user interface.
3. The method according to claim 1, wherein: Setting the electronic device to the second thermal profile is also based on user input associated with selection of the second thermal profile.
4. The method according to claim 1, wherein: The context change is automatically detected by the electronic device.
5. The method according to claim 1, further comprising: outputting, via a graphical user interface of the electronic device, a plurality of options associated with a plurality of contexts associated with the electronic device, the plurality of contexts including at least the first context and the second context; as well as A first input associated with a selection of an option corresponding to the second context is received via the graphical user interface.
6. The method according to claim 5, further comprising: based on receiving the first input, outputting, via the graphical user interface, a plurality of options associated with a plurality of thermal profiles, the plurality of thermal profiles including at least the first thermal profile and the second thermal profile; receiving, via the graphical user interface, a second input associated with a selection of an option corresponding to the second thermal profile; as well as Based on receiving the second input, the electronic device is set to the second thermal profile.
7. The method according to claim 1, further comprising: receiving gesture input from a user via the electronic device; Based on the gesture input, setting the electronic device to a thermal regulation mode; receiving, via the electronic device, additional user input while in the thermal regulation mode; as well as The electronic device is also set to the second thermal profile based on the additional user input.
8. The method according to claim 7, wherein: The further user input is received via one or more physical buttons of the electronic device.
9. The method according to claim 1, further comprising: Based on setting the electronic device to the second thermal profile, a notification is output via a graphical user interface of the electronic device indicating a potential change in performance of an application.
10. The method according to claim 1, wherein: The first context is associated with one of a cellular telephone mode of the electronic device, a gaming mode of the electronic device, an augmented reality mode of the electronic device, a video conferencing mode of the electronic device, or a video mode of the electronic device, and wherein the second context is associated with a different one of the cellular telephone mode, the gaming mode, the augmented reality mode, the video conferencing mode, and the video mode.
11. The method according to claim 1, further comprising: The second thermal profile is selected for the electronic device based on at least one previous selection of the second thermal profile via a graphical user interface.
12. The method according to claim 11, further comprising: A notification is output via the graphical user interface indicating selection of the second thermal profile for the electronic device.
13. An apparatus for maintaining a thermal profile, comprising: at least one memory; and at least one processor coupled to at least one memory and configured to: setting the device to a first thermal profile based on a first context associated with the device; receiving a context change, the context change indicating that the apparatus is associated with a second context; as well as Based on the second context, the device is set to a second thermal profile.
14. The device according to claim 13, wherein: The context change is manually set based on user input received via a graphical user interface.
15. The device according to claim 13, wherein: The at least one processor is configured to set the apparatus to the second thermal profile further based on user input associated with selection of the second thermal profile.
16. The device according to claim 13, wherein: The at least one processor is configured to automatically detect the context change.
17. The device according to claim 13, wherein: The at least one processor is configured to: outputting, via a graphical user interface, a plurality of options associated with a plurality of contexts associated with the device, the plurality of contexts including at least the first context and the second context; as well as A first input associated with a selection of an option corresponding to the second context is received via the graphical user interface.
18. The device according to claim 17, wherein: The at least one processor is configured to: outputting, via the graphical user interface, a plurality of options associated with a plurality of thermal profiles based on receiving the first input, the plurality of thermal profiles including at least the first thermal profile and the second thermal profile; receiving, via the graphical user interface, a second input associated with a selection of an option corresponding to the second thermal profile; as well as Based on receiving the second input, the device is set to the second thermal profile.
19. The device according to claim 13, wherein: The at least one processor is configured to: Receive user gesture input; Based on the gesture input, setting the device into a thermal regulation mode; receiving further user input from the user while in the thermal regulation mode; as well as The device is also set to the second thermal profile based on the additional user input.
20. The device according to claim 19, wherein The further user input is received via one or more physical buttons of the device.
21. The device according to claim 13, wherein: The at least one processor is configured to: Based on setting the device to the second thermal profile, a notification is output via a graphical user interface indicating a potential change in performance of an application.
22. The device according to claim 13, wherein: The first context is associated with one of a cellular telephone mode of the device, a gaming mode of the device, an augmented reality mode of the device, a video conferencing mode of the device, or a video mode of the device, and wherein the second context is associated with a different one of the cellular telephone mode, the gaming mode, the augmented reality mode, the video conferencing mode, and the video mode.
23. The device according to claim 13, wherein: The at least one processor is configured to: The second thermal profile is selected for the device based on at least one previous selection of the second thermal profile via a graphical user interface.
24. The device according to claim 23, wherein: The at least one processor is configured to: A notification is output via the graphical user interface indicating selection of the second thermal profile for the device.
25. A non-transitory computer-readable medium of an electronic device having instructions stored thereon, the instructions, when executed by one or more processors, causing the one or more processors to: setting the electronic device to a first thermal profile based on a first context associated with the electronic device; receiving a context change, the context change indicating that the electronic device is associated with a second context; as well as The electronic device is set to a second thermal profile based on the second context.
26. The non-transitory computer readable medium of claim 25, wherein: The context change is manually set based on user input received via a graphical user interface.
27. The non-transitory computer-readable medium of claim 25, further comprising instructions that, when executed by the one or more processors, cause the one or more processors to also set the electronic device to the second thermal profile based on user input associated with selection of the second thermal profile.
28. The non-transitory computer-readable medium of claim 25, further comprising instructions that, when executed by the one or more processors, cause the one or more processors to automatically detect the context change.
29. The non-transitory computer-readable medium of claim 25, further comprising instructions that, when executed by the one or more processors, cause the one or more processors to: outputting, via a graphical user interface, a plurality of options associated with a plurality of contexts associated with the electronic device, the plurality of contexts including at least the first context and the second context; and A first input associated with a selection of an option corresponding to the second context is received via the graphical user interface.
30. The non-transitory computer-readable medium of claim 25, further comprising instructions that, when executed by the one or more processors, cause the one or more processors to: Receive user gesture input; setting the electronic device to a thermal regulation mode based on the gesture input; receiving further user input from the user while in the thermal regulation mode; as well as The electronic device is also set to the second thermal profile based on the additional user input.