AD ADIS16480AMLZ

Ten Degrees of Freedom Inertial Sensor
with Dynamic Orientation Outputs
ADIS16480
Data Sheet
FEATURES
GENERAL DESCRIPTION
Dynamic angle outputs
Quaternion, Euler, rotation matrix
0.1° (pitch, roll) and 0.3° (yaw) static accuracy
Triaxial, digital gyroscope, ±450°/sec dynamic range
<±0.05° orthogonal alignment
6°/hr in-run bias stability
0.3°/√hr angular random walk
0.01% nonlinearity
Triaxial, digital accelerometer, ±10 g
Triaxial, delta angle and delta velocity outputs
Triaxial, digital magnetometer, ±2.5 gauss
Digital pressure sensor, 300 mbar to 1100 mbar
Adaptive extended Kalman filter
Automatic covariance computation
Programmable reference reorientation
Programmable sensor disturbance levels
Configurable event-driven controls
Factory-calibrated sensitivity, bias, and axial alignment
Calibration temperature range: −40°C to +70°C
SPI-compatible serial interface
Programmable operation and control
4 FIR filter banks, 120 configurable taps
Digital I/O: data-ready alarm indicator, external clock
Optional external sample clock input: up to 2.4 kHz
Single-command self-test
Single-supply operation: 3.0 V to 3.6 V
2000 g shock survivability
The ADIS16480 iSensor® device is a complete inertial system
that includes a triaxial gyroscope, a triaxial accelerometer, triaxial
magnetometer, pressure sensor, and an extended Kalman filter
(EKF) for dynamic orientation sensing. Each inertial sensor in
the ADIS16480 combines industry-leading iMEMS® technology
with signal conditioning that optimizes dynamic performance.
The factory calibration characterizes each sensor for sensitivity,
bias, alignment, and linear acceleration (gyroscope bias). As a
result, each sensor has its own dynamic compensation formulas
that provide accurate sensor measurements. The sensors are
further correlated and processed in the extended Kalman filter,
which provides both automatic adaptive filtering, as well as
user-programmable tuning. Thus, in addition to the IMU
outputs, the device provides stable quaternion, Euler, and
rotation matrix outputs in the local navigation frame.
The ADIS16480 provides a simple, cost-effective method for
integrating accurate, multiaxis inertial sensing into industrial
systems, especially when compared with the complexity and
investment associated with discrete designs. All necessary motion
testing and calibration are part of the production process at
the factory, greatly reducing system integration time. Tight
orthogonal alignment simplifies inertial frame alignment in
navigation systems. The SPI and register structure provide a
simple interface for data collection and configuration control.
The ADIS16480 uses the same footprint and connector system as
the ADIS16488, which greatly simplifies the upgrade process. It
comes in a module that is approximately 47 mm × 44 mm ×
14 mm and has a standard connector interface. The ADIS16480
provides an operating temperature range of −40°C to +85°C.
APPLICATIONS
Platform stabilization, control, and pointing
Navigation
Instrumentation
Robotics
FUNCTIONAL BLOCK DIAGRAM
DIO1 DIO2 DIO3 DIO4 RST
SELF-TEST
I/O
VDD
POWER
MANAGEMENT
ALARMS
GND
TRIAXIAL
GYRO
TRIAXIAL
ACCEL
CONTROLLER
TRIAXIAL
MAGN
CALIBRATION
EXTENDED
KALMAN
FILTER
OUTPUT
DATA
REGISTERS
DIGITAL
FILTERING
SCLK
SPI
USER
CONTROL
REGISTERS
PRESSURE
DIN
DOUT
CLOCK
ADIS16480
VDD
VDDRTC
10278-001
TEMP
CS
Figure 1.
Rev. 0
Information furnished by Analog Devices is believed to be accurate and reliable. However, no
responsibility is assumed by Analog Devices for its use, nor for any infringements of patents or other
rights of third parties that may result from its use. Specifications subject to change without notice. No
license is granted by implication or otherwise under any patent or patent rights of Analog Devices.
Trademarks and registered trademarks are the property of their respective owners.
One Technology Way, P.O. Box 9106, Norwood, MA 02062-9106, U.S.A.
Tel: 781.329.4700
www.analog.com
Fax: 781.461.3113
©2012 Analog Devices, Inc. All rights reserved.
ADIS16480
Data Sheet
TABLE OF CONTENTS
Features .............................................................................................. 1
Averaging/Decimation Filter .................................................... 24
Applications ....................................................................................... 1
Magnetometer/Barometer......................................................... 24
General Description ......................................................................... 1
FIR Filter Banks .......................................................................... 25
Functional Block Diagram .............................................................. 1
Extended Kalman Filter ................................................................. 27
Revision History ............................................................................... 2
Algorithm .................................................................................... 27
Specifications..................................................................................... 3
Covariance Terms....................................................................... 27
Timing Specifications .................................................................. 6
Reference Frame ......................................................................... 28
Absolute Maximum Ratings ............................................................ 7
Reference Transformation Matrix ............................................ 28
ESD Caution .................................................................................. 7
Declination .................................................................................. 29
Pin Configuration and Function Descriptions ............................. 8
Adaptive Operation .................................................................... 29
Typical Performance Characteristics ............................................. 9
Calibration ....................................................................................... 30
Basic Operation............................................................................... 10
Gyroscopes .................................................................................. 30
Register Structure ....................................................................... 10
Accelerometers ........................................................................... 31
SPI Communication ................................................................... 11
Magnetometers ........................................................................... 31
Device Configuration ................................................................ 11
Barometers .................................................................................. 33
Reading Sensor Data .................................................................. 11
Restoring Factory Calibration .................................................. 33
User Registers .................................................................................. 12
Point of Percussion Alignment ................................................. 33
Output Data Registers .................................................................... 16
Alarms .............................................................................................. 34
Inertial Sensor Data Format...................................................... 16
Static Alarm Use ......................................................................... 34
Rotation Rate (Gyroscope) ........................................................ 16
Dynamic Alarm Use .................................................................. 34
Acceleration................................................................................. 17
System Controls .............................................................................. 36
Delta Angles ................................................................................ 17
Global Commands ..................................................................... 36
Delta Velocity .............................................................................. 18
Memory Management ............................................................... 36
Magnetometers ........................................................................... 19
General-Purpose I/O ................................................................. 37
Roll, Pitch, Yaw Angles .............................................................. 19
Power Management.................................................................... 37
Barometer .................................................................................... 21
Applications Information .............................................................. 39
Internal Temperature ................................................................. 21
Prototype Interface Board ......................................................... 39
Status/Alarm Indicators ............................................................. 22
Installation Tips .......................................................................... 39
Firmware Revision...................................................................... 23
Outline Dimensions ....................................................................... 40
Product Identification ................................................................ 23
Ordering Guide .......................................................................... 40
Digital Signal Processing ............................................................... 24
Gyroscopes/Accelerometers...................................................... 24
REVISION HISTORY
5/12—Revision 0: Initial Version
Rev. 0 | Page 2 of 40
Data Sheet
ADIS16480
SPECIFICATIONS
TA = 25°C, VDD = 3.3 V, angular rate = 0°/sec, dynamic range = ±450°/sec ± 1 g, 300 mbar to 1100 mbar, unless otherwise noted.
Table 1.
Parameter
ANGLE OUTPUTS
Euler Dynamic Range
Sensitivity
Static Accuracy 1
Dynamic Accuracy1
GYROSCOPES
Dynamic Range
Sensitivity
Initial Sensitivity Tolerance
Sensitivity Temperature Coefficient
Misalignment
Nonlinearity
Initial Bias Error
In-Run Bias Stability
Angular Random Walk
Bias Temperature Coefficient
Linear Acceleration Effect on Bias
Output Noise
Rate Noise Density
3 dB Bandwidth
Sensor Resonant Frequency
ACCELEROMETERS
Dynamic Range
Sensitivity
Initial Sensitivity Tolerance
Sensitivity Temperature Coefficient
Misalignment
Nonlinearity
Initial Bias Error
In-Run Bias Stability
Velocity Random Walk
Bias Temperature Coefficient
Output Noise
Noise Density
3 dB Bandwidth
Sensor Resonant Frequency
Test Conditions/Comments
Min
Typ
Yaw and roll (Euler)
Pitch (Euler)
Rotation matrix, quaternion
Max
Unit
±180
±90
±180
Degrees
Degrees
Degree
Degrees/LSB
Degrees
Degrees
Degrees
Degrees
±480
°/sec
°/sec/LSB
%
ppm/°C
Degrees
Degrees
% of FS
°/sec
°/hr
°/√hr
°/sec/°C
°/sec/g
°/sec rms
°/sec/√Hz rms
Hz
kHz
0.0055
0.1
0.3
0.3
0.5
Pitch and roll
Yaw
Pitch and roll
Yaw
±450
x_GYRO_OUT and x_GYRO_LOW (32-bit)
3.052 × 10−7
−40°C ≤ TA ≤ +70°C, 1 σ
Axis to axis
Axis to frame (package)
Best-fit straight line, FS = 450°/sec
±35
±0.05
±1.0
0.01
±0.2
6.25
0.3
±0.0025
0.009
0.16
0.0066
330
18
±1
1σ
1σ
−40°C ≤ TA ≤ +70°C, 1 σ
Any axis, 1 σ (CONFIG[7] = 1)
No filtering
f = 25 Hz, no filtering
Each axis
±10
x_ACCL_OUT and x_ACCL_LOW (32-bit)
1.221 × 10−8
−40°C ≤ TA ≤ +85°C, 1 σ
Axis to axis
Axis to frame (package)
Best-fit straight line, ±10 g
±25
±0.035
±1.0
0.1
±16
0.1
0.029
±0.1
1.5
0.067
330
5.5
±0.5
1σ
1σ
−40°C ≤ TA ≤ +85°C
No filtering
f = 25 Hz, no filtering
Rev. 0 | Page 3 of 40
g
g/LSB
%
ppm/°C
Degrees
Degrees
% of FS
mg
mg
m/sec/√hr
mg/°C
mg rms
mg/√Hz rms
Hz
kHz
ADIS16480
Parameter
MAGNETOMETER
Dynamic Range
Sensitivity
Initial Sensitivity Tolerance
Sensitivity Temperature Coefficient
Misalignment
Nonlinearity
Initial Bias Error
Bias Temperature Coefficient
Output Noise
Noise Density
3 dB Bandwidth
BAROMETER
Pressure Range
Sensitivity
Error with Supply
Total Error
Relative Error 2
Linearity 3
Linear-g Sensitivity
Noise
TEMPERATURE SENSOR
Scale Factor
LOGIC INPUTS 4
Input High Voltage, VIH
Input Low Voltage, VIL
CS Wake-Up Pulse Width
Logic 1 Input Current, IIH
Logic 0 Input Current, IIL
All Pins Except RST
RST Pin
Input Capacitance, CIN
DIGITAL OUTPUTS
Output High Voltage, VOH
Output Low Voltage, VOL
FLASH MEMORY
Data Retention 6
FUNCTIONAL TIMES 7
Power-On Start-Up Time
Reset Recovery Time
Sleep Mode Recovery Time
Flash Memory Update Time
Flash Memory Test Time
Automatic Self-Test Time
CONVERSION RATE
Initial Clock Accuracy
Temperature Coefficient
Sync Input Clock 8
Data Sheet
Test Conditions/Comments
Min
Typ
Max
±2.5
0.1
±2
1σ
Axis to axis
Axis to frame (package)
Best fit straight line
0 gauss stimulus
−40°C ≤ TA ≤ +85°C, 1 σ
No filtering
f = 25 Hz, no filtering
Extended
BAROM_OUT and BAROM_LOW (32-bit)
275
0.25
0.5
0.5
±15
0.3
0.45
0.054
330
300
10
−40°C to +85°C
Best fit straight line, FS = 1100 mbar
−40°C to +85°C
±1 g, 1 σ
Output = 0x0000 at 25°C (±5°C)
1100
1200
6.1 × 10−7
0.04
4.5
2.5
0.1
0.2
0.005
0.025
0.00565
°C/LSB
0.8
20
VIH = 3.3 V
VIL = 0 V
10
10
0.33
10
2.4
0.4
100,000
20
400 ± 160
400 ± 160
700
1.1
53
12
2.46
0.02
40
Using internal clock, 100 SPS
0.7
Rev. 0 | Page 4 of 40
gauss
mgauss/LSB
%
ppm/°C
Degrees
Degrees
% of FS
mgauss
mgauss/°C
mgauss
mgauss/√Hz
Hz
mbar
mbar
mbar/LSB
%/V
mbar
mbar
% of FS
% of FS
mbar/g
mbar rms
2.0
ISOURCE = 0.5 mA
ISINK = 2.0 mA
Endurance 5
TJ = 85°C
Time until inertial sensor data is available
Unit
6.8
2.4
V
V
µs
µA
µA
mA
pF
V
V
Cycles
Years
ms
ms
µs
sec
ms
ms
kSPS
%
ppm/°C
kHz
Data Sheet
Parameter
POWER SUPPLY, VDD
Power Supply Current 9
POWER SUPPLY, VDDRTC
Real-Time Clock Supply Current
ADIS16480
Test Conditions/Comments
Operating voltage range
Normal mode, VDD = 3.3 V, µ ± σ
Sleep mode, VDD = 3.3 V
Power-down mode, VDD = 3.3 V
Operating voltage range
Normal mode, VDDRTC = 3.3 V
Min
3.0
Typ
Max
3.6
254
12.2
45
3.0
3.6
13
Unit
V
mA
mA
µA
V
µA
Accuracy specifications assume calibration of accelerometers and magnetometers to address sensor drift and local influences on magnetic fields.
The relative error assumes that the initial error, at 25°C, is corrected in the end application.
Linearity errors assume a full scale (FS) of 1000 mbar.
4
The digital I/O signals are driven by an internal 3.3 V supply, and the inputs are 5 V tolerant.
5
Endurance is qualified as per JEDEC Standard 22, Method A117, and measured at −40°C, +25°C, +85°C, and +125°C.
6
The data retention specification assumes a junction temperature (TJ) of 85°C as per JEDEC Standard 22, Method A117. Data retention lifetime decreases with TJ.
7
These times do not include thermal settling, internal filter response times, or EKF start-up times (~825 ms), which may affect overall accuracy, with respect to time.
8
The device functions at clock rates below 0.7 kHz, but at reduced performance levels.
9
Supply current transients can reach 450 mA for 400 µs during start-up and reset recovery.
1
2
3
Rev. 0 | Page 5 of 40
ADIS16480
Data Sheet
TIMING SPECIFICATIONS
TA = 25°C, VDD = 3.3 V, unless otherwise noted.
Table 2.
Description
Serial clock
Stall period between data
Serial clock low period
Serial clock high period
Chip select to clock edge
tDAV
tDSU
tDHD
tDR, tDF
tDSOE
tHD
tDSHI
t1
t2
t3
DOUT valid after SCLK edge
DIN setup time before SCLK rising edge
DIN hold time after SCLK rising edge
DOUT rise/fall times, ≤100 pF loading
CS assertion to data out active
SCLK edge to data out invalid
CS deassertion to data out high impedance
Input sync pulse width
Input sync to data-ready output
Input sync period
1
Normal Mode
Typ
Min1
0.01
2
31
31
32
Parameter
fSCLK
tSTALL
tCLS
tCHS
tCS
Max1
15
Unit
MHz
μs
ns
ns
ns
10
ns
ns
ns
ns
ns
ns
ns
μs
μs
μs
2
2
3
8
11
0
0
0
5
9
490
417
Guaranteed by design and characterization, but not tested in production.
Timing Diagrams
CS
tCHS
tCS
1
2
3
tCLS
4
5
6
15
16
SCLK
DOUT
MSB
tDAV
DB14
tHD
DB13
tDSU
DIN
R/W
A6
DB12
DB11
A4
A3
tDSHI
DB10
DB2
DB1
LSB
tDHD
A5
A2
D2
D1
10278-002
tDSOE
LSB
Figure 2. SPI Timing and Sequence
tSTALL
10278-003
CS
SCLK
Figure 3. Stall Time and Data Rate
t3
t2
t1
SYNC
CLOCK (CLKIN)
OUTPUT
REGISTERS
DATA VALID
DATA VALID
Figure 4. Input Clock Timing Diagram
Rev. 0 | Page 6 of 40
10278-004
DATA
READY
Data Sheet
ADIS16480
ABSOLUTE MAXIMUM RATINGS
Table 3.
Parameter
Acceleration
Any Axis, Unpowered
Any Axis, Powered
VDD to GND
Digital Input Voltage to GND
Digital Output Voltage to GND
Operating Temperature Range
Storage Temperature Range
Barometric Pressure
1
Rating
2000 g
2000 g
−0.3 V to +3.6 V
−0.3 V to VDD + 0.2 V
−0.3 V to VDD + 0.2 V
−40°C to +85°C
−65°C to +150°C1
2 bar
Stresses above those listed under Absolute Maximum Ratings
may cause permanent damage to the device. This is a stress
rating only; functional operation of the device at these or any
other conditions above those indicated in the operational
section of this specification is not implied. Exposure to absolute
maximum rating conditions for extended periods may affect
device reliability.
Table 4. Package Characteristics
Package Type
24-Lead Module (ML-24-6)
Extended exposure to temperatures that are lower than −40°C or higher
than +105°C can adversely affect the accuracy of the factory calibration.
ESD CAUTION
Rev. 0 | Page 7 of 40
θJA
22.8°C/W
θJC
10.1°C/W
Device
Weight
48 g
ADIS16480
Data Sheet
PIN CONFIGURATION AND FUNCTION DESCRIPTIONS
ADIS16480
DNC
DNC
DNC
GND
VDD
VDD
RST
CS
DOUT
DIO4
20
18
16
14
12
10
8
6
4
2
23
21
19
17
15
13
11
9
7
5
3
1
DNC
DNC
GND
GND
VDD
DIO2
DIO1
DIN
SCLK
NOTES
1. THIS REPRESENTATION DISPLAYS THE TOP VIEW PINOUT
FOR THE MATING SOCKET CONNECTOR.
2. THE ACTUAL CONNECTOR PINS ARE NOT VISIBLE FROM THE
TOP VIEW.
3. MATING CONNECTOR: SAMTEC CLM-112-02 OR EQUIVALENT.
4. DNC = DO NOT CONNECT TO THESE PINS.
10278-005
DIO3
DNC
22
DNC
DNC
24
VDDRTC
TOP VIEW
(Not to Scale)
10278-006
Figure 5. Mating Connector Pin Assignments
PIN 23
PIN 1
Figure 6. Axial Orientation (Top Side Facing Up)
Table 5. Pin Function Descriptions
Pin No.
1
2
3
4
5
6
7
8
9
10, 11, 12
13, 14, 15
16 to 22, 24
23
Mnemonic
DIO3
DIO4
SCLK
DOUT
DIN
CS
DIO1
RST
DIO2
VDD
GND
DNC
VDDRTC
Type
Input/output
Input/output
Input
Output
Input
Input
Input/output
Input
Input/output
Supply
Supply
Not applicable
Supply
Description
Configurable Digital Input/Output.
Configurable Digital Input/Output.
SPI Serial Clock.
SPI Data Output. Clocks output on SCLK falling edge.
SPI Data Input. Clocks input on SCLK rising edge.
SPI Chip Select.
Configurable Digital Input/Output.
Reset.
Configurable Digital Input/Output.
Power Supply.
Power Ground.
Do Not Connect to These Pins.
Real-Time Clock Power Supply.
Rev. 0 | Page 8 of 40
Data Sheet
ADIS16480
TYPICAL PERFORMANCE CHARACTERISTICS
0.8
1000
AVERAGE
GYRO SCALE ERROR (% FS)
100
+1σ
10
–1σ
0.1
1
10
100
1000
10000
INTEGRATION PERIOD (Seconds)
Figure 7. Gyroscope Allan Variance, 25°C
0.001
0.2
0
–0.2
–0.4
–0.6
–0.8
–40 –30 –20 –10
10278-007
1
0.01
INITIAL ERROR = ±0.5%
0.4 TEMPCO = 35ppm/°C
0
10
20
30
40
50
60
70
80
TEMPERATURE (°C)
10278-009
ROOT ALLAN VARIANCE (°/Hour)
0.6
Figure 9. Gyroscope Scale (Sensitivity) Error and Hysteresis vs. Temperature
0.6
AVERAGE
INITIAL ERROR = ±0.2°/sec
0.5 TEMPCO = 0.0025°/sec/°C
GYRO BIAS ERROR (°/sec)
ROOT ALLAN VARIANCE (g)
0.4
+1σ
0.0001
–1σ
0.3
0.2
0.1
0
–0.1
–0.2
–0.3
–0.4
1
10
100
1000
INTEGRATION PERIOD (Seconds)
10000
Figure 8. Accelerometer Allan Variance, 25°C
–0.6
–40 –30 –20 –10
0
10
20
30
40
50
60
70
80
TEMPERATURE (°C)
Figure 10. Gyroscope Bias Error and Hysteresis vs. Temperature
Rev. 0 | Page 9 of 40
10278-010
0.1
10278-008
–0.5
0.00001
0.01
ADIS16480
Data Sheet
BASIC OPERATION
The register structure and SPI port provide a bridge between
the sensor processing system and an external, master processor.
It contains both output data and control registers. The output
data registers include the latest sensor data, a real-time clock, error
flags, alarm flags, and identification data. The control registers
include sample rate, filtering, input/output, alarms, calibration,
EKF tuning, and diagnostic configuration options. All
communication between the ADIS16480 and an external
processor involves either reading or writing to one of the user
registers.
TRIAXIS
GYRO
+3.3V
TRIAXIS
ACCEL
VDD
10
SYSTEM
PROCESSOR
SPI MASTER
11
12
TRIAXIS
MAGN
23
ADIS16480
SS
6
CS
SCLK
3
SCLK
MOSI
5
DIN
MISO
4
DOUT
IRQ
9
DIO2
BARO
OUTPUT
REGISTERS
CONTROLLER
CONTROL
REGISTERS
TEMP
SENSOR
Figure 12. Basic Operation
14
15
10278-011
13
Figure 11. Electrical Connection Diagram
Table 6. Generic Master Processor Pin Names and Functions
Mnemonic
Function
SS
IRQ
MOSI
MISO
SCLK
Slave select
Interrupt request
Master output, slave input
Master input, slave output
Serial clock
The register structure uses a paged addressing scheme that is
composed of 13 pages, with each one containing 64 register
locations. Each register is 16 bits wide, with each byte having
its own unique address within that page’s memory map. The SPI
port has access to one page at a time, using the bit sequence in
Figure 17. Select the page to activate for SPI access by writing
its code to the PAGE_ID register. Read the PAGE_ID register
to determine which page is currently active. Table 8 displays the
PAGE_ID contents for each page, along with their basic functions.
The PAGE_ID register is located at Address 0x00 on every page.
Table 8. User Register Page Assignments
Embedded processors typically use control registers to configure
their serial ports for communicating with SPI slave devices
such as the ADIS16480. Table 7 provides a list of settings, which
describe the SPI protocol of the ADIS16480. The initialization
routine of the master processor typically establishes these settings
using firmware commands to write them into its serial control
registers.
Table 7. Generic Master Processor SPI Settings
Processor Setting
Master
SCLK ≤ 15 MHz
SPI Mode 3
MSB-First Mode
16-Bit Mode
DSP
10278-012
I/O LINES ARE COMPATIBLE WITH
3.3V LOGIC LEVELS
REGISTER STRUCTURE
SPI
The ADIS16480 is an autonomous sensor system that starts up
on its own when it has a valid power supply. After running through
its initialization process, it begins sampling, processing, and
loading calibrated sensor data into the output registers, which
are accessible using the SPI port. The SPI port typically connects to
a compatible port on an embedded processor, using the connection
diagram in Figure 11. The four SPI signals facilitate synchronous,
serial data communication. Connect RST (see Table 5) to VDD
or leave it open for normal operation. The factory default
configuration provides users with a data-ready signal on the
DIO2 pin, which pulses high when new data is available in
the output data registers.
Description
The ADIS16480 operates as a slave
Maximum serial clock rate
CPOL = 1 (polarity), and CPHA = 1 (phase)
Bit sequence
Shift register/data length
Page
0
1
2
3
4
5
6
7
8
9
10
11
12
Rev. 0 | Page 10 of 40
PAGE_ID
0x00
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
0x0A
0x0B
0x0C
Function
Output data, clock, identification
Reserved
Calibration
Control: sample rate, filtering, I/O, alarms
Serial number
FIR Filter Bank A Coefficient 0 to Coefficient 59
FIR Filter Bank A, Coefficient 60 to Coefficient 119
FIR Filter Bank B, Coefficient 0 to Coefficient 59
FIR Filter Bank B, Coefficient 60 to Coefficient 119
FIR Filter Bank C, Coefficient 0 to Coefficient 59
FIR Filter Bank C, Coefficient 60 to Coefficient 119
FIR Filter Bank D, Coefficient 0 to Coefficient 59
FIR Filter Bank D, Coefficient 60 to Coefficient 119
Data Sheet
ADIS16480
SPI COMMUNICATION
MANUAL
FLASH
BACKUP
The SPI port supports full duplex communication, as shown in
Figure 17, which enables external processors to write to DIN
while reading DOUT, if the previous command was a read
request. Figure 17 provides a guideline for the bit coding on
both DIN and DOUT.
NONVOLATILE
FLASH MEMORY
VOLATILE
SRAM
(NO SPI ACCESS)
SPI ACCESS
10278-014
START-UP
RESET
DEVICE CONFIGURATION
Figure 14. SRAM and Flash Memory Diagram
The SPI provides write access to the control registers, one byte at
a time, using the bit assignments shown in Figure 17. Each register
has 16 bits, where Bits[7:0] represent the lower address (listed in
Table 9) and Bits[15:8] represent the upper address. Write to the
lower byte of a register first, followed by a write to its upper
byte. The only register that changes with a single write to its
lower byte is the PAGE_ID register. For a write command, the
first bit in the DIN sequence is set to 1. Address Bits[A6:A0]
represent the target address, and Data Command
Bits[DC7:DC0] represent the data being written to the location.
Figure 13 provides an example of writing 0x03 to Address 0x00
(PAGE_ID [7:0]), using DIN = 0x8003. This write command
activates the control page for SPI access.
READING SENSOR DATA
CS
SCLK
DIN
10278-013
DIN = 1000 0000 0000 0011 = 0x8003, WRITES 0x03 TO ADDRESS 0x00
0x1A00
DOUT
Figure 13. SPI Sequence for Activating the Control Page (DIN = 0x8003)
0x1800
NEXT
ADDRESS
Z_GYRO_OUT
Z_GYRO_LOW
Figure 15. SPI Read Example
Dual Memory Structure
Figure 16 provides an example of the four SPI signals when reading
PROD_ID in a repeating pattern. This is a good pattern to use
for troubleshooting the SPI interface setup and communications
because the contents of PROD_ID are predefined and stable.
Writing configuration data to a control register updates its SRAM
contents, which are volatile. After optimizing each relevant control
register setting in a system, use the manual flash update command,
which is located in GLOB_CMD[3] on Page 3 of the register map.
Activate the manual flash update command by turning to Page 3
(DIN = 0x8003) and setting GLOB_CMD[3] = 1 (DIN = 0x8208,
then DIN = 0x8300). Make sure that the power supply is within
specification for the entire 1100 ms processing time for a flash
memory update. Table 9 provides a memory map for all of
the user registers, which includes a column of flash backup
information. A yes in this column indicates that a register
has a mirror location in flash and, when backed up properly,
automatically restores itself during startup or after a reset.
Figure 14 provides a diagram of the dual memory structure
used to manage operation and store critical user settings.
CS
SCLK
DIN
DIN = 0111 1110 0000 0000 = 0x7E00
DOUT
DOUT = 0100 0000 0110 0000 = 0x4060 = 16,480 (PROD_ID)
Figure 16. SPI Read Example, Second 16-Bit Sequence
CS
DIN
DOUT
R/W
D15
A6
A5
A4
A3
A2
A1
A0
DC7
DC6
DC5
DC4
DC3
DC2
DC1
DC0
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
R/W
D15
A6
A5
D14
D13
NOTES
1. DOUT BITS ARE PRODUCED ONLY WHEN THE PREVIOUS 16-BIT DIN SEQUENCE STARTS WITH R/W = 0.
2. WHEN CS IS HIGH, DOUT IS IN A THREE-STATE, HIGH IMPEDANCE MODE, WHICH ALLOWS MULTIFUNCTIONAL USE OF THE LINE
FOR OTHER DEVICES.
Figure 17. SPI Communication Bit Sequence
Rev. 0 | Page 11 of 40
10278-017
SCLK
10278-016
DIN
10278-015
The ADIS16480 automatically starts up and activates Page 0 for
data register access. Write 0x00 to the PAGE_ID register (DIN =
0x8000) to activate Page 0 for data access after accessing any other
page. A single register read requires two 16-bit SPI cycles. The
first cycle requests the contents of a register using the bit assignments
in Figure 17, and then the register contents follow DOUT during
the second sequence. The first bit in a DIN command is zero,
followed by either the upper or lower address for the register.
The last eight bits are don’t care, but the SPI requires the full set
of 16 SCLKs to receive the request. Figure 15 includes two register
reads in succession, which starts with DIN = 0x1A00 to request
the contents of the Z_GYRO_OUT register and follows with
0x1800 to request the contents of the Z_GYRO_LOW register.
ADIS16480
Data Sheet
USER REGISTERS
Table 9. User Register Memory Map (N/A = Not Applicable)
Name
PAGE_ID
Reserved
SEQ_CNT
SYS_E_FLAG
DIAG_STS
ALM_STS
TEMP_OUT
X_GYRO_LOW
X_GYRO_OUT
Y_GYRO_LOW
Y_GYRO_OUT
Z_GYRO_LOW
Z_GYRO_OUT
X_ACCL_LOW
X_ACCL_OUT
Y_ACCL_LOW
Y_ACCL_OUT
Z_ACCL_LOW
Z_ACCL_OUT
X_MAGN_OUT
Y_MAGN_OUT
Z_MAGN_OUT
BAROM_LOW
BAROM_OUT
Reserved
X_DELTANG_LOW
X_DELTANG_OUT
Y_DELTANG_LOW
Y_DELTANG_OUT
Z_DELTANG_LOW
Z_DELTANG_OUT
X_DELTVEL_LOW
X_DELTVEL_OUT
Y_DELTVEL_LOW
Y_DELTVEL_OUT
Z_DELTVEL_LOW
Z_DELTVEL_OUT
Reserved
Q0_C11_OUT
Q1_C12_OUT
Q2_C13_OUT
Q3_C21_OUT
C22_OUT
ROLL_C23_OUT
PITCH_C31_OUT
YAW_C32_OUT
C33_OUT
Reserved
R/W
R/W
N/A
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
R
N/A
R
R
R
R
R
R
R
R
R
R
R
R
N/A
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
N/A
Flash
No
N/A
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
N/A
No
No
No
No
No
No
No
No
No
No
No
No
N/A
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
N/A
PAGE_ID
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
Address
0x00
0x02 to 0x04
0x06
0x08
0x0A
0x0C
0x0E
0x10
0x12
0x14
0x16
0x18
0x1A
0x1C
0x1E
0x20
0x22
0x24
0x26
0x28
0x2A
0x2C
0x2E
0x30
0x32 to 0x3E
0x40
0x42
0x44
0x46
0x48
0x4A
0x4C
0x4E
0x50
0x52
0x54
0x56
0x58
0x60
0x62
0x64
0x66
0x68
0x6A
0x6C
0x6E
0x70
0x72 to 0x76
Default
0x00
N/A
N/A
0x0000
0x0000
0x0000
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
Register Description
Page identifier
Reserved
Sequence counter
Output, system error flags
Output, self-test error flags
Output, alarm error flags
Output, temperature
Output, x-axis gyroscope, low word
Output, x-axis gyroscope, high word
Output, y-axis gyroscope, low word
Output, y-axis gyroscope, high word
Output, z-axis gyroscope, low word
Output, z-axis gyroscope, high word
Output, x-axis accelerometer, low word
Output, x-axis accelerometer, high word
Output, y-axis accelerometer, low word
Output, y-axis accelerometer, high word
Output, z-axis accelerometer, low word
Output, z-axis accelerometer, high word
Output, x-axis magnetometer, high word
Output, y-axis magnetometer, high word
Output, z-axis magnetometer, high word
Output, barometer, low word
Output, barometer, high word
Reserved
Output, x-axis delta angle, low word
Output, x-axis delta angle, high word
Output, y-axis delta angle, low word
Output, y-axis delta angle, high word
Output, z-axis delta angle, low word
Output, z-axis delta angle, high word
Output, x-axis delta velocity, low word
Output, x-axis delta velocity, high word
Output, y-axis delta velocity, low word
Output, y-axis delta velocity, high word
Output, z-axis delta velocity, low word
Output, z-axis delta velocity, high word
Reserved
Quaternion, q0 or rotation matrix, C11
Quaternion, q1 or rotation matrix, C12
Quaternion, q2 or rotation matrix, C13
Quaternion, q3 or rotation matrix, C21
Rotation matrix, C22
Euler angle, pitch axis, or rotation matrix, C23
Euler angle, roll axis, or rotation matrix, C31
Euler angle, yaw axis, or rotation matrix, C32
Rotation matrix, C33
Reserved
Rev. 0 | Page 12 of 40
Format
N/A
N/A
Table 68
Table 59
Table 60
Table 61
Table 57
Table 14
Table 10
Table 15
Table 11
Table 16
Table 12
Table 21
Table 17
Table 22
Table 18
Table 23
Table 19
Table 38
Table 39
Table 40
Table 56
Table 54
N/A
Table 28
Table 24
Table 29
Table 25
Table 30
Table 26
Table 35
Table 31
Table 36
Table 32
Table 37
Table 33
N/A
Table 42
Table 43
Table 44
Table 45
Table 46
Table 47
Table 48
Table 49
Table 50
N/A
Data Sheet
Name
TIME_MS_OUT
TIME_DH_OUT
TIME_YM_OUT
PROD_ID
Reserved
PAGE_ID
Reserved
X_GYRO_SCALE
Y_GYRO_SCALE
Z_GYRO_SCALE
X_ACCL_SCALE
Y_ACCL_SCALE
Z_ACCL_SCALE
XG_BIAS_LOW
XG_BIAS_HIGH
YG_BIAS_LOW
YG_BIAS_HIGH
ZG_BIAS_LOW
ZG_BIAS_HIGH
XA_BIAS_LOW
XA_BIAS_HIGH
YA_BIAS_LOW
YA_BIAS_HIGH
ZA_BIAS_LOW
ZA_BIAS_HIGH
HARD_IRON_X
HARD_IRON_Y
HARD_IRON_Z
SOFT_IRON_S11
SOFT_IRON_S12
SOFT_IRON_S13
SOFT_IRON_S21
SOFT_IRON_S22
SOFT_IRON_S23
SOFT_IRON_S31
SOFT_IRON_S32
SOFT_IRON_S33
BR_BIAS_LOW
BR_BIAS_HIGH
Reserved
REFMTX_R11
REFMTX_R12
REFMTX_R13
REFMTX_R21
REFMTX_R22
REFMTX_R23
REFMTX_R31
REFMTX_R32
REFMTX_R33
USER_SCR_1
USER_SCR_2
USER_SCR_3
USER_SCR_4
ADIS16480
R/W
R
R
R
R
N/A
R/W
N/A
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
N/A
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
Flash
Yes
Yes
Yes
Yes
N/A
No
N/A
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
N/A
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
PAGE_ID
0x00
0x00
0x00
0x00
0x01
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
0x02
Address
0x78
0x7A
0x7C
0x7E
0x00 to 0x7E
0x00
0x02
0x04
0x06
0x08
0x0A
0x0C
0x0E
0x10
0x12
0x14
0x16
0x18
0x1A
0x1C
0x1E
0x20
0x22
0x24
0x26
0x28
0x2A
0x2C
0x2E
0x30
0x32
0x34
0x36
0x38
0x3A
0x3C
0x3E
0x40
0x42
0x44 to 0x60
0x62
0x64
0x66
0x68
0x6A
0x6C
0x6E
0x70
0x72
0x74
0x76
0x78
0x7A
Default
N/A
N/A
N/A
0x4060
N/A
0x00
N/A
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
N/A
0x7FFF
0x0000
0x0000
0x0000
0x7FFF
0x0000
0x0000
0x0000
0x7FFF
0x0000
0x0000
0x0000
0x0000
Register Description
Factory configuration time: minutes/seconds
Factory configuration date/time: day/hour
Factory configuration date: year/month
Output, product identification (16,480)
Reserved
Page identifier
Reserved
Calibration, scale, x-axis gyroscope
Calibration, scale, y-axis gyroscope
Calibration, scale, z-axis gyroscope
Calibration, scale, x-axis accelerometer
Calibration, scale, y-axis accelerometer
Calibration, scale, z-axis accelerometer
Calibration, offset, gyroscope, x-axis, low word
Calibration, offset, gyroscope, x-axis, high word
Calibration, offset, gyroscope, y-axis, low word
Calibration, offset, gyroscope, y-axis, high word
Calibration, offset, gyroscope, z-axis, low word
Calibration, offset, gyroscope, z-axis, high word
Calibration, offset, accelerometer, x-axis, low word
Calibration, offset, accelerometer, x-axis, high word
Calibration, offset, accelerometer, y-axis, low word
Calibration, offset, accelerometer, y-axis, high word
Calibration, offset, accelerometer, z-axis, low word
Calibration, offset, accelerometer, z-axis, high word
Calibration, hard iron, magnetometer, x-axis
Calibration, hard iron, magnetometer, y-axis
Calibration, hard iron, magnetometer, z-axis
Calibration, soft iron, magnetometer, S11
Calibration, soft iron, magnetometer, S12
Calibration, soft iron, magnetometer, S13
Calibration, soft iron, magnetometer, S21
Calibration, soft iron, magnetometer, S22
Calibration, soft iron, magnetometer, S23
Calibration, soft iron, magnetometer, S31
Calibration, soft iron, magnetometer, S32
Calibration, soft iron, magnetometer, S33
Calibration, offset, barometer, low word
Calibration, offset, barometer, high word
Reserved
Reference transformation matrix, R11
Reference transformation matrix, R12
Reference transformation matrix, R13
Reference transformation matrix, R21
Reference transformation matrix, R22
Reference transformation matrix, R23
Reference transformation matrix, R31
Reference transformation matrix, R32
Reference transformation matrix, R33
User Scratch Register 1
User Scratch Register 2
User Scratch Register 3
User Scratch Register 4
Rev. 0 | Page 13 of 40
Format
Table 156
Table 157
Table 158
Table 65
N/A
N/A
N/A
Table 103
Table 104
Table 105
Table 113
Table 114
Table 115
Table 100
Table 97
Table 101
Table 98
Table 102
Table 99
Table 110
Table 107
Table 111
Table 108
Table 112
Table 109
Table 116
Table 117
Table 118
Table 120
Table 121
Table 122
Table 123
Table 124
Table 125
Table 126
Table 127
Table 128
Table 131
Table 130
N/A
Table 84
Table 85
Table 86
Table 87
Table 88
Table 89
Table 90
Table 91
Table 92
Table 152
Table 153
Table 154
Table 155
ADIS16480
Name
FLSHCNT_LOW
FLSHCNT_HIGH
PAGE_ID
GLOB_CMD
Reserved
FNCTIO_CTRL
GPIO_CTRL
CONFIG
DEC_RATE
Reserved
SLP_CNT
Reserved
FILTR_BNK_0
FILTR_BNK_1
Reserved
ALM_CNFG_0
ALM_CNFG_1
ALM_CNFG_2
Reserved
XG_ALM_MAGN
YG_ALM_MAGN
ZG_ALM_MAGN
XA_ALM_MAGN
YA_ALM_MAGN
ZA_ALM_MAGN
XM_ALM_MAGN
YM_ALM_MAGN
ZM_ALM_MAGN
BR_ALM_MAGN
Reserved
EKF_CNFG
Reserved
DECLN_ANGL
ACC_DISTB_THR
MAG_DISTB_THR
Reserved
QCVR_NOIS_LWR
QCVR_NOIS_UPR
QCVR_RRW_LWR
QCVR_RRW_UPR
Reserved
RCVR_ACC_LWR
RCVR_ACC_UPR
RCVR_MAG_LWR
RCVR_MAG_UPR
Reserved
FIRM_REV
FIRM_DM
FIRM_Y
Reserved
Reserved
SERIAL_NUM
Reserved
Data Sheet
R/W
R
R
R/W
W
N/A
R/W
R/W
R/W
R/W
N/A
R/W
N/A
R/W
R/W
N/A
R/W
R/W
R/W
N/A
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
N/A
R/W
N/A
R/W
R/W
R/W
N/A
R/W
R/W
R/W
R/W
N/A
R/W
R/W
R/W
R/W
N/A
R
R
R
N/A
N/A
R
N/A
Flash
Yes
Yes
No
No
N/A
Yes
Yes
Yes
Yes
N/A
No
N/A
Yes
Yes
N/A
Yes
Yes
Yes
N/A
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
N/A
Yes
N/A
Yes
Yes
Yes
N/A
Yes
Yes
Yes
Yes
N/A
Yes
Yes
Yes
Yes
N/A
Yes
Yes
Yes
N/A
N/A
Yes
N/A
PAGE_ID
0x02
0x02
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x03
0x04
0x04
0x04
Address
0x7C
0x7E
0x00
0x02
0x04
0x06
0x08
0x0A
0x0C
0x0E
0x10
0x12 to 0x14
0x16
0x18
0x1A to 0x1E
0x20
0x22
0x24
0x26
0x28
0x2A
0x2C
0x2E
0x30
0x32
0x34
0x36
0x38
0x3A
0x3C to 0x4E
0x50
0x52
0x54
0x56
0x58
0x5A to 0x5E
0x60
0x62
0x64
0x66
0x68 to 0x6A
0x6C
0x6E
0x70
0x72
0x74 to 0x76
0x78
0x7A
0x7C
0x7E
0x00 to 0x18
0x20
0x22 to 0x7F
Default
N/A
N/A
0x0000
N/A
N/A
0x000D
0x00X0 1
0x00C0
0x0000
N/A
N/A
N/A
0x0000
0x0000
N/A
0x0000
0x0000
0x0000
N/A
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
0x0000
N/A
0x0200
N/A
0x0000
0x0020
0x0030
N/A
0xC5AC
0x3727
0xE6FF
0x2E5B
N/A
0x705F
0x3189
0xCC77
0x32AB
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
Register Description
Diagnostic, flash memory count, low word
Diagnostic, flash memory count, high word
Page identifier
Control, global commands
Reserved
Control, I/O pins, functional definitions
Control, I/O pins, general purpose
Control, clock, and miscellaneous correction
Control, output sample rate decimation
Reserved
Control, power-down/sleep mode
Reserved
Filter selection
Filter selection
Reserved
Alarm configuration
Alarm configuration
Alarm configuration
Reserved
Alarm, x-axis gyroscope threshold setting
Alarm, y-axis gyroscope threshold setting
Alarm, z-axis gyroscope threshold setting
Alarm, x-axis accelerometer threshold
Alarm, y-axis accelerometer threshold
Alarm, z-axis accelerometer threshold
Alarm, x-axis magnetometer threshold
Alarm, y-axis magnetometer threshold
Alarm, z-axis magnetometer threshold
Alarm, barometer threshold setting
Reserved
Extended Kalman filter configuration
Reserved
Declination angle
Accelerometer disturbance threshold
Magnetometer disturbance threshold
Reserved
Process covariance, gyroscope noise, lower word
Process covariance, gyroscope noise, upper word
Process covariance, gyroscope RRW, lower word
Process covariance, gyroscope RRW, upper word
Reserved
Measurement covariance, accelerometer, upper
Measurement covariance, accelerometer, lower
Measurement covariance, magnetometer, upper
Measurement covariance, magnetometer, lower
Reserved
Firmware revision
Firmware programming date: day/month
Firmware programming date: year
Reserved
Reserved
Serial number
Reserved
Rev. 0 | Page 14 of 40
Format
Table 147
Table 148
N/A
Table 146
N/A
Table 149
Table 150
Table 106
Table 67
N/A
Table 151
N/A
Table 69
Table 70
N/A
Table 142
Table 143
Table 144
N/A
Table 132
Table 133
Table 134
Table 135
Table 136
Table 137
Table 138
Table 139
Table 140
Table 141
N/A
Table 94
N/A
Table 93
Table 95
Table 96
N/A
Table 77
Table 76
Table 79
Table 78
N/A
Table 81
Table 80
Table 83
Table 82
N/A
Table 62
Table 63
Table 64
N/A
N/A
Table 66
N/A
Data Sheet
Name
FIR_COEF_Axxx
FIR_COEF_Axxx
FIR_COEF_Bxxx
FIR_COEF_Bxxx
FIR_COEF_Cxxx
FIR_COEF_Cxxx
FIR_COEF_Dxxx
FIR_COEF_Dxxx
1
ADIS16480
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
Flash
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
PAGE_ID
0x05
0x06
0x07
0x08
0x09
0x0A
0x0B
0x0C
Address
0x00 to 0x7E
0x00 to 0x7E
0x00 to 0x7E
0x00 to 0x7E
0x00 to 0x7E
0x00 to 0x7E
0x00 to 0x7E
0x00 to 0x7E
Default
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
Register Description
FIR Filter Bank A, Coefficients 0 through 59
FIR Filter Bank A, Coefficients 60 through 119
FIR Filter Bank B, Coefficients 0 through 59
FIR Filter Bank B, Coefficients 60 through 119
FIR Filter Bank C, Coefficients 0 through 59
FIR Filter Bank C, Coefficients 60 through 119
FIR Filter Bank D, Coefficients 0 through 59
FIR Filter Bank D, Coefficients 60 through 119
The GPIO_CTRL[7:4] bits reflect the logic levels on the DIOx lines and do not have a default setting.
Rev. 0 | Page 15 of 40
Format
Table 71
Table 71
Table 72
Table 72
Table 73
Table 73
Table 74
Table 74
ADIS16480
Data Sheet
OUTPUT DATA REGISTERS
After the ADIS16480 completes its start-up process, the PAGE_ID
register contains 0x0000, which sets Page 0 as the active page
for SPI access. Page 0 contains the output data, real-time clock,
status, and product identification registers.
Table 10. X_GYRO_OUT (Page 0, Base Address = 0x12)
INERTIAL SENSOR DATA FORMAT
Table 11. Y_GYRO_OUT (Page 0, Base Address = 0x16)
The gyroscope, accelerometer, delta angle, delta velocity, and
barometer output data registers use a 32-bit, twos complement
format. Each output uses two registers to support this resolution.
Figure 18 provides an example of how each register contributes
to each inertial measurement. In this case, X_GYRO_OUT is
the most significant word (upper 16 bits), and X_GYRO_LOW
is the least significant word (lower 16 bits), which captures the
bit growth associated with the final averaging/decimation
register. When using the maximum sample rate (DEC_RATE =
0x0000, the x_xxxx_LOW registers are not active.
Bits
[15:0]
Bits
[15:0]
0
X-AXIS GYROSCOPE DATA
Description
Y-axis gyroscope data; twos complement,
±450°/sec range, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Description
Z-axis gyroscope data; twos complement,
±450°/sec range, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Table 13. x_GYRO_OUT Data Format Examples
Rotation Rate
+450°/sec
+0.04/sec
+0.02°/sec
0°/sec
−0.02°/sec
−0.04°/sec
−450°/sec
X_GYRO_LOW
0 15
Description
X-axis gyroscope data; twos complement,
±450°/sec range, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Table 12. Z_GYRO_OUT (Page 0, Base Address = 0x1A)
10278-018
X_GYRO_OUT
15
Bits
[15:0]
Figure 18. Gyroscope Output Format Example, DEC_RATE > 0
The arrows in Figure 19 describe the direction of the motion,
which produces a positive output response in each sensor’s
output register. The accelerometers respond to both dynamic
and static forces associated with acceleration, including gravity.
When lying perfectly flat, as shown in Figure 19, the z-axis
accelerometer output is 1 g, and the x and y accelerometers are
0 g. EKF_CNFG[3] (see Table 94) provides a selection for
gyroscope, accelerometer, and magnetometer data orientation,
between the body frame and the local navigation frame.
When EKF_CNFG[3] = 0 (default), the accelerometer and
magnetometer data displays in the local navigation frame.
Decimal
+22,500
+2
+1
0
−1
−2
−22,500
Hex
0x57E4
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0xA81C
The MSB in x_GYRO_LOW has a weight of 0.01°/sec, and each
subsequent bit has ½ the weight of the previous one.
Table 14. X_GYRO_LOW (Page 0, Base Address = 0x10)
Bits
[15:0]
Description
X-axis gyroscope data; additional resolution bits
Table 15. Y_GYRO_LOW (Page 0, Base Address = 0x14)
Bits
[15:0]
ROTATION RATE (GYROSCOPE)
The registers that use the x_GYRO_OUT format are the primary
registers for the gyroscope measurements (see Table 10, Table 11,
and Table 12). When processing data from these registers, use
a 16-bit, twos complement data format. Table 13 provides
x_GYRO_OUT digital coding examples.
Description
Y-axis gyroscope data; additional resolution bits
Table 16. Z_GYRO_LOW (Page 0, Base Address = 0x18)
Bits
[15:0]
Description
Z-axis gyroscope data; additional resolution bits
Z-AXIS
aZ
mZ
gZ
mX
X-AXIS
mY
Y-AXIS
aX
gX
10278-019
aY
gY
Binary
0101 0111 1110 0100
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1010 1000 0001 1100
PIN 23
PIN 1
Figure 19. Inertial Sensor Direction Reference Diagram
Rev. 0 | Page 16 of 40
Data Sheet
ADIS16480
ACCELERATION
DELTA ANGLES
The registers that use the x_ACCL_OUT format are the primary
registers for the accelerometer measurements (see Table 17,
Table 18, and Table 19). When processing data from these
registers, use a 16-bit, twos complement data format. Table 20
provides x_ACCL_OUT digital coding examples.
The delta angle outputs represent an integration of the gyroscope measurements and use the following formula for all
three axes (x-axis displayed):
Table 17. X_ACCL_OUT (Page 0, Base Address = 0x1E)
where:
ωx is the gyroscope, x-axis.
ΔtS is the time between samples.
Bits
[15:0]
Description
X-axis accelerometer data; twos complement,
±10 g range, 0 g = 0x0000, 1 LSB = 0.8 mg
Description
Y-axis accelerometer data; twos complement,
±10 g range, 0 g = 0x0000, 1 LSB = 0.8 mg
Table 19. Z_ACCL_OUT (Page 0, Base Address = 0x26)
Bits
[15:0]
Description
Z-axis accelerometer data; twos complement,
±10 g range, 0 g = 0x0000, 1 LSB = 0.8 mg
Table 20. x_ACCL_OUT Data Format Examples
Acceleration
+10 g
+1.6 mg
+0.8 mg
0 mg
−0.8 mg
−1.6 mg
−10 g
Decimal
+12,500
+2
+1
0
−1
−2
−12,500
Hex
0x30D4
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0xCF2C
Binary
0011 0000 1101 0100
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1100 1111 0010 1100
The MSB in x_ACCL_LOW has a weight of 0.4 mg, and each
subsequent bit has ½ the weight of the previous one.
Table 21. X_ACCL_LOW (Page 0, Base Address = 0x1C)
Bits
[15:0]
Description
X-axis accelerometer data; additional resolution bits
Table 22. Y_ACCL_LOW (Page 0, Base Address = 0x20)
Bits
[15:0]
Description
Y-axis accelerometer data; additional resolution bits
Table 23. Z_ACCL_LOW (Page 0, Base Address = 0x24)
Bits
[15:0]
DEC _ RATE + 1
∆t S
× (ωx ,n+1 + ωx ,n ); ∆t S =
2
fS
When using the internal sample clock, fS is equal to 2.46 kHz.
When using the external clock option, the time between samples
is the time between active edges on the input clock signal, as
measured by the internal clock (252 MHz). See Table 67 for
more information on the DEC_RATE register. The registers
that use the x_DELTANG_OUT format are the primary
registers for the delta angle calculations. When processing
data from these registers, use a 16-bit, twos complement
data format (see Table 24, Table 25, and Table 26). Table 27
provides x_DELTANG_OUT digital coding examples.
Table 18. Y_ACCL_OUT (Page 0, Base Address = 0x22)
Bits
[15:0]
∆θ x =
Description
Z-axis accelerometer data; additional resolution bits
Table 24. X_DELTANG_OUT (Page 0, Base Address = 0x42)
Bits
[15:0]
Description
X-axis delta angle data; twos complement,
±720° range, 0° = 0x0000, 1 LSB = 720°/215 = ~0.022°
Table 25. Y_DELTANG_OUT (Page 0, Base Address = 0x46)
Bits
[15:0]
Description
Y-axis delta angle data; twos complement,
±720° range, 0° = 0x0000, 1 LSB = 720°/215 = ~0.022°
Table 26. Z_DELTANG_OUT (Page 0, Base Address = 0x4A)
Bits
[15:0]
Description
Z-axis delta angle data; twos complement,
±720° range, 0° = 0x0000, 1 LSB = 720°/215 = ~0.022°
Table 27. x_DELTANG_OUT Data Format Examples
Angle (°)
+720 × (215 − 1)/215
+1440/215
+720/215
0
−720/215
−1440/215
−720
Rev. 0 | Page 17 of 40
Decimal
+32,767
+2
+1
0
−1
−2
−32,768
Hex
0x7FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0x8000
Binary
0111 1111 1111 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1000 0000 0000 0000
ADIS16480
Data Sheet
Table 31. X_DELTVEL_OUT (Page 0, Base Address = 0x4E)
The MSB in x_DELTANG_LOW has a weight of ~0.011°
(720°/216), and each subsequent bit carries a weight of ½
of the previous one.
Bits
[15:0]
Table 28. X_DELTANG_LOW (Page 0, Base Address = 0x40)
Bits
[15:0]
Description
X-axis delta angle data; additional resolution bits
Table 32. Y_DELTVEL_OUT (Page 0, Base Address = 0x52)
Table 29. Y_DELTANG_LOW (Page 0, Base Address = 0x44)
Bits
[15:0]
Bits
[15:0]
Description
Y-axis delta angle data; additional resolution bits
Table 30. Z_DELTANG_LOW (Page 0, Base Address = 0x48)
Bits
[15:0]
Description
Z-axis delta angle data; additional resolution bits
The delta velocity outputs represent an integration of the
accelerometer measurements and use the following formula
for all three axes (x-axis displayed):
Description
Y-axis delta velocity data; twos complement,
±200 m/sec range, 0 m/sec = 0x0000
1 LSB = 200 m/sec ÷ (215 − 1) = ~6.104 mm/sec
Table 33. Z_DELTVEL_OUT (Page 0, Base Address = 0x56)
Bits
[15:0]
DELTA VELOCITY
∆θ x =
Description
X-axis delta velocity data; twos complement,
±200 m/sec range, 0 m/sec = 0x0000
1 LSB = 200 m/sec ÷ (215 – 1) = ~6.104 mm/sec
Description
Z-axis delta velocity data; twos complement,
±200 m/sec range, 0 m/sec = 0x0000
1 LSB = 200 m/sec ÷ (215 − 1) = ~6.104 mm/sec
Table 34. x_DELTVEL_OUT, Data Format Examples
DEC _ RATE + 1
∆t S
× (ax ,n+1 + ax ,n ); ∆t S =
2
fS
where:
ax is the accelerometer, x-axis.
ΔtS is the time between samples.
When using the internal sample clock, fS is equal to 2.46 kHz.
When using the external clock option, the time between samples
is the time between active edges on the input clock signal, as
measured by the internal clock (252 MHz). See Table 67 for
more information on the DEC_RATE register. The registers
that use the x_DELTVEL_OUT format are the primary registers
for the delta velocity calculations. When processing data from
these registers, use a 16-bit, twos complement data format (see
Table 31, Table 32, and Table 33). Table 34 provides
x_DELTVEL_OUT digital coding examples.
Velocity (m/sec)
+160 × (215 − 1)/215
+400/215
+200/215
0
−200/215
−400/215
−160
Decimal
+32,767
+2
+1
0
−1
−2
−32,768
Hex
0x7FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0x8000
Binary
0111 1111 1111 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1000 0000 0000 0000
The MSB in x_DELTVEL_LOW has a weight of ~3.052 mm/sec
(200 m/sec ÷ 216), and each subsequent bit carries a weight of ½
of the previous one.
Table 35. X_DELTVEL_LOW (Page 0, Base Address = 0x4C)
Bits
[15:0]
Description
X-axis delta velocity data; additional resolution bits
Table 36. Y_DELTVEL_LOW (Page 0, Base Address = 0x50)
Bits
[15:0]
Description
Y-axis delta velocity data; additional resolution bits
Table 37. Z_DELTVEL_LOW (Page 0, Base Address = 0x54)
Bits
[15:0]
Rev. 0 | Page 18 of 40
Description
Z-axis delta velocity data; additional resolution bits
Data Sheet
ADIS16480
Quaternion
MAGNETOMETERS
The registers that use the x_MAGN_OUT format are the primary
registers for the magnetometer measurements. When processing
data from these registers, use a 16-bit, twos complement data
format. Table 38, Table 39, and Table 40 provide each register’s
numerical format, and Table 41 provides x_MAGN_OUT digital
coding examples.
Table 38. X_MAGN_OUT (Page 0, Base Address = 0x28)
Bits
[15:0]
Description
X-axis magnetometer data; twos complement,
±3.2767 gauss range, 0 gauss = 0x0000,
1 LSB = 0.1 mgauss
Table 39. Y_MAGN_OUT (Page 0, Base Address = 0x2A)
Bits
[15:0]
Description
Y-axis magnetometer data; twos complement,
±3.2767 gauss range, 0 gauss = 0x0000,
1 LSB = 0.1 mgauss
Table 40. Z_MAGN_OUT (Page 0, Base Address = 0x2C)
Bits
[15:0]
Description
Z-axis magnetometer data; twos complement,
±3.2767 gauss range, 0 gauss = 0x0000,
1 LSB = 0.1 mgauss
Table 41. x_MAGN_OUT Data Format Examples
Magnetic Field
+3.2767 gauss
+0.2 mgauss
+0.1 mgauss
0 gauss
−0.1 mgauss
−0.2 mgauss
−3.2768 gauss
Decimal
+32,767
+2
+1
0
−1
−2
−32,768
Hex
0x7FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0x8000
Binary
0111 1111 1111 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1000 0000 0000 0000
This four-element hypercomplex number defines the attitude of
the body frame, relative to that of the navigation frame. The
Qx_Cxx_OUT registers (See Table 42 through Table 45) contain
the value for each element (q0, q1, q2, q4). The element, q0, is
the scalar part of the quaternion and represents the magnitude
of the rotation. The vector portion of the quaternion is defined
by (q1, q2, q3)T, which identifies the axis about which the
rotation takes place, in adjusting the body frame to that of the
navigation frame. When the orientation is in its reference
position, q0 is equal to one and q1, 2, and q3 are equal to zero.
These registers update at the same data rate as the gyroscopes
and accelerometers.
Euler Angles
The Euler angle names are yaw (ψ), pitch (θ), and roll (φ).
See Figure 19 for the axial association of these angles. These
three elements represent the most intuitive way of describing
orientation angles. The process of translating body frame
data to the navigation frame can be broken down into three
successive translations. These translations follow as the yaw
rotation about the z-axis, followed by the pitch rotation about
the y-axis, and finally the roll rotation about the x-axis. Reverse
this sequence to resolve a reverse rotation. Difficulties in this
process arise due to the singularities that occur whenever the
pitch approaches ±90° thus making the roll indistinguishable
from the yaw. For applications that may approach these limits,
the quaternion or rotation matrix output may be more appropriate. When the ADIS16480 is in its reference position, all
three Euler angles are equal to zero. The update rate for these
variables is the same as the gyroscopes and accelerometers.
ROLL, PITCH, YAW ANGLES
The EKF_CNFG (Table 94) register contains two bits, which
define the output format of the angle estimates. The first one
is EKF_CNFG[4], which selects the output format. When
EKF_CNFG[4] = 0; the output data is in the format of a
quaternion vector (See Table 42 through Table 45) and Euler
angles (See Table 47 through Table 49). When EKF_CNFG[4] =
1, the output data is in the form of a rotation matrix (see
Table 42 through Table 50).
Rev. 0 | Page 19 of 40
ADIS16480
Data Sheet
Rotation Matrix Data
Table 48. PITCH_C31_OUT (Page 0, Base Address = 0x6C)
The rotation matrix defines the attitude of the body frame
relative to that of the navigation frame. The Cxx_OUT registers
(see Table 42 through Table 50) define each element in this 3 ×
3 matrix. Each element is the product of the unit vectors that
describe the axes of the two frames, which in turn, are equal
to the cosines of the angles between the axes. When the
ADIS16480 is in its reference position, the rotation matrix
are equal to a 3 × 3 identify matrix.
Bits
[15:0]
Table 42. Q0_C11_OUT (Page 0, Base Address = 0x60)
Bits
[15:0]
Description
Quarterion scalar, q0 or rotation matrix, C11
Twos complement
q0 scale factor = 0.0055°/LSB (180/215)
C11 scale factor = 0.000030518/LSB (1/215)
Description
Qaurterion vector, q1; or rotation matrix, C12
Twos complement
q1 scale factor = 0.000030518/LSB (1/215)
C12 scale factor = 0.000030518/LSB (1/215)
Description
Qaurterion vector, q2; or rotation matrix, C13
Twos complement
q2 scale factor = 0.000030518/LSB (1/215)
C13 scale factor = 0.000030518/LSB (1/215)
Angle (°)
+180 × (215 − 1)/215
+360/215
+180/215
0
−180/215
−360/215
−180
Description
Qaurterion vector, q3; or rotation matrix, C21
Twos complement
q3 scale factor = 0.000030518/LSB (1/215)
C21 scale factor = 0.000030518/LSB (1/215)
Description
Rotation matrix, C22, twos complement
C22 scale factor = 0.000030518/LSB (1/215)
Description
Euler angle, φ, roll or rotation matrix, C23
Twos complement, range: ±180° (±π radians)
Roll angle scale factor = (180/215)°/LSB
Rotation matrix variable, C23
Twos complement
C23 scale factor = 0.000030518/LSB (1/215)
Decimal
+32,767
+2
+1
0
−1
−2
−32,768
Hex
0x7FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0x8000
Binary
0111 1111 1111 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1000 0000 0000 0000
Table 52. Yaw, Roll, q0 Angle Data Format Examples
Decimal
+32,767
+2
+1
0
−1
−2
−32,768
Hex
0x7FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0x8000
Binary
0111 1111 1111 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1000 0000 0000 0000
Table 53. Pitch Angle Data Format Examples
Table 47. ROLL_C23_OUT (Page 0, Base Address = 0x6A)
Bits
[15:0]
Description
Rotation matrix, C33, twos complement
C22 scale factor = 0.000030518/LSB (1/215)
Angle (°)
(215 − 1)/215
2/215
1/215
0
−1/215
−2/215
−1
Table 46. C22_OUT (Page 0, Base Address = 0x68)
Bits
[15:0]
Description
Euler angle, Ψ, yaw or rotation matrix, C32
Twos complement, range: ±180 ° (±π radians)
Yaw angle scale factor = (180/215)°/LSB
Rotation matrix variable, C32
Twos complement, 0.000030518/LSB (1/215)
Table 51. Rotation Matrix/q1/q2/q3 Data Format Examples
Table 45. Q3_C21_OUT (Page 0, Base Address = 0x66)
Bits
[15:0]
Bits
[15:0]
Bits
[15:0]
Table 44. Q2_C13_OUT (Page 0, Base Address = 0x64)
Bits
[15:0]
Table 49. YAW_C32_OUT (Page 0, Base Address = 0x6E)
Table 50. C33_OUT (Page 0, Base Address = 0x70)
Table 43. Q1_C12_OUT (Page 0, Base Address = 0x62)
Bits
[15:0]
Description
Euler angle, θ, pitch or rotation matrix, C31
Twos complement, range: ±90 ° (±π/2 radians)
Pitch angle scale factor = (180/215)°/LSB
Rotation matrix variable, C31
Twos complement, 0.000030518/LSB (1/215)
Angle (°)
+90 × (215−1)/215
+360/215
+180/215
0
−180/215
−360/215
−90
Rev. 0 | Page 20 of 40
Decimal
+16,383
+2
+1
0
−1
−2
−16,384
Hex
0x3FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0xC000
Binary
0011 1111 1110 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1100 0000 0000 0000
Data Sheet
ADIS16480
BAROMETER
INTERNAL TEMPERATURE
The BAROM_OUT register (see Table 54) and BAROM_LOW
register (see Table 56) provide access to the barometric pressure
data. These two registers combine to provide a 32-bit, twos
complement format. Some applications are able to use
BAROM_OUT by itself. For cases where the finer resolution
available from BAROM_LOW is valuable, combine them in
the same manner as the gyroscopes (see Figure 18). When
processing data from the BAROM_OUT register alone, use a
16-bit, twos complement data format. Table 54 provides the
numerical format in BAROM_OUT, and Table 55 provides
digital coding examples.
The TEMP_OUT register provides an internal temperature
measurement that can be useful for observing relative temperature
changes inside of the ADIS16480 (see Table 57). Table 58
provides TEMP_OUT digital coding examples. Note that this
temperature reflects a higher temperature than ambient, due
to self heating.
Table 54. BAROM_OUT (Page 0, Base Address = 0x30)
Temperature (°C)
+85
+25 + 0.0113
+25 + 0.00565
+25
+25 − 0.00565
+25 − 0.0113
−40
Bits
[15:0]
Description
Barometric pressure; twos complement,
±1.31 bar range, 0 bar = 0x0000, 40 µbar/LSB
Table 55. BAROM_OUT Data Format Examples
Pressure (bar)
+0.00004 × (215 − 1)
+0.00008
+0.00004
0
−0.00004
−0.00008
−0.00004 × 215
Decimal
+32,767
+2
+1
0
−1
−2
−32,768
Hex
0x7FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0x8000
Binary
0111 1111 1111 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1000 0000 0000 0000
Table 57. TEMP_OUT (Page 0, Base Address = 0x0E)
Bits
[15:0]
Table 58. TEMP_OUT Data Format Examples
The BAROM_LOW register provides additional resolution for
the barometric pressure measurement. The MSB has a weight
of 20 µbar, and each subsequent bit carries a weight of ½ of
the previous one.
Table 56. BAROM_LOW (Page 0, Base Address = 0x2E)
Bits
[15:0]
Description
Temperature data; twos complement,
0.00565°C per LSB, 25°C = 0x0000
Description
Barometric pressure; additional resolution bits
Rev. 0 | Page 21 of 40
Decimal
+10,619
+2
+1
0
−1
−2
−11,504
Hex
0x297B
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0xD310
Binary
0010 1001 0111 1011
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1101 0011 0001 0000
ADIS16480
Data Sheet
STATUS/ALARM INDICATORS
The SYS_E_FLAG register in Table 59 provides the system error
flags and new data bits for the magnetometer and barometer
outputs. The new data flags are useful for triggering data collection of the magnetometer and barometer (x_MAGN_OUT and
BAROM_xxx registers) because they update at a fixed rate that
is not dependent on the DEC_RATE setting. Note that reading
SYS_E_FLAG also resets it to 0x0000.
Table 59. SYS_E_FLAG (Page 0, Base Address = 0x08)
Bits
15
14
13
12
11
10
9
8
7
6
5
4
3
[2:1]
0
1
2
Description (Default = 0x0000)
Watch dog timer flag (1 = timed out)
Not used
EKF divergence (1 = divergence has occurred)
Gyroscope saturation
1 = saturation conditions exists and the gyroscope
weighting factors in the EKF have been automatically
reduced
0 = gyroscope measurements within range
Magnetometer disturbance
1 = magnetometer measurements exceed
MAG_DISTB_THR levels (see Table 96) and the
magnetometer influence in the EKF has been
automatically eliminated
0 = magnetometer measurements are within the
specified normal range
Linear acceleration
1 = accelerometer measurements exceed
ACC_DISTR_THR levels (see Table 95) and the
accelerometer weighting factors in the EKF have been
automatically reduced
0 = accelerometer measurements are within the
specified normal range
New data flag, barometer (1 = new, unread data)1
New data flag, magnetometer (1 = new, unread data)2
Processing overrun (1 = error)
Flash memory update, result of GLOB_CMD[3] = 1
(1 = failed update, 0 = update successful)
Inertial self-test failure (1 = DIAG_STS ≠ 0x0000)
Sensor overrange (1 = at least one sensor overranged)
SPI communication error
(1 = error condition, when the number of SCLK pulses is
not equal to a multiple of 16)
Not used
Alarm status flag (1 = ALM_STS ≠ 0x0000)
The DIAG_STS register in Table 60 provides the flags for the
internal self-test function, which is from GLOB_CMD[1] (see
Table 146). Note that the barometer’s flag, DIAG_STS[11], only
updates after start-up and reset operations and that reading
DIAG_STS also resets it to 0x0000.
Table 60. DIAG_STS (Page 0, Base Address = 0x0A)
Bits
[15:12]
11
10
9
8
[7:6]
5
4
3
2
1
0
Description (Default = 0x0000)
Not used
Self-test failure, barometer (1 = failed at startup)
Self-test failure, z-axis magnetometer (1 = failure)
Self-test failure, y-axis magnetometer (1 = failure)
Self-test failure, x-axis magnetometer (1 = failure)
Not used
Self-test failure, z-axis accelerometer (1 = failure)
Self-test failure, y-axis accelerometer (1 = failure)
Self-test failure, x-axis accelerometer (1 = failure)
Self-test failure, z-axis gyroscope (1 = failure)
Self-test failure, y-axis gyroscope (1 = failure)
Self-test failure, x-axis gyroscope (1 = failure)
The ALM_STS register in Table 61 provides the alarm bits
for the programmable alarm levels of each sensor. Note that
reading ALM_STS also resets it to 0x0000.
Table 61. ALM_STS (Page 0, Base Address = 0x0C)
Bits
[15:12]
11
10
9
8
[7:6]
5
4
3
2
1
0
This flag restores to zero after reading the contents on BAROM_OUT.
This flag restores to zero after reading one x_MAGN_OUT register.
Rev. 0 | Page 22 of 40
Description (Default = 0x0000)
Not used
Barometer alarm flag (1 = alarm is active)
Z-axis magnetometer alarm flag (1 = alarm is active)
Y-axis magnetometer alarm flag (1 = alarm is active)
X-axis magnetometer alarm flag (1 = alarm is active)
Not used
Z-axis accelerometer alarm flag (1 = alarm is active)
Y-axis accelerometer alarm flag (1 = alarm is active)
X-axis accelerometer alarm flag (1 = alarm is active)
Z-axis gyroscope alarm flag (1 = alarm is active)
Y-axis gyroscope alarm flag (1 = alarm is active)
X-axis gyroscope alarm flag (1 = alarm is active)
Data Sheet
ADIS16480
FIRMWARE REVISION
The FIRM_REV register (see Table 62) provides the firmware
revision for the internal processor. Each nibble represents a
digit in this revision code. For example, if FIRM_REV =
0x0102, the firmware revision is 1.02.
Table 62. FIRM_REV (Page 3, Base Address = 0x78)
Bits
[15:12]
[11:8]
[7:4]
[3:0]
Description
Binary, revision, 10’s digit
Binary, revision, 1’s digit
Binary, revision, tenths digit
Binary, revision, hundredths digit
Bits
[15:12]
[11:8]
[7:4]
[3:0]
Description
Binary, month 10’s digit, range: 0 to 1
Binary, month 1’s digit, range: 0 to 9
Binary, day 10’s digit, range: 0 to 3
Binary, day 1’s digit, range: 0 to 9
Table 64. FIRM_Y (Page 3, Base Address = 0x7C)
Bits
[15:12]
[11:8]
[7:4]
[3:0]
Description
Binary, year 1000’s digit, range: 0 to 9
Binary, year 100’s digit, range: 0 to 9
Binary, year 10’s digit, range: 0 to 9
Binary, year 1’s digit, range: 0 to 9
PRODUCT IDENTIFICATION
The FIRM_DM register (see Table 63) contains the month and
day of the factory configuration date. FIRM_DM[15:12] and
FIRM_DM[11:8] contain digits that represent the month
of factory configuration. For example, November is the 11th
month in a year and represented by FIRM_DM[15:8] = 0x11.
FIRM_DM[7:4] and FIRM_DM[3:0] contain digits that represent
the day of factory configuration. For example, the 27th day of
the month is represented by FIRM_DM[7:0] = 0x27.
Table 63. FIRM_DM (Page 3, Base Address = 0x7A)
The FIRM_Y register (see Table 64) contains the year of the
factory configuration date. For example, the year of 2013 is
represented by FIRM_Y = 0x2013.
The PROD_ID register (see Table 65) contains the binary
equivalent of the part number (16,480 = 0x4060), and the
SERIAL_NUM register (see Table 66) contains a lot specific
serial number.
Table 65. PROD_ID (Page 0, Base Address = 0x7E)
Bits
[15:0]
Description (Default = 0x4060)
Product identification = 0x4060
Table 66. SERIAL_NUM (Page 4, Base Address = 0x20)
Bits
[15:0]
Rev. 0 | Page 23 of 40
Description
Lot specific serial number
ADIS16480
Data Sheet
DIGITAL SIGNAL PROCESSING
GYROSCOPES/ACCELEROMETERS
MAGNETOMETER/BAROMETER
Figure 20 provides a block diagram for all of the components
and settings that influence the frequency response for the
accelerometers and gyroscopes. The sample rate for each
accelerometer and gyroscope is 9.84 kHz. Each sensor has
its own averaging/decimation filter stage, which reduces the
update rate to 2.46 kSPS. When using the external clock option
(FNCTIO_CTRL[7:4], see Table 149), the input clock drives a
4-sample burst at a sample rate of 9.84 kSPS, which feeds into
the 4× averaging/decimation filter. This results in a data rate
that is equal to the input clock frequency. Note that the
sensitivity to coning and sculling depends on the sample
rate. At 2.46 kHz, the sensitivity is very low, but can become
influential at lower sample rates. For best performance when
using an external clock, use the maximum input frequency
of 2.4 kHz.
When using the internal sampling clock, the magnetometer
output registers (xMAGN_OUT) update at a rate of 102.5 SPS
and the barometer output registers (BAROM_xxx) update at a
rate of 51.25 SPS. When using the external clock, the magnetometers update at a rate of 1/24th of the input clock frequency
and the barometers update at a rate that is 1/48th of the input
clock frequency. The update rates for the magnetometer and
barometers do not change with the DEC_RATE register
settings. SYS_E_FLAG[9:8] (see Table 59) offer new data bits
for these registers and the SEQ_CNT register provides a counter
function to help determine when there is new data in the
magnetometer and barometer registers. When SEQ_CNT =
0x0001, there is new data in the magnetometer and barometer
output registers. The SEQ_CNT register can be useful during
initialization to help synchronize read loops for new data in
both magnetometer and barometer outputs. When beginning a
continuous read loop, read SEQ_CNT, then subtract this value
from the maximum value shown (range) in Table 68 to calculate
the number of internal sample cycles until both magnetometer
and barometer data is new.
AVERAGING/DECIMATION FILTER
The DEC_RATE register (see Table 67) provides user control
for the final filter stage (see Figure 20), which averages and
decimates the accelerometers, gyroscopes, delta angle, and delta
velocity data. Note that the orientation outputs do not go through
an averaging stage, prior to decimation. The output sample rate is
equal to 2460/(DEC_RATE + 1). When using the external clock
option (FNCTIO_CTRL[7:4], see Table 149), replace the 2460
number in this relationship, with the input clock frequency. For
example, turn to Page 3 (DIN = 0x8003), and set DEC_RATE =
0x18 (DIN = 0x8C18, then DIN = 0x8D00) to reduce the output
sample rate to 98.4 SPS (2460 ÷ 25).
Table 68. SEQ_CNT (Page 0, Base Address = 0x06)
Bits
[15:11]
[6:0]
Description
Don’t care
Binary counter: range = 1 to 48/(DEC_RATE + 1)
Table 67. DEC_RATE (Page 3, Base Address = 0x0C)
Description (Default = 0x0000)
Don’t care
Decimation rate, binary format, maximum = 2047
See Figure 20 for impact on sample rate
EKF
ORIENTATION
÷D
2.46kHz, fs
MEMS
SENSOR
1
4
330Hz
GYROSCOPE
2-POLE: 404Hz, 757Hz
ACCELEROMETER
1-POLE: 330Hz
INTERNAL
CLOCK
9.84kHz
fs
4
÷4
4×
AVERAGE
DECIMATION
FILTER
FIR
FILTER
BANK
SELECTABLE
FIR FILTER BANK
FILTR_BNK_0
FILTR_BNK_1
1
D
D
÷D
AVERAGE/DECIMATION
FILTER
D = DEC_RATE[10:0] + 1
DIOx
OPTIONAL INPUT CLOCK
FNCTIO_CTRL[7] = 1
fs < 2400Hz
NOTES
1. WHEN FNCTIO_CTRL[7] = 1, EACH CLOCK PULSE ON THE DESIGNATED DIOx LINE (FNCTIO_CTRL[5:4]) STARTS A 4-SAMPLE BURST,
AT A SAMPLE RATE OF 9.84kHz. THESE FOUR SAMPLES FEED INTO THE 4x AVERAGE/DECIMATION FILTER, WHICH PRODUCES A
DATA RATE THAT IS EQUAL TO THE INPUT CLOCK FREQUENCY.
Figure 20. Sampling and Frequency Response Block Diagram
Rev. 0 | Page 24 of 40
10278-020
Bits
[15:11]
[10:0]
Data Sheet
ADIS16480
FIR FILTER BANKS
Filter Memory Organization
The ADIS16480 provides four configurable, 120-tap FIR filter
banks. Each coefficient is 16 bits wide and occupies its own
register location with each page. When designing a FIR filter for
these banks, use a sample rate of 2.46 kHz and scale the coefficients
so that their sum equals 32,768. For filter designs that have less
than 120 taps, load the coefficients into the lower portion of
the filter and start with Coefficient 1. Make sure that all unused
taps are equal to zero, so that they do not add phase delay to the
response. The FILTR_BNK_x registers provide three bits per
sensor, which configure the filter bank (A, B, C, D) and turn
filtering on and off. For example, turn to Page 3 (DIN =
0x8003), then write 0x002F to FILTR_BNK_0 (DIN = 0x962F,
DIN = 0x9700) to set the x-axis gyroscope to use the FIR filter
in Bank D, to set the y-axis gyroscope to use the FIR filter in
Bank B, and to enable these FIR filters in both x- and y-axis
gyroscopes. Note that the filter settings update after writing to
the upper byte; therefore, always configure the lower byte first.
In cases that require configuration to only the lower byte of
either FILTR_BNK_0 or FILTR_BNK_1, complete the process
by writing 0x00 to the upper byte.
Each filter bank uses two pages of the user register structure.
See Table 71, Table 72, Table 73, and Table 74 for the register
addresses in each filter bank.
Table 69. FILTR_BNK_0 (Page 3, Base Address = 0x16)
Bits
15
14
[13:12]
11
[10:9]
8
[7:6]
5
[4:3]
2
[1:0]
Description (Default = 0x0000)
Don’t care
Y-axis accelerometer filter enable (1 = enabled)
Y-axis accelerometer filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
X-axis accelerometer filter enable (1 = enabled)
X-axis accelerometer filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
Z-axis gyroscope filter enable (1 = enabled)
Z-axis gyroscope filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
Y-axis gyroscope filter enable (1 = enabled)
Y-axis gyroscope filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
X-axis gyroscope filter enable (1 = enabled)
X-axis gyroscope filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
Table 70. FILTR_BNK_1 (Page 3, Base Address = 0x18)
Bits
[15:12]
11
[10:9]
8
[7:6]
5
[4:3]
2
[1:0]
Description (Default = 0x0000)
Don’t care
Z-axis magnetometer filter enable (1 = enabled)
Z-axis magnetometer filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
Y-axis magnetometer filter enable (1 = enabled)
Y-axis magnetometer filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
X-axis magnetometer filter enable (1 = enabled)
X-axis magnetometer filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
Z-axis accelerometer filter enable (1 = enabled)
Z-axis accelerometer filter bank selection:
00 = Bank A, 01 = Bank B, 10 = Bank C, 11 = Bank D
Table 71. Filter Bank A Memory Map, FIR_COEF_Axxx
Page
5
5
5
5
5
PAGE_ID
0x05
0x05
0x05
0x05
0x05
Address
0x00
0x02 to 0x07
0x08
0x0A
0x0C to 0x7C
5
6
6
6
6
6
0x05
0x06
0x06
0x06
0x06
0x06
0x7E
0x00
0x02 to 0x07
0x08
0x0A
0x0C to 0x7C
6
0x06
0x7E
Register
PAGE_ID
Not used
FIR_COEF_A000
FIR_COEF_A001
FIR_COEF_A002 to
FIR_COEF_A058
FIR_COEF_A059
PAGE_ID
Not used
FIR_COEF_A060
FIR_COEF_A061
FIR_COEF_A062 to
FIR_COEF_A118
FIR_COEF_D119
Table 72. Filter Bank B Memory Map, FIR_COEF_Bxxx
Page
7
7
7
7
7
PAGE_ID
0x07
0x07
0x07
0x07
0x07
Address
0x00
0x02 to 0x07
0x08
0x0A
0x0C to 0x7C
7
8
8
8
8
8
0x07
0x08
0x08
0x08
0x08
0x08
0x7E
0x00
0x02 to 0x07
0x08
0x0A
0x0C to 0x7C
8
0x08
0x7E
Register
PAGE_ID
Not used
FIR_COEF_B000
FIR_COEF_B001
FIR_COEF_B002 to
FIR_COEF_B058
FIR_COEF_B059
PAGE_ID
Not used
FIR_COEF_B060
FIR_COEF_B061
FIR_COEF_B062 to
FIR_COEF_B118
FIR_COEF_B119
Table 73. Filter Bank C Memory Map, FIR_COEF_Cxxx
Page
9
9
9
9
9
PAGE_ID
0x09
0x09
0x09
0x09
0x09
Address
0x00
0x02 to 0x07
0x08
0x0A
0x0C to 0x7C
9
10
10
10
10
10
0x09
0x0A
0x0A
0x0A
0x0A
0x0A
0x7E
0x00
0x02 to 0x07
0x08
0x0A
0x0C to 0x7C
10
0x0A
0x7E
Rev. 0 | Page 25 of 40
Register
PAGE_ID
Not used
FIR_COEF_C000
FIR_COEF_C001
FIR_COEF_C002 to
FIR_COEF_C058
FIR_COEF_C059
PAGE_ID
Not used
FIR_COEF_C060
FIR_COEF_C061
FIR_COEF_C062 to
FIR_COEF_C118
FIR_COEF_C119
ADIS16480
Data Sheet
Table 74. Filter Bank D Memory Map, FIR_COEF_Dxxx
Table 75. FIR Filter Descriptions, Default Configuration
Page
11
11
11
11
11
PAGE_ID
0x0B
0x0B
0x0B
0x0B
0x0B
Address
0x00
0x02 to 0x07
0x08
0x0A
0x0C to 0x7C
FIR Filter Bank
A
B
C
D
11
12
12
12
12
12
0x0B
0x0C
0x0C
0x0C
0x0C
0x0C
0x7E
0x00
0x02 to 0x07
0x08
0x0A
0x0C to 0x7C
12
0x0C
0x7E
Register
PAGE_ID
Not used
FIR_COEF_D000
FIR_COEF_D001
FIR_COEF_D002 to
FIR_COEF_D058
FIR_COEF_D059
PAGE_ID
Not used
FIR_COEF_D060
FIR_COEF_D061
FIR_COEF_D062 to
FIR_COEF_D118
FIR_COEF_D119
Taps
120
120
32
32
−3 dB Frequency (Hz)
310
55
275
63
0
–10
MAGNITUDE (dB)
–20
B
D
A
NO FIR
FILTERING
C
–30
–40
–50
–60
–70
Default Filter Performance
–80
Rev. 0 | Page 26 of 40
–90
–100
0
200
400
600
800
1000
FREQUENCY (Hz)
Figure 21. FIR Filter Frequency Response Curves
1200
10278-021
The FIR filter banks have factory programmed filter designs. They
are all low-pass filters that have unity dc gain. Table 75 provides
a summary of each filter design, and Figure 21 shows the frequency
response characteristics. The phase delay is equal to ½ of the total
number of taps.
Data Sheet
ADIS16480
EXTENDED KALMAN FILTER
ALGORITHM
Table 78. QCVR_RRW_UPR (Page 3, Base Address = 0x66)
The extended Kalman filter (EKF) continuously estimates the
state vector, which includes the four elements in a quaternion
orientation array and the bias levels for all three gyroscopes.
Figure 22 illustrates the iterative process used in the EKF, which
uses angular rate measurements (gyroscopes) to predict orientation updates and then makes corrections using accelerometer
and magnetometer measurements. In addition to continuous
state estimation, the EKF also estimates the error covariance
terms. Using the covariance terms, current orientation, and
gyroscope sensor measurements, the algorithm computes a
Kalman gain that provides a weighting value for each sensor’s
contribution to the state vector. The ADIS16480 has factory
settings for the covariance terms but provides access to them in
the form of user-configuration registers, for fine tuning, based
on application-specific conditions/requirements.
Bits
[15:0]
Description (Default = 0x2E5B)
Gyroscope rate random walk (RRW) covariance term,
upper word
Table 79. QCVR_RRW_LWR (Page 3, Base Address = 0x64)
Bits
[15:0]
Description (Default = 0xE6FF)
Gyroscope rate random walk (RRW) covariance term,
lower word
Table 80. RCVR_ACC_UPR (Page 3, Base Address = 0x6E)
Bits
[15:0]
Description (Default = 0x3189)
Accelerometer measurement variance term, upper word
Table 81. RCVR_ACC_LWR (Page 3, Base Address = 0x6C)
Bits
[15:0]
COVARIANCE TERMS
Description (Default = 0x705F)
Accelerometer measurement variance term, lower word
Table 82. RCVR_MAG_UPR (Page 3, Base Address = 0x72)
Table 76 through Table 79 provides register information for the
gyroscope noise/RRW process covariance (Q) terms. Table 80
through Table 83 provides register information for the
accelerometer/magnetometer measurement covariance (R)
terms. These covariance terms use the IEEE 32-bit floatingpoint format. Each term has two registers, one for the upper
word and one for the lower word.
Bits
[15:0]
Description (Default = 0x32AB)
Magnetometer measurement variance term, upper word
Table 83. RCVR_MAG_LWR (Page 3, Base Address = 0x70)
Bits
[15:0]
Description (Default = 0xCC77)
Magnetometer measurement variance term, lower word
Table 76. QCVR_NOIS_UPR (Page 3, Base Address = 0x62)
Bits
[15:0]
Description (Default = 0x3727)
Gyroscope noise covariance term, upper word
Table 77. QCVR_NOIS_LWR (Page 3, Base Address = 0x60)
Description (Default = 0xC5AC)
Gyroscope noise covariance term, lower word
EKF PROCESS
QUATERNION, BIAS
ERROR COVARIANCE
GYROSCOPE
PREDICT
CORRECT
Q COVARIANCE
ACCELEROMETERS
MAGNETOMETERS
R COVARIANCE
QUATERNION, BIAS
ERROR COVARIANCE
QUATERNION
Figure 22. EKF Process
Rev. 0 | Page 27 of 40
10278-022
Bits
[15:0]
ADIS16480
Data Sheet
REFERENCE FRAME
Table 84. REFMTX_R11 (Page 2, Base Address = 0x62)
During the power-on initialization and reset recovery operations, the ADIS16480 sets the accelerometer and magnetometer
references for use in the orientation computation. During this
process, the gravity vector becomes the accelerometer reference
and the magnetometer reference computation includes the
following steps: measure horizontal and vertical components
of the magnetic field and align the horizontal component to
magnetic north. This also measures the inclination, which
removes this requirement from an external system. The resulting
reference frame is a local ENU inertial frame formed by the
y-axis pointing at magnetic north, the z-axis pointing up, and
the x-axis completing the right-hand frame by pointing east.
Bits
15
[14:0]
REFERENCE TRANSFORMATION MATRIX
Table 85. REFMTX_R12 (Page 2, Base Address = 0x64)
Bits
15
[14:0]
Description (Default = 0x0000)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Table 86. REFMTX_R13 (Page 2, Base Address = 0x66)
Bits
15
[14:0]
Description (Default = 0x0000)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Table 87. REFMTX_R21 (Page 2, Base Address = 0x68)
The reference transformation matrix, RIJ, provides a userprogrammable alignment function for orientation alignment
to a local navigation frame. Another common name for this
function in navigation system literature is the coordinate
transformation matrix.
 R11

RIJ = R 21
 R 31

Description (Default = 0x7FFF)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Bits
15
[14:0]
Description (Default = 0x0000)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Table 88. REFMTX_R22 (Page 2, Base Address = 0x6A)
Bits
15
[14:0]
R12 R13

R 22 R 23
R32 R33
When this matrix is equal to an identify matrix (factory
default), the local navigation frame matches true level, with
respect to gravity, and magnetic north. The tare command
automatically calculates and loads the matrix values that
establish the current ADIS16480 orientation as the reference
orientation. When the ADIS16480 is in the desired reference
orientation, initiate the tare command by setting GLOB_CMD[8]
= 1 (DIN = 0x8003, then DIN = 0x8301, see Table 146).
Each element in this matrix is associated with a register that
provides read and write access. See Table 84 through Table 92,
for these registers. Use these registers to define the local
navigation frame, based on system generated requirements.
Each element is the cross product of the unit vectors that
describe the axes of the two frames, which are equal to the
cosines of the angles between the axes. Units of rotation vary
by ±1. When writing to these registers, write to R33 last because
a write to the upper byte of this register causes all nine registers
to update inside of the ADIS16480.
Description (Default = 0x7FFF)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Table 89. REFMTX_R23 (Page 2, Base Address = 0x6C)
Bits
15
[14:0]
Description (Default = 0x0000)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Table 90. REFMTX_R31 (Page 2, Base Address = 0x6E)
Bits
15
[14:0]
Description (Default = 0x0000)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Table 91. REFMTX_R32 (Page 2, Base Address = 0x70)
Bits
15
[14:0]
Description (Default = 0x0000)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Table 92. REFMTX_R33 (Page 2, Base Address = 0x72)
Bits
15
[14:0]
Rev. 0 | Page 28 of 40
Description (Default = 0x7FFF)
Sign bit
Magnitude, binary, 1 LSB = 1/215
Data Sheet
ADIS16480
DECLINATION
Gyroscope Fade Control Bit
The DECLN_ANGL register provides a user-programmable
input that can shift the reference frame from magnetic north
to geodetic north (or any arbitrary azimuth heading).
EKF_CNFG[9] (see Table 94) provides an on/off control bit for
the gyroscope fade function, which is an internal adjustment
of the gyroscope’s process covariance terms. This reduces the
impact of gyroscope scale errors during transient events, where
the gyroscope rates are quickly changing. The fade function
effectively reduces the weighting of the gyroscope measurements, with respect to the accelerometers and magnetometers,
during these transient events. The adjustment terminates when
the rates return to zero.
Table 93. DECLN_ANGL (Page 3, Base Address = 0x54)
Bits
[15:0]
Description (Default = 0x0000)
Declination angle, twos complement
Scale factor = π/215 radians/LSB
ADAPTIVE OPERATION
The EKF_CNFG register, in Table 94, offers a number of control
bits for customizing EKF operation.
Table 94. EKF_CNFG (Page 3, Base Address = 0x50)
Bits
[15:13]
12
[11:10]
9
8
[7:5]
4
3
2
1
0
Description (Default = 0x0200)
Not used
Automatic reset recovery from divergence
1 = enable, 0 = disable
Not used
Fade enable
1 = enable, 0 = disable
Adaptive EKF enable
1 = enable, 0 = disable
Not used
Orientation format control
1 = rotation matrix, 0 = quaternion and Euler
Body frame enable
1 = enable, 0 = disable
Not for external use, always set to 0
Magnetometer disable
1 = enable, 0 = disable
Gravity removal (from accelerometers)
1 = enable, 0 = disable
Body Frame Enable Bit
EKF_CNFG[3] (see Table 94) provides an on/off control bit for
the body frame enable function. The reference transformation
matrix establishes the difference between the local navigation
frame and the body frame. Set EKF_CNFG[3] = 1 (DIN =
0x8003, DIN = 0xD110) to establish the body frame as the
reference frame.
Orientation Format Control Bit
EKF_CNFG[4] (see Table 94) provides a selection bit for angle
data format. Set EKF_CNFG[4] = 1 (DIN = 0x8003, DIN =
0xD010) to use the rotation matrix format.
Magnetometer Disable Control Bit
EKF_CNFG[1] (see Table 94) provides an on/off control bit
for the magnetometer disable function, which disables the
magnetometer influence over angle calculations in the EKF.
Gravity Removal Control Bit
EKF_CNFG[0] (see Table 94) provides an on/off control bit
for the gravity removal function, which removes the gravity
component from the accelerometer outputs.
Linear Acceleration/Magnetic Disturbance Detection
Adaptive EKF Enable Bit
EKF_CNFG[8] (see Table 94) provides an on/off control bit
for the adaptive part of the EKF function. The adaptive part
of the EKF computes the measurement covariance terms (R),
which enables real-time adjustments for vibration and magnetic
field disturbances. See Table 80 through Table 83 for read access
to the measurement covariance terms.
Automatic EKF Divergence Reset Control Bit
The EKF algorithm monitors the normalized innovation
squared parameter to detect divergence. The normalized
innovation is the innovation (predicted measurements minus
actual measurements) divided by the statistically computed
expected error, which is based on the error covariance and the
measurement covariance. With a moderate level of divergence,
the divergence indicator bit (SYS_E_FLAG[13] (see Table 59) is
set to a high state. At higher levels of divergence, EKF_CNFG[12]
(see Table 94) provides an on/off control bit for automatically
resetting the Kalman filter, to help speed recovery from
divergence.
The ADIS16480 checks the magnitudes of the accelerometers
and magnetometers and compares their values against those of
the corresponding reference vectors. If the difference exceeds
the percentage programmed in the disturbance thresholds, the
algorithm automatically ignores the affected sensor group for
the duration of the external disturbance.
Table 95. ACC_DISTB_THR (Page 3, Base Address = 0x56)
Bits
[15:8]
[7:0]
Description (Default = 0x0020)
Not used
Threshold, binary, scale factor = 0.39%/LSB (50%/128)
Table 96. MAG_DISTB_THR (Page 3, Base Address = 0x58)
Bits
[15:8]
[7:0]
Rev. 0 | Page 29 of 40
Description (Default = 0x0030)
Not used
Threshold, binary, scale factor = 0.39%/LSB (50%/128)
ADIS16480
Data Sheet
CALIBRATION
The ADIS16480 factory calibration produces correction formulas
for the gyroscopes, accelerometers, magnetometers, and
barometers, and then programs them into the flash memory.
In addition, there are a series of user configurable calibration
registers, for in-system tuning.
Manual Sensitivity Correction
The x_GYRO_SCALE registers enable sensitivity adjustment
(see Table 103, Table 104, and Table 105).
Table 103. X_GYRO_SCALE (Page 2, Base Address = 0x04)
Bits
[15:0]
GYROSCOPES
The use calibration for the gyroscopes includes registers for
adjusting bias and sensitivity, as shown in Figure 23.
Table 104. Y_GYRO_SCALE (Page 2, Base Address = 0x06)
1 + X_GYRO_SCALE
FACTORY
CALIBRATION
AND
FILTERING
XG_BIAS_HIGH
X_GYRO_OUT
Bits
[15:0]
X_GYRO_LOW
10278-023
X-AXIS
GYRO
XG_BIAS_LOW
Figure 23. User Calibration Signal Path, Gyroscopes
The xG_BIAS_HIGH registers (see Table 97, Table 98, and
Table 99) and xG_BIAS_LOW registers (see Table 100,
Table 101, and Table 102) provide a bias adjustment function
for the output of each gyroscope sensor.
Table 97. XG_BIAS_HIGH (Page 2, Base Address = 0x12)
Description (Default = 0x0000)
X-axis gyroscope offset correction, upper word
twos complement, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Description (Default = 0x0000)
Y-axis gyroscope offset correction, upper word;
twos complement, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Table 99. ZG_BIAS_HIGH (Page 2, Base Address = 0x1A)
Bits
[15:0]
Linear Acceleration on Effect on Gyroscope Bias
MEMS gyroscopes typically have a bias response to linear
acceleration that is normal to their axis of rotation. The ADIS16480
offers an optional compensation function for this effect. Turn to
Page 3 (DIN = 0x8003) and set CONFIG[7] = 1 (DIN = 0x9080,
DIN = 0x9100). The factory default setting for this function is
enabled.
Description (Default = 0x0000)
Z-axis gyroscope offset correction, upper word;
twos complement, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Bits
[15:8]
7
6
[5:2]
1
0
Table 100. XG_BIAS_LOW (Page 2, Base Address = 0x10)
Bits
[15:0]
Description (Default = 0x0000)
X-axis gyroscope offset correction, lower word;
twos complement, 0°/sec = 0x0000,
1 LSB = 0.02°/sec ÷ 216 = ~0.000000305°/sec
Table 101. YG_BIAS_LOW (Page 2, Base Address = 0x14)
Bits
[15:0]
Description (Default = 0x0000)
Y-axis gyroscope offset correction, lower word;
twos complement, 0°/sec = 0x0000,
1 LSB = 0.02°/sec ÷ 216 = ~0.000000305°/sec
Table 102. ZG_BIAS_LOW (Page 2, Base Address = 0x18)
Bits
[15:0]
Description (Default = 0x0000)
Z-axis gyroscope scale correction; twos complement,
0x0000 = unity gain, 1 LSB = 1 ÷ 215 = ~0.003052%
Table 106. CONFIG (Page 3, Base Address = 0x0A)
Table 98. YG_BIAS_HIGH (Page 2, Base Address = 0x16)
Bits
[15:0]
Description (Default = 0x0000)
Y-axis gyroscope scale correction; twos complement,
0x0000 = unity gain, 1 LSB = 1 ÷ 215 = ~0.003052%
Table 105. Z_GYRO_SCALE (Page 2, Base Address = 0x08)
Bits
[15:0]
Manual Bias Correction
Bits
[15:0]
Description (Default = 0x0000)
X-axis gyroscope scale correction; twos complement,
0x0000 = unity gain, 1 LSB = 1 ÷ 215 = ~0.003052%
Description (Default = 0x0000)
Z-axis gyroscope offset correction, lower word
twos complement, 0°/sec = 0x0000,
1 LSB = 0.02°/sec ÷ 216 = ~0.000000305°/sec
Rev. 0 | Page 30 of 40
Description (Default = 0x00C0)
Not used
Linear-g compensation for gyroscopes (1 = enabled)
Point of percussion alignment (1 = enabled)
Not used
Real-time clock, daylight savings time
(1: enabled, 0: disabled)
Real-time clock control
(1: relative/elapsed timer mode, 0: calendar mode)
Data Sheet
ADIS16480
ACCELEROMETERS
Manual Sensitivity Correction
The user calibration for the accelerometers includes registers for
adjusting bias and sensitivity, as shown in Figure 24.
The x_ACCL_SCALE registers enable sensitivity adjustment
(see Table 113, Table 114, Table 115).
1 + X_ACCL_SCALE
XA_BIAS_HIGH
X_ACCL_OUT
Table 113. X_ACCL_SCALE (Page 2, Base Address = 0x0A)
Bits
[15:0]
X_ACCL_LOW
10278-024
X-AXIS
ACCL
FACTORY
CALIBRATION
AND
FILTERING
XA_BIAS_LOW
Figure 24. User Calibration Signal Path, Accelerometers
Table 114. Y_ACCL_SCALE (Page 2, Base Address = 0x0C)
Manual Bias Correction
Bits
[15:0]
The xA_BIAS_HIGH registers (see Table 107, Table 108,
and Table 109) and xA_BIAS_LOW registers (see Table 110,
Table 111, and Table 112) provide a bias adjustment function
for the output of each gyroscope sensor. The xA_BIAS_HIGH
registers use the same format as x_ACCL_OUT registers.
The xA_BIAS_LOW registers use the same format as
x_ACCL_LOW registers.
Bits
[15:0]
Description (Default = 0x0000)
X-axis accelerometer offset correction, high word,
Twos complement, 0 g = 0x0000, 1 LSB = 0.8 mg
The user calibration registers enable both hard iron and soft
iron correction, as shown in the following relationship:
 M XC  1  S11

 
 M YC    S 21
 M ZC   S31

 
Description (Default = 0x0000)
Y-axis accelerometer offset correction, high word,
Twos complement, 0 g = 0x0000, 1 LSB = 0.8 mg
Table 109. ZA_BIAS_HIGH (Page 2, Base Address = 0x26)
Bits
[15:0]
Description (Default = 0x0000)
Z-axis accelerometer offset correction, high word,
Twos complement, 0 g = 0x0000, 1 LSB = 0.8 mg
Description (Default = 0x0000)
X-axis accelerometer offset correction, low word,
Twos complement, 0 g = 0x0000,
1 LSB = 0.8 mg ÷ 216 = ~0.0000122 mg
Table 111. YA_BIAS_LOW (Page 2, Base Address = 0x20)
Bits
[15:0]
Description (Default = 0x0000)
Y-axis accelerometer offset correction, low word,
Twos complement, 0 g = 0x0000,
1 LSB = 0.8 mg ÷ 216 = ~0.0000122 mg
Table 112. ZA_BIAS_LOW (Page 2, Base Address = 0x24)
Bits
[15:0]
S12
S13   M X  H X 
1  S22 S23    M Y    H Y 
S32 1  S33  M Z   H Z 
The MX, MY, and MZ variables represent the magnetometer
data, prior to application of the user correction formula. The
MXC, MYC, and MZC represent the magnetometer data, after the
application of the user correction formula.
Table 110. XA_BIAS_LOW (Page 2, Base Address = 0x1C)
Bits
[15:0]
Description (Default = 0x0000)
Z-axis accelerometer scale correction,
Twos complement, 0x0000 = unity gain,
1 LSB = 1 ÷ 215 = ~0.003052%
MAGNETOMETERS
Table 108. YA_BIAS_HIGH (Page 2, Base Address = 0x22)
Bits
[15:0]
Description (Default = 0x0000)
Y-axis accelerometer scale correction,
Twos complement, 0x0000 = unity gain,
1 LSB = 1 ÷ 215 = ~0.003052%
Table 115. Z_ACCL_SCALE (Page 2, Base Address = 0x0E)
Table 107. XA_BIAS_HIGH (Page 2, Base Address = 0x1E)
Bits
[15:0]
Description (Default = 0x0000)
X-axis accelerometer scale correction,
Twos complement, 0x0000 = unity gain,
1 LSB = 1 ÷ 215 = ~0.003052%
Description (Default = 0x0000)
Z-axis accelerometer offset correction, low word;,
Twos complement, 0 g = 0x0000,
1 LSB = 0.8 mg ÷ 216 = ~0.0000122 mg
Rev. 0 | Page 31 of 40
ADIS16480
Data Sheet
Hard Iron Correction
Table 121. SOFT_IRON_S12 (Page 2, Base Address = 0x30)
Table 116, Table 117, and Table 118 describe the register format
for the hard iron correction factors: HX, HY, and HZ. These
registers use a twos complement format. Table 119 provides
some numerical examples for converting the digital codes
for these registers into their decimal equivalents.
Bits
[15:0]
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S12
Twos complement format, see Table 129 for examples
Table 122. SOFT_IRON_S13 (Page 2, Base Address = 0x32)
Table 116. HARD_IRON_X (Page 2, Base Address = 0x28)
Bits
[15:0]
Bits
[15:0]
Table 123. SOFT_IRON_S21 (Page 2, Base Address = 0x34)
Description (Default = 0x0000)
X-axis magnetometer hard iron correction factor, HX
Twos complement, ±3.2767 gauss range,
0.1 mgauss/LSB, 0 gauss = 0x0000 (see Table 119)
Bits
[15:0]
Table 117. HARD_IRON_Y (Page 2, Base Address = 0x2A)
Bits
[15:0]
Description (Default = 0x0000)
Y-axis magnetometer hard iron correction factor, HY
Twos complement, ±3.2767 gauss range,
0.1 mgauss/LSB, 0 gauss = 0x0000 (see Table 119)
Table 118. HARD_IRON_Z (Page 2, Base Address = 0x2C)
Bits
[15:0]
Description (Default = 0x0000)
Z-axis magnetometer hard iron correction factor, Hz
Twos complement, ±3.2767 gauss range,
0.1 mgauss/LSB, 0 gauss = 0x0000 (see Table 119)
Decimal
+32,767
+2
+1
0
−1
−2
−32,768
Hex
0x7FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0x8000
Binary
0111 1111 1111 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1000 0000 0000 0000
Soft Iron Correction Matrix
The soft iron correction matrix contains correction factors for
both sensitivity (S11, S22, S33) and alignment (S12, S13, S21, S23, S31,
S32). The registers that represent each soft iron correction factor
are in Table 120 (S11), Table 121 (S12), Table 122 (S13), Table 123
(S21), Table 124 (S22), Table 125 (S23), Table 126 (S31), Table 127
(S32), and Table 128 (S33). Table 129 offers some numerical
examples for converting between the digital codes and their
effect on the magnetometer output, in terms of percent-change.
Table 120. SOFT_IRON_S11 (Page 2, Base Address = 0x2E)
Bits
[15:0]
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S21
Twos complement format, see Table 129 for examples
Table 124. SOFT_IRON_S22 (Page 2, Base Address = 0x36)
Bits
[15:0]
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S22
Twos complement format, see Table 129 for examples
Table 125. SOFT_IRON_S23 (Page 2, Base Address = 0x38)
Bits
[15:0]
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S23
Twos complement format, see Table 129 for examples
Table 126. SOFT_IRON_S31 (Page 2, Base Address = 0x3A)
Table 119. HARD_IRON_x Data Format Examples
Magnetic Field
+3.2767 gauss
+0.2 mgauss
+0.1 mgauss
0 gauss
−0.1 mgauss
−0.2 mgauss
−3.2768 gauss
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S13
Twos complement format, see Table 129 for examples
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S11
Twos complement format, see Table 129 for examples
Bits
[15:0]
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S31
Twos complement format, see Table 129 for examples
Table 127. SOFT_IRON_S32 (Page 2, Base Address = 0x3C)
Bits
[15:0]
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S32
Twos complement format, see Table 129 for examples
Table 128. SOFT_IRON_S33 (Page 2, Base Address = 0x3E)
Bits
[15:0]
Description (Default = 0x0000)
Magnetometer soft iron correction factor, S33
Twos complement format, see Table 129 for examples
Table 129. Soft Iron Correction, Numerical Examples
Delta (%)
+100 – 1/216
+200/215
+100/215
0
−100/215
−200/215
−100
Rev. 0 | Page 32 of 40
Decimal
+32,767
+2
+1
0
−1
−2
−32,768
Hex
0x7FFF
0x0002
0x0001
0x0000
0xFFFF
0xFFFE
0x8000
Binary
0111 1111 1111 1111
0000 0000 0000 0010
0000 0000 0000 0001
0000 0000 0000 0000
1111 1111 1111 1111
1111 1111 1111 1110
1000 0000 0000 0000
Data Sheet
ADIS16480
BAROMETERS
RESTORING FACTORY CALIBRATION
The BR_BIAS_HIGH register (see Table 130) and
BR_BIAS_LOW register (Table 131) provide an offset
control function and use the same format as the output
registers, BAROM_OUT and BAROM_LOW.
Turn to Page 3 (DIN = 0x8003) and set GLOB_CMD[6]
= 1 (DIN = 0x8240, DIN = 0x8300) to execute the factory
calibration restore function. This function resets each user
calibration register to zero, resets all sensor data to 0, and
automatically updates the flash memory within 72 ms. See
Table 146 for more information on GLOB_CMD.
Table 130. BR_BIAS_HIGH (Page 2, Base Address = 0x42)
Description (Default = 0x0000)
Barometric pressure bias correction factor, high word
Twos complement, ±1.3 bar measurement range,
0 bar = 0x0000, 1 LSB = 40 µbar
Table 131. BR_BIAS_LOW (Page 2, Base Address = 0x40)
Bits
[15:0]
Description (Default = 0x0000)
Barometric pressure bias correction factor, low word
Twos complement, ±1.3 bar measurement range,
0 bar = 0x0000, 1 LSB = 40 µbar ÷ 216 = ~0.00061 µbar
POINT OF PERCUSSION ALIGNMENT
CONFIG[6] offers a point of percussion alignment function
that maps the accelerometer sensors to the corner of the package
identified in Figure 25. To activate this feature, turn to Page 3
(DIN = 0x8003), then set CONFIG[6] = 1 (DIN = 0x8A40,
DIN = 0x8B00). See Table 106 for more information on the
CONFIG register.
PIN 23
PIN 1
POINT OF PERCUSSION
ALIGNMENT REFERENCE POINT.
SEE CONFIG[6].
Figure 25. Point of Percussion Reference Point
Rev. 0 | Page 33 of 40
10278-025
Bits
[15:0]
ADIS16480
Data Sheet
ALARMS
Each sensor has an independent alarm function that provides
controls for alarm magnitude, polarity, and enabling a dynamic
rate of change option. The ALM_STS register (see Table 61)
contains the alarm output flags and the FNCTIO_CTRL register
(see Table 149) provides an option for configuring one of the
digital I/O lines as an alarm indicator.
STATIC ALARM USE
The static alarm setting compares each sensor’s output with
the trigger settings in the xx_ALM_MAGN registers (see
Table 132 through Table 141) of that sensor. The polarity controls
for each alarm are in the ALM_CNFG_x registers (see Table 142,
Table 143, Table 144). The polarity establishes whether greater
than or less than produces an alarm condition. The comparison
between the xx_ALM_MAGN value and the output data only
applies to the upper word or 16 bits of the output data.
DYNAMIC ALARM USE
The dynamic alarm setting provides the option of comparing the
change in each sensor’s output over a period of 48.7 ms with that
sensor’s xx_ALM_MAGN register.
Table 137. ZA_ALM_MAGN (Page 3, Base Address = 0x32)
Bits
[15:0]
Description (Default = 0x0000)
Z-axis accelerometer alarm threshold settings,
Twos complement, 0 g = 0x0000, 1 LSB = 0.8 mg
Table 138. XM_ALM_MAGN (Page 3, Base Address = 0x34)
Bits
[15:0]
Description (Default = 0x0000)
X-axis magnetometer alarm threshold settings,
Twos complement, 0 gauss = 0x0000,
1 LSB = 0.1 mgauss
Table 139. YM_ALM_MAGN (Page 3, Base Address = 0x36)
Bits
[15:0]
Description (Default = 0x0000)
Y-axis magnetometer alarm threshold settings,
Twos complement, 0 gauss = 0x0000,
1 LSB = 0.1 mgauss
Table 140. ZM_ALM_MAGN (Page 3, Base Address = 0x38)
Bits
[15:0]
Description (Default = 0x0000)
Z-axis magnetometer alarm threshold settings,
Twos complement, 0 gauss = 0x0000,
1 LSB = 0.1 mgauss
Table 132. XG_ALM_MAGN (Page 3, Base Address = 0x28)
Table 141. BR_ALM_MAGN (Page 3, Base Address = 0x3A)
Bits
[15:0]
Bits
[15:0]
Description (Default = 0x0000)
X-axis gyroscope alarm threshold settings,
Twos complement, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Description (Default = 0x0000)
Z-axis barometer alarm threshold settings,
Twos complement, 0 bar = 0x0000, 1 LSB = 40 µbar
Table 133. YG_ALM_MAGN (Page 3, Base Address = 0x2A)
Table 142. ALM_CNFG_0 (Page 3, Base Address = 0x20)
Bits
[15:0]
Bits
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Description (Default = 0x0000)
Y-axis gyroscope alarm threshold settings,
Twos complement, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Table 134. ZG_ALM_MAGN (Page 3, Base Address = 0x2C)
Bits
[15:0]
Description (Default = 0x0000)
Z-axis gyroscope alarm threshold settings,
Twos complement, 0°/sec = 0x0000, 1 LSB = 0.02°/sec
Table 135. XA_ALM_MAGN (Page 3, Base Address = 0x2E)
Bits
[15:0]
Description (Default = 0x0000)
X-axis accelerometer alarm threshold settings,
Twos complement, 0 g = 0x0000, 1 LSB = 0.8 mg
Table 136. YA_ALM_MAGN (Page 3, Base Address = 0x30)
Bits
[15:0]
Description (Default = 0x0000)
Y-axis accelerometer alarm threshold settings,
Twos complement, 0 g = 0x0000, 1 LSB = 0.8 mg
Rev. 0 | Page 34 of 40
Description (Default = 0x0000)
X-axis accelerometer alarm (1 = enabled)
Not used
X-axis accelerometer alarm polarity (1 = greater than)
X-axis accelerometer dynamic enable (1 = enabled)
Z-axis gyroscope alarm (1 = enabled)
Not used
Z-axis gyroscope alarm polarity (1 = greater than)
Z-axis gyroscope dynamic enable (1 = enabled)
Y-axis gyroscope alarm (1 = enabled)
Not used
Y-axis gyroscope alarm polarity (1 = greater than)
Y-axis gyroscope dynamic enable (1 = enabled)
X-axis gyroscope alarm (1 = enabled)
Not used
X-axis gyroscope alarm polarity (1 = greater than)
X-axis gyroscope dynamic enable (1 = enabled)
Data Sheet
ADIS16480
Table 143. ALM_CNFG_1 (Page 3, Base Address = 0x22)
Bits
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Description (Default = 0x0000)
Y-axis magnetometer alarm (1 = enabled)
Not used
Y-axis magnetometer alarm polarity (1 = greater than)
Y-axis magnetometer dynamic enable (1 = enabled)
X-axis magnetometer (1 = enabled)
Not used
X-axis magnetometer alarm polarity (1 = greater than)
X-axis magnetometer dynamic enable (1 = enabled)
Z-axis accelerometer alarm (1 = enabled)
Not used
Z-axis accelerometer alarm polarity (1 = greater than)
Z-axis accelerometer dynamic enable (1 = enabled)
Y-axis accelerometer alarm (1 = enabled)
Not used
Y-axis accelerometer alarm polarity (1 = greater than)
Y-axis accelerometer dynamic enable (1 = enabled)
Alarm Example
Table 145 offers an alarm configuration example, which sets the
z-axis gyroscope alarm to trip when Z_GYRO_OUT > 131.1°/sec
(0x199B).
Table 145. Alarm Configuration Example
DIN
0xAC9B
0xAD19
0xA000
0xA10A
Table 144. ALM_CNFG_2 (Page 3, Base Address = 0x24)
Bits
[15:8]
7
6
5
4
3
2
1
0
Description (Default = 0x0000)
Not used
Barometer alarm (1 = enabled)
Not used
Barometer alarm polarity (1 = greater than)
Barometer dynamic enable (1 = enabled)
Z-axis magnetometer alarm (1 = enabled)
Not used
Z-axis magnetometer alarm polarity (1 = greater than)
Z-axis magnetometer dynamic enable (1 = enabled)
Rev. 0 | Page 35 of 40
Description
Set ZG_ALM_MAGN[7:0] = 0x9B
Set ZG_ALM_MAGN[15:8] = 0x19
Set ALM_CNFG_0[7:0] = 0x00
Set ALM_CNFG_0[15:8] = 0x0A
ADIS16480
Data Sheet
SYSTEM CONTROLS
MEMORY MANAGEMENT
The ADIS16480 provides a number of system level controls
for managing its operation, which include reset, self-test,
calibration, memory management, and I/O configuration.
The GLOB_CMD register (see Table 146) provides trigger bits for
several operations. Write 1 to the appropriate bit in GLOB_CMD to
start a function. After the function completes, the bit restores to 0.
The data retention of the flash memory depends on the temperature and the number of write cycles. Figure 26 characterizes the
dependence on temperature, and the FLSHCNT_LOW and
FLSHCNT_HIGH registers (see Table 147 and Table 148)
provide a running count of flash write cycles. The flash updates
every time GLOB_CMD[6] or GLOB_CMD[3] is set to 1.
Table 146. GLOB_CMD (Page 3, Base Address = 0x02)
Table 147. FLSHCNT_LOW (Page 2, Base Address = 0x7C)
8
7
6
[5:4]
3
2
1
0
Description
EKF reset
Not used
Reset the reference rotation
matrix
Tare command
Software reset
Factory calibration restore
Not used
Flash memory update
Flash memory test
Self-test
Not used
Execution Time
1.7 seconds
Not applicable
1 sample period
1 sample period
82 ms
1 sample period
Not applicable
1100 ms
53 ms
12 ms
N/A
Software Reset
Bits
[15:0]
Table 148. FLSHCNT_HIGH (Page 2, Base Address = 0x7E)
Bits
[15:0]
Description
Binary counter; number of flash updates, upper word
600
Turn to Page 3 (DIN = 0x8003) and then set GLOB_CMD[7] = 1
(DIN = 0x8280, DIN = 0x8300) to reset the operation, which
removes all data, initializes all registers from their flash settings,
and starts data collection. This function provides a firmware
alternative to the RST line (see Table 5, Pin 8).
450
300
150
0
30
40
55
70
85
100
125
JUNCTION TEMPERATURE (°C)
135
150
Figure 26. Flash Memory Retention
Automatic Self-Test
Turn to Page 3 (DIN = 0x8003) and then set GLOB_CMD[1] = 1
(DIN = 0x8202, then DIN = 0x8300) to run an automatic selftest routine, which executes the following steps:
1.
2.
3.
4.
5.
6.
7.
Description
Binary counter; number of flash updates, lower word
10278-026
Bits
15
[14:10]
9
RETENTION (Years)
GLOBAL COMMANDS
Measure output on each sensor.
Activate self-test on each sensor.
Measure output on each sensor.
Deactivate the self-test on each sensor.
Calculate the difference with self-test on and off.
Compare the difference with internal pass/fail criteria.
Report the pass/fail results for each sensor in DIAG_STS.
Flash Memory Test
Turn to Page 3 (DIN = 0x8003), and then set GLOB_CMD[2] = 1
(DIN = 0x8204, DIN = 0x8300) to run a checksum test of the
internal flash memory, which compares a factory programmed
value with the current sum of the same memory locations. The
result of this test loads into SYS_E_FLAG[6]. Turn to Page 0
(DIN = 0x8000) and use DIN = 0x0800 to read SYS_E_FLAG.
After waiting 12 ms for this test to complete, turn to Page 0
(DIN = 0x8000) and read DIAG_STS using DIN = 0x0A00.
Note that using an external clock can extend this time. When
using an external clock of 100 Hz, this time extends to 35 ms.
Note that 100 Hz is too slow for optimal sensor performance.
Rev. 0 | Page 36 of 40
Data Sheet
ADIS16480
GENERAL-PURPOSE I/O
General-Purpose I/O Control
There are four general-purpose I/O lines: DIO1, DIO2, DIO3, and
DIO4. The FNCTIO_CTRL register controls the basic function
of each I/O line. Each I/O line only supports one function at a
time. In cases where a single line has two different assignments,
the enable bit for the lower priority function automatically
resets to zero and is disabled. The priority is (1) data-ready, (2)
sync clock input, (3) alarm indicator, and (4) general-purpose,
where 1 identifies the highest priority and 4 indicates the lowest
priority.
When FNCTIO_CTRL does not configure a DIOx pin,
GPIO_CTRL provides register controls for general-purpose use
of the pin. GPIO_CTRL[3:0] provides input/output assignment
controls for each line. When the DIOx lines are inputs, monitor
their levels by reading GPIO_CTRL[7:4]. When the DIOx lines
are used as outputs, set their levels by writing to GPIO_CTRL[7:4].
For example, use the following sequence to set DIO1 and
DIO3 as high and low output lines, respectively, and set DIO2
and DIO4 as input lines. Turn to Page 3 (DIN = 0x8003) and set
GPIO_CTRL[7:0] = 0x15 (DIN = 0x8815, then DIN = 0x8900).
Table 149. FNCTIO_CTRL (Page 3, Base Address = 0x06)
Bits
[15:12]
11
10
[9:8]
7
6
[5:4]
3
2
[1:0]
Table 150. GPIO_CTRL (Page 3, Base Address = 0x08)
Description (Default = 0x000D)
Not used
Alarm indicator: 1 = enabled, 0 = disabled
Alarm indicator polarity: 1 = positive, 0 = negative
Alarm indicator line selection:
00 = DIO1, 01 = DIO2, 10 = DIO3, 11 = DIO4
Sync clock input enable: 1 = enabled, 0 = disabled
Sync clock input polarity:
1 = rising edge, 0 = falling edge
Sync clock input line selection:
00 = DIO1, 01 = DIO2, 10 = DIO3, 11 = DIO4
Data-ready enable: 1 = enabled, 0 = disabled
Data-ready polarity: 1 = positive, 0 = negative
Data-ready line selection:
00 = DIO1, 01 = DIO2, 10 = DIO3, 11 = DIO4
Bits
[15:8]
7
6
5
4
3
2
1
0
Description (Default = 0x00X0)1
Don’t care
General-Purpose I/O Line 4 (DIO4) data level
General-Purpose I/O Line 3 (DIO3) data level
General-Purpose I/O Line 2 (DIO2) data level
General-Purpose I/O Line 1 (DIO1) data level
General-Purpose I/O Line 4 (DIO4) direction control
(1 = output, 0 = input)
General-Purpose I/O Line 3 (DIO3) direction control
(1 = output, 0 = input)
General-Purpose I/O Line 2 (DIO2) direction control
(1 = output, 0 = input)
General-Purpose I/O Line 1 (DIO1) direction control
(1 = output, 0 = input)
Data-Ready Indicator
1
FNCTIO_CTRL[3:0] provide some configuration options for
using one of the DIOx lines as a data-ready indicator signal,
which can drive a processor’s interrupt control line. The factory
default assigns DIO2 as a positive polarity, data-ready signal.
Use the following sequence to change this assignment to DIO1
with a negative polarity: turn to Page 3 (DIN = 0x8003) and set
FNCTIO_CTRL[3:0] = 1000 (DIN = 0x8608, then DIN = 0x8700).
The timing jitter on the data-ready signal is ±1.4 µs.
POWER MANAGEMENT
Input Sync/Clock Control
FNCTIO_CTRL[7:4] provide some configuration options for
using one of the DIOx lines as an input synchronization signal
for sampling inertial sensor data. For example, use the following
sequence to establish DIO4 as a positive polarity, input clock pin
and keep the factory default setting for the data-ready function:
turn to Page 3 (DIN = 0x8003) and set FNCTIO_CTRL[7:0]
= 0xFD (DIN = 0x86FD, then DIN = 0x8700). Note that this
command also disables the internal sampling clock, and no
data sampling takes place without the input clock signal.
When selecting a clock input frequency, consider the 330 Hz
sensor bandwidth, because under sampling the sensors can
degrade noise and stability performance.
GPIO_CTRL[7:4] reflects levels on DIOx lines.
The SLP_CNT register (see Table 151) provides controls for
both power-down mode and sleep mode. The trade-off between
power-down mode and sleep mode is between idle power and
recovery time. Power-down mode offers the best
idle power consumption but requires the most time to recover.
Also, all volatile settings are lost during power-down but are
preserved during sleep mode.
For timed sleep mode, turn to Page 3 (DIN = 0x8003), write the
amount of sleep time to SLP_CNT[7:0] and then, set SLP_CNT[8]
= 1 (DIN = 0x9101) to start the sleep period. For a timed powerdown period, change the last command to set SLP_CNT[9] = 1
(DIN = 0x9102). To power down or sleep for an indefinite
period, set SLP_CNT[7:0] = 0x00 first, then set either
SLP_CNT[8] or SLP_CNT[9] to 1. Note that the command
takes effect when the CS line goes high. To awaken the device
from sleep or power-down mode, use one of the following
options to restore normal operation:
•
•
•
Rev. 0 | Page 37 of 40
Assert CS from high to low.
Pulse RST low, then high again.
Cycle the power.
ADIS16480
Data Sheet
For example, set SLP_CNT[7:0] = 0x64 (DIN = 0x9064), then
set SLP_CNT[8] = 1 (DIN = 0x9101) to start a sleep period of
100 seconds.
Table 151. SLP_CNT (Page 3, Base Address = 0x10)
Bits
[15:10]
9
8
[7:0]
Description
Not used
Power-down mode
Normal sleep mode
Programmable time bits; 1 sec/LSB;
0x00 = indefinite
If the sleep mode and power-down mode bits are both set high,
the normal sleep mode (SLP_CNT[8]) bit takes precedence.
General-Purpose Registers
The USER_SCR_x registers (see Table 152, Table 153, Table 154,
and Table 155) provide four 16-bit registers for storing data.
Table 152. USER_SCR_1 (Page 2, Base Address = 0x74)
Bits
[15:0]
Description
User-defined
Table 153. USER_SCR_2 (Page 2, Base Address = 0x76)
Bits
[15:0]
Description
User-defined
Bits
[15:14]
[13:8]
[7:6]
[5:0]
Description
User-defined
Table 155. USER_SCR_4 (Page 2, Base Address = 0x7A)
Bits
[15:0]
Write the current time to each time data register after setting
CONFIG[0] = 1 (DIN = 0x8003, DIN = 0x8A01). Note that
CONFIG[1] provides a bit for managing daylight savings time.
After the CONFIG and TIME_xx_OUT registers are
configured, set GLOB_CMD[3] = 1 (DIN = 0x8003, DIN =
0x8208, DIN = 0x8300) to back up these settings in flash, and
use a separate 3.3 V source to supply power to the VDDRTC
function. Note that access to time data in the TIME_xx_OUT
registers requires normal operation (VDD = 3.3 V and full
startup), but the timer function only requires that VDDRTC =
3.3 V when the rest of the ADIS16480 is turned off.
Table 156. TIME_MS_OUT (Page 0, Base Address = 0x78)
Table 154. USER_SCR_3 (Page 2, Base Address = 0x78)
Bits
[15:0]
write the current time to the real-time registers in the following
sequence: seconds (TIME_MS_OUT[5:0]), minutes (TIME_
MS_OUT[13:8]), hours (TIME_DH_OUT[5:0]), day
(TIME_DH_OUT[12:8]), month (TIME_YM_OUT[3:0]),
and year (TIME_YM_OUT[14:8]). The updates to the timer
do not become active until there is a successful write to the
TIME_ YM_OUT[14:8] byte. The real-time clock registers
reflect the newly updated values only after the next seconds tick
of the clock that follows the write to TIME_YM_OUT[14:8]
(year). Writing to TIME_ YM_OUT[14:8] activates all timing
values; therefore, always write to this location last when
updating the timer, even if the year information does not
require updating.
Description
User-defined
Description
Not used
Minutes, binary data, range = 0 to 59
Not used
Seconds, binary data, range = 0 to 59
Table 157. TIME_DH_OUT (Page 0, Base Address = 0x7A)
Real-Time Clock Configuration/Data
The VDDRTC power supply pin (see Table 5, Pin 23) provides
a separate supply for the real-time clock (RTC) function. This
enables the RTC to keep track of time, even when the main supply
(VDD) is off. Configure the RTC function by selecting one of
two modes in CONFIG[0] (see Table 106). The real-time clock
data is available in the TIME_MS_OUT register (see Table 156),
TIME_DH_OUT register (see Table 157), and TIME_YM_OUT
register (see Table 158). When using the elapsed timer mode,
the time data registers start at 0x0000 when the device starts
up (or resets) and begin keeping time in a manner that is
similar to a stopwatch. When using the clock/calendar mode,
Bits
[15:13]
[12:8]
[7:6]
[5:0]
Description
Not used
Day, binary data, range = 1 to 31
Not used
Hours, binary data, range = 0 to 23
Table 158. TIME_YM_OUT (Page 0, Base Address = 0x7C)
Bits
[15]
[14:8]
[7:4]
[3:0]
Rev. 0 | Page 38 of 40
Description
Not used
Year, binary data, range = 0 to 99, relative to 2000 A.D.
Not used
Month, binary data, range = 1 to 12
Data Sheet
ADIS16480
APPLICATIONS INFORMATION
PROTOTYPE INTERFACE BOARD
INSTALLATION TIPS
The ADIS16480/PCBZ includes one ADIS16480AMLZ,
one interface printed circuit board (PCB), and four M2 × 0.4 ×
18 mm machine screws. The interface PCB provides four
holes for ADIS16480AMLZ attachment and four larger holes
for attaching the interface PCB to another surface. The
ADIS16480AMLZ attachment holes are pre-tapped for M2 ×
0.4 mm machine screws and the four larger holes, located in
each corner, support attachment with M2.5 or #4 machine
screws. J1 is a dual row, 2 mm (pitch) connector that works with
a number of ribbon cable systems, including 3M Part Number
152212-0100-GB (ribbon crimp connector) and 3M Part Number
3625/12 (ribbon cable). Note that J1 has 16 pads but currently
uses a 12-pin connector. The extra pins accommodate future
evaluation system plans.
Figure 29 and Figure 30 provide the mechanical design
information used for the ADIS16480/PCBZ. Use these
figures when implementing a connector-down approach,
where the mating connector and the ADIS16480AMLZ are on
the same surface. When designing a connector-up system, use
the mounting holes shown in Figure 29 as a guide in designing
the bulkhead mounting system and use Figure 30 as a guide in
developing the mating connector interface on a flexible circuit
or other connector system. The suggested torque setting for the
attachment hardware is 40 inch-ounces, or 0.2825 N-m.
39.600 BSC
19.800 BSC
2.500 BSC 4×
0.560 BSC 2×
ALIGNMENT HOLES
FOR MATING SOCKET
5 BSC
5 BSC
10278-029
1.65mm
1.642 BSC
21.300 BSC
42.600
Figure 28 provides the pin assignments for J1. The pin
descriptions match those listed in Table 5. The C1 and C2
locations provide solder pads for extra capacitors, which
can provide additional filtering for start-up transients and
supply noise.
NOTES
1. ALL DIMENSIONS IN mm UNITS.
ADIS16480
MOUNTING
HOLES
0.4334 [11.0]
0.019685
[0.5000]
(TYP)
6.35mm
0.0240 [0.610]
0.054 [1.37]
10278-027
6.35mm
58.42mm
64.77mm
Figure 27. Physical Diagram for the ADIS16480/PCBZ
0.022±
DIA (TYP)
NONPLATED
0.022 DIA THRU HOLE (TYP)
THRU HOLE 2×
NONPLATED THRU HOLE
1
2
SCLK
CS
3
4
DOUT
DNC
5
6
DIN
GND
7
8
GND
GND
9
10
VDD
VDD
11
12
VDD
DIO1
13
14
DIO2
DIO3
15
16
DIO4
0.0394 [1.00]
Figure 30. Suggested Layout and Mechanical Design for the Mating Connector
J1
RST
0.1800
[4.57]
Figure 28. ADIS16480/PCBZ J1 Pin Assignments
Rev. 0 | Page 39 of 40
10278-030
0.0394 [1.00]
11.30mm
10278-028
66.04mm
59.69mm
Figure 29. Suggested Mounting Hole Locations, Connector Down
ADIS16480
Data Sheet
OUTLINE DIMENSIONS
44.254
44.000
43.746
Ø 2.40 BSC
(4 PLCS)
39.854
39.600
39.346
2.20 BSC
19.20
19.80
19.40
DETAIL A
15.00
BSC
0.069
0.054
0.039
8.25
BSC
42.80
42.60
42.30
1.00 BSC
47.254
47.000
46.746
DETAIL A
BOTTOM VIEW
14.200
14.000
13.800
DETAIL B
FRONT VIEW
6.50 BSC
3.454
3.200
2.946
5.50
BSC
5.50
BSC
1.00 BSC
PITCH
0.30 SQ BSC
DETAIL B
03-28-2012-C
2.84 BSC
Figure 31. 24-Lead Module with Connector Interface [MODULE]
(ML-24-6)
Dimensions shown in millimeters
ORDERING GUIDE
Model 1, 2
ADIS16480AMLZ
ADIS16480/PCBZ
1
2
Temperature Range
−40°C to +85°C
Package Description
24-Lead Module with Connector Interface [MODULE]
Interface PCB
Z = RoHS Compliant Part.
The ADIS16480/PCBZ includes one ADIS16480AMLZ and one interface board PCB. See Figure 27 for more information on the interface PCB.
©2012 Analog Devices, Inc. All rights reserved. Trademarks and
registered trademarks are the property of their respective owners.
D10278-0-5/12(0)
Rev. 0 | Page 40 of 40
Package Option
ML-24-6