I would like to develop an application that makes use of the accelerometer sensor on an Android smartphone.

My app needs a measurement range of +-4g. I looked for accelerometer hardware specifications for various models and found that Nexus One mounts BMA150 by Bosch Sensortec, which supports three ranges (+-2g/+-4g/+-8g).

While browsing Android source code from Nexus One, looking for bma150 driver, I read this issue:
Issue 8143 - android - Sensors interface (sensors.c) not using BMA150 though device string reflects that it does - Project Hosting on Google Code

I wish to modify the bma150 driver to set a default range of +-4g and then write a Java app to get and use data from the sensor. By the way, as far as I understand, the driver is actually not implemented at all. Or it is just not exported to the Java API? However, if it is not implemented at all, how can the OS change the screen orientation when the user rotates the device? And if it is not exported to the Java API, what would actually happen when an app tries to read data from the sensor?

Thank you for your help,