`
`Exhibit I
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 2 of 44 PageID #: 1109
`
`Case 2:17-cv—00140-RWS—RSP Document 45-4 Filed 11/02/17 Page 2 of 44 PageID #: 1109
`
`
`
`
`
`EXHIBIT 1
`
`
`
`
`EXHIBIT 1
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 3 of 44 PageID #: 1110
`
`CYWEE GROUP LTD,
`vs.
`SAMSUNG ELECTRONICS CO., LTD. AND
`SAMSUNG ELECTRONICS AMERICA, INC.
`
`UNITED STATES DISTRICT COURT
`FOR THE EASTERN DISTRICT OF TEXAS
`MARSHALL DIVISION
`
`EXEMPLARY CLAIM CHART
`
`U.S. PATENT NO. 8,441,438 – Samsung Galaxy S7 Edge
`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.
`
`1
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 4 of 44 PageID #: 1111
`
`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). Construed terms and constructions are underlined.
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`1. A three-dimensional (3D) pointing device 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;
`a printed circuit board (PCB) enclosed by the housing;
`a six-axis motion sensor module attached to the PCB, comprising a rotation sensor for detecting and generating a first signal set
`comprising angular velocities ωx, ωy, ωz 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 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 [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 by utilizing a
`comparison to compare the first signal set with the second signal set [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.
`
`2
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 5 of 44 PageID #: 1112
`
`Claim 1
`A three-dimensional (3D) pointing device subject to movements and rotations in dynamic environments, comprising:
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Samsung Galaxy S7 Edge
`
`3
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 6 of 44 PageID #: 1113
`
`Claim 1
`a housing associated with said movements and rotations of the 3D pointing device in a spatial pointer reference frame;
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`y
`
`housing
`
`z
`
`x
`
`spatial pointer reference frame
`
`Source: http://developer.android.com/guide/topics/sensors/sensors_overview.html#sensors-coords
`
`4
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 7 of 44 PageID #: 1114
`
`Claim 1
`a printed circuit board (PCB) enclosed by the housing;
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`printed circuit board (PCB)
`
`housing
`
`Source: https://www.ifixit.com/Teardown/Samsung+Galaxy+S7+Edge+Teardown/56845
`
`5
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 8 of 44 PageID #: 1115
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`a six-axis motion sensor module attached to the PCB, comprising a rotation sensor for detecting and generating a first signal set
`comprising angular velocities ωx, ωy, ωz associated with said movements and rotations of the 3D pointing device in the spatial pointer
`reference frame,
`
`six-axis motion sensor module
`
`Source: http://www.chipworks.com/about-chipworks/overview/blog/samsung-galaxy-s7-edge-teardown
`
`6
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 9 of 44 PageID #: 1116
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`a six-axis motion sensor module attached to the PCB, comprising a rotation sensor for detecting and generating a first signal set
`comprising angular velocities ωx, ωy, ωz associated with said movements and rotations of the 3D pointing device in the spatial pointer
`reference frame,
`
`six-axis motion sensor module
`
`7
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 10 of 44 PageID #:
` 1117
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`a six-axis motion sensor module attached to the PCB, comprising a rotation sensor for detecting and generating a first signal set
`comprising angular velocities ωx, ωy, ωz associated with said movements and rotations of the 3D pointing device in the spatial pointer
`reference frame,
`
`six-axis motion sensor module
`
`8
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 11 of 44 PageID #:
` 1118
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`a six-axis motion sensor module attached to the PCB, comprising a rotation sensor for detecting and generating a first signal set
`comprising angular velocities ωx, ωy, ωz associated with said movements and rotations of the 3D pointing device in the spatial pointer
`reference frame,
`The six-axis motion sensor module includes the accelerometer and gyroscope. The rotation sensor is a gyroscope.
`
`The first signal set includes the sensor event values of TYPE_GYROSCOPE.
`
`Source: https://source.android.com/devices/sensors/base_triggers.html
`
`9
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 12 of 44 PageID #:
` 1119
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`a six-axis motion sensor module attached to the PCB, comprising a rotation sensor for detecting and generating a first signal set
`comprising angular velocities ωx, ωy, ωz associated with said movements and rotations of the 3D pointing device in the spatial pointer
`reference frame,
`The header file Sensors.h defines the data structures to receive sensor data detected and generated by the rotation sensor (gyroscope).
`
`Source: https://source.android.com/devices/halref/sensors_8h_source.html
`
`Variable w, used by the handleGyro() function in the fusion.cpp file, represents gyroscope data or a first signal set.
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`10
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 13 of 44 PageID #:
` 1120
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`a six-axis motion sensor module attached to the PCB, comprising a rotation sensor for detecting and generating a first signal set
`comprising angular velocities ωx, ωy, ωz associated with said movements and rotations of the 3D pointing device in the spatial
`pointer reference frame,
`
`Source: http://developer.android.com/guide/topics/sensors/sensors_overview.html#sensors-coords
`
`11
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 14 of 44 PageID #:
` 1121
`
`Claim 1
`an accelerometer for detecting and generating a second signal set comprising axial accelerations Ax, Ay, Az associated with said
`movements and rotations of the 3D pointing device in the spatial pointer reference frame; and
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`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.
`
`Source: https://source.android.com/devices/sensors/base_triggers.html
`
`12
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 15 of 44 PageID #:
` 1122
`
`Claim 1
`an accelerometer for detecting and generating a second signal set comprising axial accelerations Ax, Ay, Az associated with said
`movements and rotations of the 3D pointing device in the spatial pointer reference frame; and
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`The header file Sensors.h defines the data structures to receive sensor data detected and generated by the accelerometer.
`
`Source: https://source.android.com/devices/halref/sensors_8h_source.html
`
`Variable a, used by the handleAcc() function in the fusion.cpp file, represents acceleration data or a second signal set.
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`13
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 16 of 44 PageID #:
` 1123
`
`Claim 1
`an accelerometer for detecting and generating a second signal set comprising axial accelerations Ax, Ay, Az associated with said
`movements and rotations of the 3D pointing device in the spatial pointer reference frame; and
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Source: http://developer.android.com/guide/topics/sensors/sensors_overview.html#sensors-coords
`
`14
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 17 of 44 PageID #:
` 1124
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`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,
`The computing processor (Snapdragon 820) gathers data from the six-axis motion sensor module (including the accelerometer and
`the gyroscope) through a data transmitting unit which is electrically connected to the six-axis motion sensor module.
`
`computing processor
`
`Source: http://www.chipworks.com/about-chipworks/overview/blog/samsung-galaxy-s7-edge-teardown
`
`15
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 18 of 44 PageID #:
` 1125
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`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,
`The computing processor (Snapdragon 820) gathers data from the six-axis motion sensor module (including the accelerometer and
`the gyroscope) through a data transmitting unit which is electrically connected to the six-axis motion sensor module.
`six‐axis motion sensor module
`
`16
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 19 of 44 PageID #:
` 1126
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`communicating with the six-axis motion sensor module to calculate a resulting deviation comprising resultant angles in said spatial
`pointer reference frame by utilizing a comparison to compare the first signal set with the second signal set [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,
`
`Source: https://developer.android.com/reference/android/hardware/SensorManager.html#getOrientation(float[], float[])
`
`17
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 20 of 44 PageID #:
` 1127
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`communicating with the six-axis motion sensor module to calculate a resulting deviation comprising resultant angles in said spatial
`pointer reference frame by utilizing a comparison to compare the first signal set with the second signal set [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() function shows that the first signal set (angular velocities), w, is used to calculate the global variable x0.
`
`The second signal set (axial accelerations) a, is passed to the variable z, and used in the update() function to update the global
`variable x0.
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`18
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 21 of 44 PageID #:
` 1128
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 1
`communicating with the six-axis motion sensor module to calculate a resulting deviation comprising resultant angles in said spatial
`pointer reference frame by utilizing a comparison to compare the first signal set with the second signal set [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() function and update() 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() function, the first signal set, w, is used to calculate the global variable
`x0. In the update() function, x0 is converted to the variable Bb. The second signal set, a, is passed to the update() function as
`local variable z, and is used by the update() 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.
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`19
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 22 of 44 PageID #:
` 1129
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`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() function and an update() 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
`
`measured state
`
`previous state
`
`second signal set
`
`updated state
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`next iteration
`
`20
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 23 of 44 PageID #:
` 1130
`
`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.
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`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)
`
`measured state
`
`second signal set
`As shown in the code above, the predicted measurement is obtained based on the first signal set without using any derivatives of the
`first signal set.
`
`predicted measurement
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`21
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 24 of 44 PageID #:
` 1131
`
`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 – Samsung Galaxy S7 Edge
`
`first longitudinal side
`
`longitudinal surface of the housing
`
`Source: https://www.ifixit.com/Teardown/Samsung+Galaxy+S7+Edge+Teardown/56845
`
`22
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 25 of 44 PageID #:
` 1132
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`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.
`
`Source: http://developer.android.com/guide/topics/sensors/sensors_position.html
`
`Source: http://developer.android.com/guide/topics/sensors/sensors_overview.html#sensors-coords
`
`23
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 26 of 44 PageID #:
` 1133
`
`Claim 5
`The 3D pointing device of claim 1, wherein the data transmitting unit of the processing and transmitting module is attached to the PCB enclosed
`by the housing and transmits said first and second signal of the six-axis motion sensor module to the computer processor via electronic
`connections.
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`The computer processor and the six‐axis motion sensor module are each attached to the PCB, as is the data transmitting unit,
`which transmits the first and second signal of the six‐axis motion sensor module to the computer processor via electronic
`connections.
`six-axis motion sensor module
`
`computing processor
`
`Source: http://www.chipworks.com/about-chipworks/overview/blog/samsung-galaxy-s7-edge-teardown
`
`24
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 27 of 44 PageID #:
` 1134
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 14
`A method for obtaining a resulting deviation including resultant angles in a spatial pointer reference frame of a three-dimensional
`(3D) pointing device utilizing a six-axis motion sensor module therein and subject to movements and rotations in dynamic
`environments in said spatial pointer reference frame, comprising the steps of:
`
`three-dimensional (3D)
`pointing device
`
`z
`
`x
`
`spatial pointer reference frame
`
`Source: http://developer.android.com/guide/topics/
`sensors/sensors_overview.html#sensors-coords
`
`25
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 28 of 44 PageID #:
` 1135
`
`Claim 14
`obtaining a previous state of the six-axis motion sensor module; wherein the previous state includes an initial-value set associated
`with previous angular velocities gained from the motion sensor signals of the six-axis motion sensor module at a previous time T−1;
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`The previous state is obtained through an update program that includes a predict() function and an update() function. Those
`functions that are used to update the global variable x0 based on x0 (the previous state) associated with previous angular velocities
`w gained at a previous time T-1 to obtain an updated state x0. The updated state x0 becomes the previous state x0 at time T (the next
`iteration) of the update program to obtain the updated state x0 at time T.
`
`previous state
`
`next iteration
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`26
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 29 of 44 PageID #:
` 1136
`
`Claim 14
`obtaining a current state of the six-axis motion sensor module by obtaining measured angular velocities ωx, ωy, ωz gained from the
`motion sensor signals of the six-axis motion sensor module at a current time T;
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`The predict() function runs during each iteration of the fusion algorithm, at a time T its output represents a current state output as
`x0. The predict() function is called by the handleGyro() function and receives measured angular velocities, w, associated with
`the current state.
`
`measured angular velocities
`
`current state
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`27
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 30 of 44 PageID #:
` 1137
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 14
`obtaining a measured state of the six-axis motion sensor module by obtaining measured axial accelerations Ax, Ay, Az gained from
`the motion sensor signals of the six-axis motion sensor module at the current time T and calculating predicted axial accelerations
`Ax′, Ay′, Az′ based on the measured angular velocities ωx, ωy, ωz of the current state of the six-axis motion sensor module without
`using any derivatives of the measured angular velocities ωx, ωy, ωz;
`The variable e is a measured state that includes measured axil accelerations z and predicted axial accelerations Bb calculated
`based on x0 (the previous state, which is calculated based on the measured angular velocities).
`
`measured axial accelerations
`
`measured state
`
`measured axial accelerations
`
`predicted axial accelerations
`
`As shown in the code above, the predicted measurement is obtained based on the first signal set without using any derivatives of the
`measured angular velocities.
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`28
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 31 of 44 PageID #:
` 1138
`
`Claim 14
`said current state of the six-axis motion sensor module is a second quaternion with respect to said current time T;
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`As shown in the examples provided, the current state is represented by the global state variable x0, which is a quaternion with
`respect to the current time T.
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`29
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 32 of 44 PageID #:
` 1139
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 14
`comparing the second quaternion in relation to the measured angular velocities ωx, ωy, ωz of the current state at current time T with the
`measured axial accelerations Ax, Ay, Az and the predicted axial accelerations Ax′, Ay′, Az′ also at current time T; obtaining an updated state
`of the six-axis motion sensor module by comparing the current state with the measured state of the six-axis motion sensor module; and
`For example, as previously shown, the measured state, e, is obtained using the update() function, which combines the measured
`axial accelerations, z, and the predicted axial accelerations, Bb. Moreover, the predicted axial accelerations are determined
`based on the measured angular velocities of the current state at the current time T. The update() function further compares the
`measured state, e, and the current state to obtain the updated state, x0.
`
`measured angular velocities
`
`previous state
`
`current state
`
`measured state
`
`measured axial accelerations
`
`predicted axial accelerations
`
`updated state
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`30
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 33 of 44 PageID #:
` 1140
`
`Claim 14
`calculating and converting the updated state of the six axis motion sensor module to said resulting deviation comprising said
`resultant angles in said spatial pointer reference frame of the 3D pointing device.
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`The updated state x0 is in quaternion form, and can easily be converted to resultant angles.
`According to Android’s developer library, the getOrientation() function “computes the device’s orientation based on the rotation
`matrix,” and returns resultant angles including the Azimuth, Pitch, and Roll angles.
`
`The getRotationMatrixFromVector() function “convert[s] a rotation vector to a rotation matrix,” and the
`getQuaternionFromVector() function “convert[s] a rotation vector to a normalized quaternion.” Therefore, the quaternion, x0, can
`be easily converted to its mathematically equivalent form, rotation matrix, and used by getOrientation() function to compute the
`orientation in its angular form.
`Source: https://android.googlesource.com/platform/frameworks/base/+/b267554/core/java/android/hardware/SensorManager.java
`
`31
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 34 of 44 PageID #:
` 1141
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 15
`The method for obtaining a resulting deviation of a 3D pointing device of claim 14, further comprises the step of outputting the updated state of
`the six-axis motion sensor module to the previous state of the six-axis motion sensor module; 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.
`For example, Android’s source code discloses an iterative process for updating device motion. The updated state x0 output at time T-
`1 becomes an input of the previous state at time T and the “state” is iteratively updated.
`
`previous state
`
`updated state
`
`next iteration
`
`Moreover, the getOrientation() function outputs yaw, pitch and roll angles.
`
`Source: https://android.googlesource.com/platform/frameworks/base/+/b267554/core/java/android/hardware/SensorManager.java
`
`32
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 35 of 44 PageID #:
` 1142
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 15
`The method for obtaining a resulting deviation of a 3D pointing device of claim 14, further comprises the step of outputting the updated state of the
`six-axis motion sensor module to the previous state of the six-axis motion sensor module; 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.
`
`Source: http://developer.android.com/guide/topics/sensors/sensors_position.html
`
`Source: http://developer.android.com/guide/topics/sensors/sensors_overview.html#sensors-coords
`
`33
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 36 of 44 PageID #:
` 1143
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 16
`The method for obtaining a resulting deviation of a 3D pointing device of claim 14, wherein said previous state of the six-axis
`motion sensor module is a first quaternion with respect to said previous time T−1; and said updated state of the six-axis motion
`sensor module is a third quaternion with respect to said current time T.
`The previous state set by the predict() function takes the form of a first quaternion, x0.
`
`The update() function calculates a third quaternion representing the updated state, x0.
`
`previous state
`
`updated state
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`34
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 37 of 44 PageID #:
` 1144
`
`Claim 17
`The method for obtaining a resulting deviation of 3D pointing device of claim 14, wherein the obtaining of said previous state of the
`six-axis motion sensor module further comprises initializing said initial-value set.
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`The fusion algorithm sets an initial-value set as shown in the initFusion() function.
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`35
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 38 of 44 PageID #:
` 1145
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 19
`A method for obtaining a resulting deviation including resultant angles in a spatial pointer reference frame of a three-dimensional
`(3D) pointing device utilizing a six-axis motion sensor module therein and subject to movements and rotations in dynamic
`environments in said spatial pointer reference frame, comprising the steps of:
`
`three-dimensional (3D)
`pointing device
`
`z
`
`x
`
`spatial pointer reference frame
`
`Source: http://developer.android.com/guide/topics/
`sensors/sensors_overview.html#sensors-coords
`
`36
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 39 of 44 PageID #:
` 1146
`
`Claim 19
`obtaining a previous state of the six-axis motion sensor module; wherein the previous state includes an initial-value set associated
`with previous angular velocities gained from the motion sensor signals of the six-axis motion sensor module at a previous time T−1;
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`The previous state is obtained through an update program that includes a predict() function and an update() function. Those
`functions that are used to update the global variable x0 based on x0 (the previous state) associated with previous angular velocities
`w gained at a previous time T-1 to obtain an updated state x0. The updated state x0 becomes the previous state x0 at time T (the next
`iteration) of the update program to obtain the updated state x0 at time T.
`
`previous state
`
`next iteration
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`37
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 40 of 44 PageID #:
` 1147
`
`Claim 19
`obtaining a current state of the six-axis motion sensor module by obtaining measured angular velocities ωx, ωy, ωz gained from the
`motion sensor signals of the six-axis motion sensor module at a current time T;
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`The predict() function runs during each iteration of the fusion algorithm, at a time T its output represents a current state output as
`x0. The predict() function is called by the handleGyro() function and receives measured angular velocities, w, associated with
`the current state.
`
`measured angular velocities
`
`current state
`
`Source: https://android.googlesource.com/platform/frameworks/native/+/master/services/sensorservice/Fusion.cpp
`
`38
`
`
`
`Case 2:17-cv-00140-RWS-RSP Document 45-4 Filed 11/02/17 Page 41 of 44 PageID #:
` 1148
`
`U.S. Patent No. 8,441,438 – Samsung Galaxy S7 Edge
`
`Claim 19
`obtaining a measured state of the six-axis motion sensor module by obtaining measured axial accelerations Ax, Ay, Az gained from
`the motion sensor signals of the six-axis motion sensor module at the current time T and calculating predicted axial accelerations
`Ax′, Ay′, Az′ based on the measured angular velocities ωx, ωy, ωz of the current state of the six-axis motion sensor module without
`using any derivatives of the measured angular velocities ωx, ωy, ωz;
`The vari