
Information provided herein is considered accurate however is not guaranteed. Memsense reserves the right to change specifications at any time, without notice.
4.3 Measurement
Accelerometer, gyro and magnetometer data is temperature compensated on the Nano IMU. The
payload element of the data packet contains accelerometer, gyro and magnetometer samples, which
must be converted to values that represent usable data (e.g. rotational rate, G-force, gauss). The data is
transmitted as signed (2’s complement) 16-bit integers. The following function must be used for
conversion of sample values:
Equation 1: result = raw_payload_value x digital_scale_factor
where result is the converted value in the appropriate units (e.g. deg/sec), raw_payload_value is the raw
component-specific value from the payload (e.g. accelerometer X), and digital_scale_factor is the
sensitivity expressed in engineering unit per bits. Digital scale factor values are listed in the Specification
Table 1 (NOTE: You must use the value specific to the dynamic range of the device you have purchased).
For example, if you have purchased a ±300 deg/s, ±2 G nIMU, the corresponding equations for the X
component would be:
value_x = raw_payload_value_xgyro x 1.3733 x 10-2 ⁰ /s /bit
value_x = raw_payload_value_xaccel x 9.1553 x 10-5 G/bit
where raw_payload_value_x is taken from the sample payload corresponding to the x-components of
the gyro and accelerometer, respectively. The resulting values have units of degrees/sec and G’s,
respectively.
Although the sensor data is temperature compensated, a customer’s application may require the use of
temperature information, therefore a temperature value obtained from each gyro is provided. The
temperature data provided in the payload requires a different conversion process. The data is transmitted
as signed (2’s complement) 16-bit integers. The following function must be used for conversion of
temperature sample values:
[Equation 2: result_deg_C = (raw_payload_value_xtemperature x digital_scale_factor) + 25]
where result is the converted value in degrees Celsius, raw_payload_value is the raw component-specific
value from the payload in bits and the digital scale factor is the temperature sensitivity expressed in
degrees C per bit (digital scale factors are listed in the Table 1 - Specifications).
In the cases where a custom dynamic range has been ordered, the digital scale factor can be found by
the following equation:
Equation 3: digital_scale_factor = dynamic_range x 4.57764 x 10-5
where digital scale factor is expressed in engineering units per bit and dynamic range is the unipolar
range for the specific sensor axis (e.g. ±0075 º/s then 75 º/s should be used for the dynamic range in
Equation 3).