Sensor Data
Utilize your smartphone to record, save, and evaluate data collected from built-in sensors.
- Includes capabilities for simultaneous recordings from accelerometer, gyroscope, magnetic field, light, proximity, pressure, humidity and/or temperature sensors.
- Analyze raw data using interpolation, re-sampling, and Butterworth low-pass, high-pass, bandpass filtering options.
- Supports composite sensors such as rotation vectors, gravity, linear acceleration and uncalibrated sensors.
- Save data to tab-delimited txt files for further analysis.
- Identify device specific hardware with information provided for each sensor.
For more information on installation and usage, take a look at our Sensor Data User Guide.
Available for Android
Download from the Google Play Store.
supported Sensors
Accelerometer
An accelerometer measures the amount of acceleration, or the rate of change of velocity, for a body in relation to its own rest frame. The units are provided in meters per second squared (m/s2) or in relation to the force of Gravity (g's), where gravity on Earth is 9.81m/s2.
While accelerometers come in uni-axial or multi-axial varieties, most phone-based accelerometers are tri-axial (x,y,z), with the phone at rest providing values in relation to gravity, rather than reading 0.
Accelerometers can be used for many purposes, including the detection of motion and orientation. For a practical application using an accelerometer for gait analysis, take a look at the Gait Analyzer app.
Gyroscope
A gyroscope provides the rate of rotation (angular velocity, with units of rad/sec) around each of three orthogonal axes. Rotation is usually positive in the counter-clockwise direction.
Often used to maintain or measure orientation, gyroscopes are commonly used for maintaining stability or as part of guidance systems.
Magnetometer
The magnetometer can detect magnetic fields across all three physical axes (x, y, z), with the units of microTesla. This sensor is often called a compass, with uses found in map as well as metal detector applications.
Temperature
While most phones have a temperature sensor to monitor the phone/battery temperature, an additional thermometer sensor measures the ambient temperature in units of Celsius.
Light
The light sensor monitors the ambient light level or illumination in units of lux. This sensor is often used to adjust the brightness of the smartphone display, based on the amount of light in the vicinity.
Pressure
A barometer measures the ambient pressure in hectopascal (hPa - SI unit of presure ~= 102 pascals) or millibar (mbar - mainly used in Europe, with 1mbar = 100pascals). Uses include detection of weather changes and calculating altitude.
Humidity
This sensor measures the relative ambient humidity in percent. Used in weather apps, the humidity sensor can be used to monitor dewpoint, absolute, and relative humidity.
Absolute humidity is the amount of water content in air (mass of water vapor/mass of dry air in a volume of air), without consideration for temperature in units of g/kg. Relative humidity is the absolute humidity relative to the maximum possible humidity for a given temperature, where 100% is total saturation of water vapor in the air. The dew point is the saturation temperature for water in air.
Proximity
The proximity sensor measures how close an object is to the view screen of a device in units of cm (sometimes binary 1/0 for older models for close/far). Using an infrared LED and IR light detector, the sensor is commonly used for determining whether the phone is held to a person's ear. If yes, the touchscreen display is disabled to avoid unintended input.
Composite Sensors
Rotation Vector
The Rotation Vector provides orientation of the device based on a combination of the angle and axis, where the device is rotated through an angle θ around an axis (x,y,z). The magnitude of the rotation vector is sin(θ/2) and the direction is equal to the direction of the axis of rotation.
The reference coordinate system is defined as a direct orthonormal basis such that X is tangential to the ground roughly pointing East, Y is tangential to ground toward's magnetic North and Z points to the sky perpendicular to the ground.
The 5 values include: rotation (x*sin(θ/2), y*sin(θ/2), z*sin(θ/2), cos(θ/2)) and an estimate of heading accuracy in radians (-1 if unavailable).
Game Rotation Vector
The Game Rotation Vector provides orientation of the device based on a combination of the angle and axis, where the device is rotated through an angle θ around an axis (x,y,z). The magnitude of the rotation vector is sin(θ/2) and the direction is equal to the direction of the axis of rotation.
The 4 values include: rotation (x*sin(θ/2), y*sin(θ/2), z*sin(θ/2), cos(θ/2)) and is identical to the rotation vector, except without using the geomagnetic field, therefore Y does not point North, but will instead drift.
Linear Acceleration
This sensor provides a three dimensional acceleration, excluding gravity, in units of m/s2. At rest, the this sensor should report values of 0 in all axes. Linear Acceleration sensor + Gravity sensor = Acceleration obtained by accelerometer.
Gravity
This sensor provides a three dimensional vector indicating the magnitude and direction of gravity in units of m/s2. At rest, the values obtained from this sensor should be the same as the accelerometer sensor. Linear Acceleration sensor + Gravity sensor = Acceleration obtained by accelerometer.
Six Degree of Freedom
This composite sensor describes the rotation (as a quaternion) and translation of the device. With 15 output values, the event provides information about the change in rotation and translation since the device's previous pose. The 15 values are: rotation (x*sin(θ/2), y*sin(θ/2), z*sin(θ/2), cos(θ/2)), translation(x, y, z), with delta values for these 7 values, and the sequence number.