[Captivate Android Development] littlewierdo:
Maybe because they are working relatively well for most of us.

I checked the compass, it is within 3 degrees of accuracy (which is about what I would expect coming from a phone) and the accel. is working as well (I dont have actual test equipment to confirm its accuracy but my phone reports accurately when I 'tip' the phone and reports within reasonable accuracy that I am accelerating when in a vehicle - I even tested this while taking off on a plane last week because I was curious).

Now, if it is not accurate enough for you, consider getting equipment designed for accuracy. This is a cell phone. A warning should NOT have to be provided to tell you that your Captivate should not be used for extremely accurate measurements.

If on the other hand it is 'all jacked up', you may need to calibrate the compass. I dont know how to calibrate the accelerometer but the compass can be calibrated.

Before you start anything, set the display on the phone to stay on for at least 2 minutes before it turns off, it will make this all much less annoying.

Turn everything off that produces magnetic fields (TVs, microwaves, alarm clocks, anything with speakers, etc) and try to be outside 8 feet or so of any such devices.

Hit the market and grab any compass app, GPS Essentials has a compass built in.

Launch your compass app so that you are physically seeing the compass on the screen - if you grabbed gps essentials mentioned above, launch this and then tap Compass to launch the compass portion of the app. When calibrating, leave the compass running at all times and do NOT allow the phone to sleep. The phone will automatically calibrate if you perform the movements in one of the three methods below.

There are three methods to try.

Method 1

Hold the phone in your hand at about a 45 degree angle toward your face. Now, do a sideways 'figure 8' with the phone (something more akin to the infinity symbol). Here is a Youtube video demonstrating it.

http://www.youtube.com/watch?v=sP3d00Hr14o

Method 2

Place the phone on a flat surface and using one hand, slowly rotate the phone in a complete circle counter clock wise, three times, no faster than one full rotation every 5 seconds and no slower than one rotation every 10 seconds.

Pick the phone up in one hand (and try to keep the phone as level as possible) and flip the phone to the right so that the screen is facing toward the table and then flip again in the same direction so that you are looking at the screen. Do this three times at approximately 5-10 seconds per rotation.

Finally, flip the bottom of the phone upwards so that the screen is facing towards the table and then flip again so you are looking at the screen. Do this 3 times with approximately 5-10 seconds per rotation.

http://www.youtube.com/watch?v=oNJJPeoG8lQ&feature=related

Method 3

With the compass open, hold the phone vertically straight up and down with the screen toward you and hold for 5 seconds.

Tip the phone 90 degrees to the right so that the phone is horizontal (and the screen would normally switch to landscape mode) - the home button should be to the left - and hold for 5 seconds.

Flip the phone again to the right so the phone is upside down and hold for 5 seconds.

Flip again so that the phone hardware buttons are now to the right and hold for 5 seconds.

Flip again to the right so the hardware buttons are at the bottom again and hold for 5 seconds.

Now, turn the phone so that it is flat and the screen is facing horizontally toward the ground and hold for 5 seconds.

Then turn the phone so the screen is facing up, so now the back of the phone is horizontal with the ground.

(Skip ahead to 1 minute 40 seconds to see the movements).

http://www.youtube.com/watch?v=86yUpUt8U6s

ONE of these methods should work for you.

Oh, and for best results, it should be calibrated every day.