I have an Android 7 phone and I have written an Android application for recording the following sensor values:
Accelerometer (Sensor.TYPE_ACCELEROMETER) Linear acceleration (Sensor.TYPE_LINEAR_ACCELERATION) Gravity (Sensor.TYPE_GRAVITY) Gyroscope (Sensor.TYPE_GYROSCOPE) Magnetic Field (Sensor.TYPE_MAGNETIC_FIELD) Rotation Vector (Sensor.TYPE_ROTATION_VECTOR) Game Rotation Vector (Sensor.TYPE_GAME_ROTATION_VECTOR)
I think the linear acceleration is the accelerometer minus gravity.
Can somebody explain what the difference between accelerometer, gyroscope, rotation vector and game rotation vector is? I've read the description in the Android documentation but it is not clear to me.
Moreover, can I use the magnetic field recordings to calculate some motion or position measurements which I'm not getting from the other listed sensor measurements?