Patent Description:
A computing device according to the invention is defined in claim <NUM>, and a method according to the invention is defined in claim <NUM>. The computing device and the method are for determining angular orientations of a first planar substrate relative to a second planar substrate of a computing device throughout a range of degrees. The first planar substrate comprises a magnet array comprising a first magnet co-axially aligned with a second magnet along an array axis that passes through North and South poles of the first magnet and the second magnet. Like poles of the first magnet and the second magnet face one another to generate a magnetic field within an array plane that is normal to the array axis. The second planar substrate is rotatably coupled to the first planar substrate at a rotation axis, with the second planar substrate comprising a three-axis magnetic sensor configured to sense magnetic flux along three sensing axes.

The method includes receiving at the sensor the magnetic field emanating from the magnet array throughout the range of degrees; determining a plurality of magnetic flux densities of the magnetic flux at a first sensing axis and a second sensing axis of the sensor throughout the range of degrees; and using the magnetic flux densities to determine multiple angular orientations of the first planar substrate relative to the second planar substrate throughout the range of degrees.

Some computing devices include two substrates, such as displays, that are rotatably coupled to enable positioning of the two substrates at different angles relative to one another. For example, in a dual screen smartphone or laptop, two touch screen displays may be rotatably coupled at a hinge such that the two displays are movable with respect to one another. In some examples, both touch screen displays can function together as a larger, combined touch screen display system. In some examples, the two displays are rotatable approximately <NUM> degrees between angular orientations from a closed, display-to-display orientation to an open, back-to-back orientation.

In these devices it can be desirable to estimate the relative angle between the substrates at different orientations of the substrates. In some examples, multiple sensors are utilized to estimate such relative angle. For example, in some devices each substrate includes a <NUM>-axis inertial measurement unit (IMU) to estimate the relative angle by comparing the relative estimated poses of each substrate.

These configurations, however, have certain drawbacks. For example, when the hinge axis of the device is aligned with gravity, the IMU accelerometer ceases to function effectively and gyroscope error accumulates unchecked. This causes error in the estimated hinge angle to also accumulate over time. Additionally, the performance and accuracy of these configurations degrades in high-vibration scenarios, such as when using the device in a car for navigation.

In some examples a single-axis Hall sensor and magnet are used to determine when the device is in one of three states: face-to-face, back-to-back, or somewhere in between face-to-face and back-to-back. These configurations, however, are limited to determining only these three states and cannot determine, for example, angular orientations in between the back-to-back and face-to-face state. Additionally, in these examples the magnet and sensor must be sufficiently spaced apart such that the magnetic flux from the magnet at the sensor is minimal or zero when the device is open. In these examples the magnet is often placed near the center of one substrate and away from the axis of rotation. In these configurations, such positioning of the magnet can create packaging issues with other components also located near the center of the substrate, such as printed circuit boards and batteries.

Accordingly, examples are disclosed that relate to computing devices and methods for determining a plurality of angular orientations of a first planar substrate relative to a second planar substrate of a computing device throughout a range of degrees. In one example and as described in more detail below, a computing device foldable through a range of degrees at a rotation axis includes a first planar substrate comprising a magnet array. The magnet array includes a first magnet co-axially aligned with a second magnet along an array axis that passes through North and South poles of the first magnet and the second magnet. Like poles of the first and second magnets face one another to generate a magnetic field within an array plane normal to the array axis.

A second planar substrate is rotatably coupled to the first planar substrate at the rotation axis and includes a three-axis magnetic sensor configured to sense magnetic flux along three sensing axes. The three-axis magnetic sensor is oriented in the second planar substrate, and the magnet array is oriented in the first planar substrate, such that at multiple angular orientations of the two substrates throughout the range of degrees (<NUM>) a first sensing axis and a second sensing axis of the sensor are co-planar with the magnetic field in the array plane, and (<NUM>) the sensor receives magnetic flux from the magnetic field along the first sensing axis and the second sensing axis of the sensor.

The computing device includes a processor and a memory storing instructions executable by the processor to use the magnetic flux at the sensor to determine a plurality of angular orientations of the first planar substrate relative to the second planar substrate throughout the range of degrees.

With reference now to <FIG>, one example of a computing device is illustrated in the form of a dual screen mobile computing device <NUM>. In other examples, the computing device may take the form of a laptop computing device, tablet computing device, or any other suitable computing device. In the example of <FIG>, the mobile computing device <NUM> includes a housing having a first planar substrate 108A and a second planar substrate 108B rotatably coupled by a hinge <NUM>. The first planar substrate 108A includes a first surface <NUM> comprising first touch screen display 114A and the second planar substrate 108B includes a second surface <NUM> comprising a second touch screen display 114B.

In the example of <FIG>, the first touch screen display 114A and the second touch screen display 114B are rotatable about a rotation axis <NUM> relative to each other. In some examples, hinge <NUM> includes one or more additional rotation axes about which the first touch screen display 114A and the second touch screen display 114B are rotatable relative to one another. In the present example, the hinge <NUM> is configured to permit the first touch screen display 114A and the second touch screen display 114B to rotate through <NUM> degrees between angular orientations from a display-to-display orientation (<FIG>) to a back-to-back orientation (<FIG>). In other examples, the first touch screen display 114A and the second touch screen display 114B are rotatable through a range of degrees less than <NUM> degrees.

The computing device <NUM> includes a rear cover <NUM> that extends over the hinge <NUM>. In the example of <FIG>, the rear cover <NUM> is a single-piece rear cover that comprises a stretchable material at least in an expandable area located adjacent to the hinge <NUM>. In this manner, the rear cover may expand and contract as the display device is rotated through different angles and orientations. In other examples, computing devices according to the present disclosure include a left rear cover and a separate right rear cover that are rotatably coupled via the hinge <NUM>.

With reference now to <FIG>, the hinge <NUM> permits the first touch screen display 114A and the second touch screen display 114B to rotate relative to one another such that an angle between the displays 114A, 114B can be decreased or increased by the user via applying suitable force to the first planar substrate 108A and/or second planar substrate 108B. From the angular orientation shown in <FIG>, the first touch screen display 114A and the second touch screen display 114B may be rotated until the displays 114A, 114B reach a back-to-back angular orientation as shown in <FIG> or a display-to-display angular orientation as shown in <FIG>. For purposes of the present disclosure and for descriptive purposes only, the display-to-display orientation of <FIG> corresponds to an angular orientation of the first planar substrate 108A relative to the second planar substrate 108B of approximately zero degrees, and the back-to-back orientation of <FIG> corresponds to an angular orientation of the first planar substrate 108A relative to the second planar substrate 108B of approximately <NUM> degrees. In other examples, the back-to-back orientation of <FIG> corresponds to an angular orientation of approximately zero degrees and the display-to-display orientation of <FIG> corresponds to an angular orientation of approximately <NUM> degrees.

With reference again to <FIG> and as described in more detail below, the first planar substrate 108A comprises a magnet array <NUM> and the second planar substrate 108B comprises a three-axis magnetic sensor <NUM> that are oriented in a particular manner that enables the three-axis magnetic sensor to determine a plurality of angular orientations of the first planar substrate relative to the second planar substrate throughout a range of degrees. In the present example, the three-axis magnetic sensor <NUM> comprises a three-axis Hall sensor. In other examples, other suitable three-axis magnetic sensors may be utilized. For ease of description <FIG> also shows enlarged representations of the magnet array <NUM> and the three-axis magnetic sensor <NUM>.

In the example of <FIG>, a three-dimensional cartesian coordinate system (x-y-z) is defined with respect to the first planar substrate 108A and includes a z-axis that is parallel to the rotation axis <NUM> of computing device <NUM>. As described in more detail below, the magnet array <NUM> and three-axis magnetic sensor <NUM> are arranged relative to one another such that the magnetic field generated by the magnet array is always in-plane with two of the sensor's three axes through the full range of rotation of the two substrates. In this manner, the magnetic field lines are always pointing towards a centerline <NUM> of the magnet array <NUM>, and the field incident on the three-axis magnetic sensor <NUM> will describe a vector in those <NUM> sensor axes that always points towards the magnet. Advantageously and as explained below, this configuration allows the computing device <NUM> to estimate the angle of the three-axis magnetic sensor <NUM> relative to the magnet array <NUM> at any angular orientation of the first planar substrate relative to the second planar substrate throughout the range of degrees between zero and <NUM> degrees, and thereby determine such angular orientation of the first planar substrate 108A relative to the second planar substrate108B.

In the present example, the magnet array <NUM> comprises a first magnet <NUM> that is co-axially aligned with a second magnet <NUM> along an array axis <NUM> that passes through North and South poles of the first magnet and the second magnet. In this example, the North poles of the first magnet <NUM> and the second magnet <NUM> face one another. In this manner and with reference also to <FIG>, the magnet array <NUM> generates a magnetic field <NUM> within an array plane <NUM> in the x-y axes that is normal to the array axis <NUM> extending in the z-axis direction.

Additionally and in this example, the magnet array <NUM> is positioned such that array axis <NUM> is parallel to the rotation axis <NUM> at all angular orientations of the first planar substrate 108A relative to the second planar substrate 108B. With reference now to <FIG> showing a schematic illustration of the second planar substrate 108B and three-axis magnetic sensor <NUM> rotating relative to the first planar substrate 108A, it can be seen that the array axis <NUM> extending in the z-axis direction remains parallel to the rotation axis <NUM> (also extending in the z-axis direction) at all angular orientations of the first planar substrate 108A relative to the second planar substrate 108B, from zero to <NUM> degrees. In some examples and with some hinge configurations, the rotation axis <NUM> can move in the x-direction and/or y-direction as the first planar substrate 108A and second planar substrate 108B rotate relative to one another.

With reference again to <FIG>, in this example the magnet array <NUM> includes a layer of intermediate material <NUM> interposed between the first magnet <NUM> and second magnet <NUM>. In different examples, the intermediate material <NUM> can comprise steel or other suitable high permeability material. The intermediate material <NUM> can function to guide the magnetic field <NUM> to emanate normal to the array axis <NUM>, and/or can provide structural support to the magnet array <NUM>. In other examples an intermediate material may not be utilized, and the North poles of first magnet <NUM> and second magnet <NUM> may abut one another. In some examples, magnet array <NUM> is configured such that the South poles of the first magnet <NUM> and the second magnet <NUM> face one another.

In the present example magnet array <NUM> is cylindrical in shape. In other examples, magnet arrays can take a variety of other shapes and/or cross sections, such as rectangular, hexagonal, oblong, and wedge-shaped with a tapering thickness. In some examples, magnet arrays can include one or more additional magnets to generate a magnetic field within an array plane that is normal to the array axis.

With continued reference to <FIG>, the three-axis magnetic sensor <NUM> comprises three orthogonal sensing axes - a first (A) sensing axis <NUM>, second (B) sensing axis <NUM>, and third (C) sensing axis <NUM>. In some examples, the three-axis magnetic sensor <NUM> comprises magnetic sensors, signal amplifier(s), and interface logic for independently detecting magnetic flux in each of the first (A) sensing axis <NUM>, second (B) sensing axis <NUM>, and third (C) sensing axis <NUM>.

As noted above, the magnet array <NUM> and the three-axis magnetic sensor <NUM> are oriented in first planar substrate 108A and second planar substrate 108B, respectively, in a manner that enables the computing device <NUM> to determine multiple angular orientations of the first planar substrate 108A relative to the second planar substrate 108B throughout a range of degrees. More particularly and with reference also to <FIG>, the sensor <NUM> is positioned within the second planar substrate 108B such that its first (A) sensing axis <NUM> and second (B) sensing axis <NUM> are coplanar with the array plane <NUM> and magnetic field <NUM> emanating from the magnet array <NUM>. Further and with reference also to <FIG>, this coplanar relationship is maintained throughout the full range of angular orientations, which in this example is between approximately zero degrees and approximately <NUM> degrees. Accordingly and in one potential advantage of the present disclosure, this configuration enables the three-axis magnetic sensor <NUM> to receive the magnetic field <NUM> along its first (A) sensing axis <NUM> and its second (B) sensing axis <NUM> throughout the full range of angular orientations.

Further and in another advantage of the present disclosure, with this configuration the combined readings from the sensor's first (A) sensing axis <NUM> and second (B) sensing axis <NUM> are unique for each angle across the range of angular orientations. For example and with reference now to <FIG>, one example of a plot <NUM> of magnetic flux density measurements at the sensor's first (A) sensing axis <NUM> ("A-Dir") and second (B) sensing axis <NUM> ("B-Dir") through the range of angular orientations from zero to <NUM> degrees is presented. As shown in this plot by line <NUM> representing magnetic flux densities along the first sensing axis <NUM> ("A-Dir") at the sensor, through the range of degrees and angular orientations between the first planar substrate 108A and the second planar substrate 108B, the magnetic flux densities along this first sensing axis remain positive. More particularly and as illustrated, in this example the magnetic flux densities at the sensor's first (A) sensing axis <NUM> trace a U-shaped curve from zero degrees to <NUM> degrees, with the minimum flux density value occurring at <NUM> degrees when the distance between the three-axis magnetic sensor <NUM> and magnet array <NUM> is greatest.

By contrast, and by virtue of the relative orientation of the three-axis magnetic sensor <NUM> to the magnet array <NUM> in this configuration, through the range of degrees and angular orientations between the first planar substrate 108A and the second planar substrate 108B, the magnetic flux densities along the second sensing axis <NUM> ("B-Dir") at the sensor transition from negative to positive or positive to negative (depending upon the direction of rotation). In <FIG> this is illustrated by line <NUM> representing magnetic flux densities along the second sensing axis <NUM> ("B-Dir") at the sensor. More particularly, the magnetic flux densities at the second (B) sensing axis <NUM> trace an inverted S-shaped curve from a maximum negative value at zero degrees to a maximum positive value at <NUM> degrees. Additionally and as illustrated, the magnetic flux densities at this second (B) sensing axis <NUM> transition between negative and positive at <NUM> degrees angular orientation between the first planar substrate and the second planar substrate.

Advantageously, because this configuration provides unique readings from the sensor's first (A) sensing axis <NUM> and second (B) sensing axis <NUM> for each angle across the full range of angular orientations, a simple pose estimation algorithm can utilize the magnetic flux at the sensor to determine a plurality of angular orientations of the first planar substrate relative to the second planar substrate throughout the range of degrees. In some examples, a look up table containing magnetic flux densities at the first (A) sensing axis <NUM> ("A-Dir") and second (B) sensing axis <NUM> ("B-Dir") at a plurality of angular orientations is precomputed and stored in memory of the computing device <NUM>. Such a look up table can be easily and quickly referenced by the pose estimation algorithm to select a closest angle for given A-Dir and B-Dir magnetic flux density values.

<FIG> shows an example look up table <NUM> with values corresponding to the lines <NUM> for the first (A) sensing axis <NUM> ("A-Dir") and <NUM> for the second (B) sensing axis <NUM> ("B-Dir"). In other examples, additional or fewer angles and corresponding magnetic flux densities can be included. In some examples, four or more angles and corresponding magnetic flux densities can be included in a look up table.

Additionally, as shown in the example of <FIG> and in another potential advantage of the present disclosure, with this particular orientation of the three-axis magnetic sensor <NUM> relative to the magnet array <NUM>, the magnetic flux density from the magnet array at the third (C) sensing axis <NUM> ("C-Dir") is very small or negligible through the range of degrees and angular orientations between the first planar substrate 108A and the second planar substrate 108B. In other words, because the present configuration generates the magnetic field <NUM> in the array plane <NUM>, and the first (A) sensing axis <NUM> and second (B) sensing axis <NUM> of the three-axis magnetic sensor <NUM> are coplanar with the array plane <NUM> and magnetic field <NUM> throughout the range of angular orientations, the magnetic flux density from the magnet array at the third (C) sensing axis <NUM> ("C-Dir") will be negligible or approximately zero. In <FIG> this is shown in look up table <NUM> and illustrated by corresponding line <NUM> representing magnetic flux densities along the third sensing axis ("C-Dir") at the sensor.

Accordingly, in use cases where the three-axis magnetic sensor <NUM> receives magnetic flux of a magnitude that falls outside an interference threshold range along the third (C) sensing axis <NUM> of the sensor, the computing device <NUM> determines that this magnetic flux is interference from a source other than the magnet array <NUM>. In different examples, the interference threshold range is between -<NUM> mT and <NUM> mT, -<NUM> and <NUM> mT, and -<NUM> and <NUM> mT. In other examples any other suitable range can be utilized. Advantageously, given that magnetic interference from extraneous sources could affect the accuracy and integrity of the readings generated by the three-axis magnetic sensor <NUM>, the computing device <NUM> can utilize this determination to adjust pose estimation algorithms accordingly and/or utilize other sensors/functionality to determine the angular orientation of the first planar substrate relative to the second planar substrate.

Additionally, and in another potential advantage of the present disclosure illustrated in <FIG>, the present configuration generates the greatest rates of change of magnetic flux density across the range of degrees at the extreme ends of the angle range. In this manner, the three-axis magnetic sensor <NUM> provides the highest fidelity magnetic flux readings at these extremes. Advantageously, such increased fidelity can be utilized to more accurately determine particular angles and angle changes in these extreme regions when the computing device is being opened from or closed into the display-to-display orientation and when the device is being opened from or closed into the back-to-back orientation. In this manner, the computing device <NUM> can initiate or trigger particular functions or user experiences at distinct angles within these extreme regions. In one example, upon determining that the relative orientation of the first planar substrate 108A to the second planar substrate 108B is <NUM> degrees, the computing device <NUM> initiates a "peek mode" user experience in which the time, date and notifications are displayed on both screens.

In one example, the range of degrees through which a computing device of the present disclosure is foldable is between a minimum degree (such as zero) and a maximum degrees (such as <NUM>). An opening range is between zero degrees and approximately <NUM> degrees, a closing range is between approximately <NUM> degrees and <NUM> degrees, and a middle range is between approximately <NUM> degrees and approximately <NUM> degrees. In this example, and as illustrated in <FIG>, both (<NUM>) a first set of rates of change of magnetic flux density at the first (A) sensing axis <NUM> and the second (B) sensing axis <NUM> in the opening range, and (<NUM>) a second set of rates of change of magnetic flux density at the first (A) sensing axis <NUM> and the second (B) sensing axis <NUM> in the closing range, are both greater than a third set of rates of change of magnetic flux density at the first (A) sensing axis <NUM> and the second (B) sensing axis <NUM> in the middle range. In other examples, other opening, middle, and closing ranges may be utilized.

In other potential advantages of the present disclosure, the present configurations can eliminate the need for one or more other sensors. For example, in a computing device that utilizes two IMU's to perform pose estimations for first and second rotatable substrates, the present configuration of magnet array <NUM> and three-axis magnetic sensor <NUM> can be utilized in place of one or both IMU's to perform pose estimation. Similarly and in other examples, the present configuration of magnet array <NUM> and three-axis magnetic sensor <NUM> can be utilized in place of one or more gyroscopes and/or one or more magnetometers that otherwise would be needed to estimate device pose. Further and in another advantage, the present configuration utilizes less power than a corresponding IMU, gyroscope or accelerometer, thereby conserving power resources.

In some examples and in another potential advantage of the present disclosure, and as illustrated in <FIG>, the magnet array <NUM> and three-axis magnetic sensor <NUM> can be located adjacent to the rotation axis <NUM>, as opposed to near the centers of first touch screen display 114A and second touch screen display 114B, respectively, as required by other configurations. In different examples, the magnet array <NUM> and three-axis magnetic sensor <NUM> are located adjacent to the rotation axis <NUM> by being located within <NUM> of the rotation axis, within <NUM> of the rotation axis, and within <NUM> of the rotation axis. Advantageously, in these examples locating the magnet array <NUM> and three-axis magnetic sensor <NUM> adjacent to the rotation axis <NUM> saves valuable packaging space elsewhere in the computing device that can be utilized for processor(s), batteries and other components. Additionally, locating both the magnet array <NUM> and three-axis magnetic sensor <NUM> close to the rotation axis <NUM> increases the incidence of the magnetic field <NUM> on the sensor to provide increased accuracy and more precise measurements of the angular orientations of the first planar substrate 108A relative to the second planar substrate 108B.

While the example computing device <NUM> in <FIG> shows the magnet array <NUM> and three-axis magnetic sensor <NUM> located near the top of the device, in other examples the magnet array and sensor can be located at other positions along the z-axis, including near the bottom of the device, with the sensor's first (A) sensing axis <NUM> and second (B) sensing axis <NUM> remaining coplanar with the array plane <NUM> and magnetic field <NUM> emanating from the magnet array <NUM>. In other examples, the three-axis magnetic sensor <NUM> is located further away from the rotation axis <NUM> such that it is not adjacent to the rotation axis, while its first (A) sensing axis <NUM> and second (B) sensing axis <NUM> remain coplanar with the array plane <NUM> and magnetic field <NUM> emanating from the magnet array <NUM>.

With reference now to <FIG>, a flow diagram is illustrated depicting an example method <NUM> for determining a plurality of angular orientations of a first planar substrate relative to a second planar substrate of a computing device throughout a range of degrees. The second planar substrate is rotatably coupled to the first planar substrate at a rotation axis. The first planar substrate comprises a magnet array comprising a first magnet co-axially aligned with a second magnet along an array axis that passes through North and South poles of the first magnet and the second magnet. Like poles of the first magnet and the second magnet face one another to generate a magnetic field within an array plane normal to the array axis. The second planar substrate comprises a three-axis magnetic sensor configured to sense magnetic flux along three sensing axes.

The following description of method <NUM> is provided with reference to the software and hardware components described herein and shown in <FIG> and <FIG>. For example, the method <NUM> may be performed by the computing device <NUM>, hardware, software, and/or firmware of the computing device <NUM>, three-axis magnetic sensor <NUM>, or a suitable combination of components described herein.

It will be appreciated that following description of method <NUM> is provided by way of example and is not meant to be limiting. Therefore, it is to be understood that method <NUM> may include additional and/or alternative steps relative to those illustrated in <FIG> and <FIG>. Further, it is to be understood that the steps of method <NUM> may be performed in any suitable order. Further still, it is to be understood that one or more steps may be omitted from method <NUM> without departing from the scope of this disclosure. It will also be appreciated that method <NUM> also may be performed in other contexts using other suitable components.

With reference to <FIG>, at <NUM> the method <NUM> includes receiving at the three-axis magnetic sensor the magnetic field emanating from the magnet array throughout the range of degrees. At <NUM> the method <NUM> includes receiving at the sensor the magnetic field along the first sensing axis and the second sensing axis of the three sensing axes of the sensor. At <NUM> the method <NUM> includes determining a plurality of magnetic flux densities of the magnetic flux at a first sensing axis and a second sensing axis of the sensor throughout the range of degrees. At <NUM> the method <NUM> includes using the magnetic flux densities sensed at the first sensing axis and the second sensing axis to determine multiple angular orientations of the first planar substrate relative to the second planar substrate throughout the range of degrees.

At <NUM> the method <NUM> includes, wherein the array axis of the magnet array is parallel to the rotation axis at all angular orientations of the first planar substrate relative to the second planar substrate. At <NUM> the method <NUM> incudes, wherein the magnet array and the sensor are located adjacent to the rotation axis. At <NUM> the method <NUM> includes, wherein the range of degrees is between approximately zero degrees and approximately <NUM> degrees, and through the range of degrees between the first planar substrate and the second planar substrate (<NUM>) magnetic flux densities along the first sensing axis at the sensor remain positive, and (<NUM>) magnetic flux densities along the second sensing axis at the sensor transition between negative and positive.

With reference now to <FIG>, at <NUM> the method <NUM> includes, wherein along the second sensing axis the magnetic flux densities transition between negative and positive at <NUM> degrees angular orientation between the first planar substrate and the second planar substrate. At <NUM> the method <NUM> includes receiving at the sensor magnetic flux of a magnitude outside an interference threshold range along a third sensing axis of the sensor. At <NUM> the method <NUM> includes, on condition of receiving the magnetic flux of the magnitude outside the interference threshold range along the third sensing axis of the sensor, determining that the magnetic flux is interference from a source other than the magnet array. At <NUM> the method <NUM> includes, wherein the range of degrees is between a minimum degree and a maximum degrees, an opening range is between the minimum degree and approximately <NUM> degrees, a closing range is between approximately <NUM> degrees less than the maximum degrees and the maximum degrees, and a middle range is between approximately <NUM> degrees and <NUM> degrees less than the maximum degrees, and wherein (<NUM>) a first set of rates of change of magnetic flux density at the first sensing axis and the second sensing axis of the sensor in the opening range and (<NUM>) a second set of rates of change of magnetic flux density at the first sensing axis and the second sensing axis of the sensor in the closing range are both greater than a third set of rates of change of magnetic flux density at the first sensing axis and the second sensing axis of the sensor in the middle range.

Computing system <NUM> may take the form of one or more personal computers, server computers, tablet computers, home-entertainment computers, gaming devices, mobile computing devices, mobile communication devices (e.g., smart phone), wearable computing devices, and/or other computing devices. The computing device <NUM> and three-axis magnetic sensor <NUM> described above and illustrated in <FIG> may comprise computing system <NUM> or one or more aspects of computing system <NUM>.

Computing system <NUM> includes a logic processor <NUM>, volatile memory <NUM>, and a non-volatile storage device <NUM>.

For example, the logic processor may be configured to execute instructions that are part of one or more applications, services, programs, routines, libraries, objects, components, data structures, or other logical constructs.

Volatile memory <NUM> may include physical devices that include random access memory (RAM).

Non-volatile storage device <NUM> may include optical memory (e.g., CD, DVD, HD-DVD, Blu-Ray Disc, etc.), semiconductor memory (e.g., ROM, EPROM, EEPROM, FLASH memory, etc.), magnetic memory (e.g., hard-disk drive, floppy-disk drive, tape drive, MRAM, etc.), and/or other mass storage device technology.

When included, input subsystem <NUM> may comprise or interface with one or more user-input devices such as a keyboard, mouse, touch screen, electronic pen, stylus, or game controller.

Claim 1:
A computing device (<NUM>) foldable through a range of degrees at a rotation axis (<NUM>), the computing device (<NUM>) comprising:
a first planar substrate (108A);
a magnet array (<NUM>) in the first planar substrate (108A), the magnet array (<NUM>) comprising a first magnet (<NUM>) co-axially aligned with a second magnet (<NUM>) along an array axis (<NUM>) that passes through North and South poles of the first magnet (<NUM>) and the second magnet (<NUM>), wherein like poles of the first magnet (<NUM>) and the second magnet (<NUM>) face one another to generate a magnetic field (<NUM>) within an array plane (<NUM>) normal to the array axis (<NUM>);
a second planar substrate (108B) rotatably coupled to the first planar substrate (108A) at the rotation axis (<NUM>);
a three-axis magnetic sensor (<NUM>) in the second planar substrate (108B) configured to sense magnetic flux along three sensing axes (<NUM>, <NUM>, <NUM>), wherein the three-axis magnetic sensor (<NUM>) is oriented in the second planar substrate (108B) and the magnet array (<NUM>) is oriented in the first planar substrate (108A) such that at multiple angular orientations of the first planar substrate (108A) relative to the second planar substrate (108B) throughout the range of degrees (<NUM>) a first sensing axis (<NUM>) and a second sensing axis (<NUM>) of the sensor (<NUM>) are co-planar with the magnetic field (<NUM>) in the array plane (<NUM>), and (<NUM>) the sensor (<NUM>) receives magnetic flux from the magnetic field (<NUM>) along the first sensing axis (<NUM>) and the second sensing axis (<NUM>) of the sensor (<NUM>);
a processor (<NUM>); and
a memory (<NUM>, <NUM>) storing instructions executable by the processor (<NUM>) to use the magnetic flux at the sensor (<NUM>) to determine a plurality of angular orientations of the first planar substrate (108A) relative to the second planar substrate (108B) throughout the range of degrees.