Mobile device orientation guidance for satellite-based communications
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- QUALCOMM INC
- Filing Date
- 2023-06-29
- Publication Date
- 2026-06-09
AI Technical Summary
Satellite-based communications with standard mobile devices are impractical due to the difficulty in aligning the mobile device's antenna lobe with the satellite, as users often cannot intuitively point the device within the main lobe or node, especially when the satellite is invisible and moving.
A mobile device system that determines target orientations for aligning the antenna lobes with satellites using sensor data and orbital models, providing intelligent user interface guidance to rotate the device accurately and efficiently.
Enables easy and accurate alignment of mobile device antennas with satellites, facilitating seamless satellite-based communications by minimizing user error and accounting for environmental factors and satellite movement.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical Field]
[0001] Related Applications
[0001] This application claims the benefit of U.S. patent application Ser. No. 17 / 821,149, entitled "MOBILE DEVICE ORIENTATION GUIDANCE FOR SATELLITE-BASED COMMUNICATIONS," filed Aug. 19, 2022, which is assigned to the assignee of the present application and incorporated by reference in its entirety into this specification.
[0002] 1. Field of Disclosure FIELD OF THE DISCLOSURE
[0002] The present disclosure relates generally to the field of wireless communications, and more particularly to enabling mobile devices (eg, cellular phones) to communicate using satellite-based communications. [Background technology]
[0003] 2. Description of Related Technology
[0003] Traditionally, satellite-based communications have been limited to satellite phones with dedicated antennas that enable the satellite phones to effectively transmit and receive signals to and from satellites. As the number of communications satellites increases, the potential for enabling satellite-based communications for other types of devices also increases. However, for devices with antennas that are not dedicated to satellite-based communications (e.g., standard mobile phones), such communications may be impractical if the user cannot point the mobile phone so that the communications satellite is within the main lobe or node of the mobile phone antenna. Summary of the Invention
[0004] An exemplary method for enabling a wireless communication link between a mobile device and a satellite according to the present disclosure may include determining, with the mobile device, a set of target orientations for the mobile device in which antenna lobes of the mobile device are pointed toward the satellite, the set of target orientations being based on orientations of the antenna lobes relative to the mobile device and locations of the satellites relative to the mobile device. The method may also include determining a current orientation of the mobile device. The method may also include providing guidance, in a user interface (UI) of the mobile device, for rotating the mobile device from the current orientation to an orientation within the set of target orientations.
[0005] An exemplary mobile device for enabling a wireless communications link between a mobile device and a satellite according to the present disclosure may include a transceiver, a memory, a user interface (UI), and one or more processors communicatively coupled to the transceiver and the memory, wherein the one or more processors are configured to determine a set of target orientations for the mobile device in which antenna lobes of the mobile device are pointed toward satellites, the set of target orientations being based on orientations of the antenna lobes relative to the mobile device and locations of the satellites relative to the mobile device. The one or more processors may be further configured to determine a current orientation of the mobile device. The one or more processors may be further configured to provide guidance in the UI for rotating the mobile device from the current orientation to an orientation within the set of target orientations.
[0006] An exemplary apparatus for enabling a wireless communications link between a mobile device and a satellite according to the present disclosure may include means for determining a set of target orientations for a mobile device in which antenna lobes of the mobile device are pointed toward the satellite, the set of target orientations being based on orientations of the antenna lobes relative to the mobile device and locations of the satellites relative to the mobile device. The apparatus may further include means for determining a current orientation of the mobile device. The apparatus may further include means for providing guidance, in a user interface (UI) of the mobile device, for rotating the mobile device from the current orientation to an orientation within the set of target orientations.
[0007] According to the present disclosure, an exemplary non-transitory computer-readable medium stores instructions for enabling a wireless communications link between a mobile device and a satellite, the instructions including code for determining a set of target orientations for a mobile device in which antenna lobes of the mobile device are pointed toward the satellite, the set of target orientations being based on orientations of the antenna lobes relative to the mobile device and locations of the satellites relative to the mobile device. The instructions may further include code for determining a current orientation of the mobile device. The instructions may further include code for providing guidance, in a user interface (UI) of the mobile device, for rotating the mobile device from the current orientation to an orientation within the set of target orientations.
[0008]
[0008] This Summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used alone to determine the scope of the claimed subject matter. The subject matter should be understood by reference to the entire specification, any or all drawings, and appropriate portions of each claim of this disclosure. The above, together with other features and examples, are described in more detail below in the following specification, claims, and accompanying drawings. [Brief explanation of the drawings]
[0009] [Figure 1]
[0009] FIG. 1 is a diagram of a satellite-based communication system that can be used for satellite-based communication with a mobile device, according to some embodiments. [Figure 2]
[0010] 1 is a simplified diagram of how a user can point a mobile device so that the main antenna lobe of the mobile device's antenna is pointed toward a satellite for satellite-based communications. [Figure 3]
[0011] 1 is an exemplary architecture that may be utilized by a mobile device to implement a process for providing a user with user interface (UI) guidance for mobile device orientation, according to one embodiment. [Figure 4A]
[0012] 1 is a diagram of a reference frame of a mobile device, according to one embodiment. [Figure 4B]
[0013] 1 is a diagram of the East North Up (ENU) reference frame for device location. [Figure 5]
[0014] FIG. 1 illustrates antenna lobe direction relative to a mobile device depending on the environment. [Figure 6A]
[0015] 1A-1C illustrate different techniques that can be used to rotate from a current orientation (or rotation vector (RV)) to a target orientation, according to one embodiment. [Figure 6B] 1A-1C illustrate different techniques that can be used to rotate from a current orientation (or rotation vector (RV)) to a target orientation, according to one embodiment. [Figure 7]
[0016] FIG. 1 illustrates limitations that may exist when restricting rotation of a mobile device to a few axes of rotation. [Figure 8]
[0017] FIG. 10 provides an example of how a camera can be further utilized by a mobile device to provide guidance for rotating the mobile device for satellite-based communication, according to one embodiment. [Figure 9]
[0018] FIG. 1 is a flow diagram of an example UI flow that may be executed by a mobile device to guide a mobile device user to orient the mobile device to align a primary antenna lobe with a satellite for satellite-based communications, according to one embodiment. [Figure 10]
[0019] 1 is a series of screens that may be displayed on a mobile device screen (graphical UI) that guide a mobile device user to rotate the mobile device to a target orientation, according to one embodiment. [Figure 11]
[0020] 11 is a UI flow that can be used by a mobile device as an alternative to the process shown in FIG. 10 , according to one embodiment. [Figure 12]
[0021] 1 is a UI flow that may be utilized by a mobile device to guide a user to orient the mobile device to a target heading by tilting the mobile device to a target pitch, according to one embodiment. [Figure 13]
[0022] FIG. 10 is a diagram of an exemplary screen prompting a user to rotate a mobile device to adjust both pitch and yaw at once, according to one embodiment. [Figure 14]
[0023] 1 is a method flow diagram of a method for enabling a wireless communication link between a mobile device and a satellite, according to one embodiment. [Figure 15]
[0024] FIG. 1 is a block diagram of one embodiment of a mobile device that can be utilized in the embodiments described herein.
[0010]
[0025] According to some example implementations, like reference numerals in various figures refer to like elements. Additionally, multiple instances of an element may be indicated by the first numeral of that element followed by a letter or hyphen and a second numeral. For example, multiple instances of element 110 may be indicated as 110-1, 110-2, 110-3, etc., or as 110a, 110b, 110c, etc. When referring to such an element using only the first numeral, it should be understood to refer to any instance of that element (e.g., element 110 in the previous example refers to elements 110-1, 110-2, and 110-3, or elements 110a, 110b, and 110c). DETAILED DESCRIPTION OF THE INVENTION
[0011]
[0026] Some illustrative examples will now be described with reference to the accompanying drawings, which form a part of this specification. One or more aspects of the present disclosure will be described below with reference to specific examples in which they may be implemented, but other examples may be used and various modifications may be made without departing from the scope of the disclosure in the appended claims.
[0012]
[0027] Throughout this specification, a reference to "one example" or "an example" means that the particular features, structures, or characteristics described in connection with the example are included in at least one example of the claimed subject matter. Thus, the appearances of the phrase "in one example" or "an example" in various places throughout this specification are not necessarily all referring to the same example. Furthermore, these particular features, structures, or characteristics may be combined in one or more examples.
[0013]
[0028] The methods described herein may be implemented by various means depending on the application according to the particular example. For example, such methods may be implemented in hardware, firmware, software, and / or a combination thereof. In a hardware implementation, for example, a processing unit may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, electronic devices, other device units designed to perform the functions described herein, and / or a combination thereof.
[0014]
[0029] As used herein, the term "mobile device" may include a mobile electronic device that may be capable of wireless communication. While often referred to as a mobile phone (or "user equipment" (UE) in a cellular network), the wireless communication capabilities of a mobile device are not intended to be specific to or otherwise limited to a particular Radio Access Technology (RAT) unless otherwise specified. Generally, a mobile device may be any wireless communication device that can be directed by a user (e.g., a mobile phone, a router, a tablet computer, a laptop computer, a tracking device, a wearable (e.g., a smart watch, glasses, an Augmented Reality (AR) / Virtual Reality (VR) headset, etc.), an Internet of Things (IoT) device, etc.), or other electronic device that can be used for Global Navigation Satellite Systems (GNSS) positioning as described herein. According to some embodiments, a mobile device may be used to communicate over a wireless communication network. A mobile device may be mobile or may be stationary (e.g., at some time) and may communicate with a terrestrial Radio Access Network (RAN) when within range of the RAN. As used herein, the term mobile device may also be used with UE, Access Terminal (AT), client device, wireless device, subscriber device, subscriber terminal, subscriber station, user terminal, etc. A mobile device may be referred to interchangeably as a RAN (Routing Area Network), a mobile terminal (RAN), a mobile station, or variations thereof. Generally, a mobile device may communicate with a core network through which the mobile device may connect with external networks (such as the Internet) and with other mobile devices.Other mechanisms for connecting to the core network and / or the Internet are also possible for mobile devices, such as via a wired access network (e.g., based on the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard), a wireless local area network (WLAN) network, etc.
[0015]
[0030] As described herein, a GNSS receiver can constitute and / or be incorporated into an electronic device, such as a mobile device. This may include a single entity, or may include multiple entities, such as in a personal area network, where a user may utilize, for example, audio, video, and / or data I / O devices and / or body sensors and a separate wireline or wireless modem. As described herein, an estimate of a Global Positioning System (GPS) receiver's location may be referred to as a location, location estimate, location fix, fix, position, position estimate, or position fix, and may be a geodetic datum and thus provide location coordinates (e.g., latitude and longitude) of the GPS receiver that may or may not include an altitude component (e.g., height above sea level, height or depth above ground, floor level or basement level). In some embodiments, the location of a GPS receiver and / or an electronic device equipped with a GPS receiver may be expressed as an area or volume (defined either geodetically or in administrative form) where the GPS receiver is expected to be located with some probability or confidence (e.g., 67%, 95%, etc.). In the description contained herein, use of the term location may include any of these variations unless otherwise indicated. When calculating the location of a GPS receiver, such calculations may solve for local X, Y, and possibly Z coordinates, and then transform the coordinates from one coordinate frame to another as needed.
[0016]
[0031] Satellite-based communication systems have proliferated in recent years, expanding coverage for voice- and date-based communications, which can enable telephone coverage and Internet access to areas not previously served by terrestrial wireless (e.g., cellular / mobile communication networks) or wired networks (e.g., traditional wired telephone networks, cable, digital subscriber line (DSL), etc.).
[0017]
[0032] 1 is a diagram of a satellite-based communication system 100 in which satellites 110 orbit Earth 120 and travel along paths in orbital planes 130. The diagram has been greatly simplified to avoid confusion. In a practical embodiment, the satellite-based communication system 100 may be made up of dozens of satellites 110 having many orbital planes 130. For example, the Iridium® communication system has 66 satellites, with 11 satellites in each of six orbital planes. To help optimize communication efficiency, the satellites 110 in such a satellite-based communication system 100 are typically equally spaced such that spacing 140 is approximately the same between all satellites 110 within an orbital plane 130.
[0018]
[0033] Satellite-based communication systems such as that shown in Figure 1 typically operate satellites in low earth orbit (LEO), where the satellites have altitudes of 2,000 km or less. However, some satellite-based communication systems may operate in medium earth orbit (MEO) (having an altitude of approximately 10,000-20,000 callers) or geostationary earth orbit (GEO) (having an altitude of approximately 35,786 km). For LEO satellites, this means that the satellites move much faster through the sky relative to users on the Earth's surface.
[0019]
[0034] The locations of the satellites 110 can be tracked in real time by a tracking entity, such as a provider of the satellite-based communications system 100, a government, or a space agency, which can provide this satellite location information to a receiving device (e.g., a computer server), allowing the receiving device to derive satellite movement from the historical location information and fit the satellite movement to a model that can be used to predict future satellite locations. As an example, the United States Space Command (USSPACECOM) 18th Space Defense Squadron (18 SPDS) has released Two Line Element (TLE) data that can be used with the unclassified Simplified General Perturbations #4 (SGP4) library to derive orbital information based on radar observations. The historical orbital information extracted from the TLE data can enable a device, such as a computer server, to determine orbital parameter values that fit the satellite movement to an orbital model. These orbital parameter values (and at least one associated timestamp) can then be passed to a mobile device, allowing the mobile device to accurately predict future satellite locations by extrapolating satellite movement from the orbital model. Alternatively, the TLE data can be used directly by the mobile device to calculate future satellite locations using the SGP4 library. However, the accuracy of such calculated satellite positions tends to degrade more quickly over time.
[0020]
[0035] Depending on the type of orbital model used for satellite position estimation, these orbital parameters may vary. For example, in the case of a Keplerian model, the orbital parameters may include Keplerian orbital parameters such as the square root of the semimajor axis, eccentricity, mean anomaly, inclination, right ascension of the ascending node (RAAN), RAAN rate, and argument of perigee, or a combination thereof. Alternatively, near-equatorial orbital modeling may be used, in which case the orbital parameters may include some or all of the near-equatorial orbital element set, i.e., the semimajor axis, components of the eccentricity vector in the near-equatorial reference frame, components of the ascending node vector in the near-equatorial reference frame, and mean longitude. In some embodiments, secondary or derived parameters may be used as the orbital parameters. For example, in classical Keplerian orbital modeling, the Keplerian element set can be represented using a derived parameter such as the orbital time period rather than the semimajor axis, because there is a direct relationship between the two.
[0021]
[0036] Depending on the robustness of the orbital model, it can enable a receiving mobile device to accurately determine (e.g., within a threshold tolerance) the locations of satellites in satellite-based communications system 100 over a period of weeks, months, or even a year. Mobile devices can use such orbital models to determine satellite locations for engaging in satellite-based communications. However, such communications can be difficult.
[0022]
[0037] 2 illustrates some of the challenges of enabling satellite-based communications using a mobile device, such as a cellphone, having a conventional form factor (e.g., without a dedicated antenna for satellite communications). Here, a satellite 210 (e.g., of the satellite-based communications system 100 of FIG. 1) can serve one or more terrestrial devices by directionally transmitting and receiving signals using one or more RF beams. To engage in satellite-based communications using a mobile device 230, not only may such communications need to be line-of-sight, but a user 240 may also need to orient the mobile device 230 so that a primary antenna node 250 of the mobile device's antenna is substantially pointed toward the satellite 210. This can be particularly challenging because the satellite 210 is likely invisible to the user, the satellite 210 may be moving relative to the mobile device 230, and the orientation of the primary antenna node 250 relative to the mobile device may not be known to the user 240.
[0023]
[0038] Once primary antenna node 250 is pointed toward satellite 210, it may take only a few seconds for mobile device 230 to establish a communications link with satellite 210 and transmit / receive data. In some embodiments, such functionality may be provided to users or subscribers of satellite-based communications services (e.g., by mobile carriers) to enable users to transmit and / or receive data when not within coverage of a terrestrial wireless network (e.g., a cellular network). Data may be transmitted in an emergency and may include, for example, an SOS or other emergency message. Additionally or alternatively, text messages may be buffered and transmitted / received when a communications link is established between mobile device 230 and satellite 210. Such satellite-based communications may be used to facilitate other data and / or voice services.
[0024]
[0039] However, such communications depend on the user 240 being able to successfully point the primary antenna node 250 of the mobile device 230 toward the satellite 210. This can be particularly challenging due to various factors. The accuracy with which the mobile device 230 with its main node 250 needs to be pointed toward the satellite 210 is a function of the available error budget. The error budget is typically a function of the characteristics of the antenna main node 250. (The error budget may also include power constraints (e.g., available battery charge). For example, the antenna main node may be preferred for transmission / reception because it uses the least amount of power.) A large portion of the available error budget is allocated to account for user pointing error, leaving more stringent requirements for the mobile device components (e.g., as described in FIG. 15 ). For example, as described in more detail below, the primary antenna node 250 may not be pointed toward the mobile device 230 to make it easy or intuitive to “point” the primary antenna node 250 toward the satellite 210. Additionally, the primary antenna node 250 may be relatively narrow, such that an error of, for example, 2-5 degrees may impact performance.
[0025]
[0040] Embodiments herein help address at least some of these issues by providing intelligent guidance to a user via a user interface (UI) that enables the user to properly point a mobile device so that the main antenna lobe (also referred to herein as the main antenna “node”) is pointed toward a satellite for satellite-based communications. As described in further detail below, embodiments can utilize different sensing modalities on the mobile device to ensure that the orientation process is easy to use, accurate, robust to sensing / user errors, and smart (e.g., in the case of occlusions, ambient environments, and usage scenarios). Depending on the capabilities of the mobile device, sensing modalities may include, for example, an inertial measurement unit (IMU) (e.g., accelerometer and gyroscope), magnetometer, barometer, GNSS receiver, camera, RF sensing, and / or other types of sensors.
[0026]
[0041] As described in more detail below, the process of providing a user with intelligent guidance for the orientation of a mobile device can vary depending on the desired functionality. Generally speaking, information about the mobile device's location on Earth and the locations of satellites in orbit can be used to determine the locations of the satellites relative to the mobile device. A desired, or "target," orientation, or set of target orientations for the mobile device can then be determined based on this relative location, the orientation of the antenna lobe relative to the mobile device, and the mobile device's current orientation relative to the Earth (e.g., rotation vector (RV)). In some cases, a declination adjustment may be required to interpret the RV and satellite positions within the same coordinate frame.
[0027]
[0042] Figure 3 is an example architecture 300 that may be utilized by a mobile device to implement a process for providing a user with UI guidance for mobile device orientation, according to one embodiment. The various components within the various blocks shown in Figure 3 may be implemented by software and / or hardware components of the mobile device, such as those shown in Figure 15, described below.
[0028]
[0043] Architecture 300 centers around an orientation engine 310. The orientation collects information from various sources (e.g., the aforementioned sensing modalities, calibration / characterization information, etc.) to determine the existing and target orientations of the mobile device and enables a UI engine 320 to guide the user (e.g., using visual and / or audio guidance) to rotate the mobile device from the existing orientation to the target orientation. As shown, the information sources used by orientation engine 310 can include one or more sensor-based orientation sources 330, a GNSS receiver 340, and offline calibration / characterization 350.
[0029]
[0044] The sensor-based orientation source(s) 330 may include one or more sensors indicating the RV (heading) of the mobile device and / or components coupled thereto capable of deriving the RV and providing it to the orientation engine 310 (e.g., including downstream firmware and / or software components that receive and process the sensor information). In some embodiments, the sensor-based orientation source(s) 330 may include functionality of the mobile device's operating system that receives sensor information from various sensors on the mobile device and outputs the mobile device's RV relative to an Earth-based coordinate frame, such as the Northeast-South (ENU) frame. As indicated by the dotted arrow, providing the mobile device's RV to the orientation engine 310 by the sensor-based orientation source(s) 330 may be optional (e.g., before outputting any UI guidance). Additionally, the RV may be provided to the UI engine 320 to enable the mobile device to provide real-time UI guidance to the user based on updated / real-time RV information about the mobile device.
[0030]
[0045] As shown in FIG. 4A , the reference frame of the mobile device 410 can include mutually orthogonal fixed axes (x-axis 420, y-axis 430, and z-axis 440) that intersect at an intersection 450 in, on, or near the body of the mobile device 410. As described above, the sensor-based orientation source(s) 330 of various modalities can include an IMU and a magnetometer, thereby enabling the sensor-based orientation source(s) 330 to provide a frame of the mobile device 410 relative to the Earth, such as the ENU frame of FIG. 4B . As shown, the ENU frame includes mutually orthogonal axes, including an east (x) axis 455, a north (y) axis 460, and an up (z) axis 465 at an intersection / origin 470 relative to the Earth 475. According to some embodiments, the RV (which can be provided by the sensor-based orientation source(s) 330) represents a vector on the ENU to align with the XYZ frame of the mobile device. This can be provided as a quaternion with unit norm. The ENU node / origin 470, which corresponds to the location (e.g., latitude / longitude / altitude) of the mobile device on Earth 475, can be provided by the GNSS receiver 340.
[0031]
[0046] The output of the GNSS receiver 340 may vary depending on the desired functionality. According to some embodiments, the output may include the location of the mobile device relative to the Earth (e.g., latitude, longitude, and altitude). Additionally or alternatively, the GNSS receiver 340 may provide pseudoranges and / or other information from measurements of RF signals from GNSS satellites, enabling the orientation engine 310 to determine the location of the mobile device relative to the Earth and its surrounding environment (e.g., obstacles, etc.).
[0032]
[0047] Thus, the output of the sensor-based orientation source(s) 330 and the GNSS receiver 340 can enable the orientation engine 310 to determine the attitude (e.g., RV and location) of the mobile device with six degrees of freedom (6DoF) relative to the Earth. It can be noted that because the RV from the sensor-based orientation source(s) 330 can be based on measurements of magnetic north, and because satellite locations / orientations are inherently related to geographic north, the orientation engine 310 can make adjustments to convert the RV from the magnetic north frame to the geographic north frame (e.g., based on the location as provided by information from the GNSS receiver 340). Alternatively, the orientation engine 310 can make adjustments to represent satellite positions relative to magnetic north.
[0033]
[0048] The offline calibration / characterization provided in block 350 provides information to the orientation engine 310 regarding the direction of the mobile device's antenna lobe (e.g., primary lobe) relative to the mobile device frame (e.g., as shown in FIG. 4A). This can be determined for each device based on calibration (e.g., in-field determination of antenna lobe direction based on the mobile device's RV and known locations of satellites or other transmitting devices) and / or device type-based characterization (e.g., some makes / models of mobile devices may know the direction of the main antenna lobe relative to the mobile device's frame). A diagram of antenna lobe direction is shown in FIG. 5 and described below.
[0034]
[0049] Additionally or alternatively, embodiments may utilize online calibration / characterization to determine the main antenna lobe direction relative to the mobile device. Data such as a known mobile device orientation and signal strength measurements from the device at a known location may be used to determine the main antenna lobe direction. Gathering the relevant data to make this determination may occur opportunistically (e.g., during the course of normal use) and / or by performing a calibration process, which may involve prompting the mobile device user to perform one or more calibration tasks, such as pointing the mobile device in a particular manner.
[0035]
[0050] 5 is a diagram illustrating an antenna lobe direction 510 relative to a mobile device 520 and illustrates considerations that may be taken into account when pointing the mobile device 520 for communication with a satellite 530. In this example, front, top, and left views are provided to help illustrate the antenna lobe direction 510, which is not specifically aligned with any of the X, Y, and Z axes of the mobile device (e.g., as shown in FIG. 4A).
[0036]
[0051] In this example and in many practical embodiments, various assumptions can be applied. For example, under a moderate assumption, the antenna main lobe can be treated as a single direction along its peak, represented by antenna lobe direction 510. Device orientation around an axis along antenna lobe direction 510 (e.g., rotation indicated by arrow 540) may not affect the mobile device 520's communication with satellite 530. This can therefore be used as a degree of freedom when determining a target orientation for communication satellite 530. For example, the target orientation for mobile device 520 can be determined so that the mobile device 520 is in a position that is relatively comfortable for the user (e.g., instead of a position where the mobile device 520's screen is facing downwards). In addition to, or as an alternative to, avoiding awkward attitudes / orientations, embodiments can use this degree of freedom to optimize other considerations, such as reducing the amount of work (a specific rotation angle) to reach the target orientation from the current orientation and optimize performance. Antenna lobe direction 510 can also take into account the shape of the antenna lobe and / or potential sensing errors. For example, if the antenna lobe is wider in one direction than in another, the resulting antenna lobe direction 510 may move towards the center of the lobe rather than the peak.
[0037]
[0052] Returning to FIG. 3 , the orientation engine 310 can use various information sources along with information about satellite locations (e.g., the orbital model described above for communications satellites) to determine a target orientation, which can be provided to the UI engine 320. Again, the target orientation determination can utilize any allowable rotation (e.g., about an axis along the antenna lobe direction 510) to take into account factors such as user comfort, performance optimization, etc. The UI engine 320 can then use this target orientation along with the current orientation (e.g., as provided by the sensor-based orientation source(s) 330) to determine guidance for the user to point the mobile device along the target orientation. As described in more detail below, this guidance can be provided in various ways (e.g., visually and / or audibly) using the mobile device's UI.
[0038]
[0053] As mentioned above, different techniques for selecting a target RV may be employed to take advantage of acceptable rotation, user comfort, and / or other factors. One technique may involve, for example, selecting a target RV such that the angular change along the U axis (e.g., the gravity vector) is minimized, thereby minimizing the total angle that needs to be adjusted following a left / right (azimuth) rotation. This may be the equivalent adjustment from azimuth to elevation in terms of the antenna lobe direction. Alternative techniques for selecting a target RV may include minimizing the difference between the y axis of the mobile device frame (e.g., as shown in FIG. 4A ) and the U axis of the ENU frame (e.g., as shown in FIG. 4B ) and minimizing the x axis of the mobile device from being as close to horizontal (e.g., the EN plane of the ENU frame) as possible, so that the mobile device is as upright as possible.
[0039]
[0054] Depending on the desired functionality, the guidance provided by the mobile device can use one or more motions to get from the current heading (current RV) to the target heading. Figures 6A and 6B show examples of two different approaches.
[0040]
[0055] FIG. 6A illustrates a first approach in which a single rotation is performed. Here, the mobile device's RV (orientation) is represented by a normalized vector that traces a sphere 600 around the origin 605 of the ENU coordinate frame. In this example, the mobile device (e.g., orientation engine 310) uses a single-step approach by rotating the mobile device from the current RV 610 to the target RV 620 using the shortest path 630. This can involve a single angular movement along a circumference 640. While a single rotational movement can be simple, it can be cumbersome in some situations. To avoid cumbersome movements, a multi-step approach can be taken, as shown in FIG. 6B.
[0041]
[0056] FIG. 6B illustrates a second approach in which rotations are perceptible to help reduce awkward rotations for the user. More specifically, multiple rotations are used to move from a current RV 650 to a target RV 660. These rotations include an azimuth rotation 670 and an elevation rotation 680. The order of rotations may vary depending on desired functionality, user comfort, etc. Other implementations may involve rotations along any of three rotation axes (e.g., pitch, yaw, and / or roll). That said, rotating along certain rotation axes may be awkward for the user, and using three steps / rotations (e.g., instead of two) may result in increased cumulative user error. However, excluding certain movements / rotations may limit coverage. An illustration of this is provided in FIG. 7.
[0042]
[0057] FIG. 7 illustrates limitations that may exist when restricting the rotation of a mobile device 710 to yaw and pitch rotations. That is, when the antenna lobe direction 720 is not perpendicular to one of the device's y-axes, the user may be unable to point the antenna lobe direction 720 within some regions. In the example of FIG. 7, the antenna lobe direction 720 extends outward at an angle of approximately 45° (similar to the antenna lobe direction 510 in FIG. 5), and the combination of yaw (left / right rotation about the y-axis) and pitch (up / down tilt about the x-axis) cannot allow the direction 720 to point within the shaded region 730. (In the worst case scenario, where the antenna direction lies in a plane perpendicularly intersecting the x- and y-axes, a 90° rotation (roll) to portrait mode about the z-axis still cannot overcome this limited coverage.) In such cases, embodiments can solve an optimization problem that aligns the antenna lobe direction 720 as closely as possible with the satellite within the constraints of any rotational restrictions on the mobile device 710.
[0043]
[0058] When determining the current in the target RV / orientation, embodiments can account for and mitigate sensor errors in the mobile device's sensors. For example, the current RV may not always be accurate, especially in azimuth, which is magnetometer-dependent. A calibrated magnetometer may have an error of up to 5° in the azimuth direction, while an uncalibrated magnetometer may have an error of 20° or more. This may be due, for example, to nearby objects causing interference with the magnetic field near the mobile device. To mitigate this error, some embodiments may include a calibration step (e.g., figure-eight calibration) prior to determining the current mobile device orientation (e.g., by sensor-based orientation source(s) 330 of FIG. 3 ). Additionally or alternatively, the UI engine (e.g., UI engine 320 of FIG. 3 ) may prompt the user to pan left / right (adjust yaw rotation) once the mobile device is pointed toward the target RV to account for sensor-based azimuth error in the target RV. (As will be explained in more detail later, this can be done intelligently using signal strength feedback.) Additionally or alternatively, other sensors (camera, RF, etc.) may be relied upon to correct or reduce azimuth and / or other errors.
[0044]
[0059] Similarly, embodiments can account for and mitigate user error. In the case of an SOS / disaster signal, the user may be in distress. Fatigue, physical disabilities, age, etc. may limit or hinder movement and ability to hold the mobile device steadily. In such cases, the mobile device can detect the presence of hand tremors from sensor signals (e.g., IMU, camera, etc.) and, optionally, the main axis of the tremors. In such embodiments, the mobile device can then guide the user to hold the device in a particular way to minimize the impact of the tremors on the alignment of the antenna lobe with the satellite. In other words, the mobile device can guide the user to rotate the mobile device to maximally align the tremor rotation axis with the direction of the antenna main lobe.
[0045]
[0060] When determining the target RV / orientation, the mobile device (e.g., orientation engine 310 and / or UI engine 320) can account for satellite movement and consider the time it takes for a user to rotate the mobile device. That is, when determining the target RV and guiding the user to rotate the mobile device, the satellites continue to move across the sky as the user attempts to point the device. Thus, according to some embodiments, the mobile device can account for this delay when determining the target orientation for antenna-satellite alignment. This can be done, for example, by predicting the location of the satellite at a future time (e.g., the length of the delay). The mobile device can further enable a buffer period so that the mobile device can properly align before the satellite reaches the predicted location. In one example, if the expected time it will take a user to properly align the mobile device is 5 seconds, the mobile device can add a 2-second buffer period and therefore predict satellite locations 7 seconds into the future. This allows the user of the mobile device to properly align the mobile device before the satellite aligns with the antenna lobe.
[0046]
[0061] As described above, some embodiments can provide intelligent UI guidance by taking context / environment into account. For example, a mobile device such as a smartphone can recognize user activity based on IMU and other sensory inputs. This can include identifying activities such as walking, running, biking, and driving a vehicle. According to some embodiments, the activity in which the user is engaged can be taken into account when determining a target orientation and / or an adjustment procedure for rotating the mobile device to the target orientation. A more complex procedure and / or a more cumbersome target orientation may be more acceptable for a user who is not moving or driving a vehicle than for a user who is walking or biking, for example.
[0047]
[0062] As described above, according to some embodiments, the mobile device's camera can be used in various aspects of orientation determination and guidance. As previously mentioned, sensor errors (especially azimuth errors) can result in errors in determining the current orientation and target orientation. However, using a camera, the mobile device can reduce or correct sensing errors by using camera images of specific objects. Objects such as celestial bodies (e.g., the sun, moon, stars) with known azimuth / elevation angles at a given time and location (e.g., as derived from GNSS), the horizon, and / or other known landmarks (e.g., again taking into account the mobile device's current location) can be used to correct for azimuth and / or elevation errors. The camera can also be used to detect occlusions, such as mountains, buildings, etc., that would prevent the mobile device from engaging in line-of-sight communication with a satellite. When such an obstruction is detected, the mobile device can warn the user (e.g., via a UI) to move to an unobstructed location or simply guide the user to align the mobile device's antenna lobe toward another (unobstructed) satellite.
[0048]
[0063] FIG. 8 is a diagram of how a camera can be further utilized by a UI when guiding a user to align a mobile device 810 to engage in satellite-based communications. In FIG. 8 , the camera of the mobile device 810 captures images of the mobile device's environment 820 and displays the images on the screen 830 of the mobile device 810 in real time (or near real time). This can enable the mobile device 810 to provide real-time feedback to the user using an image of the user's surroundings. In this example, the UI also overlays a circle 840 (or other image / icon) representing the direction of the mobile device's antenna lobe on the image on the screen 830, along with a dot 850 (or other image / icon) representing the location (e.g., current or future) of the satellite. This can enable the user to orient the mobile device 810 to align the antenna lobe with the satellite using real-time feedback via the UI of the mobile device 810. More specifically, dot 850 can move as the scene on mobile device 810 is rotated (e.g., as if it were fixed in the sky), while circle 840 can remain in the same relative position on screen 830 (given the fixed orientation of the antenna lobe relative to the body of mobile device 810). The user can align the antenna lobe with the satellite by rotating mobile device 810 to position circle 840 around dot 850. The use of this or similar real-time UI feedback can provide the user with an intuitive interface (e.g., similar to composing a photograph) that allows the user to determine a comfortable orientation for mobile device 810 (rather than a fixed target orientation selected by mobile device 810), thereby reducing or minimizing any accumulation of user error and providing a visual cue to the user about the margin of error (e.g., the size of circle 840). Additionally, the use of a camera further provides the possibility of occlusion detection.For example, if the user identifies an occlusion (e.g., dot 850 is located on an object rather than in open sky), the user may provide input to mobile device 810 indicating that an occlusion exists (e.g., prompting mobile device 810 to identify another satellite for communication and / or prompting the user to go to another location).
[0049]
[0064] When utilizing a camera in this manner, different considerations can be taken into account to ensure proper guidance by the mobile device 810. For example, each pixel in the camera image represents a unique angle of incidence within the camera's field of view (FOV). Thus, the location of the circle 840 representing the antenna lobe direction can be projected onto the camera image via a projection equation that is a function of the antenna lobe direction and the camera parameters / FOV. Regarding the location of the dot 850 representing the satellite position, this can be projected onto the camera image as a function of the satellite direction, the current / real-time orientation of the mobile device 810, and the camera parameters / FOV. More specifically, the XY coordinates of the dot 850 can be extracted from the camera's FOV (given the current orientation) and the satellite's position in the ENU frame. In these examples, the camera parameters can include focal length, photo size in pixels, and / or photo orientation (e.g., landscape / portrait).
[0050]
[0065] 8 can be realized without presenting an image to the user. Thus, according to some embodiments, the mobile device 810 can provide similar real-time feedback via a UI (e.g., similar to the dots 850 and the circles 840) without providing a real-time image on the screen 830. Such embodiments may not utilize a camera, but instead may use a "virtual camera" with camera parameters (e.g., FOV) that can be selected based on the user's convenience.
[0051]
[0066] Guidance provided to the user to rotate the mobile device to a target orientation (e.g., via UI engine 320, as shown in FIG. 3) can be provided in any of a variety of ways, depending on the desired functionality. FIGS. 9-13 provide a description of some embodiments for doing so. It may be noted that the embodiments shown in FIGS. 9-13 are provided as non-limiting examples. For example, alternative graphics and text prompts may be used. Furthermore, different graphics and / or prompts may be used when the mobile device is operated in landscape mode (as opposed to portrait mode, as shown in FIGS. 9-13).
[0052]
[0067] 9 is a flow diagram of an example UI flow 900 that may be executed by a mobile device to guide a mobile device user to orient the mobile device to align a primary antenna lobe with a satellite for satellite-based communications. This UI flow may be executed by a UI engine, such as UI engine 320 of FIG. 3. Various graphical outputs shown in the flow may be displayed, for example, on the screen of the mobile device. In some embodiments, additional audio cues and / or other UI prompts may be provided to help assist the user, depending on the desired functionality.
[0053]
[0068] UI flow 900 begins by displaying a graphical output, shown in block 910, that indicates to a user of the mobile device that satellite positions are being acquired. This screen may be provided to a user, for example, while an orientation engine determines the device's current position (e.g., relative to Earth) and the current (and / or future) positions of one or more predicted satellites that can be used by the mobile device for satellite-based communications. As further shown in block 910, this graphical output may also instruct the user on how to properly hold the mobile device to help reduce interference of communication signals from the satellites with the user's hands. According to some embodiments, the portrait or landscape orientation at startup may depend on the location / orientation of the antenna's main node. If the antenna's main node emerges from the bottom of the phone, the user may be requested to hold the phone in landscape mode to begin. The mobile device may be prompted to display the graphical output in block 910 (and begin UI flow 900) based on user input (e.g., on a previous screen) or other triggering event indicating a desire or need to engage in satellite-based communications. Trigger events may include user input indicating an emergency, a desire to communicate (e.g., when the mobile device is out of network coverage), an automatic trigger detected by the operating system or software executed by the mobile device, etc.
[0054]
[0069] If the user selects the Cancel or Back button during the satellite acquisition / orientation process, the mobile device may display the graphical content of block 920. As shown, this is a prompt for the user to determine whether they want to continue searching for satellites for satellite-based communications or to abandon the process. The user can then select "No" to return to the functionality and UI output of block 910, or "Yes" to abandon the process and return to the previous screen (e.g., displayed before the graphical output of block 910), as shown in block 930.
[0055]
[0070] If the locations of one or more expected satellites relative to the position of a mobile device attempting to engage in satellite-based communications are not obtained, as shown in block 940, a graphical output, as shown in block 950, may be displayed to indicate to the user that satellite positions were not obtained and prompt the user to try again (returning to the function and display shown in block 910) or abandon the process (returning to the previous screen, as shown in block 930). Possible reasons for such failure may include, for example, the mobile device not having predicted orbit information for any satellites, the mobile device failing to calculate its position using GNSS satellites within a certain threshold, and / or the mobile device determining that no satellites are expected to be visible within a threshold period (e.g., within the next few seconds / minutes). Otherwise, if the locations of one or more expected satellites are determined before the timeout, flow may proceed to the function shown in block 960, where the mobile device provides guidance to the user (via a UI) on how to rotate the device to the target orientation. Examples of such guidance are shown in FIGS. 10-12, described below.
[0056]
[0071] FIG. 10 illustrates a series of screens that may be displayed on a mobile device screen to guide a mobile device user to rotate the mobile device to a target orientation, according to one embodiment. This example illustrates a procedure that combines a two-step rotation process for rotating from a current orientation (e.g., as shown in FIG. 6B ) to a target orientation with a closed-loop process for providing real-time feedback to the user (e.g., similar to the process described in FIG. 8 ). Here, the first two screens 1010 and 1020 each include a textual prompt 1050 and a graphical prompt 1060 for rotating the mobile device first in azimuth (as shown in screen 1010) and then in elevation (as shown in screen 1020), although the order of the screens may be reversed depending on the desired functionality. This may be done to rotate the mobile device to a point where a satellite is within the FOV of the virtual camera, as previously described.
[0057]
[0072] When a satellite is within the virtual camera's FOV, a process similar to that described with respect to FIG. 8 can be performed. As shown on screen 1030, the user can be prompted (via text prompt 1070) to rotate the device so that a dot 1080 representing the satellite falls within a circle 1090 representing the direction of the main antenna lobe. Again, circle 1090 may be at a fixed spot on screen 1030, and dot 1080 may move with the rotation of the mobile device. As previously mentioned, the main antenna lobe may not be aligned with the mobile device's access, so movement of dot 1080 may not correspond directly or proportionally to movement of the mobile device. However, the characteristics of the virtual camera (e.g., virtual FOV) may be adjusted so that the process is not difficult for the user, even if it is not intuitive. As shown on screen 1040, once the user successfully moves dot 1080 within circle 1090 (allowing the mobile device to initiate a communication link with the satellite), the user can be prompted to maintain the orientation of the mobile device to allow communication to occur. Of course, in alternative embodiments, different text prompts and / or graphics may be used.
[0058]
[0073] FIG. 11 illustrates a UI flow 1100 that can be used as an alternative to the process shown in FIG. 10 , according to one embodiment. Similar to FIG. 10 , this process can reflect a two-step rotation process, with the first step / rotation shown in FIG. 11 and subsequent rotations continuing in FIG. 12 . To ensure that the phone is properly aligned in time to engage in communication with the satellite, if the user is unable to align the mobile device to enable satellite-based communication within a certain period of time (e.g., a delay time plus a buffer time, as discussed above), a prompt similar to block 950 of FIG. 9 can be displayed to the user, prompting the user to continue or abandon the process. If the user chooses to continue, a new satellite position can be determined and the process can begin again.
[0059]
[0074] Flow 1100 of FIG. 11 may begin at block 1110, where a determination is made as to whether a satellite is overhead (e.g., within a threshold tolerance) or whether the mobile device is already pointed in the proper direction (e.g., the proper azimuth direction, again within a threshold tolerance). If so, the process may proceed to provide pitch rotation guidance, as shown in block 1120 (shown in detail in FIG. 12 and described below). If not, the process may proceed to screen 1130, which includes text and graphical prompts to rotate the mobile device (e.g., about a vertical axis to change azimuth direction). Once the user has properly rotated the mobile device, screen 1140 may be displayed, and the process may proceed to pitch rotation guidance, as shown in block 1120. In some embodiments, once the user achieves the proper rotation (e.g., successfully rotates the device to trigger the display of screen 1140), the mobile device may provide other feedback, such as vibration, sound, etc., to help the user identify when the mobile device has been properly rotated.
[0060]
[0075] FIG. 12 illustrates a UI flow 1200 that can be utilized to guide a user to orient a mobile device toward a target heading by tilting the mobile device to a target pitch. As previously shown, this UI flow 1200 can be executed when the proper azimuth rotation is achieved, such as UI flow 1100 of FIG. 11. Again, to ensure that the phone is properly aligned in time to engage in communication with the satellite, if the user is unable to align the mobile device to enable satellite-based communication within a certain period of time (e.g., a delay time plus a buffer time, as previously described), a prompt similar to block 950 of FIG. 9 can be displayed to the user, prompting the user to continue or abandon the process. If the user chooses to continue, a new satellite position can be determined and the process can begin again. Pressing a cancel button can cause the UI to return to the previous screen / function, restart heading guidance, or abandon guidance entirely, depending on the desired function.
[0061]
[0076] Flow 1200 may begin with a mobile device displaying screen 1210, and the user is prompted to tilt the mobile device so that block 1220 aligns with line 1230. Here, line 1230 is fixed relative to the display, but block 1220 moves with the tilt of the mobile device. Once the user successfully aligns block 1220 with line 1230 (e.g., achieves the proper pitch within a threshold), the mobile device may then display screen 1240. Again, one or more additional outputs, such as vibration, sound, etc., may be provided to alert the user that they have successfully rotated the mobile device to the correct orientation. As shown in screen 1240, the mobile device may prompt the user to maintain the mobile device's current orientation to enable the mobile device to engage in satellite-based communications.
[0062]
[0077] At block 1250, a determination is made whether the intended transaction is completed. Again, the intended transaction may vary depending on the desired functionality. The intended transaction may include any combination of sending a message, downloading a message, or setting up an account, where the message may include a user message such as a text message (SMS), email, etc. Additionally or alternatively, the intended transaction may include sending other types of messages, such as control or communication messages used by the mobile device (e.g., app-layer or lower-layer messages to / from a server), which may not be seen or used by the user.
[0063]
[0078] At that point, flow 1200 can take one of two different paths, as shown in FIG. 12. If the intended transaction was completed successfully, flow 1200 can end. This can mean, for example, returning to the previous UI / screen displayed by the mobile device before the start of the process involving satellite-based communications. If the intended transaction was not completed successfully, a screener window can be displayed to inform the user that the satellite connection has dropped, as shown in block 1260. At this point, the process can end, and (if the user chooses) the user can begin the process to again engage in satellite-based communications. In some cases, the transaction may have been partially completed, in which case the mobile device can display a window indicating which portions of the transaction have been completed (e.g., the transmission of one message has completed but not another).
[0064]
[0079] Again, the screens / graphics provided in Figures 10-12 that provide guidance to the user for rotating the mobile device to a target rotation are provided as non-limiting examples. Other embodiments may utilize different text prompts and / or graphics. Additionally, some embodiments may combine prompts so that the user is prompted to rotate in multiple directions using a single screen.
[0065]
[0080] 13 is an illustration of an example screen 1310 prompting a user to rotate a mobile device to adjust both pitch and yaw at once. Specifically, orthogonally aligned graphics 1315 prompt the user to rotate the mobile device to adjust both yaw and pitch so that a circle 1320 is aligned / centered on a line 1330. Additional or alternative graphics can be utilized to provide the user with an intuitive interface that allows for rotational guidance along multiple axes of rotation.
[0066]
[0081] Figure 14 is a flow diagram of a method 1400 of a method for facilitating a wireless communications link between a mobile device and a satellite, according to one embodiment. Means for performing the functions illustrated in one or more of the blocks illustrated in Figure 14 may be performed by hardware and / or software components of a mobile device as described herein. Exemplary components of a mobile device, described in more detail below, are shown in Figure 15.
[0067]
[0082] In block 1410, the function includes determining, with the mobile device, a set of target orientations for the mobile device in which the mobile device's antenna lobes are pointed toward the satellite, the set of target orientations being based on the orientations of the antenna lobes relative to the mobile device and the location of the satellite relative to the mobile device. As shown in embodiments herein, the antenna lobes may include the mobile device's main antenna lobe or node. Doing so may result in power savings and / or less signal loss in the mobile device (e.g., relative to utilizing other antenna lobes that may be present). The set of orientations may include multiple orientations of the mobile device in which the main antenna lobe will be pointed toward the satellite. This may include, for example, a rotation of the mobile device around the axis of the main antenna lobe, as described with respect to FIG. 5 . Thus, according to some embodiments of method 1400, the set of target orientations for the mobile device may include multiple orientations for the mobile device, each orientation of the multiple orientations having a unique degree of rotation around an axis along the direction of the antenna lobe. However, in some embodiments, the set of orientations may include a single orientation.
[0068]
[0083] As described in the embodiments herein, the mobile device can perform various operations to determine the location of satellites relative to the mobile device. Accordingly, some embodiments of method 1400 can further include, using the mobile device, determining a current location of the mobile device. In some embodiments, determining the current location of the mobile device can include using a GNSS receiver of the mobile device to determine the current location of the mobile device. Although, as described elsewhere herein, additional or alternative positioning means can be utilized to determine the current location of the mobile device. According to some embodiments, method 1400 can further include, using the mobile device, determining the locations of satellites relative to the mobile device, where determining the locations of the satellites is based at least in part on the locations of the satellites and the current location of the mobile device. As described above, the locations of the satellites can be obtained using an orbital model to determine the current positions of one or more satellites in the constellation. The model and / or orbital parameter values used by the model can be provided by a server. This orbital data can be valid for weeks, months, or longer. Accordingly, in a given implementation, the model and / or orbital parameter values can have been provided to the mobile device by the server days, weeks, or the like in advance.
[0069]
[0084] The means for performing the functions in block 1410 may include a bus 1505, a processor(s) 1510, a DSP 1520, a wireless communication interface 1530, a sensor 1540, a memory 1560, a GNSS receiver 1580, and / or other components of the mobile device 1500, as shown in FIG. 15 and described in more detail below.
[0070]
[0085] The functions in block 1420 include determining a current orientation of the mobile device. As described herein, a mobile device may have various sensors, including one or more IMUs (and / or a combination of accelerometers and / or gyroscopes), magnetometers, RF sensors, etc., from which data for determining the orientation of the mobile device may be obtained. As described elsewhere herein, in some situations, it may be desirable to perform calibration of one or more of these orientation sensors, such as a magnetometer, to more accurately determine the orientation of the mobile device. Accordingly, some embodiments of method 1400 may further include, prior to determining the current orientation of the mobile device, providing guidance, in a UI of the mobile device, for moving the mobile device to perform calibration of one or more orientation sensors of the mobile device. Using the current orientation and the set of target orientations, the mobile device may then determine one or more steps for rotating the mobile device from the current orientation to at least one target orientation, as described in embodiments herein. The means for performing the functions in block 1420 may include a bus 1505, a processor(s) 1510, a DSP 1520, a wireless communication interface 1530, a sensor 1540, a memory 1560, a GNSS receiver 1580, and / or other components of the mobile device 1500, as shown in FIG. 15 and described in more detail below.
[0071]
[0086] The function at block 1430 includes providing guidance in a UI of the mobile device for rotating the mobile device from a current orientation to an orientation within the set of target orientations. As described herein with respect to FIGS. 9-13, for example, the mobile device can perform various steps and provide various types of UI to guide a user to rotate the mobile device to an orientation within the set of target orientations. In some embodiments, for example, the UI can include a GUI displaying a first graphical icon that moves as the mobile device is rotated and a second graphical icon that is stationary relative to the mobile device, the first graphical icon aligning with the second graphical icon when the mobile device is rotated to an orientation within the set of target orientations. Examples of this are provided elsewhere herein (e.g., with respect to FIGS. 10-13). In some embodiments, method 1400 may additionally or alternatively include indicating to the user a failure to establish a wireless communication link between the mobile device and a satellite if the mobile device is not rotated to an orientation within the set of target orientations within a threshold period. This period may be based on a calculated window of time during which a satellite may be able to communicate with the mobile device when the mobile device is pointed in a heading within the set of target headings, and may also include an estimated time it may take to send and / or receive information from the satellite.
[0072]
[0087] Other embodiments may utilize the detected type of movement to provide guidance to the user. As described above, tremors can be detected and used by the UI. Thus, some embodiments of method 1400 may further include detecting a primary tremor rotation axis experienced by the mobile device, and providing guidance for rotating the mobile device includes providing guidance to maximally align the tremor rotation axis with the direction of the antenna lobe.
[0073]
[0088] The means for performing the functions in block 1430 may include a bus 1505, a processor(s) 1510, a DSP 1520, a wireless communication interface 1530, a sensor 1540, a memory 1560, a GNSS receiver 1580, and / or other components of the mobile device 1500, as shown in FIG. 15 and described in more detail below.
[0074]
[0089] As illustrated in the previous embodiments, embodiments may include one or more additional operations depending on desired functionality. For example, according to some embodiments of method 1400, guidance for rotating the mobile device may include providing real-time visual feedback on a display of the mobile device. Such embodiments may further include estimating real-time positions of satellites, where the real-time visual feedback is based on the estimated real-time positions of the satellites. Additionally or alternatively, guidance for rotating the mobile device may include guidance for adjusting the yaw, pitch, or roll of the mobile device, or any combination thereof. In some embodiments, guidance for rotating the mobile device may include displaying an image of the mobile device's environment, where the image is captured by a camera on the mobile device. As described above with respect to FIG. 8 , such embodiments may further include displaying a first graphical icon on the image that moves as the mobile device is rotated and a second graphical icon on the image that remains stationary relative to the mobile device, where the first graphical icon aligns with the second graphical icon when the mobile device is rotated to an orientation within the set of target orientations. Additionally or alternatively, the location of the satellite relative to the mobile device may include the location of the satellite at a future time. In some embodiments, method 1400 can further include determining a location of the satellite using the orbit model and one or more orbital parameter values, where the one or more orbital parameter values can be received by the mobile device from a computer server. Some embodiments of method 1400 can further include wirelessly transmitting a message from the mobile device to the satellite while the mobile device is in an orientation within the set of target orientations within the threshold degree of dispersion. In such embodiments, wirelessly transmitting the message can include using an antenna of the mobile device used by a Global Navigation Satellite System (GNSS) receiver of the mobile device.
[0075]
[0090] FIG. 15 is a block diagram of one embodiment of a mobile device 1500 that may be utilized as described above in this specification (e.g., in connection with FIGS. 1-14). For example, the mobile device 1500 may perform one or more of the functions of the method illustrated in FIG. 14. It should be noted that FIG. 15 is intended only to provide a generalized illustration of various components, any or all of which may be utilized as desired. It should be noted that in some cases, the components illustrated in FIG. 15 may be localized in a single physical device and / or distributed among various networked devices that may be located in different physical locations. Furthermore, as previously mentioned, the UE functions described in the foregoing embodiments may be performed by one or more of the hardware and / or software components illustrated in FIG. 15.
[0076]
[0091] A mobile device 1500 is shown comprising hardware elements that may be electrically coupled (or may otherwise communicate as needed) via a bus 1505. The hardware elements may include processor(s) 1510, which may include, but are not limited to, one or more general-purpose processors (e.g., application processors), one or more special-purpose processors (such as digital signal processor (DSP) chips, graphics acceleration processors, application-specific integrated circuits (ASICs)), and / or other processing structures or means. The processor(s) 1510 may include one or more processing units that may be housed in a single integrated circuit (IC) or multiple ICs. As shown in FIG. 15, some embodiments may have a separate DSP 1520 depending on desired functionality. Location determination and / or other decisions based on wireless communication may be performed in the processor(s) 1510 and / or in the wireless communication interface 1530 (described below). The mobile device 1500 may also include one or more input devices 1570, which may include, but are not limited to, one or more keyboards, touchscreens, touchpads, microphones, buttons, dials, switches, etc., and one or more output devices 1515, which may include, but are not limited to, one or more displays (e.g., touchscreens), light emitting diodes (LEDs), speakers, etc.
[0077]
[0092] The mobile device 1500 may also include a wireless communication interface 1530, which may comprise, but is not limited to, a modem, a network card, an infrared communication device, a wireless communication device, and / or a chipset (such as a Bluetooth device, an IEEE 802.11 device, an IEEE 802.15.4 device, a Wi-Fi device, a WiMAX device, a WAN device, and / or various cellular devices), etc., that may enable the mobile device 1500 to communicate with other devices as described in the above embodiments. The wireless communication interface 1530 may enable data and signaling to be communicated (e.g., transmitted and received) with a TRP of a network, as described herein, for example, via an eNB, a gNB, an ng-eNB, an access point, various base stations and / or other access node types, and / or other network components, computer systems, and / or any other electronic devices communicatively coupled to the TRP. Communication may be performed via one or more wireless communication antenna(s) 1532 that transmit and / or receive wireless signals 1534. According to some embodiments, the wireless communication antenna(s) 1532 may include multiple individual antennas, an antenna array, or any combination thereof. The antenna(s) 1532 may be capable of transmitting and receiving wireless signals using beams (e.g., Tx beams and Rx beams). Beamforming may be performed using digital and / or analog beamforming techniques using respective digital and / or analog circuitry. The wireless communication interface 1530 may include such circuitry. The antenna(s) 1532 may also be used for satellite-based communications and may comprise a primary node that can be pointed to a satellite for satellite-based communications, as described herein. According to some embodiments, the orientation of the primary node relative to the body of the device may be known / established by the device manufacturer.In some embodiments, the antenna(s) 1532 utilized for satellite-based communications may be the same as the antenna(s) 1582 used by the GNSS receiver 1580 .
[0078]
[0093] Depending on desired functionality, the wireless communication interface 1530 may include separate receivers and transmitters, or any combination of transceivers, transmitters, and / or receivers, for communicating with base stations (e.g., ng-eNBs and gNBs) and other terrestrial transceivers, such as wireless devices and access points. The mobile device 1500 may communicate with different data networks, which may include a variety of network types. For example, a Wireless Wide Area Network (WWAN) may be a CDMA network, a Time Division Multiple Access (TDMA) network, a Frequency Division Multiple Access (FDMA) network, an Orthogonal Frequency Division Multiple Access (OFDMA) network, a Single-Carrier Frequency Division Multiple Access (SC-FDMA) network, a WiMAX (IEEE 802.16) network, etc. The CDMA network may implement one or more RATs, such as CDMA2000, WCDMA, etc. CDMA2000® includes the IS-95 standard, the IS-2000 standard, and / or the IS-856 standard. A TDMA network may implement GSM®, the Digital Advanced Mobile Phone System (D-AMPS), or some other RAT. An OFDMA network may utilize LTE®, LTE Advanced, 5G NR, etc. 5G NR, LTE, LTE Advanced, GSM, and WCDMA are described in documents from 3GPP®. CDMA2000® is described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2).3GPP and 3GPP2 documents are publicly available. A wireless local area network (WLAN) may also be an IEEE 802.11x network, and a wireless personal area network (WPAN) may be a Bluetooth network, an IEEE 802.15x, or some other type of network. The techniques described herein may also be used for any combination of WWAN, WLAN, and / or WPAN.
[0079]
[0094] The mobile device 1500 may further include sensor(s) 1540. The sensor(s) 1540 may include, but are not limited to, one or more inertial sensors and / or other sensors (e.g., accelerometer(s), gyroscope(s), camera(s), magnetometer(s), altimeter(s), microphone(s), proximity sensor(s), light sensor(s), barometer(s), etc.), some of which may be used to obtain positional relationship measurements and / or other information. As described herein, the sensor(s) 1540 may be used to determine the orientation of the mobile device 1500, which may be used to assist a user in rotating the mobile device 1500 to a target orientation. Further, as described herein, the camera can be used to capture images of the environment of the mobile device 1500, which can be displayed on a display (e.g., output device 1515) of the mobile device 1500.
[0080]
[0095] Embodiments of mobile device 1500 may also include a GNSS receiver 1580 capable of receiving signals 1584 from one or more Global Navigation Satellite System (GNSS) satellites using an antenna 1582 (which may be the same as antenna 1532). Positioning based on GNSS signal measurements may be utilized to complement and / or incorporate the techniques described herein. GNSS receiver 1580 may use conventional techniques to extract a location for mobile device 1500 from GNSS satellites of a GNSS system such as Global Positioning System (GPS), Galileo, GLONASS, the Quasi-Zenith Satellite System (QZSS) over Japan, the IRNSS over India, or the Beidou Navigation Satellite System (BDS). Furthermore, the GNSS receiver 1580 can be used with various augmentation systems (e.g., Satellite Based Augmentation System (SBAS)) that may be associated with or otherwise capable of being used with one or more global and / or regional navigation satellite systems, such as, for example, the Wide Area Augmentation System (WAAS), the European Geostationary Navigation Overlay Service (EGNOS), the Multi-functional Satellite Augmentation System (MSAS), and the Geo Augmented Navigation system (GAGAN).
[0081]
[0096] It may be noted that while the GNSS receiver 1580 is shown in FIG. 15 as a separate component, embodiments are not so limited. As used herein, the term “GNSS receiver” may include hardware and / or software components configured to acquire GNSS measurements (measurements from GNSS satellites). Thus, in some embodiments, the GNSS receiver may comprise a measurement engine executed (as software) by one or more processors, such as the processor(s) 1510, the DSP 1520, and / or a processor in the wireless communication interface 1530 (e.g., in a modem). The GNSS receiver may also optionally include a positioning engine, which can use the GNSS measurements from the measurement engine to determine the position of the GNSS receiver using an Extended Kalman Filter (EKF), Weighted Least Squares (WLS), a Hatch filter, a particle filter, or the like. The positioning engine may also be executed by one or more processors, such as the processor(s) 1510 or the DSP 1520.
[0082]
[0097] Mobile device 1500 may further include and / or be in communication with memory 1560. Memory 1560 may include, but is not limited to, local and / or network-accessible storage devices, disk drives, drive arrays, optical storage devices, solid-state storage devices such as random access memory (RAM) and / or read-only memory (ROM), which may be programmable, flash-updateable, etc. Such storage devices may be configured to implement any suitable data store, including, but not limited to, various file systems, database structures, etc.
[0083]
[0098] Memory 1560 of mobile device 1500 may also include software elements (not shown in FIG. 15 ) including other code, such as an operating system, device drivers, executable libraries, and / or one or more application programs, which may include computer programs provided by various embodiments and / or may be designed to implement methods and / or configure systems provided by other embodiments, as described herein. By way of example only, one or more procedures described with respect to the method(s) described above may be implemented as code and / or instructions in memory 1560 executable by mobile device 1500 (and / or processor(s) 1510 or DSP 1520 within mobile device 1500). In some embodiments, such code and / or instructions may then be used to configure and / or adapt a general-purpose computer (or other device) to perform one or more operations in accordance with the described method(s).
[0084]
[0099] It will be apparent to those skilled in the art that substantial variations may be made according to particular requirements. For example, customized hardware might also be used and / or particular elements might be implemented in hardware, software (including portable software such as applets), or both. Furthermore, connection to other computing devices, such as network input / output devices, might be utilized.
[0085]
[0100] With reference to the accompanying figures, components that may include memory may include non-transitory machine-readable media. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any storage medium that participates in providing data that causes a machine to operate in a specific manner. In the embodiments provided above, various machine-readable media may be involved in providing instructions / code to a processor and / or other device(s) for execution. Additionally or alternatively, machine-readable media may be used to store and / or transport such instructions / code. In many implementations, computer-readable media are physical and / or tangible storage media. Such media may take many forms, including, but not limited to, non-volatile media and volatile media. Common forms of computer-readable media include, for example, magnetic and / or optical media, any other physical medium with a pattern of holes, RAM, programmable ROM (PROM), erasable PROM (EPROM), FLASH®-EPROM, any other memory chip or cartridge, or any other medium from which a computer can read instructions and / or code.
[0086]
[0101] The methods, systems, and devices described herein are examples. Various embodiments may omit, substitute, or add various procedures or components, as appropriate. For example, features described with respect to some embodiments may be combined in various other embodiments. Different aspects and elements of the embodiments may be similarly combined. Various components of the diagrams provided herein may be embodied in hardware and / or software. Also, technology evolves, and therefore, many of the elements are examples that do not limit the scope of the disclosure to those specific examples.
[0087]
[0102] It has proven convenient at times, principally for reasons of common usage, to refer to such signals as bits, information, values, elements, symbols, characters, variables, terms, numbers, numerical values, or the like. It should be understood, however, that all of these or similar terms are merely convenient labels and are to be associated with the appropriate physical quantities. Unless otherwise expressly stated, and as is clear from the above description, throughout this specification, descriptions utilizing terms such as "processing," "calculating," "calculating," "determining," "ascertaining," "identifying," "associating," "measuring," "performing," and the like, should be understood to refer to the actions or processes of a particular apparatus, such as a special purpose computer or similar special purpose electronic computing device. Thus, in the context of this specification, a special purpose computer or similar special purpose electronic computing device is capable of manipulating or transforming signals that are typically represented as physical electronic, electrical, or magnetic quantities within the memories, registers, or other information storage, transmission, or display devices of the special purpose computer or similar special purpose electronic computing device.
[0088]
[0103] The terms "and" and "or" as used herein may include a variety of meanings that are expected to depend, at least in part, on the context in which such terms are used. Generally, when "or" is used to associate a list, such as A, B, or C, it is intended to mean A, B, and C, which are used herein in an inclusive sense, as well as A, B, or C, which are used herein in an exclusive sense. Additionally, as used herein, the term "one or more" may be used to refer to any feature, structure, or characteristic in the singular, or may be used to refer to any combination of features, structures, or characteristics. However, it should be noted that this is merely an illustrative example, and claimed subject matter is not limited to this example. Furthermore, the term "at least one of," when used to associate a list, such as A, B, or C, may be interpreted to mean any combination of A, B, and / or C, such as A, AB, AA, AAB, AABBCCC, etc.
[0089]
[0104] While several embodiments have been described, various modifications, alternative configurations, and equivalents may be used without departing from the scope of the present disclosure. For example, the above elements may merely be components of a larger system in which other rules may take precedence over or otherwise modify the application of the various embodiments. Also, some steps may be taken before, during, or after the above elements are considered. Therefore, the above description does not limit the scope of the present disclosure.
[0090]
[0105] In view of this description, embodiments may include different combinations of features. Example implementations are described in the following numbered clauses.
[0091] Clause 1. A method for enabling a wireless communications link between a mobile device and a satellite, the method including: determining, using the mobile device, a set of target orientations for the mobile device in which antenna lobes of the mobile device are pointed toward satellites, the set of target orientations being based on orientations of the antenna lobes relative to the mobile device and locations of the satellites relative to the mobile device; determining a current orientation of the mobile device; and providing guidance in a user interface (UI) of the mobile device for rotating the mobile device from the current orientation to an orientation within the set of target orientations.
[0092] Clause 2. The method of clause 1, wherein providing guidance for rotating the mobile device includes providing real-time visual feedback on a display of the mobile device.
[0093] Clause 3. The method of clause 2, further comprising estimating a real-time position of the satellite, wherein the real-time visual feedback is based on the estimated real-time position of the satellite.
[0094] Clause 4. The method of any one of clauses 1 to 3, wherein providing guidance for rotating the mobile device includes guidance for adjusting the yaw, pitch, or roll of the mobile device, or any combination thereof.
[0095] Clause 5. The method of any one of clauses 1 to 4, wherein providing guidance for rotating the mobile device includes displaying an image of an environment of the mobile device, the image being captured by a camera of the mobile device.
[0096] Clause 6. The method of any one of clauses 1 to 5, wherein the location of the satellite relative to the mobile device comprises the location of the satellite at a future time.
[0097] Clause 7. The method of any one of clauses 1 to 6, further comprising determining the location of the satellite using an orbital model and one or more orbital parameter values, wherein the one or more orbital parameter values are received by the mobile device from a computer server.
[0098] Clause 8. The method of any one of clauses 1 to 7, further comprising wirelessly transmitting a message from the mobile device to the satellite while the mobile device is in a heading within the set of target headings, within a threshold degree of dispersion.
[0099] Clause 9. The method of clause 8, wherein wirelessly transmitting the message includes using an antenna of the mobile device that is used by a Global Navigation Satellite System (GNSS) receiver of the mobile device.
[0100] Clause 10. The method of any one of clauses 1 to 9, further comprising determining, with the mobile device, a current location of the mobile device.
[0101] Clause 11. The method of clause 10, wherein determining a current location of the mobile device includes using a GNSS receiver of the mobile device to determine a current location of the mobile device.
[0102] Clause 12. The method of clause 10 or 11, further comprising using the mobile device to determine locations of satellites relative to the mobile device, wherein determining the locations of the satellites is based at least in part on the locations of the satellites and the current location of the mobile device.
[0103] Clause 13. The method of any one of clauses 1 to 12, wherein the set of target orientations for the mobile device includes a plurality of orientations for the mobile device, each orientation of the plurality of orientations having a unique degree of rotation about an axis along the direction of the antenna lobe.
[0104] Clause 14. The method of any one of clauses 1 to 13, further comprising indicating to a user a failure to establish a wireless communications link between the mobile device and the satellite if the mobile device is not rotated to an orientation within the set of target orientations within a threshold period.
[0105] Clause 15. A method according to any one of clauses 1 to 14, wherein the UI includes a graphical user interface (GUI) displaying a first graphical icon that moves as the mobile device is rotated and a second graphical icon that is stationary relative to the mobile device, the first graphical icon aligning with the second graphical icon when the mobile device is rotated to an orientation within a set of target orientations.
[0106] Clause 16. The method of any one of clauses 1 to 15, further comprising detecting a primary seismic rotation axis experienced by the mobile device, and wherein providing guidance for rotating the mobile device comprises providing guidance to maximally align the seismic rotation axis with the direction of the antenna lobe.
[0107] Clause 17. The method of any one of clauses 1 to 16, further comprising, prior to determining a current orientation of the mobile device, providing, in a UI of the mobile device, guidance for moving the mobile device to perform calibration of one or more orientation sensors of the mobile device.
[0108] Clause 18. A mobile device for enabling a wireless communications link between a mobile device and a satellite, the mobile device comprising: a transceiver; a memory; a user interface (UI); and one or more processors communicatively coupled to the transceiver and the memory, wherein the one or more processors are configured to: determine a set of target orientations for the mobile device in which antenna lobes of the mobile device are pointed toward satellites, the set of target orientations being based on orientations of the antenna lobes relative to the mobile device and locations of the satellites relative to the mobile device; determine a current orientation of the mobile device; and provide guidance in the UI for rotating the mobile device from the current orientation to an orientation within the set of target orientations.
[0109] Clause 19. The mobile device of clause 18, wherein the one or more processors are configured to include real-time visual feedback on a display of the mobile device in the guidance for rotating the mobile device.
[0110] Clause 20. The mobile device of clause 19, wherein the one or more processors are further configured to estimate real-time positions of satellites, and the real-time visual feedback is based on the estimated real-time positions of the satellites.
[0111] Clause 21. The mobile device of any one of clauses 18 to 20, wherein the one or more processors are configured to:
[0112] Clause 22. A mobile device as described in any one of clauses 18 to 21, further comprising a camera, and wherein the one or more processors are configured to include in the guidance for rotating the mobile device a display of an image of the mobile device's environment, the image being captured by the camera.
[0113] Clause 23. A mobile device as described in any one of clauses 18 to 22, wherein to base the set of target orientations on the location of satellites relative to the mobile device, the one or more processors are configured to base the set of target orientations on the location of satellites at a future time.
[0114] Clause 24. A mobile device as described in any one of clauses 18 to 23, wherein the one or more processors are further configured to (i) determine the location of the satellite using the orbital model and one or more orbital parameter values, and (ii) receive, via the transceiver, the one or more orbital parameter values from a computer server.
[0115] Clause 25. A mobile device as described in any one of clauses 18 to 24, wherein the one or more processors are further configured to wirelessly transmit a message to a satellite via the transceiver while the mobile device is in a heading within the set of target headings within a threshold degree of dispersion.
[0116] Clause 26. A mobile device according to any one of clauses 18 to 25, further comprising a Global Navigation Satellite System (GNSS) receiver, wherein the one or more processors are configured to use an antenna of the mobile device used by the GNSS receiver to transmit messages wirelessly.
[0117] Clause 27. A mobile device according to any one of clauses 18 to 26, wherein the one or more processors are further configured to determine, with the mobile device, a current location of the mobile device.
[0118] Clause 28. The mobile device of clause 27, wherein the one or more processors are configured to use a GNSS receiver of the mobile device to determine a current location of the mobile device.
[0119] Clause 29. The mobile device of any one of clauses 18 to 28, wherein the one or more processors are further configured to determine the location of a satellite relative to the mobile device, and wherein determining the location of the satellite is based at least in part on the location of the satellite and a current location of the mobile device.
[0120] Clause 30. A mobile device as described in any one of clauses 18 to 29, wherein the set of target orientations for the mobile device includes a plurality of orientations for the mobile device, each orientation of the plurality of orientations having a unique degree of rotation about an axis along the direction of the antenna lobe.
[0121] Clause 31. A mobile device as described in any one of clauses 18 to 30, wherein the one or more processors are further configured to indicate to a user, via the UI, a failure to establish a wireless communications link between the mobile device and the satellite if the mobile device is not rotated to an orientation within the set of target orientations within a threshold period.
[0122] Clause 32. A mobile device as described in any one of clauses 18 to 31, wherein the UI includes a graphical user interface (GUI) configured to display a first graphical icon configured to move as the mobile device is rotated and a second graphical icon configured to remain stationary relative to the mobile device, and wherein the first graphical icon is configured to align with the second graphical icon when the mobile device is rotated to an orientation within a set of target orientations.
[0123] Clause 33. The mobile device of any one of clauses 18 to 32, wherein the one or more processors are further configured to detect a primary seismic rotation axis experienced by the mobile device, and to provide guidance for rotating the mobile device, the one or more processors are configured to provide guidance to maximally align the seismic rotation axis with the direction of the antenna lobe.
[0124] Clause 34. A mobile device as described in any one of clauses 18 to 33, wherein the one or more processors are further configured to provide, in the UI, guidance for moving the mobile device to perform calibration of one or more orientation sensors of the mobile device before determining the current orientation of the mobile device.
[0125] Clause 35. An apparatus for enabling a wireless communications link between a mobile device and a satellite, the apparatus comprising: means for determining a set of target orientations for the mobile device in which antenna lobes of the mobile device are pointed toward the satellite, the set of target orientations being based on orientations of the antenna lobes relative to the mobile device and locations of the satellites relative to the mobile device; means for determining a current orientation of the mobile device; and means for providing guidance in a user interface (UI) of the mobile device for rotating the mobile device from the current orientation to an orientation within the set of target orientations.
[0126] Clause 36. The apparatus of clause 35, further comprising means for providing real-time visual feedback on a display of the mobile device.
[0127] Clause 37. The apparatus of clause 36, further comprising means for estimating a real-time position of the satellite, wherein the real-time visual feedback is based on the estimated real-time position of the satellite.
[0128] Clause 38. An apparatus according to any one of clauses 35 to 37, wherein the means for providing guidance comprises means for adjusting the yaw, pitch or roll of the mobile device, or any combination thereof.
[0129] Clause 39. An apparatus according to any one of clauses 35 to 38, wherein the means for providing guidance comprises means for displaying an image of an environment of the mobile device, the image being captured by a camera of the mobile device.
[0130] Clause 40. An apparatus as described in any one of clauses 35 to 39, further comprising means for determining the location of the satellite using an orbital model and one or more orbital parameter values, wherein the one or more orbital parameter values are received by the mobile device from a computer server.
[0131] Clause 41. The apparatus of any one of clauses 35 to 40, further comprising means for wirelessly transmitting a message from the mobile device to a satellite while the mobile device is in a heading within the set of target headings, within a threshold degree of dispersion.
[0132] Clause 42. The apparatus of any one of clauses 35 to 41, wherein the means for wirelessly transmitting the message includes means for using an antenna of the mobile device that is used by a Global Navigation Satellite System (GNSS) receiver of the mobile device.
[0133] Clause 43. The apparatus of any one of clauses 35 to 42, further comprising means for determining a current location of the mobile device.
[0134] Clause 44. The apparatus of clause 43, wherein the means for determining a current location of the mobile device includes means for using a GNSS receiver of the mobile device to determine a current location of the mobile device.
[0135] Clause 45. The apparatus of any one of clauses 35 to 44, further comprising means for determining a location of a satellite relative to the mobile device, wherein determining the location of the satellite is based at least in part on the location of the satellite and a current location of the mobile device.
[0136] Clause 46. The apparatus of any one of clauses 35 to 45, further comprising means for indicating to a user a failure to establish a wireless communications link between the mobile device and the satellite if the mobile device is not rotated to an orientation within the set of target orientations within a threshold period.
[0137] Clause 47. The apparatus of any one of clauses 35 to 46, further comprising means for detecting a primary seismic rotation axis experienced by the mobile device, and wherein providing guidance for rotating the mobile device includes providing guidance to maximally align the seismic rotation axis with the direction of the antenna lobe.
[0138] Clause 48. The apparatus of any one of clauses 35 to 47, further comprising means for providing, in a UI of the mobile device, guidance for moving the mobile device to perform calibration of one or more orientation sensors of the mobile device before determining the current orientation of the mobile device.
[0139] Clause 49. A non-transitory computer-readable medium storing instructions for enabling a wireless communications link between a mobile device and a satellite, the instructions including code for determining a set of target orientations for the mobile device in which antenna lobes of the mobile device are pointed toward the satellite, the set of target orientations being based on orientations of the antenna lobes relative to the mobile device and locations of the satellites relative to the mobile device; determining a current orientation of the mobile device; and providing guidance in a user interface (UI) of the mobile device for rotating the mobile device from the current orientation to an orientation within the set of target orientations.
[0140] Clause 50. The computer-readable medium of clause 49, wherein the instructions further comprise code that provides real-time visual feedback on a display of the mobile device.
[0141] Clause 51. The computer-readable medium of clause 50, wherein the instructions further include code for estimating a real-time position of the satellite, and wherein the real-time visual feedback is based on the estimated real-time position of the satellite.
[0142] Clause 52. The computer-readable medium of any one of clauses 49 to 51, wherein the instructions further comprise code that provides guidance for adjusting the yaw, pitch, or roll, or any combination thereof, of the mobile device.
[0143] Clause 53. The computer-readable medium of any one of clauses 49 to 52, wherein the instructions further comprise code for displaying an image of an environment of the mobile device, the image being captured by a camera of the mobile device.
[0144] Clause 54. The computer-readable medium of any one of clauses 49 to 53, wherein the location of the satellite relative to the mobile device includes the location of the satellite at a future time.
[0145] Clause 55. The computer-readable medium of any one of clauses 49 to 54, wherein the instructions further include code for determining a location of the satellite using an orbital model and one or more orbital parameter values, wherein the one or more orbital parameter values are received by the mobile device from a computer server.
[0146] Clause 56. The computer-readable medium of any one of clauses 49 to 55, wherein the instructions further include code for wirelessly transmitting a message from the mobile device to a satellite while the mobile device is in a heading within the set of target headings, within the threshold degree of dispersion.
[0147] Clause 57. The computer-readable medium of any one of clauses 49 to 56, wherein the code for wirelessly transmitting the message includes code for using an antenna of the mobile device that is used by a Global Navigation Satellite System (GNSS) receiver of the mobile device.
[0148] Clause 58. The computer-readable medium of any one of clauses 49 to 57, wherein the instructions further comprise code for determining a current location of the mobile device.
[0149] Clause 59. The computer-readable medium of clause 58, wherein the code for determining a current location of the mobile device comprises code for using a GNSS receiver of the mobile device to determine a current location of the mobile device.
[0150] Clause 60. The computer-readable medium of any one of clauses 49 to 59, wherein the instructions further include code for determining, using the mobile device, locations of satellites relative to the mobile device, wherein determining the locations of the satellites is based at least in part on the locations of the satellites and a current location of the mobile device.
[0151] Clause 61. A computer-readable medium according to any one of clauses 49 to 60, wherein the set of target orientations for the mobile device includes a plurality of orientations for the mobile device, each orientation of the plurality of orientations having a unique degree of rotation about an axis along the direction of the antenna lobe.
[0152] Clause 62. The computer-readable medium of any one of clauses 49 to 61, wherein the instructions further include code for indicating to a user a failure to establish a wireless communications link between the mobile device and the satellite if the mobile device is not rotated to an orientation within the set of target orientations within a threshold period of time.
[0153] Clause 63. A computer-readable medium as described in any one of clauses 49 to 62, wherein the UI includes a graphical user interface (GUI) that displays a first graphical icon that moves as the mobile device is rotated and a second graphical icon that is stationary relative to the mobile device, and the first graphical icon aligns with the second graphical icon when the mobile device is rotated to an orientation within a set of target orientations.
[0154] Clause 64. The computer-readable medium of any one of clauses 49 to 63, wherein the instructions further include code for detecting a primary seismic rotation axis experienced by the mobile device, and wherein providing guidance for rotating the mobile device includes providing guidance to maximally align the seismic rotation axis with a direction of the antenna lobe.
[0155] Clause 65. The computer-readable medium of any one of clauses 49 to 64, further comprising means for providing, in a UI of the mobile device, guidance for moving the mobile device to perform calibration of one or more orientation sensors of the mobile device prior to determining a current orientation of the mobile device.
Claims
1. A method for enabling a wireless communication link between a mobile device and a satellite, To provide guidance via the screen of the mobile device for moving the mobile device to perform calibration of one or more of the mobile device's compass sensors, To estimate the real-time position of the satellite relative to the mobile device, Using the mobile device, determine one or more target orientations of the mobile device that the mobile device is pointed toward the satellite, wherein the one or more target orientations of the mobile device are based on the estimated real-time position of the satellite relative to the mobile device. After providing the guidance for moving the mobile device to perform the calibration, the first orientation of the mobile device is determined. The system provides user interface (UI) guidance via the screen for rotating the mobile device from a first orientation to a second orientation within one or more target orientations of the mobile device, wherein the UI guidance includes real-time visual feedback on the screen based on the estimated real-time position of the satellite relative to the mobile device. The mobile device transmits a message to the satellite using the mobile device while the mobile device is in the second direction within the one or more target directions of the mobile device, within a threshold dispersion. Methods that include...
2. The method according to claim 1, wherein providing the UI guidance for rotating the mobile device includes providing guidance for adjusting the yaw, pitch, or roll of the mobile device, or any combination thereof.
3. The method according to claim 1, wherein providing the UI guidance for rotating the mobile device includes displaying an image of the environment of the mobile device, the image being captured by the camera of the mobile device.
4. The method according to claim 1, wherein the estimated real-time position of the satellite relative to the mobile device includes the estimated real-time position of the satellite at a future point in time.
5. The method according to claim 1, further comprising determining the location of the satellite using an orbital model and one or more orbital parameter values, wherein the one or more orbital parameter values are received by the mobile device from a computer server.
6. The method according to claim 1, wherein wirelessly transmitting the message includes using the antenna of the mobile device, which is used by the Global Navigation Satellite System (GNSS) receiver of the mobile device.
7. The method according to claim 1, further comprising using the mobile device to determine the current location of the mobile device.
8. The method according to claim 7, wherein determining the current location of the mobile device includes using the GNSS receiver of the mobile device to determine the current location of the mobile device.
9. Estimating the real-time position of the satellite relative to the mobile device, The location of the aforementioned satellite and The current location of the mobile device, Based at least partially on, The method according to claim 7.
10. The method according to claim 1, wherein the one or more target orientations of the mobile device include a plurality of orientations of the mobile device, and each of the plurality of orientations has an intrinsic degree of rotation about an axis along the direction of the antenna lobe of the mobile device.
11. The method according to claim 1, further comprising indicating to the user that the establishment of the wireless communication link between the mobile device and the satellite has failed if the mobile device is not rotated to the second orientation within a threshold period.
12. The method according to claim 1, wherein the UI includes a graphical user interface (GUI) that displays a first graphical icon that moves as the mobile device is rotated and a second graphical icon that remains stationary relative to the mobile device, and the first graphical icon aligns with the second graphical icon when the mobile device is rotated to the second orientation.
13. The method according to claim 1, further comprising detecting the primary vibration rotation axis experienced by the mobile device, and providing the guidance for rotating the mobile device, wherein the guidance is provided to maximally align the vibration rotation axis with the direction of the antenna lobe of the mobile device.
14. A mobile device for enabling a wireless communication link between a mobile device and a satellite, Transmitter and receiver, Memory and The screen and, One or more processors are communicably coupled to the transceiver and the memory, The system includes, and the one or more processors, The screen provides guidance for moving the mobile device to perform calibration of one or more of the mobile device's compass sensors. To estimate the real-time position of the satellite relative to the mobile device, The mobile device determines one or more target orientations of the mobile device that are pointed toward the satellite, wherein the one or more target orientations of the mobile device are based on the estimated real-time position of the satellite relative to the mobile device. After providing the guidance for moving the mobile device to perform the calibration, the first orientation of the mobile device is determined. The system provides user interface (UI) guidance via the screen for rotating the mobile device from a first orientation to a second orientation within one or more target orientations of the mobile device, wherein the UI guidance includes real-time visual feedback on the screen based on the estimated real-time position of the satellite relative to the mobile device. The mobile device transmits a message to the satellite via the transceiver while it is in the second direction within the one or more target directions of the mobile device, within a threshold dispersion. It is configured to do, Mobile devices.
15. A non-temporary computer-readable medium for storing instructions that enable a wireless communication link between a mobile device and a satellite, wherein the instructions include code for performing the method according to any one of claims 1 to 12.