[AK09918]
AK09918
3-axis Electronic Compass
1. General Description
AK09918 is 3-axis electronic compass IC with high sensitive Hall sensor technology.
Small package of AK09918 incorporates magnetic sensors for detecting terrestrial magnetism in the X-axis,
Y-axis, and Z-axis, a sensor driving circuit, signal amplifier chain, and an arithmetic circuit for processing
the signal from each sensor. Self-test function is also incorporated. From its compact foot print and thin
package feature, it is suitable for map heading up purpose in Smart phone to realize pedestrian navigation
function.
2. Features
Functions:
3-axis magnetometer device suitable for compass application
Built-in A to D Converter for magnetometer data out
16-bit data out for each 3-axis magnetic component
Sensitivity: 0.15 µT/LSB (typ.)
Serial interface
I2C bus interface
Standard and Fast modes compliant with Philips I2C specification Ver.2.1
Operation mode
Power-down, Single measurement, Continuous measurement and Self-test
DRDY function for measurement data ready
Magnetic sensor overflow monitor function
Built-in oscillator for internal clock source
Power on Reset circuit
Self-test function with internal magnetic source
Built-in magnetic sensitivity adjustment circuit
Operating temperatures:
-30˚C to +85˚C
Operating supply voltage:
+1.65V to +1.95V
Current consumption:
Power-down:
1 µA (typ.)
Measurement:
Average current consumption at 100 Hz repetition rate: 1.1mA (typ.)
Package:
AK09918C
4-pin WL-CSP (BGA):
0.8 mm 0.8 mm 0.5mm
016014242-E-00
2016/11
-1-
[AK09918]
3. Table of Contents
1. General Description .................................................................................................................. 1
2. Features ..................................................................................................................................... 1
3. Table of Contents ...................................................................................................................... 2
4. Block Diagram and Functions ................................................................................................... 3
5. Pin Configurations and Functions ............................................................................................. 4
6. Absolute Maximum Ratings ...................................................................................................... 4
7. Recommended Operating Conditions ....................................................................................... 4
8. Electrical Characteristics ........................................................................................................... 5
8.1. DC Characteristics.............................................................................................................. 5
8.2. AC Characteristics .............................................................................................................. 6
8.3. Analog Circuit Characteristics............................................................................................ 6
8.4. I2C Bus Interface ................................................................................................................ 7
9. Function Descriptions ............................................................................................................... 8
9.1. Power States ....................................................................................................................... 8
9.2. Reset Functions .................................................................................................................. 8
9.3. Operation Modes ................................................................................................................ 9
9.4. Description of Each Operation Mode ............................................................................... 10
9.4.1. Power-down Mode .................................................................................................... 10
9.4.2. Single Measurement Mode ........................................................................................ 10
9.4.3. Continuous Measurement Mode 1, 2, 3 and 4 ........................................................... 11
9.4.4. Self-test Mode............................................................................................................ 15
10. Serial Interface ...................................................................................................................... 16
10.1. I2C Bus Interface ............................................................................................................ 16
10.1.1. Data Transfer ........................................................................................................... 16
10.1.2. WRITE Instruction .................................................................................................. 18
10.1.3. READ Instruction .................................................................................................... 19
11. Registers ................................................................................................................................ 20
11.1. Description of Registers ................................................................................................. 20
11.2. Register Map .................................................................................................................. 21
11.3. Detailed Description of Register .................................................................................... 22
11.3.1. WIA: Who I Am ...................................................................................................... 22
11.3.2. RSV: Reserved register ............................................................................................ 22
11.3.3. ST1: Status 1 ............................................................................................................ 22
11.3.4. HXL to HZH: Measurement data ............................................................................ 23
11.3.5. TMPS: Dummy register ........................................................................................... 23
11.3.6. ST2: Status 2 ............................................................................................................ 24
11.3.7. CNTL1: Dummy register ......................................................................................... 24
11.3.8. CNTL2: Control 2.................................................................................................... 24
11.3.9. CNTL3: Control 3.................................................................................................... 25
11.3.10. TS1, TS2: Test register........................................................................................... 25
12. Example of Recommended External Connection ................................................................. 26
13. Package ................................................................................................................................. 27
13.1. Marking .......................................................................................................................... 27
13.2. Pin Assignment ............................................................................................................... 27
13.3. Outline Dimensions ........................................................................................................ 28
13.4. Recommended Foot Print Pattern................................................................................... 28
14. Relationship between the Magnetic Field and Output Code ................................................. 29
IMPORTANT NOTICE .............................................................................................................. 30
016014242-E-00
2016/11
-2-
[AK09918]
4. Block Diagram and Functions
3-axis
Hall
sensor
Chopper
SW
PreAMP
Integrator&ADC
MUX
OSC
HE-Drive
SCL
Timing
Control
VREF
Interface Logic
& Register
SDA
Magnetic source
POR
VSS
Block
3-axis Hall sensor
MUX
Chopper SW
HE-Drive
Pre-AMP
Integrator & ADC
OSC
POR
VREF
Interface Logic
&
Register
Timing Control
Magnetic Source
VDD
Function
Monolithic Hall elements.
Multiplexer for selecting Hall elements.
Performs chopping.
Magnetic sensor drive circuit.
Fixed-gain differential amplifier used to amplify the magnetic sensor signal.
Integrates and amplifies Pre-AMP output and performs analog-to-digital
conversion.
Generates an operating clock for sensor measurement.
Power On Reset circuit. Generates reset signal on rising edge of VDD.
Generates reference voltage and current.
Exchanges data with an external CPU.
I2C bus interface using two pins, namely, SCL and SDA. Standard and Fast modes
are supported.
Generates a timing signal required for internal operation from a clock generated by
the OSC.
Generates magnetic field for Self-test of magnetic sensor.
016014242-E-00
2016/11
-3-
[AK09918]
5. Pin Configurations and Functions
Pin No.
A1
Pin name
VSS
I/O
-
Type
-
A2
SCL
I
CMOS
B1
VDD
-
Power
B2
SDA
I/O
CMOS
Function
Ground pin.
Control data clock input pin.
Input: Schmidt trigger
Positive power supply pin.
Control data input/output pin.
Input: Schmidt trigger, Output: Open-drain
6. Absolute Maximum Ratings
Vss = 0V
Parameter
Power supply voltage
Input voltage
(except for power supply pin)
Input current
(except for power supply pin)
Storage temperature
Symbol
Vdd
VIN
Min.
-0.3
-0.3
Max.
+2.5
+2.5
Unit
V
V
IIN
-
±10
mA
Tst
-40
+125
˚C
If the device is used in conditions exceeding these values, the device may be destroyed. Normal operations are not
guaranteed in such exceeding conditions.
7. Recommended Operating Conditions
Vss = 0V
Parameter
Operating temperature
Power supply voltage
Symbol
Ta
Vdd
Min.
-30
1.65
016014242-E-00
Typ.
1.8
Max.
+85
1.95
Unit
˚C
V
2016/11
-4-
[AK09918]
8. Electrical Characteristics
The following conditions apply unless otherwise noted:
Vdd = 1.65V to 1.95V, Temperature range = -30˚C to +85˚C.
8.1. DC Characteristics
Parameter
High level input voltage
Symbol
VIH
Low level input voltage
VIL
Input current
IIN
Hysteresis input voltage
(Note 1)
VHS
SCL
SDA
Low level output voltage
(Note 2)
VOL
SDA
IOL ≤ +3mA
Current consumption
(Note 3)
IDD1
VDD
Power-down mode
Vdd = 1.95V
When magnetic sensor
is driven
Self-test mode
IDD2
IDD3
(Note 1)
(Note 2)
(Note 3)
Pin
SCL
SDA
SCL
SDA
SCL
SDA
Condition
VIN = Vss or Vdd
Min.
70%Vdd
Typ.
Max.
Unit
V
-0.3
30%Vdd
V
-10
+10
µA
10%Vdd
V
20%Vdd
V
1
3
µA
1.5
3
mA
2.5
4
mA
Schmitt trigger input (reference value for design)
Output is Open-drain. Connect a pull-up resistor externally. Maximum capacitive load: 400pF
(Capacitive load of each bus line for I2C bus interface).
Without any resistance load. It does not include the current consumed by external loads
(pull-down resister, etc.). SDA = SCL = Vdd or 0V.
016014242-E-00
2016/11
-5-
[AK09918]
8.2. AC Characteristics
Parameter
Power supply rise time
(Note 4)
POR completion time
(Note 4)
Power supply turn off
voltage (Note 4)
Power supply turn on
interval (Note 4)
Symbol
PSUP
Wait time before mode
setting
Twait
(Note 4)
(Note 5)
Pin
VDD
PORT
SDV
VDD
PSINT
VDD
Condition
Period of time that VDD changes
from 0.2V to Vdd.
Period of time after PSUP to
Power-down mode (Note 5)
Turn off voltage to enable POR to
restart (Note 5)
Period of time that voltage lower
than SDV needed to be kept to
enable POR to restart (Note 5)
Min.
Typ.
Max.
50
Unit
ms
100
µs
0.2
V
100
µs
100
µs
Reference value for design.
When POR circuit detects the rise of VDD voltage, it resets internal circuits and initializes the
registers. After reset, AK09918 transits to Power-down mode.
Power-down mode
Power-down mode
VDD
PORT
SDV
0V
PSUP
PSINT
8.3. Analog Circuit Characteristics
Parameter
Measurement data output bit
Time for measurement
Magnetic sensor sensitivity
Magnetic sensor measurement range
(Note 6)
Magnetic sensor initial offset
(Note 7)
(Note 6)
(Note 7)
Symbol
DBIT
TSM
BSE
BRG
Condition
Min.
-
Single measurement mode
Ta = 25 ˚C
Ta = 25 ˚C
0.1425
±4670
BIO
Ta = 25 ˚C
-2000
Typ.
16
7.2
0.15
±4912
Max.
Unit
bit
8.2
ms
0.1575 µT/LSB
±5160
µT
+2000
LSB
Reference value for design
Value of measurement data register on shipment test without applying magnetic field on purpose.
016014242-E-00
2016/11
-6-
[AK09918]
8.4. I2C Bus Interface
I2C bus interface is compliant with Standard mode and Fast mode. Standard/Fast mode is selected
automatically by fSCL.
Standard mode
fSCL ≤ 100kHz
Symbol
fSCL
tHIGH
tLOW
tR
tF
tHD:STA
tSU:STA
tHD:DAT
tSU:DAT
tSU:STO
tBUF
Parameter
SCL clock frequency
SCL clock “High” time
SCL clock “Low” time
SDA and SCL rise time
SDA and SCL fall time
Start Condition hold time
Start Condition setup time
SDA hold time (vs. SCL falling edge)
SDA setup time (vs. SCL rising edge)
Stop Condition setup time
Bus free time
Min.
Typ.
Max.
100
Unit
kHz
s
s
s
s
s
s
s
ns
s
s
4.0
4.7
1.0
0.3
4.0
4.7
0
250
4.0
4.7
Fast mode
100kHz ≤ fSCL ≤ 400kHz
Symbol
fSCL
tHIGH
tLOW
tR
tF
tHD:STA
tSU:STA
tHD:DAT
tSU:DAT
tSU:STO
tBUF
tSP
Parameter
SCL clock frequency
SCL clock “High” time
SCL clock “Low” time
SDA and SCL rise time
SDA and SCL fall time
Start Condition hold time
Start Condition setup time
SDA hold time (vs. SCL falling edge)
SDA setup time (vs. SCL rising edge)
Stop Condition setup time
Bus free time
Noise suppression pulse width
Min.
Typ.
Max.
400
Unit
kHz
s
s
s
s
s
s
s
ns
s
s
ns
0.6
1.3
0.3
0.3
0.6
0.6
0
100
0.6
1.3
50
[I2C bus interface timing]
1/fSCL
VIH
SCL
VIL
VIH
SDA
VIL
tLOW
tBUF
tR
tHIGH
tF
tSP
VIH
SCL
VIL
tHD:STA
Stop
Start
tHD:DAT
tSU:DAT
tSU:STA
tSU:STO
Start
Stop
016014242-E-00
2016/11
-7-
[AK09918]
9. Function Descriptions
9.1. Power States
When VDD is turned on from Vdd = OFF (0V), all registers in AK09918 are initialized by POR circuit and
AK09918 transits to Power-down mode.
Table 9.1. Power state
State
1
VDD
OFF (0V)
2
1.65V to 1.95V
Power state
OFF
It doesn’t affect external interface.
ON
9.2. Reset Functions
Power on Reset (POR) works until Vdd reaches to the operation effective voltage (about 1.1V: reference
value for design) on power-on sequence. After POR is completed, all registers are initialized and AK09918
transits to Power-down mode.
When Vdd = 1.65 to 1.95V, POR circuit is active.
AK09918 has two types of reset;
(1) Power on Reset (POR)
When Vdd rise is detected, POR circuit operates, and AK09918 is reset.
(2) Soft reset
AK09918 is reset by setting SRST bit. When AK09918 is reset, all registers are initialized and
AK09918 transits to Power-down mode.
016014242-E-00
2016/11
-8-
[AK09918]
9.3. Operation Modes
AK09918 has following seven operation modes:
(1) Power-down mode
(2) Single measurement mode
(3) Continuous measurement mode 1
(4) Continuous measurement mode 2
(5) Continuous measurement mode 3
(6) Continuous measurement mode 4
(7) Self-test mode
By setting CNTL2 register MODE[4:0] bits, the operation set for each mode is started.
A transition from one mode to another is shown below.
MODE[4:0] = “00001”
Power-down
MODE[4:0] = “00000”
mode
Transits automatically
MODE[4:0] = “00010”
MODE[4:0] = “00000”
MODE[4:0] = “00100”
MODE[4:0] = “00000”
MODE[4:0] = “00110”
MODE[4:0] = “00000”
MODE[4:0] = “01000”
MODE[4:0] = “00000”
MODE[4:0] = “10000”
MODE[4:0] = “00000”
Single measurement mode
Sensor is measured for one time and data is output.
Transits to Power-down mode automatically after
measurement ended.
Continuous measurement mode 1
Sensor is measured periodically in 10Hz.
Transits to Power-down mode by writing
MODE[4:0] = “00000”.
Continuous measurement mode 2
Sensor is measured periodically in 20Hz.
Transits to Power-down mode by writing
MODE[4:0] =“00000”.
Continuous measurement mode 3
Sensor is measured periodically in 50Hz.
Transits to Power-down mode by writing
MODE[4:0] = “00000”.
Continuous measurement mode 4
Sensor is measured periodically in 100Hz.
Transits to Power-down mode by writing
MODE[4:0] = “00000”.
Self-test mode
Sensor is self-tested and the result is output.
Transits to Power-down mode automatically.
Transits automatically
Figure 9.1. Operation mode
When power is turned ON, AK09918 is in Power-down mode. When a specified value is set to MODE[4:0]
bits, AK09918 transits to the specified mode and starts operation. When user wants to change operation
mode, transit to Power-down mode first and then transit to other modes. After Power-down mode is set, at
least 100 s (Twait) is needed before setting another mode
016014242-E-00
2016/11
-9-
[AK09918]
9.4. Description of Each Operation Mode
9.4.1. Power-down Mode
Power to almost all internal circuits is turned off. All registers are accessible in Power-down mode. Data
stored in read/write registers are remained. They can be reset by soft reset.
9.4.2. Single Measurement Mode
When Single measurement mode (MODE[4:0] bits = “00001”) is set, magnetic sensor measurement is
started. After magnetic sensor measurement and signal processing is finished, measurement magnetic data is
stored to measurement data registers (HXL to HZH), then AK09918 transits to Power-down mode
automatically. On transition to Power-down mode, MODE[4:0] bits turns to “00000”. At the same time,
DRDY bit in ST1 register turns to “1”. This is called “Data Ready”. When any of measurement data register
(HXL to TMPS) or ST2 register is read, DRDY bit turns to “0”. It remains “1” on transition from
Power-down mode to another mode. (Figure 9.2. )
When sensor is measuring (Measurement period), measurement data registers (HXL to TMPS) keep the
previous data. Therefore, it is possible to read out data even in measurement period. Data read out in
measurement period are previous data.(Figure 9.3. )
Operation Mode:
Power-down
Single measuremnet
(1)
(2)
(3)
Measurement period
Internal Buffer
Last Data
Measurement Data (1)
Measurement Data Register
Last Data
Data(2)
Data(3)
Measurement Data (1)
Data(3)
Data(1)
Data(3)
DRDY
Data read
Register Write
MODE[4:0]="00001"
MODE[4:0]="00001" MODE[4:0]="00001"
Figure 9.2. Single measurement mode when data is read out of measurement period
Operation Mode:
Power-down
Single measuremnet
(1)
(2)
(3)
Measurement period
Internal Buffer
Last Data
Measurement Data (1)
Measurement Data Register
Last Data
Data(2)
Data(3)
Measurement Data (1)
DRDY
Data read
Register Write
Data(1)
MODE[4:0]="00001"
MODE[4:0]="00001" MODE[4:0]="00001"
Figure 9.3. Single measurement mode when data read started during measurement period
016014242-E-00
2016/11
- 10 -
[AK09918]
9.4.3. Continuous Measurement Mode 1, 2, 3 and 4
When Continuous measurement mode 1 (MODE[4:0] bits = “00010”), 2 (MODE[4:0] bits = “00100”), 3
(MODE[4:0] bits = “00110”) or 4 (MODE[4:0] bits = “01000”) is set, magnetic sensor measurement is
started periodically at 10 Hz, 20 Hz, 50 Hz or 100 Hz respectively. After magnetic sensor measurement and
signal processing is finished, measurement magnetic data is stored to measurement data registers (HXL to
HZH) and all circuits except for the minimum circuit required for counting cycle length are turned off (PD).
When the next measurement timing comes, AK09918 wakes up automatically from PD and starts
measurement again.
Continuous measurement mode ends when Power-down mode (MODE[4:0] bits = “00000”) is set. It repeats
measurement until Power-down mode is set.
When Continuous measurement mode 1 (MODE[4:0] bits = “00010”), 2 (MODE[4:0] bits = “00100”), 3
(MODE[4:0] bits = “00110”) or 4 (MODE[4:0] bits = “01000”) is set again while AK09918 is already in
Continuous measurement mode, a new measurement starts. ST1, ST2 and measurement data registers (HXL
to TMPS) will not be initialized by this.
(N-1)th
PD
Nth
Measurement
(N+1)th
Measurement
PD
PD
10Hz,20Hz,50Hz or 100Hz
Figure 9.4. Continuous measurement mode
9.4.3.1. Data Ready
When measurement data is stored and ready to be read, DRDY bit in ST1 register turns to “1”. This is called
“Data Ready”. When measurement is performed correctly, AK09918 becomes Data Ready on transition to
PD after measurement.
016014242-E-00
2016/11
- 11 -
[AK09918]
9.4.3.2. Normal Read Sequence
(1) Check Data Ready or not by polling DRDY bit of ST1 register
DRDY: Shows Data Ready or not. Not when “0”, Data Ready when “1”.
DOR: Shows if any data has been skipped before the current data or not. There are no skipped
data when “0”, there are skipped data when “1”.
(2) Read measurement data
When any of measurement data register (HXL to TMPS) or ST2 register is read, AK09918 judges
that data reading is started. When data reading is started, DRDY bit and DOR bit turns to “0”.
(3) Read ST2 register (required)
HOFL: Shows if magnetic sensor is overflowed or not. “0” means not overflowed, “1” means
overflowed.
When ST2 register is read, AK09918 judges that data reading is finished. Stored measurement data is
protected during data reading and data is not updated. By reading ST2 register, this protection is
released. It is required to read ST2 register after data reading.
(N-1)th
PD
Nth
Measurement
Internal Buffer
(N-1)th
(N+1)th
Measurement
PD
Nth
Measurement Data Register
(N-1)th
PD
(N+1)th
Nth
(N+1)th
DRDY
Data read
ST1 Data(N)
ST2
ST1 Data(N+1)
ST2
Figure 9.5. Normal read sequence
9.4.3.3. Data Read Start during Measurement
When sensor is measuring (Measurement period), measurement data registers (HXL to TMPS) keep the
previous data. Therefore, it is possible to read out data even in measurement period. If data is started to be
read during measurement period, previous data is read.
(N-1)th
PD
Nth
Measurement
Internal Buffer
(N-1)th
(N+1)th
Measurement
PD
Nth
Measurement Data Register
(N-1)th
PD
(N+1)th
Nth
DRDY changes to "1"
because read-out becomes possible.
DRDY
Data read
ST1 Data(N)
ST2
ST1 Data(N)
ST2
Figure 9.6. Data read start during measurement
016014242-E-00
2016/11
- 12 -
[AK09918]
9.4.3.4. Data Skip
When Nth data was not read before (N+1)th measurement ends, Data Ready remains until data is read. In
this case, a set of measurement data is skipped so that DOR bit turns to “1”.
When data reading started after Nth measurement ended and did not finish reading before (N+1)th
measurement ended, Nth measurement data is protected to keep correct data. In this case, a set of
measurement data is skipped and not stored so that DOR bit turns to “1”.
In both case, DOR bit turns to “0” at the next start of data reading.
(N-1)th
PD
Nth
Measurement
Internal Buffer
(N-1)th
(N+1)th
Measurement
PD
Nth
PD
(N+1)th
Measurement Data Register
(N-1)th
(N+1)th
DRDY
DOR
Data read
ST1 Data(N+1)
ST2
Figure 9.7. Data Skip: When data is not read
(N-1)th
PD
Nth
(N+1)th
PD
Measurement
Internal Buffer
(N-1)th
Nth
Measurement Data Register
(N-1)th
(N+2)th
PD
Measurement
PD
Measurement
(N+1)th
(N+2)th
Nth
(N+2)th
Data register is protected
because data is being read
DRDY changes to "1"
because read-out becomes possible.
DRDY
(N+1)th data is skipped
DOR
Data read
ST1 Data(N)
ST2
ST1 Data(N+2)
Figure 9.8. Data Skip: When data read has not been finished before the next measurement end
016014242-E-00
2016/11
- 13 -
[AK09918]
Although Nth data is read out when it is performed during (N+1)th measurement period, (N+1)th data is obtained by
reading out again before completion of (N+2)th measurement.
(N-1)th
PD
Nth
(N+1)th
PD
Measurement
Internal Buffer
(N-1)th
Nth
Measurement Data Register
(N-1)th
(N+2)th
PD
Measurement
PD
Measurement
(N+1)th
(N+2)th
Nth
(N+1)th
Data register is protected
because data is being read
DRDY changes to "1"
because read-out becomes possible.
DRDY
DOR
Data read
ST1 Data(N)
ST2
ST1 Data(N+1)
Figure 9.9. Read-out is performed before completion of the next measurement after data protection.
9.4.3.5. End Operation
Set Power-down mode (MODE[4:0] bits = “00000”) to end Continuous measurement mode.
9.4.3.6. Magnetic Sensor Overflow
AK09918 has the limitation for measurement range that the sum of absolute values of each axis should be
smaller than 4912 μT. (Note 8)
|X|+|Y|+|Z| < 4912 μT
When the magnetic field exceeded this limitation, data stored at measurement data are not correct. This is
called Magnetic Sensor Overflow.
When magnetic sensor overflow occurs, HOFL bit turns to “1”.
When measurement data register (HXL to HZH) is updated, HOFL bit is updated.
(Note 8) BRG: 0.15μT/LSB
016014242-E-00
2016/11
- 14 -
[AK09918]
9.4.4. Self-test Mode
Self-test mode is used to check if the magnetic sensor is working normally.
When Self-test mode (MODE[4:0] bits = “10000”) is set, magnetic field is generated by the internal
magnetic source and magnetic sensor is measured. Measurement data is stored to measurement data registers
(HXL to HZH), then AK09918 transits to Power-down mode automatically.
Data read sequence and functions of read-only registers in Self-test mode is the same as Single measurement
mode.
9.4.4.1. Self-test Sequence
(1) Set Power-down mode. (MODE[4:0] bits = “00000”)
(2) Set Self-test mode. (MODE[4:0] bits = “10000”)
(3) Check Data Ready or not by polling DRDY bit of ST1 register.
When Data Ready, proceed to the next step.
(4) Read measurement data. (HXL to HZH)
9.4.4.2. Self-test Judgment
When measurement data read by the above sequence is in the range of following table, AK09918 is working
normally.
Criteria
HX[15:0] bits
-200 ≤ HX ≤ 200
HY[15:0] bits
-200 ≤ HY ≤ 200
016014242-E-00
HZ[15:0] bits
-1000 ≤ HZ ≤ -150
2016/11
- 15 -
[AK09918]
10. Serial Interface
10.1. I2C Bus Interface
The I2C bus interface of AK09918 supports the Standard mode (100 kHz max.) and the Fast mode (400 kHz
max.).
10.1.1. Data Transfer
To access AK09918 on the bus, generate a start condition first.
Next, transmit a one-byte slave address including a device address. At this time, AK09918 compares the
slave address with its own address. If these addresses match, AK09918 generates an acknowledgement, and
then executes READ or WRITE instruction. At the end of instruction execution, generate a stop condition.
10.1.1.1. Change of Data
A change of data on the SDA line must be made during “Low” period of the clock on the SCL line. When
the clock signal on the SCL line is “High”, the state of the SDA line must be stable. (Data on the SDA line
can be changed only when the clock signal on the SCL line is “Low”.)
During the SCL line is “High”, the state of data on the SDA line is changed only when a start condition or a
stop condition is generated.
SCL
SDA
DATA LINE
STABLE :
DATA VALID
CHANGE
OF DATA
ALLOWED
Figure 10.1. Data Change
10.1.1.2. Start/Stop Condition
If the SDA line is driven to “Low” from “High” when the SCL line is “High”, a start condition is generated.
Every instruction starts with a start condition.
If the SDA line is driven to “High” from “Low” when the SCL line is “High”, a stop condition is generated.
Every instruction stops with a stop condition.
SCL
SDA
START CONDITION
STOP CONDITION
Figure 10.2. Start and Stop Condition
016014242-E-00
2016/11
- 16 -
[AK09918]
10.1.1.3. Acknowledge
The IC that is transmitting data releases the SDA line (in the “High” state) after sending 1-byte data.
The IC that receives the data drives the SDA line to “Low” on the next clock pulse. This operation is referred
as acknowledge. With this operation, whether data has been transferred successfully can be checked.
AK09918 generates an acknowledge after reception of a start condition and slave address.
When a WRITE instruction is executed, AK09918 generates an acknowledge after every byte is received.
When a READ instruction is executed, AK09918 generates an acknowledge then transfers the data stored at
the specified address. Next, AK09918 releases the SDA line then monitors the SDA line. If a master IC
generates an acknowledge instead of a stop condition, AK09918 transmits the 8bit data stored at the next
address. If no acknowledge is generated, AK09918 stops data transmission.
Clock pulse
for acknowledge
SCL FROM
MASTER
1
8
9
DATA
OUTPUT BY
TRANSMITTER
not acknowledge
DATA
OUTPUT BY
RECEIVER
START
CONDITION
acknowledge
Figure 10.3. Generation of Acknowledge
10.1.1.4. Slave Address
The slave address of AK09918 is 0Ch.
MSB
0
LSB
0
0
1
1
0
0
R/W
Figure 10.4. Slave Address
The first byte including a slave address is transmitted after a start condition, and an IC to be accessed is
selected from the ICs on the bus according to the slave address.
When a slave address is transferred, the IC whose device address matches the transferred slave address
generates an acknowledge then executes an instruction. The 8th bit (least significant bit) of the first byte is a
R/W bit.
When the R/W bit is set to “1”, READ instruction is executed. When the R/W bit is set to “0”, WRITE
instruction is executed.
016014242-E-00
2016/11
- 17 -
[AK09918]
10.1.2. WRITE Instruction
When the R/W bit is set to “0”, AK09918 performs write operation.
In write operation, AK09918 generates an acknowledge after receiving a start condition and the first byte
(slave address) then receives the second byte. The second byte is used to specify the address of an internal
control register and is based on the MSB-first configuration.
MSB
A7
LSB
A6
A5
A4
A3
A2
A1
A0
Figure 10.5. Register Address
After receiving the second byte (register address), AK09918 generates an acknowledge then receives the
third byte.
The third and the following bytes represent control data. Control data consists of 8 bits and is based on the
MSB-first configuration. AK09918 generates an acknowledge after every byte is received. Data transfer
always stops with a stop condition generated by the master.
MSB
D7
LSB
D6
D5
D4
D3
D2
D1
D0
Figure 10.6. Control Data
AK09918 can write multiple bytes of data at a time.
After reception of the third byte (control data), AK09918 generates an acknowledge then receives the next
data. If additional data is received instead of a stop condition after receiving one byte of data, the address
counter inside the LSI chip is automatically incremented and the data is written at the next address.
The address is incremented from 00h to 18h, from 30h to 32h. When the address is 00h to 18h, the address is
incremented 00h 01h 02h 03h 10h 11h ... 18h,and the address goes back to 00h after
18H. When the address is 30h to 32h, the address goes back to 30h after 32h.
Actual data is written only to Read/Write registers (Table 11.2. ).
S
T
A
R
T
SDA
S
S
T
O
P
R/W="0"
Slave
Address
Register
Address(n)
A
C
K
Data(n)
A
C
K
Data(n+1)
A
C
K
Data(n+x)
A
C
K
A
C
K
P
A
C
K
Figure 10.7. WRITE Instruction
016014242-E-00
2016/11
- 18 -
[AK09918]
10.1.3. READ Instruction
When the R/W bit is set to “1”, AK09918 performs read operation.
If a master IC generates an acknowledge instead of a stop condition after AK09918 transfers the data at a
specified address, the data at the next address can be read.
Address can be 00h to 18h, 30h to 32h. When the address is 00h to 18h, the address is incremented 00h
01h 02h 03h 10h 11h ... 18h, and the address goes back to 00h after 18h. When the address
is 30h to 32h, the address goes back to 30h after 32h. AK09918 supports current address read and random
address read.
10.1.3.1. Current Address READ
AK09918 has an address counter inside the LSI chip. In current address read operation, the data at an address
specified by this counter is read.
The internal address counter holds the next address of the most recently accessed address.
For example, if the address most recently accessed (for READ instruction) is address “n”, and a current
address read operation is attempted, the data at address “n+1” is read.
In current address read operation, AK09918 generates an acknowledge after receiving a slave address for the
READ instruction (R/W bit = “1”). Next, AK09918 transfers the data specified by the internal address
counter starting with the next clock pulse, then increments the internal counter by one. If the master IC
generates a stop condition instead of an acknowledge after AK09918 transmits one byte of data, the read
operation stops.
S
T
A
R
T
SDA
S
S
T
O
P
R/W="1"
Slave
Address
Data(n+1)
A
C
K
Data(n+2)
A
C
K
Data(n+3)
A
C
K
Data(n+x)
A
C
K
P
A
C
K
Figure 10.8. Current Address READ
10.1.3.2. Random Address READ
By random address read operation, data at an arbitrary address can be read.
The random address read operation requires to execute WRITE instruction as dummy before a slave address
for the READ instruction (R/W bit = “1”) is transmitted. In random read operation, a start condition is first
generated then a slave address for the WRITE instruction (R/W bit = “0”) and a read address are transmitted
sequentially.
After AK09918 generates an acknowledge in response to this address transmission, a start condition and a
slave address for the READ instruction (R/W bit = “1”) are generated again. AK09918 generates an
acknowledge in response to this slave address transmission. Next, AK09918 transfers the data at the
specified address then increments the internal address counter by one. If the master IC generates a stop
condition instead of an acknowledge after data is transferred, the read operation stops.
S
T
A
R
T
SDA
S
S
T
A
R
T
R/W="0"
Slave
Address
Register
Address(n)
A
C
K
S
A
C
K
S
T
O
P
R/W="1"
Slave
Address
Data(n)
A
C
K
Data(n+1)
A
C
K
Data(n+x)
A
C
K
P
A
C
K
Figure 10.9. Random Address READ
016014242-E-00
2016/11
- 19 -
[AK09918]
11. Registers
11.1. Description of Registers
AK09918 has registers of 18 addresses as indicated in Table 11.1. . Every address consists of 8 bits data.
Data is transferred to or received from the external CPU via the serial interface described previously.
Table 11.1. Register Table
00h
READ/
WRITE
READ
Company ID
Bit
width
8
WIA2
01h
READ
Device ID
8
RSV1
02h
READ
Reserved 1
8
RSV2
03h
READ
Reserved 2
8
ST1
10h
READ
Status 1
8
Data status
HXL
11h
READ
Measurement Magnetic Data
8
X-axis data
HXH
12h
READ
8
HYL
13h
READ
8
HYH
14h
READ
8
HZL
15h
READ
8
Name
Address
WIA1
Description
Remarks
Y-axis data
Z-axis data
HZH
16h
READ
TMPS
17h
READ
Dummy
8
8
Dummy
ST2
18h
READ
Status 2
8
Data status
CNTL1
30h
Dummy
8
Dummy
CNTL2
31h
Control 2
8
Control settings
CNTL3
32h
Control 3
8
Control settings
TS1
33h
Test
8
DO NOT ACCESS
TS2
34h
READ/
WRITE
READ/
WRITE
READ/
WRITE
READ/
WRITE
READ/
WRITE
Test
8
DO NOT ACCESS
Addresses 00h to 18h, 30h to 32h are compliant with automatic increment function of serial interface
respectively. In other modes, read data is not correct. When the address is in 00h to 18h, the address is
incremented 00h 01h 02h 03h 10h 11h ... 18h, and the address goes back to 00h after
18h. When the address is in 30h to 32h, the address goes back to 30h after 32h.
016014242-E-00
2016/11
- 20 -
[AK09918]
11.2. Register Map
Table 11.2. Register Map
Addr.
Register
name
D7
D6
D5
D4
Read-only register
0
0
0
0
RSV15
RSV14
RSV25
RSV24
0
0
HX5
HX4
HX13
HX12
HY5
HY4
HY13
HY12
HZ5
HZ4
HZ13
HZ12
0
0
RSV30
RSV29
Read/Write register
0
0
D3
D2
D1
D0
1
1
RSV13
RSV23
0
HX3
HX11
HY3
HY11
HZ3
HZ11
0
HOFL
0
1
RSV12
RSV22
0
HX2
HX10
HY2
HY10
HZ2
HZ10
0
RSV28
0
0
RSV11
RSV21
DOR
HX1
HX9
HY1
HY9
HZ1
HZ9
0
0
0
0
RSV10
RSV20
DRDY
HX0
HX8
HY0
HY8
HZ0
HZ8
0
0
00h
01h
02h
03h
10h
11h
12h
13h
14h
15h
16h
17h
18h
WIA1
WIA2
RSV1
RSV2
ST1
HXL
HXH
HYL
HYH
HZL
HZH
TMPS
ST2
0
0
RSV17
RSV27
0
HX7
HX15
HY7
HY15
HZ7
HZ15
0
0
1
0
RSV16
RSV26
0
HX6
HX14
HY6
HY14
HZ6
HZ14
0
RSV31
30h
CNTL1
0
0
0
0
0
0
31h
CNTL2
0
0
0
MODE4
MODE3
MODE2
MODE1
MODE0
32h
CNTL3
0
0
0
0
0
0
0
SRST
33h
TS1
-
-
-
-
-
-
-
-
34h
TS2
-
-
-
-
-
-
-
-
When VDD is turned ON, POR function works and all registers of AK09918 are initialized.
TS1 and TS2 are test registers for shipment test. Do not access these registers.
016014242-E-00
2016/11
- 21 -
[AK09918]
11.3. Detailed Description of Register
11.3.1. WIA: Who I Am
Addr.
Register
name
D7
D6
00h
01h
WIA1
WIA2
0
0
1
0
D5
D4
Read-only register
0
0
0
0
D3
D2
D1
D0
1
1
0
1
0
0
0
0
WIA1[7:0] bits: Company ID of AKM. It is described in one byte and fixed value.
48h: fixed
WIA2[7:0] bits: Device ID of AK09918. It is described in one byte and fixed value.
0Ch: fixed
11.3.2. RSV: Reserved
Addr.
Register
name
02h
03h
RSV1
RSV2
D7
RSV17
RSV27
D6
D5
D4
Read-only register
RSV16 RSV15 RSV14
RSV26 RSV25 RSV24
D3
D2
D1
D0
RSV13
RSV23
RSV12
RSV22
RSV11
RSV21
RSV10
RSV20
D3
D2
D1
D0
0
0
0
0
DOR
0
DRDY
0
RSV1[7:0] bits/ RSV2[7:0] bits: Reserved register for AKM.
11.3.3. ST1: Status 1
Addr.
10h
Register
name
ST1
Reset
D7
D6
0
0
0
0
D5
D4
Read-only register
0
0
0
0
DRDY: Data Ready
“0”: Normal
“1”: Data is ready
DRDY bit turns to “1” when data is ready in Single measurement mode, Continuous measurement mode 1, 2,
3, 4 or Self-test mode. It returns to “0” when any one of ST2 register or measurement data register (HXL to
TMPS) is read.
DOR: Data Overrun
“0”: Normal
“1”: Data overrun
DOR bit turns to “1” when data has been skipped in Continuous measurement mode 1, 2, 3, 4. It returns to “0”
when any one of ST2 register or measurement data register (HXL to TMPS) is read.
016014242-E-00
2016/11
- 22 -
[AK09918]
11.3.4. HXL to HZH: Measurement Magnetic data
Addr.
11h
12h
13h
14h
15h
16h
Register
name
HXL
HXH
HYL
HYH
HZL
HZH
Reset
D7
D6
HX7
HX15
HY7
HY15
HZ7
HZ15
0
HX6
HX14
HY6
HY14
HZ6
HZ14
0
D5
D4
Read-only register
HX5
HX4
HX13
HX12
HY5
HY4
HY13
HY12
HZ5
HZ4
HZ13
HZ12
0
0
D3
D2
D1
D0
HX3
HX11
HY3
HY11
HZ3
HZ11
0
HX2
HX10
HY2
HY10
HZ2
HZ10
0
HX1
HX9
HY1
HY9
HZ1
HZ9
0
HX0
HX8
HY0
HY8
HZ0
HZ8
0
Measurement data of magnetic sensor X-axis/Y-axis/Z-axis
HXL[7:0] bits: X-axis measurement data lower 8-bit
HXH[15:8] bits: X-axis measurement data higher 8-bit
HYL[7:0] bits: Y-axis measurement data lower 8-bit
HYH[15:8] bits: Y-axis measurement data higher 8-bit
HZL[7:0] bits: Z-axis measurement data lower 8-bit
HZH[15:8] bits: Z-axis measurement data higher 8-bit
Measurement data is stored in two’s complement and Little Endian format. Measurement range of each axis
is -32752 to 32752 in 16-bit output.
Table 11.3. Measurement magnetic data format
Measurement data (each axis) [15:0] bits
Magnetic flux
density [µT]
Two’s complement
Hex
Decimal
0111 1111 1111 0000
7FF0
32752
4912(max.)
|
|
|
|
0000 0000 0000 0001
0001
1
0.15
0000 0000 0000 0000
0000
0
0
1111 1111 1111 1111
FFFF
-1
-0.15
|
|
|
|
1000 0000 0001 0000
8010
-32752
-4912(min.)
11.3.5. TMPS: Dummy
Addr.
17h
Register
name
TMPS
Reset
D7
D6
0
0
0
0
D5
D4
Read-only register
0
0
0
0
D3
D2
D1
D0
0
0
0
0
0
0
0
0
TMPS[7:0] bits: Dummy register.
016014242-E-00
2016/11
- 23 -
[AK09918]
11.3.6. ST2: Status 2
Addr.
18h
Register
name
ST2
Reset
D7
D6
0
0
RSV31
0
D5
D4
Read-only register
RSV30
RSV29
0
0
D3
D2
D1
D0
HOFL
0
RSV28
1
0
0
0
0
ST2[6:4] bits: Reserved register for AKM.
HOFL: Magnetic sensor overflow
“0”: Normal
“1”: Magnetic sensor overflow occurred
In Single measurement mode, Continuous measurement mode 1, 2, 3, 4, and Self-test mode, magnetic sensor
may overflow even though measurement data register is not saturated. In this case, measurement data is not
correct and HOFL bit turns to “1”. When measurement data register is updated, HOFL bit is updated. Refer
to 9.4.3.6 for detailed information.
ST2 register has a role as data reading end register, also. When any of measurement data register (HXL to
TMPS) is read in Continuous measurement mode 1, 2, 3, 4, it means data reading start and taken as data
reading until ST2 register is read. Therefore, when any of measurement data is read, be sure to read ST2
register at the end.
11.3.7. CNTL1: Dummy
Addr.
30h
Register
name
CNTL1
Reset
D7
D6
0
0
0
0
D5
D4
Read/Write register
0
0
0
0
D3
D2
D1
D0
0
0
0
0
0
0
0
0
D3
D2
D1
D0
CNTL1[7:0] bits: Dummy register.
11.3.8. CNTL2: Control 2
Addr.
31h
Register
name
CNTL2
Reset
D7
0
0
D6
0
0
D5
D4
Read/Write register
0
MODE4 MODE3
0
0
0
MODE2
0
MODE1 MODE0
0
0
MODE[4:0] bits: Operation mode setting
“00000”: Power-down mode
“00001”: Single measurement mode
“00010”: Continuous measurement mode 1
“00100”: Continuous measurement mode 2
“00110”: Continuous measurement mode 3
“01000”: Continuous measurement mode 4
“10000”: Self-test mode
Other code settings are prohibited
.
When each mode is set, AK09918 transits to the set mode. Refer to 9.3 for detailed information.
016014242-E-00
2016/11
- 24 -
[AK09918]
11.3.9. CNTL3: Control 3
Addr.
32h
Register
name
CNTL3
Reset
D7
D6
0
0
0
0
D5
D4
Read/Write register
0
0
0
0
D3
D2
D1
D0
0
0
0
0
0
0
SRST
0
SRST: Soft reset
“0”: Normal
“1”: Reset
When “1” is set, all registers are initialized. After reset, SRST bit turns to “0” automatically.
11.3.10. TS1, TS2: Test
Addr.
33h
34h
Register
name
TS1
TS2
Reset
D7
0
D6
0
D5
D4
Read/Write register
0
0
D3
D2
D1
D0
0
0
0
0
TS1 and TS2 registers are AKM internal test register. Do not access these registers.
016014242-E-00
2016/11
- 25 -
[AK09918]
12. Example of Recommended External Connection
VDD
POWER 1.65V to 1.95V
Host CPU
Power for I/F
B
SDA
VDD
SCL
VSS
I2C I/F
0.1µF
2
A
1
AK09918C
(Top view)
016014242-E-00
2016/11
- 26 -
[AK09918]
13. Package
13.1. Marking
Date code:
X1X2 X3X4X5
X1 = ID
X2 = Year code
X3 =Month code
X4X5 =Lot
X1X2X3
X4X5
13.2. Pin Assignment
B
A
2
SDA
SCL
1
VDD
VSS
016014242-E-00
2016/11
- 27 -
[AK09918]
13.3. Outline Dimensions
[mm]
0.760.03
1
1
2
B
B
0.4
0.760.03
2
0.4
A
A
+0.03
0.22-0.01
0.40
0.583 max.
0.147
0.03 C
C
13.4. Recommended Foot Print Pattern
[mm]
0.4
B
2
1
0.4
A
0.21
016014242-E-00
2016/11
- 28 -
[AK09918]
14. Relationship between the Magnetic Field and Output Code
The measurement data increases as the magnetic flux density increases in the arrow directions.
016014242-E-00
2016/11
- 29 -
[AK09918]
IMPORTANT NOTICE
0. Asahi Kasei Microdevices Corporation (“AKM”) reserves the right to make changes to the information contained in
this document without notice. When you consider any use or application of AKM product stipulated in this
document (“Product”), please make inquiries the sales office of AKM or authorized distributors as to current status
of the Products.
1. All information included in this document are provided only to illustrate the operation and application examples of
AKM Products. AKM neither makes warranties or representations with respect to the accuracy or completeness of
the information contained in this document nor grants any license to any intellectual property rights or any other
rights of AKM or any third party with respect to the information in this document. You are fully responsible for use
of such information contained in this document in your product design or applications. AKM ASSUMES NO
LIABILITY FOR ANY LOSSES INCURRED BY YOU OR THIRD PARTIES ARISING FROM THE USE OF
SUCH INFORMATION IN YOUR PRODUCT DESIGN OR APPLICATIONS.
2. The Product is neither intended nor warranted for use in equipment or systems that require extraordinarily high
levels of quality and/or reliability and/or a malfunction or failure of which may cause loss of human life, bodily
injury, serious property damage or serious public impact, including but not limited to, equipment used in nuclear
facilities, equipment used in the aerospace industry, medical equipment, equipment used for automobiles, trains,
ships and other transportation, traffic signaling equipment, equipment used to control combustions or explosions,
safety devices, elevators and escalators, devices related to electric power, and equipment used in finance-related
fields. Do not use Product for the above use unless specifically agreed by AKM in writing.
3. Though AKM works continually to improve the Product’s quality and reliability, you are responsible for complying
with safety standards and for providing adequate designs and safeguards for your hardware, software and systems
which minimize risk and avoid situations in which a malfunction or failure of the Product could cause loss of human
life, bodily injury or damage to property, including data loss or corruption.
4. Do not use or otherwise make available the Product or related technology or any information contained in this
document for any military purposes, including without limitation, for the design, development, use, stockpiling or
manufacturing of nuclear, chemical, or biological weapons or missile technology products (mass destruction
weapons). When exporting the Products or related technology or any information contained in this document, you
should comply with the applicable export control laws and regulations and follow the procedures required by such
laws and regulations. The Products and related technology may not be used for or incorporated into any products or
systems whose manufacture, use, or sale is prohibited under any applicable domestic or foreign laws or regulations.
5. Please contact AKM sales representative for details as to environmental matters such as the RoHS compatibility of
the Product. Please use the Product in compliance with all applicable laws and regulations that regulate the inclusion
or use of controlled substances, including without limitation, the EU RoHS Directive. AKM assumes no liability for
damages or losses occurring as a result of noncompliance with applicable laws and regulations.
6. Resale of the Product with provisions different from the statement and/or technical features set forth in this
document shall immediately void any warranty granted by AKM for the Product and shall not create or extend in
any manner whatsoever, any liability of AKM.
7. This document may not be reproduced or duplicated, in any form, in whole or in part, without prior written consent
of AKM.
Rev.1
016014242-E-00
2016/11
- 30 -