N900 accelerometer
(→Hardware) |
|||
Line 3: | Line 3: | ||
The accelerometer in the phone is a [http://www.st.com//stonline/products/literature/ds/12726/lis302dl.pdf LIS302DL]. | The accelerometer in the phone is a [http://www.st.com//stonline/products/literature/ds/12726/lis302dl.pdf LIS302DL]. | ||
- | It is connected through [[N900 Hardware Bus I2C]]. | + | It is connected through [[N900 Hardware Bus I2C|the I2C bus]]. |
Line 28: | Line 28: | ||
After 100s, the position inaccuracy is up to 450m. | After 100s, the position inaccuracy is up to 450m. | ||
(this assumes the orientation of the phone is known exactly) | (this assumes the orientation of the phone is known exactly) | ||
+ | |||
=Software= | =Software= | ||
Revision as of 00:12, 8 June 2010
The accelerometer detects orientation and movement of the phone.
Hardware
The accelerometer in the phone is a LIS302DL.
It is connected through the I2C bus.
It features:
- Low power consumption
- Dynamically selectable 2/8G full-scale.
- Programmable multiple interrupt generator
- Click and double click recognition
- Zero G detection
The click and double click functionality are not implemented in the current software.
The accelerometer is uncalibrated - the sensitivity may vary by around 10% plus or minus per-axis. Ideally this would be able to be calibrated by the user. It is possible to recover the bias and sensitivity by rotating the phone several times, and then finding the best mapping of the resulting ellipsoid to a sphere centered around zero.
The absolute resolution is poor - 18mg (at 2g sensitivity) typical. This is fine for detecting the orientation of the phone, but makes most uses that would attempt to integrate the acceleration for detection of position useless.
At the fastest sampling speed, the noise is enough to dither the output, so the resolution is somewhat higher.
Fundamental limitations
For example - with a 9mg error - there is an accelleration error of 9 centimeters per meter per second.
This means that after 10 seconds, the velocity may be anywhere within a 1.8m/s (around 4MPH) band, and the position inaccurate by 4.5m. After 100s, the position inaccuracy is up to 450m. (this assumes the orientation of the phone is known exactly)
Software
The accelerometer is supported by the dbus/sysfs infrastructure Accelerometers.