I’ve been testing my gyro with a printf() statement, twisting it in my hand. I’m using a gyro function from the Killer Bees that is supposed to convert the degrees per second into degrees. It seems to be working well with one exception: the number (of degrees) constantly goes up so that it will begin at 0 and within 30 seconds without turning the gyro it will read 170. This doesn’t seem to fit the problems I’ve heard about concerning the temperature calibration (though I could be wrong about that). Does anyone have an idea about what might be wrong and/or how to fix it?
Try spinning the gyro randomly for 30 seconds and see if it still ends up at the same value after 30 seconds. If so you have a bad cable/connection/chip/SW setup.
If that works the way you expect it to its probably a calibration issue. Remember, your integration is only as good as the error you can hold with original signal.
We’ve never had any issues with the gyro driver and calibration routine found on www.kevin.org/frc . I suggest you try this if all else fails.