I am in a bit of a conundrum. I am trying to use the eZ430 accelerometer for 3D gesture recognition, but both 2g and 8g modes have problems.
The 2g mode, when the sensor is at rest in the position it needs to be to be wearable, x is around 250, y is around 50, and z is around 240. This means with any movement, x and z likely exceed 255, and begin to wrap around to lower numbers.
Even rotating the watch in space, I cannot find an orientation that reflects the best possible case of 128 for x, y or z. At rest, It always seems to be somewhere in the range of 240-255 for two dimensions and 40-60 for the other.
Is there some way I can calibrate the sensor, such that...
a) gravity is equalised in a given fixed position or
b) the values are at least around 128, so that I have half of the range of motion each way before the values start to wrap around?
In 8g mode, these problems disappear, but the sensor becomes much less accurate and it is difficult to accurately classify gestures, so a 2g solution would be preferable.