<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックScreen Auto-Rotation Issue When Porting ICM-20948 Sensor on Android 11</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1738517#M213933</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'd like to seek assistance regarding a screen auto-rotation issue I encountered while attempting to port the ICM-20948 IMU sensor on Android 11.&lt;/P&gt;&lt;P&gt;Hardware and Software Details:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;CPU: i.MX8MQ&lt;/LI&gt;&lt;LI&gt;Operating System: Android 11&lt;/LI&gt;&lt;LI&gt;IMU Sensor: ICM-20948&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Description of the Issue: I've been working on adding support for the ICM-20948 IMU sensor in Android to enable screen auto-rotation. However, I've encountered a problem &lt;STRONG&gt;where the screen rotation is consistently off by 90 degrees.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1697103680532.jpg" style="width: 300px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/244786i9A5F919D8FB47F85/image-size/medium?v=v2&amp;amp;px=400" role="button" title="1697103680532.jpg" alt="1697103680532.jpg" /&gt;&lt;/span&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1697103598408.jpg" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/244787i94088E6011AEACA7/image-size/medium?v=v2&amp;amp;px=400" role="button" title="1697103598408.jpg" alt="1697103598408.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Any assistance or guidance on resolving this issue would be greatly appreciated. If there are any specific areas of concern or details required, please let me know. Thank you in advance for your help.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;References&lt;/STRONG&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/Porting-MPU6050-on-Android-to-realize-auto-rotation-of-screen/ta-p/1378149" target="_blank"&gt;https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/Porting-MPU6050-on-Android-to-realize-auto-rotation-of-screen/ta-p/1378149&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/i-MX-Processors/Android-10-i-MX8MMini-g2d-rotation-issue/m-p/1051924" target="_blank"&gt;https://community.nxp.com/t5/i-MX-Processors/Android-10-i-MX8MMini-g2d-rotation-issue/m-p/1051924&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 12 Oct 2023 09:49:56 GMT</pubDate>
    <dc:creator>hank2024</dc:creator>
    <dc:date>2023-10-12T09:49:56Z</dc:date>
    <item>
      <title>Screen Auto-Rotation Issue When Porting ICM-20948 Sensor on Android 11</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1738517#M213933</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'd like to seek assistance regarding a screen auto-rotation issue I encountered while attempting to port the ICM-20948 IMU sensor on Android 11.&lt;/P&gt;&lt;P&gt;Hardware and Software Details:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;CPU: i.MX8MQ&lt;/LI&gt;&lt;LI&gt;Operating System: Android 11&lt;/LI&gt;&lt;LI&gt;IMU Sensor: ICM-20948&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Description of the Issue: I've been working on adding support for the ICM-20948 IMU sensor in Android to enable screen auto-rotation. However, I've encountered a problem &lt;STRONG&gt;where the screen rotation is consistently off by 90 degrees.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1697103680532.jpg" style="width: 300px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/244786i9A5F919D8FB47F85/image-size/medium?v=v2&amp;amp;px=400" role="button" title="1697103680532.jpg" alt="1697103680532.jpg" /&gt;&lt;/span&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1697103598408.jpg" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/244787i94088E6011AEACA7/image-size/medium?v=v2&amp;amp;px=400" role="button" title="1697103598408.jpg" alt="1697103598408.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Any assistance or guidance on resolving this issue would be greatly appreciated. If there are any specific areas of concern or details required, please let me know. Thank you in advance for your help.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;References&lt;/STRONG&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/Porting-MPU6050-on-Android-to-realize-auto-rotation-of-screen/ta-p/1378149" target="_blank"&gt;https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/Porting-MPU6050-on-Android-to-realize-auto-rotation-of-screen/ta-p/1378149&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/i-MX-Processors/Android-10-i-MX8MMini-g2d-rotation-issue/m-p/1051924" target="_blank"&gt;https://community.nxp.com/t5/i-MX-Processors/Android-10-i-MX8MMini-g2d-rotation-issue/m-p/1051924&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 12 Oct 2023 09:49:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1738517#M213933</guid>
      <dc:creator>hank2024</dc:creator>
      <dc:date>2023-10-12T09:49:56Z</dc:date>
    </item>
    <item>
      <title>Re: Screen Auto-Rotation Issue When Porting ICM-20948 Sensor on Android 11</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1738702#M213961</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;You have to port the IMU driver to your android since kernel is not detected.&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;</description>
      <pubDate>Thu, 12 Oct 2023 13:44:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1738702#M213961</guid>
      <dc:creator>Bio_TICFSL</dc:creator>
      <dc:date>2023-10-12T13:44:58Z</dc:date>
    </item>
    <item>
      <title>Re: Screen Auto-Rotation Issue When Porting ICM-20948 Sensor on Android 11</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1739013#M213983</link>
      <description>&lt;P&gt;Thanks,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/34846"&gt;@Bio_TICFSL&lt;/a&gt;&amp;nbsp; I believe the ICM2048 driver has already been loaded and is running. You can see the following information by entering it in the Android terminal&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;130|evk_8mq:/ # dumpsys senzsorservice&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Captured at: 07:19:11.364&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Sensor Device:&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Total 4 h/w sensors, 4 running 0 disabled clients:&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x00000002) active-count = 1; sampling_period(ms) = {66.7}, selected = 66.67 ms; batching_period(ms) = {100.0}, selected = 100.00 ms&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Sensor List:&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x00000001) icm20948&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; z&amp;nbsp; | nxp&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| ver: 1 | type: android.sensor.gyroscope(4) | perm: n/a | flags: 0x00000050&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | minRate=5.00Hz | maxRate=12195.12Hz | FIFO (max,reserved) = (100, 0) events | non-wakeUp | data-injection, has-additional-info,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x00000002) icm20948&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | nxp&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| ver: 1 | type: android.sensor.accelerometer(1) | perm: n/a | flags: 0x00000010&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | minRate=5.00Hz | maxRate=1209.19Hz | FIFO (max,reserved) = (100, 0) events | non-wakeUp | data-injection,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x00000003) icm20948&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | nxp&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| ver: 1 | type: android.sensor.magnetic_field(2) | perm: n/a | flags: 0x00000010&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | minDelay=-1us | FIFO (max,reserved) = (100, 0) events | non-wakeUp | data-injection,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x00000004) opt3001&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| nxp&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| ver: 1 | type: android.sensor.light(5) | perm: n/a | flags: 0x00000012&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; on-change | minRate=10.00Hz | maxRate=1.25Hz | FIFO (max,reserved) = (100, 0) events | non-wakeUp | data-injection,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x5f636779) Corrected Gyroscope Sensor | AOSP&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | ver: 1 | type: android.sensor.gyroscope(4) | perm: n/a | flags: 0x00000000&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | maxRate=12195.12Hz | no batching | non-wakeUp |&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x5f676172) Game Rotation Vector Sensor | AOSP&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | ver: 3 | type: android.sensor.game_rotation_vector(15) | perm: n/a | flags: 0x00000000&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | maxRate=1209.19Hz | no batching | non-wakeUp |&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x5f676273) Gyroscope Bias (debug)&amp;nbsp; &amp;nbsp; | AOSP&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | ver: 1 | type: android.sensor.accelerometer(1) | perm: n/a | flags: 0x00000000&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | maxRate=1209.19Hz | no batching | non-wakeUp |&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x5f67656f) GeoMag Rotation Vector Sensor | AOSP&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | ver: 3 | type: android.sensor.geomagnetic_rotation_vector(20) | perm: n/a | flags: 0x00000000&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | maxRate=1209.19Hz | no batching | non-wakeUp |&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x5f677276) Gravity Sensor&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | AOSP&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | ver: 3 | type: android.sensor.gravity(9) | perm: n/a | flags: 0x00000000&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | maxRate=1209.19Hz | no batching | non-wakeUp |&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x5f6c696e) Linear Acceleration Sensor | AOSP&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | ver: 3 | type: android.sensor.linear_acceleration(10) | perm: n/a | flags: 0x00000000&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | maxRate=1209.19Hz | no batching | non-wakeUp |&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x5f726f76) Rotation Vector Sensor&amp;nbsp; &amp;nbsp; | AOSP&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | ver: 3 | type: android.sensor.rotation_vector(11) | perm: n/a | flags: 0x00000000&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | maxRate=1209.19Hz | no batching | non-wakeUp |&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0x5f797072) Orientation Sensor&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | AOSP&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | ver: 1 | type: android.sensor.orientation(3) | perm: n/a | flags: 0x00000000&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; continuous | maxDelay=0us | maxRate=1209.19Hz | no batching | non-wakeUp |&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Fusion States:&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;9-axis fusion disabled (0 clients), gyro-rate= 200.00Hz, q=&amp;lt; 0, 0, 0, 0 &amp;gt; (0), b=&amp;lt; 0, 0, 0 &amp;gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;game fusion(no mag) disabled (0 clients), gyro-rate= 200.00Hz, q=&amp;lt; 0, 0, 0, 0 &amp;gt; (0), b=&amp;lt; 0, 0, 0 &amp;gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;geomag fusion (no gyro) disabled (0 clients), gyro-rate= 200.00Hz, q=&amp;lt; 0, 0, 0, 0 &amp;gt; (0), b=&amp;lt; 0, 0, 0 &amp;gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Recent Sensor events:&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;icm20948: last 50 events&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1 (ts=164.197915226, wall=07:19:09.580) -0.10, 0.34, 10.23,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2 (ts=164.233717707, wall=07:19:09.616) -0.11, 0.32, 10.24,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;3 (ts=164.269666349, wall=07:19:09.652) -0.09, 0.37, 10.18,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;4 (ts=164.305628430, wall=07:19:09.688) -0.06, 0.36, 10.18,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;5 (ts=164.341558952, wall=07:19:09.724) -0.08, 0.34, 10.21,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;6 (ts=164.377450473, wall=07:19:09.760) -0.10, 0.34, 10.18,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;7 (ts=164.413300474, wall=07:19:09.796) -0.05, 0.38, 10.12,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;8 (ts=164.449162836, wall=07:19:09.832) -0.08, 0.26, 10.18,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;9 (ts=164.484990637, wall=07:19:09.867) -0.14, 0.40, 10.16,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10 (ts=164.520888279, wall=07:19:09.903) -0.08, 0.32, 10.14,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 11 (ts=164.556830200, wall=07:19:09.939) -0.14, 0.31, 10.17,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12 (ts=164.592663642, wall=07:19:09.975) -0.21, 0.32, 10.13,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 13 (ts=164.628550363, wall=07:19:10.011) -0.13, 0.37, 10.11,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 14 (ts=164.664386205, wall=07:19:10.047) -0.16, 0.29, 10.31,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 15 (ts=164.700226486, wall=07:19:10.083) -0.08, 0.27, 10.19,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 16 (ts=164.736121487, wall=07:19:10.119) -0.13, 0.32, 10.17,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 17 (ts=164.771977249, wall=07:19:10.154) -0.11, 0.36, 10.25,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 18 (ts=164.807675090, wall=07:19:10.190) -0.16, 0.32, 10.17,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 19 (ts=164.843559172, wall=07:19:10.226) -0.02, 0.41, 9.99,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 20 (ts=164.879316413, wall=07:19:10.262) -0.09, 0.35, 10.14,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 21 (ts=164.915070775, wall=07:19:10.297) -0.14, 0.27, 10.22,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 22 (ts=164.950877096, wall=07:19:10.333) -0.14, 0.43, 10.13,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 23 (ts=164.986675018, wall=07:19:10.369) -0.10, 0.32, 10.36,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 24 (ts=165.022657019, wall=07:19:10.405) -0.05, 0.34, 10.32,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 25 (ts=165.058468860, wall=07:19:10.441) -0.12, 0.29, 10.14,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 26 (ts=165.094219382, wall=07:19:10.477) -0.06, 0.37, 10.13,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 27 (ts=165.129978543, wall=07:19:10.512) -0.10, 0.39, 10.24,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 28 (ts=165.165803945, wall=07:19:10.548) -0.09, 0.35, 10.24,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 29 (ts=165.201513906, wall=07:19:10.584) -0.12, 0.32, 10.19,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30 (ts=165.237281708, wall=07:19:10.620) -0.05, 0.36, 10.09,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31 (ts=165.272960109, wall=07:19:10.655) -0.10, 0.31, 10.23,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 32 (ts=165.308887511, wall=07:19:10.691) -0.11, 0.34, 10.16,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 33 (ts=165.344873472, wall=07:19:10.727) -0.12, 0.38, 10.17,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 34 (ts=165.380659393, wall=07:19:10.763) -0.09, 0.36, 10.10,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 35 (ts=165.416434395, wall=07:19:10.799) -0.13, 0.35, 10.19,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 36 (ts=165.452194276, wall=07:19:10.835) -0.06, 0.33, 10.16,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 37 (ts=165.487941798, wall=07:19:10.870) -0.10, 0.36, 10.15,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 38 (ts=165.523702879, wall=07:19:10.906) -0.12, 0.28, 10.20,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 39 (ts=165.559502241, wall=07:19:10.942) -0.14, 0.35, 10.07,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 40 (ts=165.595351762, wall=07:19:10.978) -0.10, 0.35, 10.20,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 41 (ts=165.631182203, wall=07:19:11.014) -0.06, 0.31, 10.21,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 42 (ts=165.666988765, wall=07:19:11.049) -0.07, 0.35, 10.17,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 43 (ts=165.702813686, wall=07:19:11.085) -0.12, 0.30, 10.15,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 44 (ts=165.738647728, wall=07:19:11.121) -0.10, 0.34, 10.17,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 45 (ts=165.774543569, wall=07:19:11.157) -0.10, 0.36, 10.12,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 46 (ts=165.810368611, wall=07:19:11.193) -0.10, 0.33, 10.23,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 47 (ts=165.846284972, wall=07:19:11.229) -0.14, 0.34, 10.14,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 48 (ts=165.882086854, wall=07:19:11.265) -0.11, 0.33, 10.22,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 49 (ts=165.918105575, wall=07:19:11.301) -0.07, 0.32, 10.16,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 50 (ts=165.954057096, wall=07:19:11.336) -0.14, 0.43, 9.99,&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Active sensors:&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;icm20948 (handle=0x00000002, connections=1)&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Socket Buffer size = 984 events&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;WakeLock Status: not held&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Mode : NORMAL&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Sensor Privacy: disabled&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;1 active connections&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Connection Number: 0&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Operating Mode: NORMAL&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;com.android.server.policy.WindowOrientationListener | WakeLockRefCount 0 | uid 1000 | cache size 0 | max cache size 0&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;icm20948 0x00000002 | status: active | pending flush events 0&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;0 direct connections&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;Previous Registrations:&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;07:16:57 + 0x00000002 pid=&amp;nbsp; 556 uid= 1000 package=com.android.server.policy.WindowOrientationListener samplingPeriod=66667us batchingPeriod=100000us&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;evk_8mq:/ #&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="2"&gt;evk_8mq:/ # cat /sys/bus/iio/devices/iio\:device1/in_accel_x_raw&lt;BR /&gt;-88&lt;BR /&gt;evk_8mq:/ # cat /sys/bus/iio/devices/iio\:device1/in_accel_y_raw&lt;BR /&gt;468&lt;BR /&gt;evk_8mq:/ # cat /sys/bus/iio/devices/iio\:device1/in_accel_z_raw&lt;BR /&gt;16904&lt;BR /&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT size="4"&gt;&lt;SPAN&gt;The main issue is that when rotating the screen, it rotates an extra 90 degrees counterclockwise.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;</description>
      <pubDate>Fri, 13 Oct 2023 01:40:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1739013#M213983</guid>
      <dc:creator>hank2024</dc:creator>
      <dc:date>2023-10-13T01:40:43Z</dc:date>
    </item>
    <item>
      <title>Re: Screen Auto-Rotation Issue When Porting ICM-20948 Sensor on Android 11</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1824708#M221013</link>
      <description>&lt;P&gt;The problem has already been solved, and it is recorded here that you need to modify the Android HAL layer yourself and adjust the IMU direction.&lt;/P&gt;</description>
      <pubDate>Mon, 11 Mar 2024 03:19:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Screen-Auto-Rotation-Issue-When-Porting-ICM-20948-Sensor-on/m-p/1824708#M221013</guid>
      <dc:creator>hank2024</dc:creator>
      <dc:date>2024-03-11T03:19:06Z</dc:date>
    </item>
  </channel>
</rss>

