ADXL330:  Tilt sensing  vs  acceleration

Is there a way to detect the difference between an accelerometer tilting vs actual acceleration? I'm trying to use this to determine when a rotating bicycle pedal hits the top / bottom of the struck. However, the accelerometer is attached to a leg which causes it to tilt too. I'm moving the ADXL330 to a more vertical position which should decrease the tilting greatly, but will still have some tilt.


OK, by turning the ADXL on its side and only using values from the XY' plane, I am detecting the TOP of the cycle. It's not detecting the bottom. I don't know why yet?

I am surprised about one thing (using SeeedStudio): I'm using 3.3v in (as specified) with a +/- 3g with 0g axes having values of around 340-347). It appears the 1g value range is around 60. which would put the minimum value read at about 160 for -3g and 520 for +3g. I found no docs for the SeedStudio ADXL330.

OH, I solved this! It has a sensitivity of 300mV/g. So that equates on the Arduino analog bus as 5V / .3 = 16.66 "bins". Now divide the 1023 signal range by 16.66 bins = 61 / g...

Do any accels have more sensitivity than 300mV/g ?