<?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のトピックResistive touchscreen calibration</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Resistive-touchscreen-calibration/m-p/163978#M4035</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This post intends to present an overview of the touchscreen calibration process under Android.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Although for calibration to happen during first boot it's necessary to pass "calibration" argument to kernel, it's not at kernel level that calibration actually happens.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;init process&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;In user space, &lt;EM&gt;init&lt;/EM&gt; parses the kernel command line and if "calibration" argument is found, &lt;EM&gt;init&lt;/EM&gt; sets Android's property &lt;EM&gt;ro.calibration&lt;/EM&gt; to "1".&lt;/P&gt;&lt;P&gt;&lt;EM&gt;init&lt;/EM&gt; source code can be found under system/core/init/init.c&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;init.rc file&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;After &lt;EM&gt;init&lt;/EM&gt; process has properly set &lt;EM&gt;ro.calibration&lt;/EM&gt; property, &lt;EM&gt;init.rc&lt;/EM&gt; file calls the &lt;EM&gt;ts_calibrator&lt;/EM&gt; program, which reads the property value. In case the value is "0", the program exits immediately. In case the value is "1", the program loads the configuration screen to capture 3 points.&lt;/P&gt;&lt;P&gt;Once the coordinates for the three points have been read, &lt;EM&gt;ts_calibrator&lt;/EM&gt; stores the information inside /data/system/calibration and sets the same values to the touchscreen driver using its calibration interface available at /sys/module/mxc_ts/parameters/calibration.&lt;/P&gt;&lt;P&gt;After first boot, as /data/system/calibration is already there, &lt;EM&gt;ts_calibrator&lt;/EM&gt; only loads its values to the driver, avoiding the calibration screen to be shown.&lt;/P&gt;&lt;P&gt;If a new calibration needs to be forced, it's only necessary to reboot the board after removing /data/system/calibration file.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Kernel level&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;At kernel level, the touchscreen driver implementation can be found at: kernel_imx/drivers/input/touchscreen/mxc_ts.c. This is the module that implements the interface found at /sys/module/mxc_ts/parameters/calibration and also the correction mechanism based on calibration parameters.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 26 Jul 2011 23:47:31 GMT</pubDate>
    <dc:creator>RogerioNunes</dc:creator>
    <dc:date>2011-07-26T23:47:31Z</dc:date>
    <item>
      <title>Resistive touchscreen calibration</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Resistive-touchscreen-calibration/m-p/163978#M4035</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This post intends to present an overview of the touchscreen calibration process under Android.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Although for calibration to happen during first boot it's necessary to pass "calibration" argument to kernel, it's not at kernel level that calibration actually happens.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;init process&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;In user space, &lt;EM&gt;init&lt;/EM&gt; parses the kernel command line and if "calibration" argument is found, &lt;EM&gt;init&lt;/EM&gt; sets Android's property &lt;EM&gt;ro.calibration&lt;/EM&gt; to "1".&lt;/P&gt;&lt;P&gt;&lt;EM&gt;init&lt;/EM&gt; source code can be found under system/core/init/init.c&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;init.rc file&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;After &lt;EM&gt;init&lt;/EM&gt; process has properly set &lt;EM&gt;ro.calibration&lt;/EM&gt; property, &lt;EM&gt;init.rc&lt;/EM&gt; file calls the &lt;EM&gt;ts_calibrator&lt;/EM&gt; program, which reads the property value. In case the value is "0", the program exits immediately. In case the value is "1", the program loads the configuration screen to capture 3 points.&lt;/P&gt;&lt;P&gt;Once the coordinates for the three points have been read, &lt;EM&gt;ts_calibrator&lt;/EM&gt; stores the information inside /data/system/calibration and sets the same values to the touchscreen driver using its calibration interface available at /sys/module/mxc_ts/parameters/calibration.&lt;/P&gt;&lt;P&gt;After first boot, as /data/system/calibration is already there, &lt;EM&gt;ts_calibrator&lt;/EM&gt; only loads its values to the driver, avoiding the calibration screen to be shown.&lt;/P&gt;&lt;P&gt;If a new calibration needs to be forced, it's only necessary to reboot the board after removing /data/system/calibration file.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Kernel level&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;At kernel level, the touchscreen driver implementation can be found at: kernel_imx/drivers/input/touchscreen/mxc_ts.c. This is the module that implements the interface found at /sys/module/mxc_ts/parameters/calibration and also the correction mechanism based on calibration parameters.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Jul 2011 23:47:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Resistive-touchscreen-calibration/m-p/163978#M4035</guid>
      <dc:creator>RogerioNunes</dc:creator>
      <dc:date>2011-07-26T23:47:31Z</dc:date>
    </item>
    <item>
      <title>Re: Resistive touchscreen calibration</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Resistive-touchscreen-calibration/m-p/163979#M4036</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Rogerio,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; We have met one issue about resistive touchscreen calibration issue on MX53 SMD board Android OS, the first poin appear, but system no respond when I touch the screen. do you know where happened issue?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; P.S,&amp;nbsp; using cat /dev/input , Android can recoginze the device name of da9052_tsi and event1, our PMIC is da9052,&amp;nbsp; the first poin appear, but system can execute when I touch the screen&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; thx&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Jack&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 May 2013 10:31:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Resistive-touchscreen-calibration/m-p/163979#M4036</guid>
      <dc:creator>Oceanblue</dc:creator>
      <dc:date>2013-05-12T10:31:36Z</dc:date>
    </item>
  </channel>
</rss>

