title: android accelerometer accuracy is extremely poor
body: <p>Wrote a simple program that prints out accelerometer output.  </p>
  
  <pre><code>mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
  mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_FASTEST);     
  </code></pre>
  
  <p>It turns out that:</p>
  
  <ol>
  <li><p>The accelerometer output is always set to "lowest" as determined by: </p>
  
  <pre><code>public void onAccuracyChanged(Sensor sensor, int accuracy) {
    if (collectingData){  
       accelPrecision.setText("accelerometer accuracy: " + accuracy);
    }
  }
  </code></pre></li>
  <li><p>The actual accelerometer readings are very inaccurate - about 2%-5% fluctuations even when it's resting on the table</p></li>
  </ol>
  
  <p>as far as I can tell it's the same problem on Nexus S, Nexus One and G1</p>
  
  <p>Any idea how it could be made mode accurate / what sets a</p>