throbber
EXHIBIT1
`
`EXHIBIT 1
`
`EXHIBIT
`
`9k 010 V
`
`
`

`

`CYWEE GROUP LTD,
`
`vs.
`
`AND LG ELECTRONICS MOBILECOMM U.S.A., INC.,
`
`LG ELECTRONICS U.S.A., INC.,
`
`LG ELECTRONICS, INC.,
`
`FOR THE SOUTHERN DISTRICT OF CALIFORNIA
`
`UNITED STATES DISTRICT COURT
`
`EXEMPLARY CLAIM CHART
`
`U.S. PATENT NO. 8,441,438 - LG V20
`
`Infringement Contentions
`
`These contentions are disclosed to only provide notice of Plaintiff's theories of infringement.
`These contentions do not constitute proof nor do they marshal Plaintiff's evidence of
`infringement to be presented during trial.
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`Claim 1, with claim constructions, is recited below (text in brackets [] reflects the Court's claim construction or the parties' agreed
`claim construction in CyWee Group, Ltd. a Apple Inc., No. 3:13 -cv- 01853 -HSG or in CyWee Group, Ltd. a Samsung Elecs. Co., Ltd.,
`No. 2:17 -cv- 00140 -WCB). Construed terms and constructions are underlined.
`
`1. A three- dimensional (3D) pointing device [Samsung Court's construction: no construction necessary" subject to movements and
`rotations in dynamic environments, comprising:
`a housing associated with said movements and rotations of the 3D pointing device in a spatial pointer reference frame [Samsung
`Court's construction: frame of reference associated with the 3D pointing device, which always has its origin at the same point in the
`device and in which the axes are always fixed with respect to the devicel;
`a printed circuit board (PCB) enclosed by the housing;
`a six -axis motion sensor module [Samsung Court's construction: no construction necessary" attached to the PCB, comprising a
`rotation sensor for detecting and generating a first signal set [Samsung Court's construction: no construction necessary" comprising
`angular velocities w,t, coy, co, associated with said movements and rotations of the 3D pointing device in the spatial pointer reference
`frame, an accelerometer for detecting and generating a second signal set [Samsung Court's construction: no construction necessary"
`comprising axial accelerations AX, Ay, Az associated with said movements and rotations of the 3D pointing device in the spatial pointer
`reference frame; and
`a processing and transmitting module, comprising a data transmitting unit electrically connected to the six -axis motion sensor module
`for transmitting said first and second signal sets thereof and a computing processor for receiving and calculating said first and second
`signal sets from the data transmitting unit [Apple Court's construction: no construction necessary], communicating with the six -axis
`motion sensor module to calculate a resulting deviation comprising resultant angles in said spatial pointer reference frame [Samsung
`Court's construction: no construction necessary] by utilizing a comparison to compare the first signal set with the second signal set
`jApple Court's construction: using the calculation of actual deviation angles to compare the first signal set with the second signal set]
`whereby said resultant angles in the spatial pointer reference frame of the resulting deviation of the six -axis motion sensor module of
`the 3D pointing device are obtained under said dynamic environments, wherein the comparison utilized by the processing and
`transmitting module further comprises an update program to obtain an updated state based on a previous state associated with said
`first signal set and a measured state associated with said second signal set; wherein the measured state includes a measurement of said
`second signal set and a predicted measurement obtained based on the first signal set without using any derivatives of the first signal
`set [Samsung Court's construction: the measured state includes a measurement of axial accelerations and predicted axial accelerations
`calculated using the angular velocities without computing derivatives of said angular velocities (i.e. angular accelerations)].
`
`

`

`Claim 1
`A three- dimensional (3D) pointing device [Samsung Court's construction: no construction necessarv] subject to movements and
`rotations in dynamic environments, comprising:
`
`U.S. Patent No. 8,441,438 - LG V20
`
`LG V20
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a housing associated with said movements and rotations of the 3D pointing device in a spatial pointer reference frame [Samsung Court's
`construction: frame of reference associated with the 3D pointing device, which always has its origin at the same point in the device and in which
`the axes are always fixed with respect to the devicel;
`
`Y
`
`z
`
`z
`
`. Coordinate system (relative to a
`that's used by the Sensor API.
`
`spatial pointer reference frame
`
`Source: http: / /developer.android.com /guide/ topics/ sensors /sensors_overview.htinl #sensors -coords
`
`4
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a printed circuit board (PCB) enclosed by the housing;
`
`printed circuit board (PCB)
`
`Source: https: / /www.ifixit.corn/Guide /LG +V20+ Motherboard +Assembly +Replacement /96392
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a sa< - axis 3no ton sensor liaíÿ
`rotation sensor for detecting and generating a first signal set [Samsung Court's construction: no construction necessary] comprising
`angular velocities cox, coy, co, associated with said movements and rotations of the 3D pointing device in the spatial pointer reference
`frame,
`The
`included in the six -axis motion sensor module.
`
`"v-P ;S motion sensor module includes an accelerometer and gyroscope combo. The rotation sensor is the Gyroscope
`
`íSamsung Court's construction: no construction necessarvl attached to the PCB, comprising a
`
`A 0
`
`Sensor Kinetics S
`
`?220
`
`®203P1A
`
`Multi- Sensor Recorder
`
`new
`
`Three Dimensional Sensors
`
`..-...:4:4
`
`Type: LGE Accelerometer
`Mtn BOSCH Vet 1173900
`Power Consumption: 0.180mA
`Resolution: 0.002 Range: 78.453
`Mtn Delay: 5000 ps
`
`19Hz
`
`ete:Ul
`R
`
`! hits Ms22
`X.0.3129
`v. -I Y.- 0.4077
`Z 9.9023
`
`type: LGE Gyroscope
`vHr: BOSCH Ver. 1173900
`r'ower Consumption: 0.900mA
`2esolutlon: 0.001 Range: 34.907
`Jlin Delay: 5000 ps
`
`18Hz
`
`Rate:Ul
`
`rad /s
`
`A
`
`X.- 0.0013
`Y =0.0002
`Z= -0.0001
`
`Three Dimensional Sensors
`
`Accelerometer
`Type: LGE Accelerometer
`Mfr. BOSCH Ver 1173900
`Power Consumption: 0.180mA
`Resolution: 0.002 Range: 78.453
`Min Delay: 5000 ps
`
`19Hz
`
`Rate:Ul
`
`/ Y =- 0.4077
`
`units: m /s2
`X= 0.3129
`
`Z =9.9023
`
`Type: LGE Gyroscope
`Mfr: BOSCH Ver: 1173900
`Power Consumption: 0.900mA
`Resolution: 0.001 Range: 34.907
`Min Delay: 5000 us
`
`18Hz
`
`Rate:Ul
`
`rad /s
`
`X =- 0.0013
`A Y =0.0002
`Z =- 0.0001
`
`Sensors
`
`Fingerprint (rear- mounted) acceleromete
`color spectrum
`
`, gyro proximity, compass, barometer,
`
`Source: https:// www .gsmarena.com /lg_v20- 8238.php
`
`E
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a six -axis motion sensor module fSamsung Court's construction: no construction necessary] attached to the PCB, comprising a
`rotation sensor for detecting and generating a first signal set [Samsung Court's construction: no construction necessary] comprising
`angular velocities co,{, coy, co, associated with said movements and rotations of the 3D pointing device in the spatial pointer reference
`frame,
`The first signal set includes the sensor event values of TYPE GYROSCOPE.
`
`Gyroscope
`
`Reporting -mode: Continuous
`
`getDefaultSensor (SENSOR_TYPE_GYROSCOPE) returns a non -wake -up sensor
`
`A gyroscope sensor reports the rate of rotation of the device around the 3 sensor axes.
`
`Rotation is positive in the counterclockwise direction (right -hand rule). That is, an observer looking from some positive
`location on the x, y or z axis at a device positioned on the origin would report positive rotation if the device appeared to
`be rotating counter clockwise. Note that this is the standard mathematical definition of positive rotation and does not
`agree with the aerospace definition of rall.
`
`he measurement is reported in the x, y and z fields of sensors_event_t . gyro and all values are in radians per second
`(rad /s).
`
`Source: https: / /source.android.corn /devices /sensors /sensor- types #gyroscope
`
`i Sensor .TYP__GYROSCOPE:
`
`All values are in radians/second and measure the rate of rotation around the device's local X, Y and Z axis. The coordinate system is the same as
`used for the acceleration sensor. Rotation is positive in the counter-clockwise direction. That is, an observer looking from some positive location on the
`
`values[ç1] Annidar speed aroused the x-axis
`
`values[1]: Angular speed around the y -axis
`
`values[2}: Angular speed around the z -axis
`
`Source: https: / /developer. android. com / reference / android /hardware /SensorEvent.html #values
`
`isi
`
`i
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a six -axis motion sensor module [Samsung Court's construction: no construction necessary] attached to the PCB, comprising a
`rotation sensor for detecting and generating a first signal set [Samsung Court's construction: no construction necessary] comprising
`angular velocities cox, coy, coz associated with said movements and rotations of the 3D pointing device in the spatial pointer reference
`frame,
`Variable w, used by the handl eGyro () function in the fusion.cpp file, represents gyroscope data or a first signal set.
`
`313
`
`314
`
`315
`
`void Fusion: : handleGyro (const vec3_t& w, float dT) {
`
`if ( ! checkIni tcorTiplete (GYRO, w, dT) )
`
`return;
`
`Source: https: // android .googlesource.com /platform /frameworks /native /+ /master /ser vices /sensorseivice /Fusion.cpp
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a six -axis motion sensor module [Samsung Court's construction: no construction necessary] attached to the PCB, comprising a
`rotation sensor for detecting and generating a first signal set [Samsung Court's construction: no construction necessary] comprising
`angular velocities wX, coy, co, associated with said movements and rotations of the 3D pointing device in the spatial pointer reference
`frame,
`
`Sensor Coordinate System
`In general, the sensor framework uses a standard 3 -axis coordinate system to express data values. For most sensors, the coordinate system is defined
`relative to the devices screen when the device is held in its default orientation (see figure 1). When a device is held in its default orientation, the X axis is
`horizontal and points to the right, the Y axis is vertical and points up, and the Z axis points toward the outside of the screen face. In this system,
`coordinates behind the screen have negative Z values. This coordinate system is used by the following sensors:
`
`Acceleration sensor
`
`Gravity sensor
`
`Gyroscope
`
`Linear acceleration sensor
`
`Geomagnetic field sensor
`
`y
`
`The most important point to understand about this coordinate system is that the axes are not swapped
`when the device's screen orientation changes -that is, the sensor's coordinate system never changes as
`the device moves. This behavior is the same as the behavior of the OpenGL coordinate system.
`
`Another point to understand is that your application must not assume that a device's natural (default)
`orientation is portrait. The natural orientation for many tablet devices is landscape. And the sensor
`coordinate system is always based on the natural orientation of a device.
`
`Figure 1. Coordinate system (relative to a
`device) that's used by the Sensor API.
`
`Source: http: / /developer.android.com /guide/ topics/ sensors /sensors_overview.html #sensors -coords
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a ii--axis motioü sensor
`accelerometer for detecting and generating a second signal set [Samsung Court's construction: no construction necessary] comprising
`rotations of the 3D pointing device in the spatial reference frame;
`axial accelerations Ax, Ay, Az associated with said movements
`and
`The x -axis motion sensor module is an accelerometer and gyroscope combo.
`
`[Samsung Court's construction: no construction necessarv] attached to the PCB, comprising...an
`
`E G
`
`7120
`1P It' B2 03 PM
`
`Sensor Kinetics cj
`
`Multi- Sensor Recorder
`
`new 0.
`
`type: LGE Accelerometer
`Mfr. BOSCH Ver: 1173900
`Power Consumption: 0.180mA
`Resolution: 0.002 Range: 78.453
`Min Delay: 5000 ps
`
`19Hz
`
`Rate:Ul
`
`m/a2
`
`X.0.3129
`Y..0.4077
`Z.9.9023
`
`Type: LGE Gyroscope
`Mfr: BOSCH Ver. 1173900
`Power Consumption: 0.900mA
`Resolution: 0.001 Range: 34.907
`Min Delay: 5000 ps
`
`18Hz
`
`Rate:UI
`
`red /s
`
`X= -0.0013
`Y =0.0002
`
`11
`
`Three Dimensional Sensors
`
`ot rgivsl}o.f."a-0±ßr
`
`Type: LGE Accelerometer
`Mfr: BOSCH Ver: 1173900
`Power Consumption: 0.180mA
`Resolution: 0.002 Range: 78.453
`Min Delay: 5000 ps
`
`19Hz
`
`Rate:Ul
`
`GytdscQm
`
`m/s2
`
`X=0.3129
`A Y=-0.4077
`Z=9.9023
`
`Type: LGE Gyroscope
`Mfr: BOSCH Ver: 1173900
`Power Consumption: 0.900mA
`Resolution: 0.001 Range: 34,907
`Min Delay: 5000 ps
`
`18Hz
`
`Rate :Ul
`
`radis
`
`X=- 0.0013
`A Y =0.0002
`z=- 0.0001
`
`Sensors
`
`Fingerprint (rear-mounted)
`color spectrum
`
`accelerometer gyro, i roximity, compass, barometer,
`
`Source: https:// www .gsmarena.com /lg_v20- 8238.php
`
`10
`
`

`

`I
`
`Claim 1
`
`U.S. Patent No. 8,441,438 - LG V20
`
`{Saiiisiing Court's construction: no construction necessary] attached to the PCB, comprising... an accelerometer
`a
`for detecting and generating a second signal set [Samsung Court's construction: no construction necessary] comprising axial accelerations Ax, Ay,
`Az associated with said movements and rotations of the 3D pointing device in the spatial reference frame; and
`The six -axis motion sensor module also includes an accelerometer for detecting and generating a second signal set comprising axial
`accelerations. The second signal set includes the sensor event values of TYPE_ACCELEROMETER.
`
`; ion sensor
`
`.
`
`;
`
`_ _
`
`Accelerometer
`
`Reporting -mode: Continuous
`
`getDefaultSensor (SENSOR_TYPE_ACCELEROMETER) returns a non -wake -up sensor
`
`An accelerometer sensor resorts the acceleration of the device alone the 3 sensor axes. The measured acceleration
`includes both the physical acceleration (change of velocity) and the gravity. The measurement is reported in the x, y and
`z fields of sensors_event_t.acceleration.
`
`All values are in SI units (m/sA2) and measure the acceleration of the device minus the force of gravity along the 3
`sensor axes.
`
`Source: https : / /source.android.cor/devices /sensors /sensor- types #accelerometer
`
`Sensor . TYPE ACCELEROMETER:
`
`All values are in SI units (m /s"2)
`
`values[0]: Acceleration minus Gx on the x -axis
`
`values[1]: Acceleration minus Gy on the y -axis
`
`values[2]: Acceleration minus Gz on the z -axis
`
`A sensor of this type measures the acceleration applied to the device (Ad). Conceptually, it does so by measuring forces applied to the sensor itself (Fs)
`using the relation:
`
`In particular, the force of gravity is always influencing the measured acceleration:
`
`Ad = - ZFs / mass
`
`Ad = -g - EF /mass
`
`For this reason, when the device is sitting on a table (and obviously not accelerating), the accelerometer reads a magnitude of g = 9.81 m /sA2
`
`Source: https: // developer .android.com /reference /android/ hardware /SensorEvent.htinl #values
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`I
`
`Claim 1
`a six -axis motion sensor module [Samsung Court's construction: no construction necessary] attached to the PCB, comprising...an accelerometer
`for detecting and generating a second signal set [Samsung Court's construction: no construction necessary] comprising axial accelerations Ax, Ay,
`Az associated with said movements and rotations of the 3D pointing device in the spatial reference frame; and
`Variable a, used by the handleAcc O function in the fusion.cpp file, represents acceleration data or a second signal set.
`
`,320
`321
`
`322
`
`status_t Fusion::handleAcc(const Vec3_t& a, float dT) {!
`
`merhofflosilMie
`
`if (.'checkInitComplete(ACC, a, dT))
`
`return BAD _VALUE,
`
`Source: https: // android. googlesource .com /platform/frameworks/ native / +/ master / services /sensorservice /Fusion.cpp
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a six -axis motion sensor module [Samsung Court's construction: no construction necessary) attached to the PCB, comprising...an accelerometer
`for detecting and generating a second signal set [Samsung Court's construction: no construction necessary] comprising axial accelerations Ax, Ay,
`Az associated with said movements and rotations of the 3D pointing device in the spatial reference frame; and
`
`I
`
`Sensor Coordinate System
`In general, the sensor framework uses a standard 3 -axis coordinate system to express data values. For most sensors, the coordinate system is defined,
`relative to the device's screen when the device is held in its default orientation (see figure 1). When a device is held in its default orientation, the X axis is
`horizontal and points to the right, the Y axis is vertical and points up, and the Z axis points toward the outside of the screen face. In this system,
`coordinates behind the screen have negative Z values. This coordinate system is used by the following sensors:
`
`Acceleration sensor
`
`Gravity sensor
`
`Gyroscope
`
`Linear acceleration sensor
`
`Geomagnetic field sensor
`
`x
`
`The most important point to understand about this coordinate system is that the axes are not swapped
`when the device's screen orientation changes -that is, the sensor's coordinate system never changes as
`the device moves. This behavior is the same as the behavior of the OpenGL coordinate system.
`
`Another point to understand is that your application must not assume that a device's natural (default)
`orientation is portrait. The natural orientation for many tablet devices is landscape. And the sensor
`coordinate system is always based on the natural orientation of a device.
`
`Figure 1. Coordinate system (relative to a
`device) that's used by the Sensor API.
`
`Source: http : / /developer.android.com/guide/ topics/ sensors /sensors_overview.html #sensors -coords
`
`13
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`a processing and transmitting module, comprising a data transmitting unit electrically connected to the 71x -axis mot-7-7 sensor
`aproUUAc for transmitting said first and second signal sets thereof and a computing processor for receiving and calculating said first
`and second signal sets from the data transmitting unit [Apple Court's construction: no construction necessary],
`
`A O
`
`1111
`
`7)20
`
`2:03 PM
`
`Sensor Kinetics
`
`S
`
`?
`

`
`Multi- Sensor
`
`corder
`
`new
`
`Three Dimensional Sensors
`
`Type: LGE Accelerometer
`Mfr: BOSCH Ver: 1173900
`Power Consumption: 0.180mA
`Resolution: 0.002 Range: 78.453
`Min Delay: 5000 ps
`
`19Hz
`
`Rate:Ul
`
`Gy:
`
`m /sz
`
`A
`
`X= 0.3129
`Y =- 0.4077
`Z= 9.9023
`
`Type: LGE Gyroscope
`Mfr: BOSCH Ver: 1173900
`Power Consumption: 0.900mA
`Resolution: 0.001 Range: 34.907
`Min Delay: 5000 ps
`
`18Hz
`
`Rate:Ul
`
`rad /s
`
`X=- 0.0013
`A Y= 0.0002
`Z =- 0.0001
`
`computing processor
`
`MAUI
`rig CPU -2
`
`Ìl H ro
`
`1)20
`
`2:04 PM
`
`.
`
`.oc
`
`SYSTEM
`
`BATTERY
`
`Qualcomm
`snapdragon
`
`Model
`
`Qualcomm Snapdragon 820
`2.15 GHz
`
`Qualcomm Technologies, Inc
`MSM8996
`
`Cores
`
`4
`
`big.LITTLE
`Architecture
`
`Revision
`
`Process
`
`HMP (2 clusters)
`
`Kryo
`
`r1p2
`
`14 nm
`
`Clock Speed
`
`307 MHz -2.15 GHz
`
`CPU 0
`
`CPU 1
`
`CPU 2
`
`CPU 3
`
`307 MHz
`
`307 MHz
`
`307 MHz
`
`307 MHz
`
`CPU Load
`
`11 %
`
`GPU Vendor
`
`not I penrlArar
`
`Qualcomm
`Arlrnnn (TAM FZ(1 ell") Al 11A44 ,
`
`. X:t:_
`
`1 -,
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`
`communicating with the six -axis motion sensor module to calculate a resulting deviation comprising resultant angles in said spatial
`pointer reference frame (Samsung Court's construction: no construction necessary] by utilizing a comparison to compare the first
`signal set with the second signal set {Apple Court's Construction: using the calculation of actual deviation angles to compare the first
`signal set with the second signal set] whereby said resultant angles in the spatial pointer reference frame of the resulting deviation of
`the six -axis motion sensor module of the 3D pointing device are obtained under said dynamic environments,
`
`4
`
`Rotation vector
`
`getRotationMatrixFromVector
`
`added in API level 9
`
`Underlying physical sensors: Accelerometer, Magnetometer, and Gyroscope
`
`void getRotationMatrixFromVector (float[] R,
`
`float[] rotationVector)
`
`Reporting -mode: Continuous
`
`1i getDefaultSensor ( SENSOR TYPE_ROTATIONVECTOR) returns a non -wake-up sensor
`
`Source: https: / /source.android.com/ devices / sensors /sensor -types #rotation_vector
`
`getOrientation
`
`float[] getOrientation (float[] R,
`
`float[] values)
`
`Computes the devices orientation based on the rotation matrix.
`
`When it returns, the array values are as follows:
`
`Helper function to convert a rotation vector to a rotation matrix. Given a rotation vector
`(presumably from a ROTATION VECTOR sensor), returns a 9 or 16 element rotation matrix in the
`array R. R must have length 9 or 16. If R.Iength == 9, the following matrix is returned:
`Source: https: // developer. android. corn /reference /android /hardware /SensorManager
`
`# getRotationMatrixFromVector (float[], %20float[])
`
`added in API level 3
`
`rotation about the -z axis. This value represents the angle between the devices y axis and the magnetic north pole. When
`values[O]: Azimuth,
`facing north, this angle is O, when facing south, this angle is n. Likewise, when facing east, this angle is n /2, and when facing west, this angle is -n /2.
`The range of values is -n to n.
`
`angle of
`
`values[1): Pitch, angle of rotation about the x axis. This value represents the angle between a plane parallel to the device's screen and a plane parallel
`to the ground. Assuming that the bottom edge of the device faces the user and that the screen is face -up, tilting the top edge of the device toward
`the ground creates a positive pitch angle. The range of values is -n to n.
`
`values[2]: Roll, angle of rotation about the y axis. This value represents the angle between a plane perpendicular to the device's screen and a plane
`perpendicular to the ground. Assuming that the bottom edge of the device faces the user and that the screen is face -up, tilting the left edge of the
`rPVI!`P tnwarrl the nrnl,nri f ro,tPC a nnc itiv, rnll annlç Tha ranna of vals lac is -n/9 to n/9
`
`Source: https: / /developer.android.com/ reference / android / hardware /SensorManager#getOrientation (float[], %20float[])
`
`15
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`communicating with the six -axis motion sensor module to calculate a resulting deviation comprising resultant angles in said spatial
`pointer reference frame ÍSamsun , Court's construction: no construction necessary) by utilizing a comparison to compare the first
`signal set with the second signal set (Apple Court's Construction: using the calculation of actual deviation angles to compare the first
`signal set with the second signal set] whereby said resultant angles in the spatial pointer reference frame of the resulting deviation of
`the six -axis motion sensor module of the 3D pointing device are obtained under said dynamic environments,
`The predict O function shows that the first signal set (angular velocities), w, is used to calculate the global variable x0.
`
`i
`
`430 void Fusion: :predict ( const vec3_t& w, float dT) {
`431
`
`const vec4_t q
`
`= x0;
`
`485
`
`x0 = 0*q;
`
`The second signal set (axial accelerations) a, is passed to the variable z, and used in the update O function to update the global
`variable x0.
`
`345
`

`
`349
`
`vec3_t unityA = a * 1_inv;
`
`update(unityA, Ba, p);
`
`495 void Fusion::update(const vec3_t& z, const
`
`vec3_t& Bi, boat sigma) {
`
`z 496
`
`497
`
`498
`
`499
`
`529
`533
`
`vec4_t q ( x0 )
`// measured vector in body space: h(p) = A (p) *Bi
`const mat33_t A(quatToMatrix(q));
`const vec3_t Bb(A*Bi);
`const vec3_t e(z - Bb);
`= normalize_quat (q);
`
`..__ _..
`
`;
`
`Source: https: // android .googlesource.com /platform/ frameworks/ native / +/ master / services /sensorsetvice /Fusion.cpp
`
`1 6
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim i
`
`i
`
`communicating with the six -axis motion sensor module to calculate a resulting deviation comprising resultant angles in said spatial
`pointer reference frame [Samsung Court's construction: no construction necessary] by utilizing a comparison to compare the first
`signal set with the second signal set {Apple Court's Construction: using the calculation of actual deviation angles to compare the first
`signal set with the second signal seti whereby said resultant angles in the spatial pointer reference frame of the resulting deviation of
`the six -axis motion sensor module of the 3D pointing device are obtained under said dynamic environments,
`The predict O function and update O functions are used in sensor fusion to update the global variable x0 in a quaternion form,
`which can represent actual deviation angles. In the predict O function, the first signal set, w, is used to calculate the global variable
`x0. In the update O
`local variable z, and is used by the update O function to update the global variable x0. The variable Bb (from the first signal set) and
`the variable z (from the second signal set) are compared to calculate the variable e on line 529 of the Fusion.cpp file. Therefore,
`during the calculation of actual deviation angles, the first signal set is compared with the second signal set.
`
`function, x0 is converted to the variable Bb. The second signal set, a, is passed to the update O function as
`
`436
`
`vo1 ci Fu si on :
`
`: p rech ct ( const vec3®t& w, float dT)
`
`i 431
`
`const vec4_t q
`
`= x0;
`
`xO = okci;
`
`495
`
`496
`
`497
`
`498
`
`499
`
`529
`
`533
`
`void F, Isi on :
`
`: update (const vec3_t& z, const vec3_t
`
`Bi, float sigma) {
`
`vec4_t q (x0) ;
`1/ measured vector in body space: h(p) = A ( p ) *Bi
`const mat33_t A ( quatToMat ri x ( g ) ) ;
`const vec3_t Bb (A* Bi )
`
`;
`
`const vec3_t e
`
`- Bb) ;
`x0 = normali ze_quat (q) ;
`
`Source: https: / /android.googlesource .corn /platform /frameworks/ native /+ /master/ services /sensorservice /Fusion.cpp
`
`17
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`wherein the comparison utilized by the processing and transmitting module further comprises an update program to obtain an
`updated state based on a previous state associated with said first signal set and a measured state associated with said second
`signal set;
`
`For example, the update program includes a predict 0 function and an update 0 function that are used to update the global
`variable x0 based on x0 (the previous state) associated with the first signal set w and e (the measured state) associated with the
`second signal set to calculate an updated state x0. The updated state x0 becomes the previous state x0 in the next iteration of the
`update program to obtain the updated state x0 in that iteration.
`
`first signal set
`
`__
`
`. 430
`
`431
`
`485
`
`-
`
`const vec4_t q
`xO = cf*q ;
`
`1
`
`= xe ;
`
`previous state
`
`void Fusion; :p r edi ct ( const vec3,t& w, float dT
`
`495
`
`void Fusion: ;update (corls"t vec3_t&
`
`const vec3_t& Bi , float sigma)
`
`1
`
`496
`
`vec4_t g(x0);
`
`measured state
`
`r "
`
`_
`
`second signal set
`
`const vec3_t e (
`const vec3_t dg(K[0]*e);
`
`- B b ) ;
`
`q += get F (q) * (0.5f*dg) ;
`x0 = no r-mali ze_quat ( q ) ;
`
`j'
`
`next iteration
`
`Source: https : / /android.googlesource.conl/ platform /frameworks /native /+ /master/ services /sensorservice /Fusion.cpp
`
`updated state
`
`529
`
`530
`
`531
`
`532
`
`J J
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 1
`wherein the measured state includes a measurement of said second signal set and a predicted measurement obtained based on the first signal
`set without using any derivatives of the first signal set [Samsung Court's construction: the measured state includes a measurement of axial
`accelerations and predicted axial accelerations calculated using the angular velocities without computing derivatives of said angular velocities (i.e.
`angular accelerations)]
`The variable e is a measured state that includes a measurement of said second signal set z and a predicted measurement Bb
`calculated based on x0 (the previous state, which is calculated based on the first signal set).
`
`second signal set (measured accelerations)
`
`1 345
`
`vec3_t unityA = a * t_i nv ;
`
`- 495
`
`void Fusion ; ;update ( const vec3_t& z, const vec3_t& Bi , float sigma) {
`
`496
`
`497
`
`498
`
`499
`
`vec4t q (x4) ;
`// measured vector in body space: h(p) = A (p) *B1
`const mat33_t A (quatTor»latri x (q)) ;
`const vec3_t Bb (A *B-i ) ;
`
`i 529
`
`const vec3 t e(z -
`
`Bb);
`
`measured state
`
`second
`
`signal set
`
`predicted measurement
`
`As shown in the code above, the predicted measurement
`first signal set.
`
`is obtained based on the first signal set without using any derivatives of the
`
`Source: https: // android. googlesource .com /platform
`
`/frameworks/ native / +/master/ services /sensorservice /Fusion.cpp
`
`19
`
`

`

`Claim 3
`The 3D pointing device of claim 1, wherein the PCB enclosed by the housing comprises at least one substrate having a first
`longitudinal side configured to be substantially parallel to a longitudinal surface of the housing.
`
`U.S. Patent No. 8,441,438 - LG V20
`
`first longitudinal side
`
`longitudinal surface of the housing
`
`Source: https: / /www.ifixit.corn /Guide /LG +V20+ Motherboard +Assembly +Replacement /96392
`
`20
`
`

`

`U.S. Patent No. 8,441,438 - LG V20
`
`Claim 4
`The 3D pointing device of claim 1, wherein the spatial pointer reference frame is a reference frame in three dimensions; and wherein
`said resultant angles of the resulting deviation includes yaw, pitch and roll angles about each of three orthogonal coordinate axes of
`the spatial pointer reference frame.
`getOrientation
`
`added in API level 3
`
`float() getOrientation (float() R,
`
`float[] values)
`
`Computes the device's orientation based on the rotation matrix.
`
`When it returns, the array values are as follows:
`
`values(0): Azimuth, angle of rotation about the -z axis. This value represents the angle between the device's y axis and the magnetic north pole. When
`facing north, this angle is 0, when facing south, this angle is n. Likewise, when facing east, this angle is n/2, and when facing west, this angle is -tt /2.
`The range of values is -n to n.
`
`values(1): Pitch, angle of rotation about the x axis. This value represents the angle between a plane parallel to the device's screen and a plane parallel
`to the ground. Assuming that the bottom edge of the device faces the user and that the screen is face -up, tilting the top edge of the device toward
`the ground creates a positive pitch angle. The range of values is -n to n.
`
`values(2): Roil, angle of rotation about the y axis. This value represents the angle between a plane perpendicular to the device's screen and a plane
`perpendicular to the ground. Assuming that the bottom edge of the device faces the user and that the screen is face -up, tilting the left edge of the
`device toward the ground creates a positive roll angle. The range of values is -n /2 to n /2.
`
`Source: https: // developer. android.com /reference/ android / hardware /SensorManager #getOrientation(float[], float[])
`y
`Sensor Coordinate System
`In general, the sensor framework

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket