>>Maybe you should update the screen in steps to make it smooth
>>
>>
>>for( x = oldPosition; x <= newPosition; x += 0.5 ) // degrees ( or less than 0.5)
>> updateScreen();
>>
>
>Hmm. The events come in fast enough - in fact, as in previous reply, I'm taking the opposite approach to *reduce* the number of screen updates (which draws an arrow on HTML5 Canvas)
The Nexus has a gyroscope ? Try this
http://www.sundh.com/blog/2011/09/stabalize-compass-of-iphone-with-gyroscope/
Gregory