Вот простой пример:
using MonoTouch.CoreMotion;
//..
CMMotionManager motionManager;
private void StartGyro()
{
motionManager = new CMMotionManager();
motionManager.GyroUpdateInterval = 1/10;
if (motionManager.GyroAvailable)
{
motionManager.StartGyroUpdates(NSOperationQueue.MainQueue, GyroData_Received);
}
}
private void GyroData_Received(CMGyroData gyroData, NSError error)
{
Console.WriteLine("rotation rate x: {0}, y: {1}, z: {2}",
gyroData.RotationRate.x, gyroData.RotationRate.y, gyroData.RotationRate.z);
}
Каждое из трех значений свойства RotationRate экземпляра CMGyroData представляет собой величину угла поворота в секунду по каждой оси в радианах.