WO2024253901A2 - Receiver state based antenna tuning - Google Patents
Receiver state based antenna tuning Download PDFInfo
- Publication number
- WO2024253901A2 WO2024253901A2 PCT/US2024/031317 US2024031317W WO2024253901A2 WO 2024253901 A2 WO2024253901 A2 WO 2024253901A2 US 2024031317 W US2024031317 W US 2024031317W WO 2024253901 A2 WO2024253901 A2 WO 2024253901A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- thermal
- mobile device
- signals
- antenna element
- manager
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/32—Multimode operation in a single same satellite system, e.g. GPS L1/L2
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/34—Power consumption
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/35—Constructional details or hardware or software details of the signal processing chain
- G01S19/36—Constructional details or hardware or software details of the signal processing chain relating to the receiver frond end
Definitions
- the present disclosure relates generally to techniques for using communication devices with a global navigation satellite system (GNSS).
- GNSS global navigation satellite system
- a mobile device can use signals from a global navigation satellite system (GNSS) for navigation and other location-based functionality.
- GNSS global navigation satellite system
- the device can calculate time of flight of these signals to determine the device’s location relative to the satellites.
- the mobile device may use different antennas to implement this location-based functionality. For example, some phones have an LI antenna as well as an L5 antenna, which provides increased accuracy. Although they use different frequencies, the antennas can interfere with each other, and thus their tuning may not be independent of each other.
- the user equipment 12 may receive signals from the GNSS satellites 20 and process the signals to determine a global position of the user equipment 12.
- each GNSS satellite 20 may transmit one or more pilot channels alongside a data signal.
- Each pilot channel is a dataless signal transmitted from a corresponding GNSS satellite 20.
- the user equipment 12 may process one or more of the pilot channels from one or more GNSS satellites 20 to determine the position of the user equipment 12.
- the user equipment 12 may generate and maintain respective tracking loops for each pilot channel received from the GNSS satellites 20.
- the user equipment 12 may receive a single pilot channel from a GNSS satellite 20, two pilot channels from a GNSS satellite 20, three pilot channels from a GNSS satellite 20, four pilot channels from a GNSS satellite 20, five pilot channels or more from a GNSS satellite 20, and so on. Additionally, the user equipment 12 may receive pilot channels from more than one GNSS satellite 20 (e.g., up to thirty-five or more satellites).
- the user equipment 12 may include any suitable computing device, including a desktop or notebook computer (e.g., in the form of a MacBook®, MacBook® Pro, MacBook Air®, iMac®, Mac® mini, or Mac Pro® available from Apple Inc. of Cupertino, California), a portable electronic or handheld electronic device such as a wireless electronic device or smartphone (e.g., in the form of a model of an iPhone® available from Apple Inc. of Cupertino, California), a tablet (e.g., in the form of a model of an iPad® available from Apple, Inc. of Cupertino, California), a wearable electronic device (e.g., in the form of an Apple Watch® by Apple Inc.
- a desktop or notebook computer e.g., in the form of a MacBook®, MacBook® Pro, MacBook Air®, iMac®, Mac® mini, or Mac Pro® available from Apple Inc. of Cupertino, California
- a portable electronic or handheld electronic device such as a wireless electronic device or smartphone (e.
- the processor 22 may be operably coupled with a memory 24 and a nonvolatile storage 26 to perform various algorithms.
- Such programs or instructions executed by the processor 22 may be stored in any suitable article of manufacture that includes one or more tangible, computer-readable media.
- the tangible, computer-readable media may include the memory 24 and/or the nonvolatile storage 26, individually or collectively, to store the instructions or routines.
- the memory 24 and the nonvolatile storage 26 may include any suitable articles of manufacture for storing data and executable instructions, such as randomaccess memory, read-only memory, rewritable flash memory, hard drives, and optical discs.
- programs e.g., an operating system
- encoded on such a computer program product may also include instructions that may be executed by the processor 22 to enable the user equipment 12 to provide various functionalities.
- the display 28 may facilitate users to view images generated on the user equipment 12.
- the display 28 may include a touch screen, which may facilitate user interaction with a user interface of the user equipment 12.
- the display 28 may include one or more liquid crystal displays (LCDs), light-emitting diode (LED) displays, organic light-emitting diode (OLED) displays, active-matrix organic light-emitting diode (AMOLED) displays, or some combination of these and/or other display technologies.
- LCDs liquid crystal displays
- LED light-emitting diode
- OLED organic light-emitting diode
- AMOLED active-matrix organic light-emitting diode
- the network interface 34 may include, for example, one or more interfaces for a personal area network (PAN), such as an ultra-wideband (UWB) or a BLUETOOTH® network, for a local area network (LAN) or wireless local area network (WLAN), such as a network employing one of the IEEE 802.1 lx family of protocols (e.g., WI-FI®), and/or a wide area network (WAN), such as any standards related to the Third Generation Partnership Project (3 GPP), including, for example, a third generation (3G) cellular network, a universal mobile telecommunication system (UMTS), a fourth generation (4G) cellular network, a long term evolution (LTE®) cellular network, a long term evolution licenses assisted access (LTELAA) cellular network, a fifth generation (5G) cellular network, New Radio (NR) cellular network, a cellular network beyond 5G, a satellite network, and so on.
- PAN personal area network
- UWB ultra-wideband
- WLAN wireless local area network
- the network interface 34 may include, for example, one or more interfaces for using a Release- 15 cellular communication standard of the 5G specifications that include the millimeter (mmWave) frequency range (e.g., 24.25-300 gigahertz (GHz)) and/or any other cellular communication standard release (e.g., Release-16, Release- 17, any future releases) that define and/or enable frequency ranges used for wireless communication.
- the network interface 34 of the user equipment 12 may allow communication over the aforementioned networks (e.g., 5G, Wi-Fi, LTE-LAA, and so forth).
- the network interface 34 may also include one or more interfaces for, for example, broadband fixed wireless access networks (e.g., WIMAX®), mobile broadband Wireless networks (mobile WIMAX®), asynchronous digital subscriber lines (e.g., ADSL, VDSL), digital video broadcasting-terrestrial (DVB-T®) network and its extension DVB Handheld (DVB-H®) network, ultra-wideband (UWB) network, alternating current (AC) power lines, and so forth.
- broadband fixed wireless access networks e.g., WIMAX®
- mobile broadband Wireless networks e.g., mobile broadband Wireless networks (mobile WIMAX®)
- asynchronous digital subscriber lines e.g., ADSL, VDSL
- DVD-T® digital video broadcasting-terrestrial
- DVD-H® extension DVB Handheld
- UWB ultra-wideband
- AC alternating current
- the network interface 34 includes a cellular transceiver 38.
- the cellular transceiver 38 may support transmission and receipt of various wireless signals via one or more antennas, and thus may include a transmitter and a receiver.
- the power source 36 of the user equipment 12 may include any suitable source of power, such as a rechargeable lithium polymer (Li-poly) battery and/or an alternating (AC) power converter.
- the sensors 37 of the user equipment 12 may include one or more motion sensors, one or more temperature sensors, one or more light sensors, one or more pressure sensors, one or more cameras or image sensors, or any other suitable sensors.
- the motion sensors may include an inertial measurement unit (IMU), a threedimensional accelerometer, a three-dimensional gyroscope, or the like, that may detect a motion of the user equipment 12.
- IMU inertial measurement unit
- the IMU may detect a rotation of the user equipment 12, a rotational movement of the user equipment 12, an angular displacement of the user equipment 12, a tilt of the user equipment 12, an orientation of the user equipment 12, a linear motion of the user equipment 12, a non-linear motion of the user equipment 12, or the like.
- the temperature sensors may include a temperature sensor that may measure a temperature of an oscillator of a GNSS receiver of the user equipment 12, an internal temperature of the user equipment 12, a circuit junction temperature of the user equipment 12, an external temperature of the user equipment 12, or the like.
- Temperature measurements from the temperature sensors can be provided as input to a thermal arbiter executing on processor 22.
- the light sensors may detect a quantity of ambient light external to the user equipment 12.
- the pressure sensors may include, for example, a barometer, that may detect an atmospheric pressure associated with the user equipment 12.
- the sensors 37 may additionally or alternatively include one or more cameras, such as onboard cameras for visual inertial odometry and/or other suitable position/location sensing techniques.
- the GNSS receiver 48 may receive GNSS signals from the GNSS satellites 20 and process the signals to determine a global position of the user equipment 12.
- each GNSS satellite 20 may transmit one or more pilot channels alongside a data signal.
- Each pilot channel is a dataless signal transmitted from a corresponding GNSS satellite 20.
- the user equipment 12 may process one or more of the pilot channels from one or more GNSS satellites 20 to determine the position of the user equipment 12.
- the GNSS receiver 48 may process the received pilot channels of the GNSS signals from each GNSS satellite 20 to amplify the power of the pilot channels, generate and maintain tracking loops for each pilot channel, and determine the position of the user equipment 12 based on each pilot channel. For instance, the GNSS receiver 48 may amplify the power of the pilot channels and generate the tracking loop for each pilot channel by performing a series of signal processing operations based on the received pilot channel. The GNSS receiver 48 may then perform a radio frequency (RF) down-conversion operation, a sampling operation, a Doppler removal operation, a coherent signal integration operation, and a non-coherent summation operation based on the received pilot channel.
- RF radio frequency
- the GNSS receiver 48 may perform the signal processing operations in different sequences than the sequence described, and certain operations may be skipped or not performed altogether.
- the GNSS receiver 48 may include a frequency stability prediction engine, which may be implemented as hardware (e.g., circuitry), software (e.g., instructions stored in the memory 24 and/or the nonvolatile storage 26), or both (e.g., as logic).
- a frequency stability prediction engine may be implemented as hardware (e.g., circuitry), software (e.g., instructions stored in the memory 24 and/or the nonvolatile storage 26), or both (e.g., as logic).
- the GNSS receiver 48 integrates the pilot channel over a coherent period of time to generate a resulting signal with a particular signal to noise ratio (SNR). Thereafter, during the non-coherent summation operation, the resulting signal is squared to increase the signal gain.
- SNR signal to noise ratio
- a higher SNR in the resulting signal generated from the coherent signal integration operation will minimize a squaring loss that is incurred in the resulting signal from squaring the noise present in the resulting signal during the noncoherent summation operation.
- the quality of the signal is increased, thereby increasing an accuracy in determining the position of the user equipment.
- the frequency stability prediction engine of the GNSS receiver 48 may dynamically adjust the coherent period of time for performing the coherent signal integration operation against the pilot channel of the GNSS signal based on various types of data associated with the user equipment 12.
- the frequency stability prediction engine of the GNSS receiver 48 may receive data from one or more sensors 37 associated with the user equipment 12 that are indicative of current and/or expected conditions associated with the user equipment 12 (e.g., motion, temperature, light, pressure, and so on).
- the data may be indicative of a temperature associated with the reference oscillator of the GNSS receiver 48, the user equipment, or both; an expected change in temperature associated with the reference oscillator of the GNSS receiver 48, the user equipment, or both; a motion associated with the reference oscillator of the GNSS receiver 48, the user equipment, or both; an expected change in motion associated with the reference oscillator of the GNSS receiver 48, the user equipment, or both; or the like.
- the user equipment 12 may determine a current motion associated with the user equipment 12 or an expected motion associated with the user equipment 12 based on data from the sensors 37. For instance, the user equipment 12 may determine an orientation, a position, or both, of the user equipment 12 with respect to a user of the user equipment 12. The user equipment 12 may determine that the orientation or the position of the user equipment 12 is indicative of a stationary orientation or position of the user equipment 12, a changing orientation or position of the user equipment 12, or the like.
- the user equipment 12 may determine that the user is holding the user equipment 12 in a hand of the user, the user is walking with the user equipment 12 in a hand of the user, the user is jogging with the user equipment 12 in a hand of the user, the user is running with the user equipment 12 in a hand of the user, the user is carrying the user equipment 12 in a pocket of the user, the user is walking with the user equipment 12 in a pocket of the user, the user is jogging with the user equipment 12 in a pocket of the user, the user is running with the user equipment 12 in a pocket of the user, the user is driving a vehicle with the user equipment 12 in the vehicle, and the like.
- the frequency stability prediction engine of the GNSS receiver 48 may receive data indicative of the orientation or the position of the user equipment 12 from the user equipment 12 (e.g., the processor 22, the memory 24, the nonvolatile storage 26).
- the frequency stability prediction engine of the GNSS receiver 48 may also receive other suitable types of data or information from the user equipment 12 that are indicative of factors that may affect the pilot channel of the GNSS signal during the coherent signal integration operation. For instance, the frequency stability prediction engine of the GNSS receiver 48 may receive data indicative of an upcoming transmission from an antenna associated with the user equipment 12, data indicative of a powering down of an antenna associated with the user equipment 12, data indicative of a powering on of a cellular power amplifier associated with the user equipment 12, data indicative of a powering down of a cellular power amplifier associated with the user equipment 12, or the like. The frequency stability prediction engine may receive information indicating the current or predicted oscillator temperature from the thermal manager (e.g., thermal manager 545).
- the thermal manager e.g., thermal manager 545
- the frequency stability prediction engine of the GNSS receiver 48 may determine a corresponding period of time (e.g., a coherent period of time) for performing the coherent signal integration operation (e.g., coherent operation) against the pilot channel of the GNSS signal.
- the frequency stability predication engine of the GNSS receiver 48 may compare the data received from the user equipment 12 pre-defined values of the coherent period of time (e.g., stored in a look-up table in the memory 24 or the nonvolatile storage 26).
- the different values for the coherent period of time may be associated with one or more data inputs indicative of the respective factors that may affect the pilot channel of the GNSS signal during the coherent signal integration operation.
- the values of the coherent period may be pre-determined by a manufacturer of the user equipment 12.
- the user equipment 12 may receive one or more updates to the values over time to update the values of the coherent period that correspond to the data inputs indicative of the respective factors that may affect the pilot channel of the GNSS signal during the coherent signal integration operation.
- the GNSS receiver 48 may perform the coherent signal integration against the pilot channel of the GNSS signal using the determined coherent period of time.
- the coherent period of time for performing the coherent signal integration operation may be adjusted to account for current and/or expected conditions associated with the user equipment 12.
- a higher SNR of the resulting signal may be obtained.
- the squaring loss that is incurred in the resulting signal from squaring any noise present in the resulting signal during the subsequent non-coherent summation operation may be decreased or minimized, thereby increasing the quality of the signal for determining the position of the user equipment 12.
- the user equipment 12 may also have one or more antennas 46A-46N (collectively 46) electrically coupled to the cellular transceiver 38, and one or more antennas 50A-50N (collectively 50) electrically coupled to the GNSS receiver 48.
- the antennas 46, 50 may be configured in an omnidirectional or directional configuration, in a single-beam, dualbeam, or multi-beam arrangement, and so on.
- Each antenna 46, 50 may be associated with one or more beams and various configurations.
- multiple antennas of the antennas 46, 50 of an antenna group or module may be communicatively coupled to a respective transceiver 38 or the GNSS receiver 48 and each emit radio frequency signals that may constructively and/or destructively combine to form a beam.
- the user equipment 12 may include multiple transmitters, multiple receivers, multiple transceivers, and/or multiple antennas as suitable for various communication standards.
- the various components of the user equipment 12 may be coupled together by a bus system 54.
- the bus system 54 may include a data bus, for example, as well as a power bus, a control signal bus, and a status signal bus, in addition to the data bus.
- the components of the user equipment 12 may be coupled together or accept or provide inputs to each other using some other mechanism.
- Navigation with a global navigation satellite system can begin with an acquisition mode (e.g., acquisition state).
- acquisition mode e.g., acquisition state
- ranging measurements are determined by an electronic device using tracked satellite signals. These ranging measurements can include time- of-flight estimates for signals sent from the satellite to the mobile device.
- a position can be determined, and a tracking mode (e.g., tracking state) can begin.
- the receiver uses signal processing resources in order to detect the first GNSS satellite. Once the satellite has been detected and a position is determined, the mobile device can transition to a configuration for the tracking mode. Once a first satellite has been detected, the search uncertainty for detection of additional satellites is significantly reduced, and fewer signal processing resources are needed. If a device in the tracking position loses the position (e.g., the uncertainty about the location is above a threshold), the device can return to the acquisition mode from the tracking mode. Thermal stability may be more important during signal acquisition, and the thermal manager may attempt to stabilize the temperature to prepare for signal acquisition.
- the Global Positioning System a type of GNSS
- GPS Global Positioning System
- L5 signal a L5 signal for both acquisition and tracking.
- the LI signal can be processed more quickly than the L5 signal.
- the L5 signal is more powerful and can allow for more precise tracking. Accordingly, using the L5 signal, or a combination of the LI and L5 signal may be desirable for tracking in some circumstances.
- LI signals are signals satellite navigation signals that are broadcast at 1575.42 megahertz (MHz). These signals have a lower chipping rate than the L5 signals, and LI signals can be processed more rapidly.
- the lower chipping rate e.g., approximately 1/10 th of the L5 chipping rate
- LI signals can be processed considerably faster than a L5 signal. Because of the difference in chipping rates, processing a LI signal may involve processing five to ten times fewer samples than processing a L5 signal.
- LI signals have shorter primary codes than L5 signals which means that analyzing LI signals is less complex than analyzing L5 signals.
- L5 signals may be advantageous in some circumstances.
- the L5 signal which is a satellite navigation signal broadcast at 1176 MHz, is has a higher power than LI signals. Accordingly, the L5 signal can have similar detection performance with a lower integration time when compared to the LI signal.
- the L5 signal has a secondary code, which can complicate acquisition, but can simplify data synchronization.
- the simplified data synchronization can simplify the transition from acquisition to tracking.
- the complexity of the L5 signal means that the L5 signal can provide more precise location tracking than the LI signal. For example, the uncertainty for ranging measurements with L5 signals can be on the order of ten times lower than for ranging with LI signals. Accordingly, there may be benefits to using the LI signal for acquisition and the L5 signal for tracking.
- a GNSS enabled device can use a cross ambiguity function (CAF) to identify the presence of a satellite signal in a received signal.
- CAF cross ambiguity function
- Each GNSS satellite can be assigned a particular code (e.g., a spread spectrum code) so that multiple satellite signals can be detected from a received signal.
- the code is used to modulate a carrier signal, transmitted by the satellite, which carries the code information from the satellite to receivers.
- the received signal is multiplied by the carrier signal and a locally generated code. This result is integrated within a coherent integration time (e.g., a fixed time period), and the integrated result indicates the degree of similarity between the code of the received signal and the local code.
- the presence of a satellite can be determined if the similarity is above a threshold. More detailed discussion of the cross-ambiguity function and signal acquisition can be found at Foucras, Myriam & Leclere, Jerome & Botteron, Cyril & Julien, Olivier & Macabiau, Christophe & Farine, Pierre- Andre & Ekambi, Bertrand. (2017). Study on the cross-correlation of GNSS signals and typical approximations. GPS Solutions. 21. 293-306. 10.1007/S10291-016-0556-7.
- FIG. 4 is a graph 400 showing the output of a cross ambiguity function (CAF) during GNSS signal acquisition according to various embodiments. Multiple copies of the local code, with varying doppler frequencies and delays, can be compared to the received signal.
- the x-axis can be the doppler frequency in hertz (Hz)
- the y-axis can be the delay in seconds
- the z-axis can be the output of a cross-ambiguity function.
- the output from the crossambiguity function can be used to identify the presence of known GNSS signals in a received signal during the acquisition stage.
- Signal acquisition involves determining whether particular GNSS signals are present in a received signal.
- different local copies of known GNSS codes modulated by a local carrier signal, are compared to the received signals using the crossambiguity function. These modulated codes can be referred to as local signals.
- the local signals can include multiple iterations of the known GNSS codes at different doppler frequency offsets and time offsets.
- a doppler frequency offset can be a difference in the frequency of successive local signals, and a time offset can be a difference in the time delay of successive local signals.
- a peak 402 in the cross-ambiguity function output can indicate that the received signal includes a GNSS signal corresponding to that particular local signal.
- the peak 402 can be the global maximum, a local maximum, or a cross-ambiguity function output with a magnitude that is above a threshold.
- the similarity of the received signal and the local codes/carrier signals is represented by the amplitude of the cross-ambiguity function. This amplitude increases over the coherent integration time as a larger proportion of the signals are input to the cross-ambiguity function.
- the use of doppler frequency and time delay in the acquisition stage can make this stage vulnerable to thermal oscillator instability because locally generated code/carrier signal and the received signal may have to align both in time and frequency for at least part of the coherent integration time.
- Changes in the GNSS enabled device’s oscillator frequency can mean that the alignment of the local codes/carrier signals and the received signal are unstable, and a cross ambiguity function peak cannot form (e.g., the received code is compared to multiple local codes during the coherent integration time so that the aggregate similarity, e.g., CAF amplitude, is low).
- Thermal management can include stabilizing an oscillator’s temperature during GNSS signal acquisition.
- the oscillator can efficiently perform signal acquisition at elevated temperatures as long as the rate of change in temperature (e.g., temperature fluctuations) are minimized.
- a thermal manager can identify thermal antagonists (e.g., thermal processes; processes that cause a change in the temperature during execution) and control their execution to stabilize the oscillator’s temperature.
- a mobile device may alter antennas’ tuning states during GNSS tracking or in response to an event.
- the mobile device’s antennas can be optimized for different signal types based on the tuning states. Changing the tuning states can allow the mobile device to perform tasks such as signal acquisition or tracking. In addition, changes to the tuning states can allow the mobile device to mitigate the effects of various events such as the device entering a thermal state.
- FIG. 5 is a simplified diagram of an architecture for GNSS navigation according to various embodiments. Processes executing on processor 505 can implement tuning logic and instruct receiver 510 to change the tuning state for one or more antennas. Processor can be part of a mobile device such as user equipment 12.
- receiver 510 can be similar to receiver 58 and processor 505 can be similar to processor 22 described above.
- Instructions to the receiver 510 can be sent by a radio frequency manager 515 and the receiver can connect or disconnect one or more of the tuning bank(s) 520 to the antennas 525a-525n in response to the instructions. Changing the tuning bank(s) 520 can change the tuning state for the antennas 525a-525n.
- the tuning logic can be implemented by the coexistence manager 530 which can integrate information from the other processes executing on processor 505 to make decisions about changing the tuning state. Upon determining that the tuning state should change, the coexistence manager 530 can instruct the radio frequency manger to change the tuning state for antennas 525a-525n.
- the tuning logic can include changing the tuning state based on the GNSS mode (e.g., acquisition, or tracking), the thermal state (e.g., thermal event; whether temperature is stable or fluctuating), or the power state of the mobile device (e.g. the charge in the device’s battery; whether the device is charging).
- the location manager 535 can request location functionality from the coexistence manager 530.
- the location manager 535 can receive a request for location functionality from one or more application(s) 540.
- the location manager can request information about signals received at the antennas 525a-525n from the location manager 535.
- the coexistence manager 530 can request that the radio frequency manager 515 acquire a connection with a satellite and perform tracking.
- the request from the coexistence manager 530 can include an instruction to change the tuning state or tracking mode depending on the current tracking mode.
- the coexistence manager 530 can change the tuning state in response to a detected or predicted thermal event. For instance, some devices can struggle to process L5 signals during a thermal event. Accordingly, the coexistence manager 530 may instruct the radio frequency manager 515 to receive LI signals instead of L5 signals in response to a thermal event detected by the thermal manager 545. In addition, the coexistence manager 530 can change the characteristics of the acquisition stage to optimize for the presence or absence of a thermal state. For example, the coexistence manager may cause the doppler frequency offsets or the time offsets to change in response to a thermal state. A smaller doppler frequency offset or a smaller time offset may be desirable when a mobile device is not in a thermal state.
- Thermal manager 545 can predict thermal events by identifying thermal processes that are scheduled for execution in some embodiments.
- the thermal manager 545 can use an instruction from application(s) 540 to prepare for a thermal state.
- an application can inform the thermal manager 545 that GNSS location services are scheduled, and the thermal manager can begin to stabilize the device’s temperature.
- the 1 application scheduling information can be provided to the thermal manager 545 by a scheduler 570.
- the thermal manager 545 can use a machine learning model to identify thermal processes.
- the model can use temperature information and application information for the mobile device as input to a model for detecting or predicting a thermal process.
- a thermal process can be predicted if the probability of a temperature change during the process’ execution, as determined by the model, is above a threshold.
- the features input to the model can include the current device temperature and a rate of change in the device temperature during the process’ execution.
- the thermal manager 545 can use additional sources of information to identify thermal processes.
- the information used to identify thermal processes can be provided to the machine learning model can be feature vectors (e.g., an ordered list of numeric properties).
- the features in a feature vector can include any combination of: the type of applications running (e.g., streaming, video game, social networking, video conference, etc.), calendar (e.g.
- upcoming tasks for user showing upcoming tasks for user), the type of system tasks pending (ML model inferences, compute bound tasks, graphics bound tasks, input/output IO bound tasks, etc.), the cellular bands available to the mobile device, the availability of WiFi networks to the mobile device, Bluetooth connection status for the mobile device, display status for the mobile device (e.g., on/off), current thermal sensor readings for the mobile device, rate of change of thermal sensors of the mobile device, the mobile device’s location (e.g., indoor/outdoor), the ambient temperature, the time of day, etc.
- the thermal manager 545 can use one or more rules to identify thermal processes. For example, the thermal manager 545 can compare temperature information and application information against rules. The comparison can be used to identify whether a thermal event has occurred or to predict a thermal event. A device temperature, or the temperature’s rate of change, can be compared against a threshold (e.g., a rule) to determine if a thermal state is likely to occur. In some embodiments, some processes may be known to cause thermal states based on past monitoring, a hardware manufacturer identifying the process as likely to cause a thermal state, or a software vendor identifying the process as likely to cause a thermal state. A rule can cause the thermal manager 545 to stabilize the temperature in response to such a process reaching a particular queue position.
- a threshold e.g., a rule
- the thermal manager 545 can control the execution of these thermal processes to maintain a stable device temperature (e.g., to perform thermal management). During thermal management, the thermal manager 545 can monitor the temperature of the mobile device using a thermometer 550 or by observing the frequency of oscillator 565. In some embodiments, the thermal manager 545 can monitor multiple thermometers at different locations in a mobile device.
- the thermal manager can monitor application(s) 540 to determine how to control the process’ execution, and this monitoring can include one or more of which applications are being used, the priority of these applications, the number of scheduled processes for each application, the priority for each scheduled process, the thermal score for the processes, and the number of applications executing on the processor 505. Thermal scores are described below in more detail in section V.A.4.
- the charge in a mobile device’s battery may be used to determine the device’s tuning state and during thermal management.
- a device with low battery life e.g., a battery charge that is below a threshold
- thermal management may involve starting or stopping battery charging.
- the power manager 555 can monitor the battery capacity of the battery 560. Processing some signal types may be more energy efficient than processing other signal types. For instance, processing L5 signals may be more energy demanding than processing LI signals. Accordingly, the power manager 555 can monitor the battery 1060 to determine if the battery capacity is below the threshold (e.g., the device is in a low power state). The power manager 555 can notify the coexistence manager 530 that the device is in a low power state. Accordingly, the coexistence manager 530 may instruct the radio frequency manager 515 to receive LI signals instead of L5 signals in response to the low power state.
- the thermal manager 545 may use information about the capacity of battery 560 to determine if temperature stabilization is feasible. For example, the thermal manager 545 may begin to stabilize temperature if power manager 555 instructs the thermal manager 545 that the charge of battery 560 is above a threshold.
- thermal stabilization can include maintaining an elevated temperature through the execution of a dummy operation. If the thermal manager 545 receives information indicating that the charge of battery 560 is below a threshold, or if the rate of decrease of the charge of battery 560 is above a threshold, then the thermal manager 545 may determine that thermal stabilization is not feasible.
- a mobile device may experience elevated temperature during charging, and, accordingly, the thermal manager 545 may halt charging to stabilize the device’s temperature.
- the thermal manager may implement thermal management by monitoring and controlling components in the mobile device.
- the coexistence manager and/or scheduler can provide the thermal manager with information about processes executing on the mobile device.
- the thermal manager can use these components to identify thermal processes that are scheduled for execution.
- the thermal manager can control the execution of these processes to maintain a stable temperature.
- FIG. 6 is a sequence diagram 600 showing thermal management according to at least one embodiment.
- the thermal manager 602 can receive a notification that an acquisition stage is scheduled.
- This notification can be provided by the coexistence manager 604.
- the notification may identify the process requesting location services.
- the coexistence manager 604 may receive a request for location services from a location manager.
- the coexistence manager 604 can inform the thermal manager 602 that location services are anticipated.
- the notification can identify when the acquisition stage might occur.
- the notification may include a queue position for the process or an estimated execution time for the process (e.g., an estimated time when the process might execute).
- the thermal manager 602 may request the queued processes from the scheduler 606.
- the queued processes can be requested at regular intervals, and the request can identify the requested number of queued processes.
- the queued processes can be received at the thermal manager 602 from the scheduler 606.
- the processes can be the processes that will execute in a particular time period, or a fixed number of processes from the queue (e.g., the five processes at the bottom of the queue).
- the thermal manager can identify thermal processes in the queued processes received from the scheduler 606.
- the thermal processes may have been flagged as thermal processes (e.g., by the software developer or phone manufacturer) and the thermal manager 602 can identify the thermal processes by searching a table (e.g., searching the table using identifiers for the received processes).
- the thermal managers may identify thermal processes by providing the received processes as input to a machine learning model or comparing the received processes to a set of rules.
- the thermal manager 602 does not request the notification at SI, and the thermal manager can determine that an acquisition stage is scheduled using the queued process received from the scheduler 606.
- thermal stabilization can begin.
- Thermal stabilzation can involve maintaining the mobile device’s temperature within a threshold.
- the thermal stabilzation can begin in response to the identified thermal processes at S4 or thermal stabilization may begin in response to a notification from the coexistence manager 604 that a GNSS acquisition stage has begun.
- S6- S8 can be repeated until the thermal stabilization ends at S9, and these steps can be performed in any order during thermal stabilization (e.g., simultaneously, sequentially, etc.).
- the thermal manager 602 can request a temperature from a thermometer 608.
- the thermometer may be one or more different thermometers located within the mobile device.
- the thermal manager may request an oscillator frequency from an oscillator.
- the temperature can be received at the thermal manager 602 from the thermometer 608.
- the temperature can be returned in response to the request at S6.
- the request can specify a sampling rate for the temperature and the thermometer 608 can send temperature readings to the thermal manager 602 at the specified rate.
- the thermal manager 602 can control the execution of the thermal processes.
- the thermal manager 602 can instruct the scheduler 606 or the coexistence manager 604 to extend the execution of a particular process for the duration of the thermal stabilzation.
- the thermal manager 602 may control the execution by changing the queue position for thermal processes. For example, a thermal process that is scheduled for execution may be delayed until the end of thermal stabilization.
- the thermal manager 602 may end thermal stabilization.
- the thermal stabilization may end because the thermal manager 602 determines that the GNSS acquisition stage has ended.
- the thermal manager 602 monitors the execution state of queued processes during thermal management.
- the thermal manager 602 may use this monitoring to determine that the acquisition stage has ended.
- the coexistence manager 604 may instruct the thermal manager that acquisition has ended.
- the mobile device can change the tuning state depending on the desired signal type.
- the antenna is connected to tuning banks that can be changed based on whether the mobile device is measuring LI signals, L5 signals, or L1+L5 signals.
- the antenna can be tuned in response to a thermal state in some embodiments.
- FIG. 7 shows a simplified diagram 700 of a receiver according to various embodiments.
- Tuning banks 705 can comprise inductors and capacitors that can be connected to a LI antenna 710 or a L5 antenna 715.
- Antenna tuning may not be independent for the LI antenna 710 or the L5 antenna 715.
- tuning the LI antenna 710 to improve the reception of LI signals can reduce the efficiency of receiving L5 signals on the L5 antenna 715.
- Tuning of the antennas can be controlled by the RF frequency manager 720.
- RF chains can be configured to process different types of signals.
- a LI RF chain 725 can be configured to process LI signals received at the antennas
- a L5 radio frequency chain 730 can be configured to process L5 signals received at the antennas.
- the RF chains may be turned off when they are not in use in order to conserve power. For instance, If the tuning banks 705 has tuned the LI antenna 710 to receive LI signals but the L5 antenna 715 has not been tuned to receive L5 signals, the LI RF chain 725 may be turned on while the L5 RF chain 730 may be turned off.
- Turning off a particular RF chain can cause delays in switching between signal types because it can take 700 milliseconds to turn on and provision a RF chain. Accordingly, received a 700-millisecond delay in processing received signals can be added if the corresponding RF chain has been turned off. Therefore, it may be advantageous to keep both the LI RF chain 725 and the L5 RF chain 730 powered on to improve responsiveness when switching between signal types. To conserve power, a mobile device may turn off RF chains that are not currently being used when the mobile device is in a low power state.
- both RF chains may be powered on if the tuning banks 705 are configured so that the LI antenna 710 and the L5 antenna 715 can both receive signals (e.g., a L1+L5 configuration).
- the RF chains can include radio frequency elements such as low-noise amplifiers (LNAs), filters, and mixers for the received signals.
- LNAs low-noise amplifiers
- a thermal manager e.g., thermal manager 545) may control whether the RF chains are turned on or off in order to manage the temperature of the mobile device.
- the signals can be converted from an analog signal to a digital signal by analog to digital (A2D) converters.
- the LI or L5 signals are received at the antennas as analog signals and the analog to digital converters 735 can convert these into a digital baseband signal.
- Global navigation satellite system (GNSS) digital baseband (BB) control 740 can process the digital signals output from the analog to digital converters 735.
- the GNSS digital BB control 740 can control starting and stopping the LI RF chain 725, the L5 RF chain 730, and the analog to digital converters 735.
- the GNSS digital BB control 740 can control starting and stopping the other components in response to instructions received from the RF frequency manager 720.
- Antennas can be tuned to optimize signal acquisition and tracking for GNSS tracking and other location-based functionality.
- tuning state there may be other situations where changing the tuning state is advantageous.
- different signal types may be more energy efficient, and the antenna may be tuned so that the mobile device can conserve power.
- different signal types may be more resistant to interference from thermal events when the device’s oscillator frequency changes due to increased operating temperatures.
- the antenna for a mobile device can be tuned in response to a user input to the device.
- GNSS navigation can be initiated when a user interacts with an application that involves location-based functionality.
- a user may open a map application on a mobile device in order to use the application to navigate to a point of interest.
- the mobile device may not track the device’s location in order to conserve battery life and processing power. Accordingly, the mobile device may begin GNSS navigation, and thermal management, in response to the user’s selection.
- GNSS navigation can include at least two modes: a temperature sensitive acquisition mode and a tacking mode.
- the acquisition mode can begin in response to the user’s interaction with the map application.
- the mobile device can establish a connection with a satellite and determine a position for the device.
- some signal types may allow the mobile device to more efficiently establish a connection with a satellite.
- different signal types may be more resistant to thermal states.
- the LI signal can be useful in the acquisition mode because the LI signal is less complex, and a device can process a LI signal with fewer samples than would be required for a L5 signal.
- the mobile device can operate in an acquisition configuration.
- the mobile device In this acquisition configuration, the mobile device’s antennas can be tuned to receive LI signals.
- the antennas can be tuned though impedance matching by connecting the antenna to one or more tuning banks.
- a tuning bank can be a circuit with inductors or capacitors that are configured to allow for the strongest received signal at a particular range of frequencies.
- the GNSS navigation can proceed to a tracking mode and the mobile device can enter a tracking mode.
- the mobile device may tune its antenna to receive a frequency range than was received in the acquisition mode.
- the mobile device may use LI signals for acquisition and a combination of LI and L5 signals, or just L5 signals, for tracking.
- the tracking mode may be more resistant to unstable temperatures and the mobile device may stop thermal management once the acquisition mode has concluded and the tracking mode has begun.
- a mobile device in tracking mode may need to reestablish a connection with a satellite. For instance, the mobile device may determine that the determined position for the mobile device is not reliable because the uncertainty of the location determined during tracking may be over a threshold or the GPS/ GNSS time uncertainty has increased above a threshold. In such circumstances, the mobile device may return to an acquisition mode in order to reestablish a connection with a satellite. Returning to an acquisition mode can include changing the tuning state for the antenna by changing the tuning bank that is connected to the mobile device’s antenna. In addition, the mobile device may stabilize the device’s temperature in response to returning to the acquisition mode.
- Different signal types may be more energy efficient than other signal types. For instance, processing a LI signal may consume less energy than processing L5 signals. Accordingly, the mobile device may change to tuning states to conserve energy.
- a power manger can monitor the battery capacity (e.g., the amount of energy in the battery) and the power manager can identify low power states when the battery capacity is below a first threshold. In response to the low power state, the mobile device can switch from receiving L5 signals, or a combination of LI and L5 signals, to receiving only LI signals. The device can return to processing L5 signals, or a combination of LI and L5 signals, if the mobile device’s power capacity is above a second threshold. This second threshold can be higher than the first threshold. For instance the first threshold can be at 20% of battery life and the second threshold can be at 80% of battery life.
- a device can determine that the device is in a low power mode and turn off frequency chains (e.g., RF frequency chain 730, RF frequency chain 735) to save power. For example, while transitioning from the acquisition mode to the tracking mode, the device can turn of a first radio frequency chain that is configured to process signals in a first frequency range (e.g., LI signals or L5 signals). The device can turn on a second radio frequency chain that is configured to process signals in the second frequency range (e.g., LI signals or L5 signals).
- a first radio frequency chain that is configured to process signals in a first frequency range
- the device can turn on a second radio frequency chain that is configured to process signals in the second frequency range (e.g., LI signals or L5 signals).
- the mobile device when the mobile device is in an acquisition mode, the mobile device can connect the LI antenna element to circuitry that is configured to tune the LI antenna elements to receive LI signals.
- the mobile device After the initial location has been determined or just the communication channel has been established, the mobile device can connect the L5 antenna elements to circuitry that is configured to receive the combination of LI and L5 signals or just L5 signals.
- different signal types can vary in accuracy, thermal resistance, or energy consumption. Accordingly, the mobile device may tune the antenna for an appropriate signal type based on the device’s current movement, temperature, or battery capacity.
- the LI antenna is used for the acquisition mode but the L5 antenna is not. And the L5 antenna is used for the tracking mode, but the LI antenna is not.
- FIG. 8 is a sequence diagram 800 where LI signals are used for acquisition and L5 signals are used for tracking according to various embodiments. Although FIG. 8 is described with respect to LI and L5 signals and antennas, embodiments can also be used with other types of signals and antennas.
- the acquisition mode can begin.
- the acquisition mode can perform as described herein and as will be understood by the skilled person.
- the processor 802 can cause the LI antenna 804 to forward received signals to processor 802.
- an LI signal can be received at the LI antenna 804 from the satellite(s) 806.
- LI signals can be received from multiple distinct satellite(s) 806 (e.g., GNSS satellites 20).
- the received LI signal can be forwarded to the processor 802.
- the processor 802 can use the received signal to acquire a connection with the satellite(s) 806 and determine a position for the LI antenna 804. Steps S3 and S4 can repeat until a connection is acquired and the sequence may not proceed to S6 until a connection is established.
- the acquisition mode can end and the processor 802 can instruct the LI antenna 804 to stop forwarding received LI signals to the processor 802.
- the processor 802 can disable the LI antenna 804. Disabling the LI antenna 804 can mean disconnecting the tuning bank that was connected to the LI antenna 804 at SI .
- the processor 802 can tune the L5 antenna 808. The processor 802 can tune the L5 antenna 808 by causing the L5 antenna 808 to be connected to an appropriate tuning bank.
- the LI antenna 804 and the L5 antenna 808 can be the same antenna or part of the same antenna array.
- the tracking mode can begin and the processor 802 can cause the L5 antenna 808 to forward received signals.
- a L5 signal can be received at the L5 antenna 808 from the satellite(s) 806.
- multiple L5 signals can be received from different satellite(s) 806.
- the received L5 signal can be forwarded to the processor 802.
- the processor 802 can use the forwarded signal can be used to perform tracking. Tracking can be performed by determining a distance between the L5 antenna 808 and the satellite(s) 806. For example, a time-of-flight measurement for a L5 signal can be used to determine the distance between the L5 antenna 808 and one or more satellite(s) 806. Multiple L5 signals may be needed to track the location for L5 antenna 808 and S10 and SI 1 can be repeated for multiple different satellite(s) 806 for the duration of the tracking mode.
- the LI antenna is used for the acquisition mode and both the LI antenna and the L5 antenna are used for the tracking mode.
- FIG. 9 is a sequence diagram 900 where LI signals are used for acquisition and a combination of LI and L5 signals are used for tracking according to various embodiments.
- FIG. 9 is described with respect to LI and L5 signals and antennas, embodiments can also be used with other types of signals and antennas.
- processor 902 can cause LI antenna 904 to be tuned to receive LI signals.
- the processor can tune the LI antenna 904 by instructing a receiver to connect an appropriate tuning bank (e.g., one of tuning bank(s) 520) to the LI antenna 904, which can comprise an RF chain (e.g., RF chain 725).
- an appropriate tuning bank e.g., one of tuning bank(s) 520
- the LI antenna 904 can comprise an RF chain (e.g., RF chain 725).
- the acquisition mode can begin. The acquisition mode can perform as described herein and as will be understood by the skilled person. As part of the acquisition mode, and the processor 902 can cause the LI antenna 904 to forward received signals to processor 902.
- LI signals can be received at the LI antenna 904 from the satellite 906.
- LI signals can be received from multiple distinct satellite(s) 906 (e.g., GNSS satellites 20).
- the received LI signal can be forwarded to the processor 902.
- the processor 902 can use the received signal to acquire a connection with the satellite 906 and determine a position for the LI antenna 904. Steps S3 and S4 can repeat until a connection is acquired and the sequence may not proceed to S6 until a connection is established.
- the acquisition mode can end and the processor 902 can instruct the LI antenna 904 to stop forwarding received LI signals to the processor 902.
- the processor 902 can disable the LI antenna 904. Disabling the LI antenna 904 can mean disconnecting the tuning bank that was connected to the LI antenna 904 at SI.
- the processor 902 can tune the LI antenna 904 and the L5 antenna 908 together.
- the LI antenna 904 and the L5 antenna 908 can be configured so that both LI and L5 signals can be received.
- the processor 902 can tune the LI antenna 904 and the L5 antenna 908 by causing the LI antenna 904 and the L5 antenna 908 to be connected to appropriate tuning banks.
- the LI antenna 904 and the L5 antenna 908 can be the same antenna or part of the same antenna array.
- the tracking mode can begin and the processor 902 can cause the LI antenna 904 and the L5 antenna 908 to forward received signals.
- a LI or L5 signal can be received at the LI antenna 904 or the L5 antenna 908 from the satellite(s) 906.
- multiple LI or L5 signals can be received from different satellite(s) 906.
- the received LI or L5 signal can be forwarded to the processor 902.
- the processor 902 can use the forwarded signal can be used to perform tracking. Tracking can be performed by determining a distance between the LI antenna 904 or the L5 antenna 908 and the satellite(s) 906. For example, a time-of-flight measurement for a LI or L5 signal can be used to determine the distance between the LI antenna 904 or the L5 antenna 908 and one or more satellite(s) 206. Multiple LI or L5 signals may be needed to track the location for LI antenna 904 or the L5 antenna 908 and S10 and SI 1 can be repeated for multiple different satellite(s) 906 for the duration of the tracking mode.
- FIG. 10 is a flowchart illustrating a method 1000 for performing antenna tuning according to various embodiments.
- one or more method blocks of FIG. 10 may be performed by a mobile device (e.g., user equipment 12, electronic device 1200).
- one or more method blocks of FIG. 10 may be performed by another device or a group of devices separate from or including the mobile device. Additionally, or alternatively, one or more method blocks of FIG.
- processor 10 may be performed by one or more components of the mobile device, such as processor 22, memory 24, nonvolatile storage 26, input structures 30, network interface 34, sensors 37, GNSS receiver 48, antenna 50, processor 505, receiver 510, antenna 525a-525n, processor 1218, computer-readable medium 1202, Input/Output (I/O) subsystem 1206, wireless circuitry 1208, etc.
- processor 22 memory 24, nonvolatile storage 26, input structures 30, network interface 34, sensors 37, GNSS receiver 48, antenna 50, processor 505, receiver 510, antenna 525a-525n, processor 1218, computer-readable medium 1202, Input/Output (I/O) subsystem 1206, wireless circuitry 1208, etc.
- I/O Input/Output
- the first frequency range can be a LI frequency range, a L5 frequency range, or a combined LI and L5 frequency range.
- a LI frequency range can be a range centered on 1575.42 megahertz (MHz)
- a L5 frequency range can be centered on 1176.45 MHz
- a combined LI and L5 frequency range can be centered between 1575.42 MHz and 1176.45 MHz inclusive.
- communication channels can be established using the first antenna element in the first tuning state during the acquisition mode.
- the communication channels can be established between the first antenna element and at least one satellite. Establishing communication channels can include determining a position for the mobile device.
- the tuning state of the first antenna element can be changed.
- the tuning state can be changed by disconnecting the tuning bank that was connected at block 1010, connecting a second tuning bank (e.g., tuning bank(s) 520, tuning banks 705) in addition to the tuning bank that was connected at block 1010, or replacing the tuning bank that was connected at 1010 with a new tuning bank.
- a second tuning bank e.g., tuning bank(s) 520, tuning banks 705
- a location of the mobile device can be determined during the tracking mode.
- the location can be determined using the first antenna element and a second antenna element of the mobile device.
- the location can be determined using the first antenna element and using the second antenna element that is configured to receive signals in a second frequency range.
- the second frequency range can be a LI frequency range, a L5 frequency range, or a combined LI and L5 frequency range.
- the mobile device can determine that the device is in a low power mode or a thermal mode, the mobile device can tune the first antenna element of the mobile device to the first tuning state, and the mobile device can determine the device’s location using the first antenna element.
- the mobile device In response to failing to determine the location of the mobile device at 1050, the mobile device can transition from the tracking mode to the acquisition mode.
- the first antenna element can be tuned to the first tuning state during the acquisition mode.
- Determining that the device is in a thermal mode can include, determining thermal state for the mobile device, providing the thermal inputs as input to a model, receiving a probability that the mobile device is in the thermal state as output from the model, and classifying the mobile device as being in a thermal state in response to the probability exceeding a threshold.
- a thermal mode can be when the mobile device’s temperature is above a temperature threshold, or when the likelihood that the mobile device’s temperature will exceed a temperature threshold exceeds a probability threshold.
- Method 1000 may include additional implementations, such as any single implementation or any combination of implementations described below and/or in connection with one or more other processes described elsewhere herein.
- method 1000 may include additional blocks, fewer blocks, different blocks, or differently arranged blocks than those depicted in FIG. 10. Additionally, or alternatively, two or more of the blocks of method 1000 may be performed in parallel.
- a mobile device’s temperature can be stabilized to optimize signal acquisition and tracking for GNSS tracking and other location- based functionality.
- Thermal management can include delaying GNSS signal acquisition until the temperature is stabilized and/or changing the execution of processes on the mobile device to stabilize the temperature.
- different signal types may be more resistant to interference from thermal events and thermal management can include changing the GNSS signal type in response to a thermal state.
- a thermal event can be when a device overheats (e.g., the device is in a thermal state).
- the frequency for oscillators in the mobile device can increase. Increased oscillator frequency can reduce the reliability GNSS signal acquisition, and, in some circumstances, the mobile device operating in a tracking mode may lose tracking during a thermal event.
- L5 signals are more computationally demanding for the mobile device and, accordingly, a mobile device experiencing a thermal event may not be able to process L5 signals as efficiently as less complex LI signals.
- the mobile device can change the tuning state to favor LI signals during a thermal event.
- the mobile device’s thermal manager may
- the mobile device 31 detect a thermal event by measuring the temperature at one or more points in the mobile device. If the temperature is above a threshold, the mobile device may change the tuning state by connecting the antenna to a tuning bank that is configured for LI signals. After the temperature falls below the threshold, the mobile device may change the tuning state to favor L5 signals or a combination of LI and L5 signals.
- the mobile device may use a predictive model to determine if a thermal event is likely and change the tuning state based on the model’s predictions.
- the input to the model can include thermal inputs for the device, the thermal inputs comprising one or more of the current temperature, higher order derivatives of the current temperature, the current applications running on the mobile device, the time of day, the device’s current location, weather data for the current location, the current day, or the frequency of user interactions with the mobile device.
- the mobile device can use a rules-based approach to determine if a mobile device should prepare for a thermal event by changing the device’s tuning state. For instance, a rule could be to prepare for a thermal event (e.g., by changing the tuning state) if a particular application is opened and the temperature is above a threshold.
- Thermal stabilization may be more effective if the mobile device has advanced notice of a likely thermal event. Identifying thermal processes during execution can allow the device to respond to a thermal state that has already occurred, but identifying queued thermal processes may mean that a thermal state can be prevented or mitigated. Accordingly, the mobile device may use various techniques to identify thermal processes.
- a machine learning model may be used to identify thermal processes in some embodiments.
- a “machine learning model ” can refer to a software module configured to be run on one or more processors to provide a classification or numerical value of a property of one or more samples.
- An ML model can be generated using sample data (e.g., training data) to make predictions on test data.
- sample data e.g., training data
- An unsupervised learning model e.g., training data
- Another example type of model is supervised learning that can be used with embodiments of the present disclosure.
- Example supervised learning models may include different approaches and algorithms including analytical learning, statistical models, artificial neural network, backpropagation, boosting (meta-algorithm), Bayesian statistics, case-based reasoning, decision tree learning, inductive logic programming, Gaussian process regression, genetic programming, group method of data handling, kernel estimators, learning automata, learning classifier systems, minimum message length (decision trees, decision graphs, etc.), multilinear subspace learning, naive Bayes classifier, maximum entropy classifier, conditional random field, nearest neighbor algorithm, probably approximately correct learning (PAC) learning, ripple down rules, a knowledge acquisition methodology, symbolic machine learning algorithms, subsymbolic machine learning algorithms, minimum complexity machines (MCM), random forests, ensembles of classifiers, ordinal classification, data pre-processing, handling imbalanced datasets, statistical relational learning, or Proaftn, a multicriteria classification algorithm.
- MCM minimum complexity machines
- the mobile device may use this predictive model to determine if a queued process is likely to cause a temperature change.
- This model can be trained to predict thermal processes using data from past thermal events.
- the training data from past thermal events can include thermal inputs for the device. These thermal inputs can include the current applications running on the mobile device and the current processes executing on the device.
- Thermal inputs corresponding to past thermal events can be used to train a model to predict whether a particular process is likely to cause a thermal event.
- the thermal inputs for a past thermal event can be labeled training data for the model.
- the label can be whether a thermal even occurred.
- the thermal inputs are provided to the model and the model’s parameters are iteratively updated until the model correctly predicts the label (e.g., thermal event or no thermal event) corresponding to the thermal inputs.
- the model can be used to classify unlabeled data (e.g., a mobile device’s current thermal inputs).
- the mobile device can use a rules-based approach to determine if a process is a thermal process. Some processes may be likely to result in a thermal event, and rules may be created to identify these processes. For instance, a rule could be to prepare for a thermal event (e.g., by changing the tuning state) if a set of processes that were previously associated with a thermal event are queued for execution. These rules can be identified by analyzing thermal inputs corresponding to past thermal events. The rules can include rules (e.g., thresholds) based on any combination of: the expected wireless transmit throughput, expected GPU/neural processing unit (NPU) utilization, expected display utilization, etc.
- rules e.g., thresholds
- An application can identify thermal processes in some embodiments.
- a process can be executable programmed instructions corresponding to a software application (e.g., one or more threads).
- the application may provide information about a process’ likelihood of causing a thermal event to the thermal manager.
- a thermal manager may observe the behavior of a process to determine if it a thermal process (e.g., a process that is likely to cause a thermal state). For example, the thermal manager may record whether a thermal event occurs in proximity to the execution of the process and the mobile device may calculate the probability that the execution of the process leads to a thermal state.
- Components of the mobile device may be associated with thermal states.
- thermal states For example, power amplifiers may be likely to cause a thermal state in some devices.
- a process may identify which components are used by the process, or a thermal manager can monitor components that are used during the execution of the process. The thermal manager can classify a process as a thermal process depending on the components used during the execution of the process.
- a thermal manager may use information about the GNSS signal environment to determine whether thermal stabilization is feasible. Thermal stabilization may not be feasible if acquiring a GNSS signal would take too long. For example, the mobile device may determine that there is not enough charge in the device’s battery to stabilize the temperature for the time period necessary for signal acquisition.
- a mobile device may have access to information about its current signal environment.
- the information about the signal environment may indicate a predicted time to acquire a signal.
- This information can include information indicating whether the current environment is urban or rural, whether the device is indoors or outdoors, or other environmental factors.
- This information can be provided to the mobile device (e.g., from a database), or the mobile device can use previous attempts at GNSS signal acquisition to characterize the signal environment.
- the thermal manager may determine that signal acquisition would take too long for thermal stabilization to be feasible. For example, thermal stabilization may not be feasible because too much power would be consumed by dummy processes in the current signal environment (e.g., the acquisition stage in the current signal environment would be sufficiently long that the energy consumed by dummy processes during stabilization would exceed a threshold/damage components). In some circumstances, thermal stabilization may involve maintaining device temperatures that could damage components. In such circumstances, the thermal manager may proceed with signal acquisition without thermal stabilization, or the thermal manager may delay signal acquisition until the signal environment is more favorable.
- a thermal manager can use priorities for different processes to determine whether to delay or modify a processes execution during thermal management. For example, processes may be assigned an execution priority that determines the order in which processes are executed. The execution priority for a queued process can be used to determine whether the thermal manager can modify the execution of the process or if the process should be allowed to execute regardless of a mobile device’s thermal state. For instance, the thermal manager may delay a low priority process, but a high priority process may not be delayed in some circumstances.
- the thermal manager may take the priority of a process requesting thermal management (e.g., the requesting process) into account when determining whether to change the execution of a thermal process.
- a process may request thermal stabilization through a request for GNSS navigation.
- the thermal manager may check priorities before stabilizing temperatures, and the priority of the requesting process can be compared against the priority of queued thermal processes before deciding whether to delay or modify the queued processes.
- the thermal manager may delay the execution of thermal processes that have a priority that is equivalent or lower than the requesting process, but thermal management may not happen if a high priority thermal process is queued.
- some thermal processes may have a priority that indicates that the process cannot be delayed under any circumstances.
- a process may have a priority that indicates that it can delay thermal processes with any priority, and, for example, an emergency SOS message could have such a priority.
- a thermal score can be assigned to a thermal process, and, in addition to priority, the thermal manager may use a process’ thermal score to determine whether to control the execution state of the process.
- Thermal processes may have different impacts on a mobile device’s thermal state. For example, a first process may cause a slight change in the device’s temperature, while a second process may cause a severe temperature change.
- a thermal scores can allow the thermal manager to make nuanced decisions about the risk posed by each process.
- the thermal manager can take various actions to control the execution state of a process including, delaying, moving up, or altering the execution of the controlled process. For example, the thermal manager may delay the execution of a process with a high thermal score during signal acquisition, and a process with a low thermal score may be allowed to execute.
- the thermal score can take different forms.
- the thermal score can be a binary score that indicates whether a process is a thermal process, or the thermal score can include gradations that indicate the severity of the expected temperature change caused by the process.
- the thermal scores can include the following categories: no thermal risk, moderate thermal risk, and severe thermal risk.
- the thermal scores can be based on a rate of temperature change associated with each process, or an expected difference in temperature before and after the execution of the process. Any number of separate thermal scores can be used and the score can be a continuous value such as the rate of temperature change of a process.
- Thermal scores can be used to stabilize a mobile device’s temperature. In some embodiments, the thermal manager can determine a total thermal score for processes that are currently executing.
- the thermal manager may have access to a queue of pending processes (e.g., a process queue), and each queued process can have a thermal score.
- the thermal manager can change the order of the queued processes so that the total thermal score remains stable for the duration of a temperature sensitive process (e.g., GNSS acquisition). For example, if the thermal manager determines that a first thermal process is concluding, the thermal manager can change the order of the queue so that a second thermal process, with an equivalent thermal score, initiates at the conclusion of the first process.
- the thermal manager may consider both the thermal score and priority when managing the process queue.
- the first thermal process may have a high priority and the second thermal process may have a low priority.
- the thermal manager may identify a third thermal process that has both the same priority and the same thermal score as the first thermal process. Instead of the second thermal process, this third thermal process can be initiated at the conclusion of the first process.
- the thermal manager may change the queue position of multiple processes to stabilize a mobile device’s temperature. For example, the thermal manager may detect that two processes are concluding: a first process classified as having no thermal risk, and a second thermal process that is classified as having a severe thermal risk.
- the thermal scores may be designed with a predetermined ratio between each score, and, for example, two thermal processes with a moderate thermal risk may cause a similar change in temperature to a single severe thermal risk process. In such circumstances, the thermal manager may, at the conclusion of the first and second process, change the queue order to initiate a third and fourth thermal process that are each assigned a moderate thermal risk.
- the thermal score can be a rate of temperature change, and the thermal manager may change the queue order so that the aggregate rate of change of all executing processes is maintained.
- a process may have different thermal scores at different points in the execution of the process, and, for example, the first 20 seconds of a process may be a severe thermal risk while the remaining 30 seconds may be a moderate thermal risk.
- FIG. 11 is a flowchart illustrating a method for thermal management according to various embodiments.
- one or more method blocks of FIG. 11 may be performed by a mobile device (e.g., user equipment 12, electronic device 1200).
- one or more method blocks of FIG. 11 may be performed by another device or a group of devices separate from or including the mobile device. Additionally, or alternatively, one or more method blocks of FIG.
- processor 11 may be performed by one or more components of the mobile device, such as processor 22, memory 24, nonvolatile storage 26, input structures 30, network interface 34, sensors 37, GNSS receiver 48, antenna 46, antenna 50, processor 505, receiver 510, antenna 525a-525n, processor 1218, computer-readable medium 1202, Input/Output (I/O) subsystem 1206, wireless circuitry 1208, etc.
- processor 22 memory 24, nonvolatile storage 26, input structures 30, network interface 34, sensors 37, GNSS receiver 48, antenna 46, antenna 50, processor 505, receiver 510, antenna 525a-525n, processor 1218, computer-readable medium 1202, Input/Output (I/O) subsystem 1206, wireless circuitry 1208, etc.
- I/O Input/Output
- a set of the one or more thermal processes can be stored.
- the thermal processes can be stored in a memory of the mobile device.
- the thermal processes can be processes that are identified as causing a temperature of the mobile device to fluctuate.
- the device’s temperature may fluctuate if the rate of temperature change, the magnitude of the temperature change, or a combination of the rate and magnitude of temperature change are above respective thresholds.
- the mobile device may use one or more of a machine learning model or rules to identify thermal processes (e.g., processes that are likely to cause change in a thermal state).
- the processes can be associated with applications, and each application can identify thermal processes associated with the application.
- Identifying a thermal process can mean distinguishing processes that do not cause temperature fluctuations (e.g., a thermal event; a thermal state) and thermal processes that do cause temperature fluctuations.
- a thermal score can be assigned to processes. This score can indicate an expected temperature change caused by the execution of the process.
- the set of one or more thermal processes can include some or all of the processes associated with the mobile device’s code (e.g., software, firmware, or applications installed on the mobile device).
- a thermal score can be assigned to each of the set of one or more thermal processes.
- the scores can be assigned by the thermal manager or the mobile device, and, in some embodiments, the programs associated with each process can provide information identifying a thermal score corresponding to each process.
- the thermal score for a process can represent a probability that the corresponding process will cause the temperature to fluctuate (e.g., cause the temperature or change in temperature to be above a threshold).
- the thermal score may indicate a magnitude of the temperature change caused by the process’ execution.
- a first value for a total thermal score can be calculated, and the total score can represent the aggregate thermal score of the currently executing processes, the processes that are scheduled to execute during the first time period, or a combination of both.
- the total thermal score may use the priority, or execution time, of each process as weights when calculating the total thermal score.
- a process can execute during the first time period if at least part of the execution of the process occurs during the first time period.
- a notification that an acquisition stage of a global navigation satellite system (GNSS) circuit is scheduled during a first time period can be received.
- the notification can be received at a thermal manager of the mobile device.
- the GNSS circuit can include any of the elements disclosed in diagram 700.
- the first time period can be a time period corresponding to a GNSS acquisition stage, and, for instance, the first time period can correspond to a coherent integration time.
- the first time period may last until the acquisition time has concluded, and the first time period can be extended or shortened based on whether a signal has been acquired.
- the first time period may correspond to an average acquisition time for the mobile device in its current GNSS signal environment.
- a first subset of the set of one or more thermal processes can be identified.
- the one or more thermal processes can be the set of one or more thermal processes from block 1110.
- the first subset can correspond to thermal processes that are currently in a process queue or to thermal processes with queue positions indicating that the processes will likely execute during the first time period (e.g., the probability of execution is above a threshold).
- the thermal processes can have a thermal score that identifies the likelihood that the process causes a thermal event.
- the process can have thermal score, a priority, or both a thermal score and a priority. Identifying the first subset can include identifying one or more of a thermal score and a priority of the processes comprising the first subset.
- the thermal score may be assigned by a model, by applying rules to the process, or by a combination of both.
- the respective execution state of each of the first subset can be controlled to stabilize the temperature of the mobile device until a conclusion of the first time period.
- Controlling the execution of the processes in the first subset can include delaying the execution of one or more of the processes, advancing the execution of tone or more of the processes, or modifying the execution of the one or more processes.
- Advancing or delaying the execution of one or more of the processes can include changing the order of queued processes (e.g., to move thermal processes back in the queue or moving them forward in the queue).
- Delaying the execution of the first subset can mean stopping the execution of processes unrelated to GNSS signal acquisition during, or preceding, the acquisition stage.
- delaying the execution of the first subset can include stopping the execution of processes with a thermal score above a threshold while permitting the execution of processes with a thermal score below a threshold.
- the priority of each process may be considered when determining whether to advance, delay, or modify the execution of processes. Modifying the execution of a process can include causing the process to continue until the conclusion of the first time period.
- the acquisition stage of the GNSS circuit can be initiated during the first time period. In some embodiments, the acquisition stage of the GNSS circuit can be delayed until a second time period that follows the first time period. Controlling the execution state of each first subset can be used to stabilize the temperature of the mobile device or the oscillator of the mobile device. Stabilizing the temperature can mean keeping the temperature of the mobile device, or oscillator, below a threshold, or keeping the rate of change of the temperature below a threshold. If the temperature has been stabilized, the mobile device may optimize the acquisition stage of the GNSS circuit for a temperature stable mobile device or a temperature stable oscillator.
- the optimization can include one or more of reducing the doppler frequency offset and the time delay offset for the local signals that are compared to received signals during the acquisition stage.
- the temperature of the mobile device can be an oscillator temperature or an oscillator frequency.
- a second subset of the one or more thermal processes can be identified, and the second subset can comprise one or more of an ordered set of processes in a process queue.
- the second subset can include processes that are not scheduled to execute during the first time period, or processes with queue positions that suggest that the processes will not execute during the first time period.
- the mobile device e.g., the mobile device or the thermal manager
- the change can be caused by the conclusion of one or more of the thermal processes in the first subset.
- the mobile device can change the queue position (e.g., the position within the process queue) for one or more of the second subset. For example, the mobile device can move the one or more processes to the front of the process queue so that the processes begins to execute. The mobile device may change the execution of one or more processes until the total thermal score returns to within a threshold magnitude of the first value.
- Determining that the device is in a thermal mode can include, determining thermal state for the mobile device, providing the thermal inputs as input to a model, receiving a probability that the mobile device is in the thermal state as output from the model, and classifying the mobile device as being in a thermal state in response to the probability exceeding a threshold.
- a thermal mode can be when the mobile device’s temperature is above a temperature threshold, or when the likelihood that the mobile device’s temperature will exceed a temperature threshold exceeds a probability threshold.
- Method 1100 may include additional implementations, such as any single implementation or any combination of implementations described below and/or in connection with one or more other processes described elsewhere herein.
- method 1100 may include additional blocks, fewer blocks, different blocks, or differently arranged blocks than those depicted in FIG. 11. Additionally, or alternatively, two or more of the blocks of method 1100 may be performed in parallel.
- FIG. 12 is a block diagram of an example electronic device 1200 according to various embodiments.
- Device 1200 generally includes computer-readable medium 1202, a processing system 1204, an Input/Output (I/O) subsystem 1206, wireless circuitry 1208, and audio circuitry 1210 including speaker 1212 and microphone 1214. These components may be coupled by one or more communication buses or signal lines 1203.
- Device 1200 can be any portable electronic device, including a handheld computer, a tablet computer, a mobile phone, laptop computer, tablet device, media player, personal digital assistant (PDA), a key fob, a car key, an access card, a multifunction device, a mobile phone, a portable gaming device, a headset, or the like, including a combination of two or more of these items.
- PDA personal digital assistant
- FIG. 12 is only one example of an architecture for device 1200, and that device 1200 can have more or fewer components than shown, or a different configuration of components.
- the various components shown in FIG. 12 can be implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing and/or application specific integrated circuits.
- Wireless circuitry 1208 is used to send and receive information over a wireless link or network to one or more other devices’ conventional circuitry such as an antenna system, a radio frequency (RF) transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a coder-decoder (CODEC) chipset, memory, etc.
- Wireless circuitry 1208 can use various protocols, e.g., as described herein.
- wireless circuitry 1208 is capable of establishing and maintaining communications with other devices using one or more communication protocols, including time division multiple access (TDMA), code division multiple access (CDMA), global system for mobile communications (GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple access (W-CDMA), Long Term Evolution (LIE), LTE- Advanced, Wi-Fi (such as Institute of Electrical and Electronics Engineers (IEEE) 802.1 la, IEEE 802.1 lb, IEEE 802.11g and/or IEEE 802.1 In), Bluetooth, WiMAX, Voice Over Internet Protocol (VoIP), near field communication protocol (NFC), a protocol for email, instant messaging, and/or a short message service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this document.
- TDMA time division multiple access
- CDMA code division multiple access
- GSM global system for mobile communications
- EDGE Enhanced Data GSM Environment
- W-CDMA wideband code division multiple access
- LIE Long Term Evolution
- Wi-Fi
- Wireless circuitry 1208 is coupled to processing system 1204 via peripherals interface 1216.
- Peripherals interface 1216 can include conventional components for establishing and maintaining communication between peripherals and processing system 1204.
- Voice and data information received by wireless circuitry 1208 e.g., in speech recognition or voice command applications
- processors 1218 are configurable to process various data formats for one or more application programs 1234 stored on medium 1202.
- Peripherals interface 1216 couple the input and output peripherals of device 1200 to the one or more processors 1218 and computer-readable medium 1202.
- One or more processors 1218 communicate with computer-readable medium 1202 via a controller 1220.
- Computer- readable medium 1202 can be any device or medium that can store code and/or data for use by one or more processors 1218.
- Computer-readable medium 1202 can include a memory hierarchy, including cache, main memory and secondary memory.
- the memory hierarchy can be implemented using any combination of random access memory (RAM) (e.g., static random access memory (SRAM,) dynamic random access memory (DRAM), double data random access memory (DDRAM)), read only memory (ROM), FLASH, magnetic and/or optical storage devices, such as disk drives, magnetic tape, CDs (compact disks) and DVDs (digital video discs).
- RAM random access memory
- DRAM dynamic random access memory
- DDRAM double data random access memory
- ROM read only memory
- FLASH magnetic and/or optical storage devices, such as disk drives, magnetic tape, CDs (compact disks) and DVDs (digital video discs).
- peripherals interface 1216, one or more processors 1218, and controller 1220 can be implemented on a single chip, such as processing system 1204. In some other embodiments, they can be implemented on separate chips.
- Processor(s) 1218 can include hardware and/or software elements that perform one or more processing functions, such as mathematical operations, logical operations, data manipulation operations, data transfer operations, controlling the reception of user input, controlling output of information to users, or the like.
- Processor(s) 1218 can be embodied as one or more hardware processors, microprocessors, microcontrollers, field programmable gate arrays (FPGAs), application-specified integrated circuits (ASICs), or the like.
- Device 1200 also includes a power system 1242 for powering the various hardware components.
- Power system 1242 can include a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator (e.g., a light emitting diode (LED)) and any other components typically associated with the generation, management and distribution of power in mobile devices.
- device 1200 includes a camera 1244.
- device 1200 includes sensors 1246. Sensors can include accelerometers, compass, gyrometer, pressure sensors, audio sensors, light sensors, barometers, and the like. Sensors 1246 can be used to sense location aspects, such as auditory or light signatures of a location.
- device 1200 can include a GPS receiver, sometimes referred to as a GPS unit 1248.
- a mobile device can use a satellite navigation system, such as the Global Positioning System (GPS), to obtain position information, timing information, altitude, or other navigation information.
- GPS Global Positioning System
- the GPS unit can receive signals from GPS satellites orbiting the Earth.
- the GPS unit analyzes the signals to make a transit time and distance estimation.
- the GPS unit can determine the current position (current location) of the mobile device. Based on these estimations, the mobile device can determine a location fix, altitude, and/or current speed.
- a location fix can be geographical coordinates such as latitudinal and longitudinal information.
- One or more processors 1218 run various software components stored in medium 1202 to perform various functions for device 1200.
- the software components include an operating system 1222, a communication module 1224 (or set of instructions), a location module 1226 (or set of instructions), a ranging module 1228 that is used as part of ranging operation described herein, and other application programs 1234 (or set of instructions).
- Operating system 1222 can be any suitable operating system, including iOS, Mac OS, Darwin, Real Time Operating System (RTXC), LINUX, UNIX, OS X, WINDOWS, or an embedded operating system such as VxWorks.
- the operating system can include various procedures, sets of instructions, software components and/or drivers for controlling and managing general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitates communication between various hardware and software components.
- Communication module 1224 facilitates communication with other devices over one or more external ports 1236 or via wireless circuitry 1208 and includes various software components for handling data received from wireless circuitry 1208 and/or external port 1236.
- External port 1236 e.g., universal serial bus (USB), FireWire, Lightning connector, 60-pin connector, etc.
- USB universal serial bus
- FireWire FireWire
- Lightning connector 60-pin connector
- a network e.g., the Internet, wireless local area network (LAN), etc.
- Location/motion module 1226 can assist in determining the current position (e.g., coordinates or other geographic location identifiers) and motion of device 1200.
- Modern positioning systems include satellite based positioning systems, such as Global Positioning System (GPS), cellular network positioning based on “cell IDs,” and Wi-Fi positioning technology based on a Wi-Fi networks. GPS also relies on the visibility of multiple satellites to determine a position estimate, which may not be visible (or have weak signals) indoors or in “urban canyons.”
- location/motion module 1226 receives data from GPS unit 1248 and analyzes the signals to determine the current position of the mobile device.
- location/motion module 1226 can determine a current location using Wi-Fi or cellular location technology.
- the location of the mobile device can be estimated using knowledge of nearby cell sites and/or Wi-Fi access points with knowledge also of their locations.
- Information identifying the Wi-Fi or cellular transmitter is received at wireless circuitry 1208 and is passed to location/motion module 1226.
- the location module receives the one or more transmitter IDs.
- a sequence of transmitter IDs can be compared with a reference database (e.g., Cell ID database, Wi-Fi reference database) that maps or correlates the transmitter IDs to position coordinates of corresponding transmitters, and computes estimated position coordinates for device 1200 based on the position coordinates of the corresponding transmitters.
- location/motion module 1226 receives information from which a location fix can be derived, interprets that information, and returns location information, such as geographic coordinates, latitude/longitude, or other location fix data.
- Ranging module 1228 can send/receive ranging messages to/from an antenna, e.g., connected to wireless circuitry 1208.
- the messages can be used for various purposes, e.g., to identify a sending antenna of a device, determine timestamps of messages to determine a distance of electronic device 1200 from another device.
- Ranging module 1228 can exist on various processors of the device, e.g., an always-on processor (AOP), a UWB chip, and/or an application processor.
- AOP always-on processor
- UWB chip e.g., a UWB chip
- parts of ranging module 1228 can determine a distance on an AOP, and another part of the ranging module can interact with a sharing module, e.g., to display a position of the other device on a screen in order for a user to select the other device to share a data item.
- Ranging module 1228 can also interact with a reminder module that can provide an alert based on a distance from another mobile device.
- the one or more applications 1234 on device 1200 can include any applications installed on the device 1200, including without limitation, a browser, address book, contact list, email, instant messaging, social networking, word processing, keyboard emulation, widgets, JAVA-enabled applications, encryption, digital rights management, voice recognition, voice replication, a music player (which plays back recorded music stored in one or more files, such as MP3 or AAC files), etc.
- a graphics module can include various conventional software components for rendering, animating and displaying graphical objects (including without limitation text, web pages, icons, digital images, animations and the like) on a display surface.
- a timer module can be a software timer.
- the timer module can also be implemented in hardware. The time module can maintain various timers for any number of events.
- I/O subsystem 1206 can be coupled to a display system (not shown), which can be a touch-sensitive display.
- the display displays visual output to the user in a GUI.
- the visual output can include text, graphics, video, and any combination thereof. Some or all of the visual output can correspond to user-interface objects.
- a display can use LED (light emitting diode), LCD (liquid crystal display) technology, or LPD (light emitting polymer display) technology, although other display technologies can be used in other embodiments.
- I/O subsystem 1206 can include a display and user input devices such as a keyboard, mouse, and/or trackpad.
- I/O subsystem 1206 can include a touch-sensitive display.
- a touch-sensitive display can also accept input from the user based at least part on haptic and/or tactile contact.
- a touch-sensitive display forms a touch-sensitive surface that accepts user input.
- the touch-sensitive display/surface (along with any associated modules and/or sets of instructions in computer- readable medium 1202) detects contact (and any movement or release of the contact) on the touch-sensitive display and converts the detected contact into interaction with user-interface objects, such as one or more soft keys, that are displayed on the touch screen when the contact occurs.
- user-interface objects such as one or more soft keys
- a point of contact between the touch-sensitive display and the user corresponds to one or more digits of the user.
- the user can make contact with the touch-sensitive display using any suitable object or appendage, such as a stylus, pen, finger, and so forth.
- a touch-sensitive display surface can detect contact and any movement or release thereof using any suitable touch sensitivity technologies, including capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with the touch-sensitive display.
- touch sensitivity technologies including capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with the touch-sensitive display.
- I/O subsystem 1206 can be coupled to one or more other physical control devices (not shown), such as pushbuttons, keys, switches, rocker buttons, dials, slider switches, sticks, LEDs, etc., for controlling or performing various functions, such as power control, speaker volume control, ring tone loudness, keyboard input, scrolling, hold, menu, screen lock, clearing and ending communications and the like.
- device 1200 in addition to the touch screen, device 1200 can include a touchpad (not shown) for activating or deactivating particular functions.
- the touchpad is a touch-sensitive area of the device that, unlike the touch screen, does not display visual output.
- the touchpad can be a touch-sensitive surface that is separate from the touch-sensitive display or an extension of the touch-sensitive surface formed by the touch-sensitive display.
- some or all of the operations described herein can be performed using an application executing on the user’s device.
- Circuits, logic modules, processors, and/or other components may be configured to perform various operations described herein.
- a programmable processor can be configured by providing suitable executable code;
- a dedicated logic circuit can be configured by suitably connecting logic gates and other circuit elements; and so on.
- Any of the software components or functions described in this application may be implemented as software code to be executed by a processor using any suitable computer language such as, for example, Java, C, C++, C#, Objective-C, Swift, or scripting language such as Perl or Python using, for example, conventional or object-oriented techniques.
- the software code may be stored as a series of instructions or commands on a computer readable medium for storage and/or transmission.
- a suitable non-transitory computer readable medium can include random access memory (RAM), a read only memory (ROM), a magnetic medium such as a harddrive or a floppy disk, or an optical medium, such as a compact disk (CD) or DVD (digital versatile disk), flash memory, and the like.
- the computer readable medium may be any combination of such storage or transmission devices.
- Computer programs incorporating various features of the present disclosure may be encoded on various computer readable storage media; suitable media include magnetic disk or tape, optical storage media, such as compact disk (CD) or DVD (digital versatile disk), flash memory, and the like.
- Computer readable storage media encoded with the program code may be packaged with a compatible device or provided separately from other devices.
- program code may be encoded and transmitted via wired optical, and/or wireless networks conforming to a variety of protocols, including the Internet, thereby allowing distribution, e.g., via Internet download. Any such computer readable medium may reside on or within a single computer product (e.g.
- a computer system may include a monitor, printer, or other suitable display for providing any of the results mentioned herein to a user.
- this gathered data may include personal information data that uniquely identifies or can be used to contact or locate a specific person.
- personal information data can include demographic data, location-based data, telephone numbers, email addresses, twitter ID's, home addresses, data or records relating to a user’s health or level of fitness (e.g., vital signs measurements, medication information, exercise information), date of birth, or any other identifying or personal information.
- the present disclosure recognizes that the use of such personal information data, in the present technology, can be used to the benefit of users.
- the personal information data can be used to authenticate another device, and vice versa to control which devices ranging operations may be performed.
- other uses for personal information data that benefit the user are also contemplated by the present disclosure.
- health and fitness data may be shared to provide insights into a user’s general wellness, or may be used as positive feedback to individuals using technology to pursue wellness goals.
- the present disclosure contemplates that the entities responsible for the collection, analysis, disclosure, transfer, storage, or other use of such personal information data will comply with well-established privacy policies and/or privacy practices.
- such entities should implement and consistently use privacy policies and practices that are generally recognized as meeting or exceeding industry or governmental requirements for maintaining personal information data private and secure.
- Such policies should be easily accessible by users, and should be updated as the collection and/or use of data changes.
- Personal information from users should be collected for legitimate and reasonable uses of the entity and not shared or sold outside of those legitimate uses. Further, such collection/sharing should occur after receiving the informed consent of the users.
- policies and practices should be adapted for the particular types of personal information data being collected and/or accessed and adapted to applicable laws and standards, including jurisdiction-specific considerations. For instance, in the US, collection of or access to certain health data may be governed by federal and/or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA); whereas health data in other countries may be subject to other regulations and policies and should be handled accordingly. Hence different privacy practices should be maintained for different personal data types in each country.
- HIPAA Health Insurance Portability and Accountability Act
- the present disclosure also contemplates embodiments in which users selectively block the use of, or access to, personal information data. That is, the present disclosure contemplates that hardware and/or software elements can be provided to prevent or block access to such personal information data.
- the present technology can be configured to allow users to select to "opt in” or “opt out” of participation in the collection of personal information data during registration for services or anytime thereafter.
- the present disclosure contemplates providing notifications relating to the access or use of personal information. For instance, a user may be notified upon downloading an app that their personal information data will be accessed and then reminded again just before personal information data is accessed by the app.
- personal information data should be managed and handled in a way to minimize risks of unintentional or unauthorized access or use. Risk can be minimized by limiting the collection of data and deleting data once it is no longer needed.
- data de-identifi cation can be used to protect a user’s privacy. De-identifi cation may be facilitated, when appropriate, by removing specific identifiers (e.g., date of birth, etc.), controlling the amount or specificity of data stored (e.g., collecting location data a city level rather than at an address level), controlling how data is stored (e.g., aggregating data across users), and/or other methods.
- the present disclosure broadly covers use of personal information data to implement one or more various disclosed embodiments, the present disclosure also contemplates that the various embodiments can also be implemented without the need for accessing such personal information data. That is, the various embodiments of the present technology are not rendered inoperable due to the lack of all or a portion of such personal information data.
- Disjunctive language such as the phrase “at least one of X, Y, or Z,” unless specifically stated otherwise, is otherwise understood within the context as used in general to present that an item, term, etc., may be either X, Y, or Z, or any combination thereof (e.g., X, Y, and/or Z). Thus, such disjunctive language is not generally intended to, and should not, imply that certain embodiments require at least one of X, at least one of Y, or at least one of Z to each be present. Additionally, conjunctive language such as the phrase “at least one of X, Y, and Z,” unless specifically stated otherwise, should also be understood to mean X, Y, Z, or any combination thereof, including “X, Y, and/or Z.”
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
- Radar Systems Or Details Thereof (AREA)
- Variable-Direction Aerials And Aerial Arrays (AREA)
Abstract
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP24735091.1A EP4724835A2 (en) | 2023-06-09 | 2024-05-28 | Receiver state based antenna tuning |
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202363507436P | 2023-06-09 | 2023-06-09 | |
| US63/507,436 | 2023-06-09 | ||
| US18/666,620 | 2024-05-16 | ||
| US18/666,620 US20240413537A1 (en) | 2023-06-09 | 2024-05-16 | Receiver state based antenna tuning |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2024253901A2 true WO2024253901A2 (en) | 2024-12-12 |
| WO2024253901A3 WO2024253901A3 (en) | 2025-03-27 |
Family
ID=91616910
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2024/031317 Ceased WO2024253901A2 (en) | 2023-06-09 | 2024-05-28 | Receiver state based antenna tuning |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2024253901A2 (en) |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2120061B1 (en) * | 2008-05-09 | 2011-03-23 | Research In Motion Limited | Improved frequency aiding method and system for navigation satellite receiver with crystal oscillator frequency hysteresis |
| US10120426B2 (en) * | 2015-12-09 | 2018-11-06 | Research & Business Foundation Sungkyunkwan University | Thermal management apparatus and method using dynamic thermal margin, and semiconductor processor device, non-volatile data storage device and access control method using the same |
| US11853015B2 (en) * | 2021-03-08 | 2023-12-26 | Garmin Switzerland Gmbh | Wrist worn electronic device with switchable multi band antenna system |
-
2024
- 2024-05-28 WO PCT/US2024/031317 patent/WO2024253901A2/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2024253901A3 (en) | 2025-03-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20240426960A1 (en) | Sensor fusion network to disambiguate angle of arrival | |
| US10003913B2 (en) | System and method for device positioning with bluetooth low energy distributions | |
| CN102714889B (en) | Mobile computing device and method of managing mobile computing device based on network density | |
| EP2680039B1 (en) | Indoor/outdoor differentiation using radio frequency (RF) transmitters | |
| CN106416314B (en) | Device, system and method for geo-fencing | |
| US8731537B2 (en) | Wireless communication devices in which operating context is used to reduce operating cost and methods for operating same | |
| US10849034B1 (en) | Signal map for wireless connectivity | |
| CN101806908B (en) | Automatic activation of speed measurement in mobile device based on available motion | |
| US20170223506A1 (en) | Apparatus and method for determining location of electronic device | |
| KR102656490B1 (en) | Electronic device and method for determining positions | |
| CN111896940A (en) | Ranging measurements for a spatially-aware user interface of a mobile device | |
| US20230408619A1 (en) | Detecting, tracking, and transmitting to identified objects using models in a modular system | |
| CN107071135A (en) | Location aware mobile applications are managed | |
| US11870563B2 (en) | Microlocations using tagged data | |
| US9820232B2 (en) | Power delay profile based indoor outdoor detection | |
| US20230375693A1 (en) | Detecting, tracking, and transmitting to identified objects using models in a modular system | |
| US12455364B2 (en) | Detecting, tracking, and transmitting to identified objects using models in a modular system | |
| US20240413537A1 (en) | Receiver state based antenna tuning | |
| CN107182108A (en) | Based on the cellular network scan control that around can recognize that radio signal source | |
| JP2024512444A (en) | Techniques for locating electronic devices | |
| US11129032B2 (en) | Optimal device position for wireless communication | |
| WO2024253901A2 (en) | Receiver state based antenna tuning | |
| WO2023044836A1 (en) | Improving detection of voice-based keywords using falsely rejected data | |
| EP4471620A1 (en) | Machine learning list classification | |
| US20240094409A1 (en) | System and method to synchronize across positioning receivers for secondary code acquisition |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24735091 Country of ref document: EP Kind code of ref document: A2 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2024735091 Country of ref document: EP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 2024735091 Country of ref document: EP Effective date: 20260109 |
|
| ENP | Entry into the national phase |
Ref document number: 2024735091 Country of ref document: EP Effective date: 20260109 |
|
| ENP | Entry into the national phase |
Ref document number: 2024735091 Country of ref document: EP Effective date: 20260109 |
|
| ENP | Entry into the national phase |
Ref document number: 2024735091 Country of ref document: EP Effective date: 20260109 |
|
| ENP | Entry into the national phase |
Ref document number: 2024735091 Country of ref document: EP Effective date: 20260109 |
|
| WWP | Wipo information: published in national office |
Ref document number: 2024735091 Country of ref document: EP |