Hi, I am working on my own inactivity monitor and I am using now gyroscope sensor to get data.
My code:
public void StartGyroscope() { SensorSpeed speed = SensorSpeed.Default; Xamarin.Essentials.Gyroscope.Start(speed); GyroscopeReadData(); } private void GyroscopeReadData() { Xamarin.Essentials.Gyroscope.ReadingChanged += Gyroscope_ReadingChanged; } void Gyroscope_ReadingChanged(object sender, GyroscopeChangedEventArgs e) { var data = e.Reading; var accX = data.AngularVelocity.X.ToString(); var accY = data.AngularVelocity.Y.ToString(); var accZ = data.AngularVelocity.Z.ToString(); ... }
This is working good, but for me it is too fast. My variables accX, accY... changing aprox 10x per second. I read, that instead of Sensor.Speed.Default I can use int in milisecond, but when I try this:
Xamarin.Essentials.Gyroscope.Start(1000);
I get error:
cannot convert from 'int' to 'Xamarin.Essentials.SensorSpeed'
Maybe someone know, how to set this milisecond or how to simply get data from sensor every 1 second?