3-Axis Compass with Algorithms
HMC6343
The Honeywell HMC6343 is a fully integrated compass module that includes
firmware for heading computation and calibration for magnetic distortions.
The module combines 3-axis magneto-resistive sensors and 3-axis MEMS
accelerometers, analog and digital support circuits, microprocessor and
algorithms required for heading computation. By combining the sensor
elements, processing electronics, and firmware into a 9.0mm by 9.0mm by
1.9mm LCC package, Honeywell offers a complete, ready to use tilt-
compensated electronic compass. This provides design engineers with the
simplest solution to integrate high volume, cost effective compasses into
binoculars, cameras, night vision optics, laser ranger finders, antenna
positioning, and other industrial compassing applications.
The HMC6343 utilizes Honeywell’s Anisotropic Magnetoresistive (AMR) technology that provides advantages over other
magnetic sensor technologies. The sensors feature precision sensitivity and linearity, solid-state construction with very
low cross-axis sensitivity designed to measure both direction and magnitude of Earth’s magnetic fields. Honeywell’s
Magnetic Sensors are among the most sensitive and reliable low-field sensors in the industry.
Honeywell continues to maintain product excellence and performance by introducing innovative solid-state magnetic
sensor solutions. Honeywell’s magnetic sensor solutions provide real solutions you can count on.
FEATURES BENEFITS
Compass with Heading/Tilt Outputs
A complete compass solution including compass firmware
3-axis MR Sensors, Accelerometers and
a Microprocessor in a Single Package
A digital compass solution with heading and tilt angle outputs in a
chip-scale package
Compass Algorithms
For computation of heading, and magnetic calibration for hard-iron
9 x 9 x 1.9mm LCC Surface Mount
Package
Small size, easy to assemble and compatible with high speed
surface mount technology assembly
Low Voltage Operations
Compatible with battery powered applications
EEPROM Memory
To store compass data for processor routines
Digital Serial Data Interface
I2C Interface, easy to use 2-wire communication for heading output
Moderate Precision Outputs
Typical 2° Heading Accuracy with 1° Pitch and Roll Accuracy
Lead Free Package Construction
Complies with RoHS environmental standards
Flexible Mounting
Can be mounted on horizontal or vertical circuit boards
HMC6343
2 www.honeywell.com
SPECIFICATIONS
Characteristics
Conditions*
Min
Typ
Max
Power Supply
Supply Voltage
VDD Referenced to GND
2.7
3.3
3.6
Current
All VDD pins connected together
Run Mode (10Hz Output)
Standby Mode
Sleep mode
Power-up peak (VDD = 3.3V)
3.5
4.5
10
8
5.5
1.0
Power-on Rate
Minimum rise time for POR
0.05
-
-
Compass Function
Field Range
total applied magnetic field
(de-gauss if exposed to >5gauss)
±1
±2
Heading Accuracy
At Level, +3.3V
±15° tilt
±60° tilt
1.0
2.0
3.0
4.0
3.0
Heading Resolution
Output Data
0.1
Heading
Repeatability
Output Data (1 )
±0.3
Heading Hysteresis
Output Data (1 )
±0.3
Update Rate
Run Mode (1, 5, 10Hz)
1
5
10
Tilt Range
From Horizontal
±80
Tilt Accuracy
0° to ±15°, +3.3V
±15° to ±60°
±1
±2
Tilt Resolution
Output Data
0.1
Tilt Repeatability
Output Data (1 )
±0.2
Offset Straps
Resistance
Measured from OFF+ to OFF-
5
8
11
Offset
Constant
DC Current
Field applied in sensitive direction
10
Resistance
Tempco
TA=-40 to 125°C
1800
2700
4500
General
Operating
Temperature
Ambient
-40
85
Storage
Temperature
Ambient, unbiased
-55
125
Weight
0.32
ESD Voltage
400
MSL
Moisture Sensitivity Level
3
Solder Temp
Peak Reflow Temp (< 30 seconds)
250
* Tested at 25°C and 3.3V except stated otherwise.
HMC6343
www.honeywell.com 3
FUNCTIONAL DIAGRAM
PIN CONFIGURATIONS
Pin Number
Description
Pin Number
Description
1
NC
19
Y OFF-
2
NC
20
Y OFF+
3
VDD1
21
VDD2
4
NC
22
CS
5
NC
23
X OFF-
6
NC
24
X OFF+
7
NC
25
GND2
8
NC
26
NC
9
NC
27
NC
10
NC
28
NC
11
VDD3
29
GND1
12
NC
30
NC
13
NC
31
NC
14
NC
32
SCK/SCL
15
Z OFF-
33
NC
16
Z OFF+
34
NC
17
NC
35
CS_CTRL
18
NC
36
SDA
Mag
Sensors
Magnetic
ASIC
Micro-
Controller
Temp
Sensor
X
Y
Z
Accel
ASIC
X
Y
Z
I2C
Mag
Sensors
Magnetic
ASIC
Micro-
Controller
Temp
Sensor
X
Y
Z
Accel
ASIC
X
Y
Z
I2C
HMC6343
4 www.honeywell.com
NC 1
NC 2
VDD1 3
NC 4
NC 5
NC 6
NC 7
NC 8
NC 9
NC 10
VDD3 11
NC 12
NC 13
NC 14
Z OFF- 15
Z OFF+ 16
NC 17
NC 18
19 Y OFF-
20 Y OFF+
21 VDD2
22 CS
23 NC
24 NC
25 GND2
26 NC
27 NC
28 NC
29 GND1
30 NC
31 NC
32 SCK/SCL
33 NC
34 NC
35 CS_CTRL
36 SDA
BOTTOM VIEW
X
Y
Z
NC 1
NC 2
VDD1 3
NC 4
NC 5
NC 6
NC 7
NC 8
NC 9
NC 10
VDD3 11
NC 12
NC 13
NC 14
Z OFF- 15
Z OFF+ 16
NC 17
NC 18
19 Y OFF-
20 Y OFF+
21 VDD2
22 CS
23 NC
24 NC
25 GND2
26 NC
27 NC
28 NC
29 GND1
30 NC
31 NC
32 SCK/SCL
33 NC
34 NC
35 CS_CTRL
36 SDA
BOTTOM VIEW
X
Y
Z
HMC6343
www.honeywell.com 5
PACKAGE OUTLINES
PACKAGE DRAWING HMC6343 (32-PIN LPCC, dimensions in millimeters)
Dimensions (mm)
Minimum
Nominal
Maximum
A (height)
1.73
1.87
2.02
D
-
9.00 BSC
-
D1
-
6.40 BSC
-
E
-
9.00 BSC
-
E1
-
6.40 BSC
-
e
-
0.8 Basic
-
MOUNTING CONSIDERATIONS
The following is the recommend printed circuit board (PCB) footprint for the HMC6343. All dimensions are nominal and in
millimeters.
Stencil Design and Solder Paste
A 4-6 mil stencil and 100% paste coverage is recommended for the electrical contact pads. The HMC6343 has been
assembled successfully with no-clean solder paste.
.
0.34±0.03
D
0.57±0.03
0.10±0.08
E
e
E1
D1
Pin 1
Bottom View
0.34±0.03
D
0.57±0.03
0.10±0.08
E
e
E1
D1
Pin 1
Bottom View
HMC6343
6 www.honeywell.com
BASIC DEVICE OPERATION
The Honeywell HMC6343 magnetoresistive sensor circuit is a trio of magnetic sensors, accelerometers, and analog
support circuits to measure magnetic fields. Additionally a microcontroller is integrated for computation of direction and
calibration. With power supply applied, the sensor converts any incident magnetic field in the sensitive axis direction to a
differential voltage output. In addition to the bridge circuit, the sensors have on-chip magnetically coupled offset straps for
incident field adjustment.
The circuit is sensitive to power supply noise, and adding a 1.0 microfarad ceramic capacitor is recommended on the
positive supply to help reduce noise. Also careful layout practices should be enforced to keep high current traces (>10mA)
a few millimeters away from the sensors. Also, since the sensors are typically sensing the earth’s magnetic field direction,
avoid employing RF/EMI shields using ferrous metals or coatings.
BASIC SCHEMATIC INTERFACE
Offset Straps
The three offset straps have a spiral of metallization that couples in the sensor element’s sensitive axis. The straps will
handle currents to buck or boost fields through the ±4 gauss linear measurement range, but designers should note the
thermal heating on the die when doing so.
With most applications, the offset strap is not utilized and can be ignored. Designers can leave one or both strap
connections (Off- and Off+) open circuited, or ground one connection node.
Operational Modes
The HMC6343 has three operational modes; Sleep, Standby, and Run. Sleep mode is defined as having the analog
circuitry powered off, and has the lowest power consumption while power is applied to the VDD pins. Standby mode has
the HMC6343 fully powered, but with no measurements performed and the processor is waiting for commands to perform.
Run mode is fully engaged in continuous measurements at the set rate, and ready to receive further commands. The
operational mode settings are stored in EEPROM register 0x04, and shown further the HMC6343 protocol definition.
HMC6343
VDD2
GND1
VDD1
VDD3
HOST
P
SCL
SDA
21
29
32
36
3
11
+3.3V
10k 10k
I2C_CLK
I2C_DATA
VDD
GND
CS
CS_CTRL
22
35
1uF
25
GND2
HMC6343
VDD2
GND1
VDD1
VDD3
HOST
P
SCL
SDA
21
29
32
36
3
11
+3.3V
10k 10k
I2C_CLK
I2C_DATA
VDD
GND
CS
CS_CTRL
22
35
1uF
25
GND2
HMC6343
www.honeywell.com 7
Mounting Orientations
The HMC6343 provides for three standard mounting orientations, with a flat horizontal orientation (Level) as the factory
default. For vertical mounting, there are two upright orientations with either the X-axis or the Z-axis designated as the
forward reference directions. To change the forward reference direction temporarily, send the appropriate command byte
(0x72, 0x73, or 0x74) for level or upright orientations. For other orientations, you can add or subtract 90 degree
increments of deviation angle as required from the three choices. The figure below shows pictorially the orientations.
To permanently change orientation, poke EEPROM Operational Mode Register 1 (0x04) with the appropriate binary bits
set for Level, Upright Edge (UE), or Upright Front (UF). The HMC6343 will operate in the selected orientation after a
power-up or reset command. More on the EEPROM registers in the following sections.
I2C COMMUNICATION PROTOCOL
The HMC6343 communicates via a two-wire I2C bus system as a slave device. The HMC6343 uses a layered protocol
with the interface protocol defined by the I2C bus specification, and the lower command protocol defined by Honeywell.
The data rate is the standard-mode 100kbps rate as defined in the I2C Bus Specification 2.1. The bus bit format is an 8-bit
Data/Address send and a 1-bit acknowledge bit. The format of the data bytes (payload) shall be case sensitive ASCII
characters or binary data to the HMC6343 slave, and binary data returned. Negative binary values will be in two’s
complement form. The default (factory) HMC6343 7-bit slave address is 0x32 for write operations, or 0x33 for read
operations.
The HMC6343 Serial Clock (SCL) and Serial Data (SDA) lines do not have internal pull-up resistors, and require resistive
pull-ups (Rp) between the master device (usually a host microprocessor) and the HMC6343. Pull-up resistance values of
about 10k ohms are recommended with a nominal 3.3-volt supply voltage. Other values may be used as defined in the I2C
Bus Specification 2.1.
The SCL and SDA lines in this bus specification can be connected to a host of devices. The bus can be a single master to
multiple slaves, or it can be a multiple master configuration. All data transfers are initiated by the master device which is
responsible for generating the clock signal, and the data transfers are 8 bit long. All devices are addressed by I2C’s
unique 7 bit address. After each 8-bit transfer, the master device generates a 9 th clock pulse, and releases the SDA line.
HONEYWELL
HMC6343
0626
x
YZ
LEVEL
Y
X
Z
UPRIGHT EDGE
Y
UPRIGHT FRONT
X
Z
0x72 0x73 0x74
HMC6343 ORIENTATIONS
Red Arrow is the Forward Direction
HONEYWELL
HMC6343
0626
x
YZ
LEVEL
Y
X
Z
UPRIGHT EDGE
Y
UPRIGHT FRONT
X
Z
0x72 0x73 0x74
HMC6343 ORIENTATIONS
Red Arrow is the Forward Direction
HMC6343
8 www.honeywell.com
The receiving device (addressed slave) will pull the SDA line low to acknowledge (ACK) the successful transfer or leave
the SDA high to negative acknowledge (NACK).
Per the I2C spec, all transitions in the SDA line must occur when SCL is low. This requirement leads to two unique
conditions on the bus associated with the SDA transitions when SCL is high. Master device pulling the SDA line low while
the SCL line is high indicates the Start (S) condition, and the Stop (P) condition is when the SDA line is pulled high while
the SCL line is high. The I2C protocol also allows for the Restart condition in which the master device issues a second
start condition without issuing a stop.
All bus transactions begin with the master device issuing the start sequence followed by the slave address byte. The
address byte contains the slave address; the upper 7 bits (bits7-1), and the Least Significant bit (LSb). The LSb of the
address byte designates if the operation is a read (LSb=1) or a write (LSb=0). At the 9 th clock pulse, the receiving slave
device will issue the ACK (or NACK). Following these bus events, the master will send data bytes for a write operation, or
the slave will clock out data with a read operation. All bus transactions are terminated with the master issuing a stop
sequence.
I2C bus control can be implemented with either hardware logic or in software. Typical hardware designs will release the
SDA and SCL lines as appropriate to allow the slave device to manipulate these lines. In a software implementation, care
must be taken to perform these tasks in code.
I2C Slave Address
The I2C slave address byte consists of the 7 most significant bits with the least significant bit zero filled. As described
earlier, the default (factory) value is 0x32 and the legal I2C bounded values are between 0x10 and 0xF6. This slave
address is in EEPROM address 0x00. Users can change the slave address by writing to this location. Any address
updates will become effective after the next power up or after a reset command.
Software Version
This EEPROM software version number byte contains the binary value of the programmed software. Values of 0x05 and
beyond are considered production software.
Deviation Angle Correction
Typically the HMC6343 X-axis (or Z-axis) is designated the forward direction of the compass, and is placed mechanically
towards the forward direction of the end user product. The deviation angle is used to correct for mechanical angle errors
in package orientation by adding the deviation angle to the internal compass heading before the result is placed as the
computed heading. Two EEPROM Bytes are used to store the deviation angle, and the binary value is in tenths of a
degree and in two’s complement form for a ±1800 representation. The deviation angle MSB is located in EEPROM
register 0x0B and the LSB in 0x0A.
Variation Angle Correction
The variation angle or declination angle of the HMC6343 is the number of degree that must be added to the internal
compass heading to convert the magnetic north reference direction to the geographic (true) north reference direction. This
angle information is provided to the HMC6343 from external latitude and longitude data processed through a World
Magnetic Model equation to compute variation angle, or by lookup table. Two EEPROM Bytes are used to store the
variation angle, and the binary value is in tenths of a degree and in two’s complement form for a ±1800 representation.
The deviation angle MSB is located in EEPROM register 0x0D and the LSB in 0x0C.
Magnetometer Offsets
The Magnetometer Offset bytes are the values stored after the completion of the last factory or user hard-iron calibration
routine. Additional value changes are possible, but will be overwritten when the next calibration routine is completed. Note
that these offset values are added to the sensor offset values computed by the set/reset routine to convert the raw
magnetometer data to the compensated magnetometer data. These values are written into EEPROM addresses 0x0E to
0x13 and loaded to RAM on the power up.
HMC6343
www.honeywell.com 9
Heading Filter
This allows for an Infinite Impulse Response (IIR) filter to be employed on current and previous heading data outputs.
Typical values are 0 to 15 with a factory default of zero. The filter is only applied in run mode where a continuous stream
of data is present. At the 5Hz default update rate, a filter value of 4 would weight the latest heading with the previous four
headings of regressive weightings for a second’s worth of filtering.
EEPROM Registers
The HMC6343 contains EEPROM non-volatile memory locations (registers) to store useful compass data for processor
routines. The following Table shows the register locations, content, description, and factory shipped defaults.
Table 1 EEPROM Registers
EEPROM
Location
Content
Description
Factory Default
0x00
Slave Address
I2C Slave Address
0x32
0x01
Reserved
0x02
S/W_Version
Software Version Number
0x03
Reserved
0x04
OP_Mode1
Operational Mode Register 1
0x11
0x05
OP_Mode2
Operational Mode Register 2
0x01
0x06
S/N LSB
Device Serial Number
0x07
S/N MSB
Device Serial Number
0x08
Date Code: YY
Package Date Code: Last Two Digits of the Year
Year
0x09
Date Code: WW
Package Date Code: Fiscal Week
Week
0x0A
Deviation LSB
Deviation Angle (±1800) in tenths of a degree
0x00
0x0B
Deviation MSB
Deviation Angle (±1800) in tenths of a degree
0x00
0x0C
Variation LSB
Variation Angle (±1800) in tenths of a degree
0x00
0x0D
Variation MSB
Variation Angle (±1800) in tenths of a degree
0x00
0x0E
X_Offset LSB
Hard-Iron Calibration Offset for the X-axis
0x00
0x0F
X_Offset MSB
Hard-Iron Calibration Offset for the X-axis
0x00
0x10
Y_Offset LSB
Hard-Iron Calibration Offset for the Y-axis
0x00
0x11
Y_Offset MSB
Hard-Iron Calibration Offset for the Y-axis
0x00
0x12
Z_Offset LSB
Hard-Iron Calibration Offset for the Z-axis
0x00
0x13
Z Offset MSB
Hard-Iron Calibration Offset for the Z-axis
0x00
0x14
Filter LSB
Heading IIR Filter (0x00 to 0x0F typical)
0x00
0x15
Filter MSB
Heading IIR Filter (set at zero)
0x00
HMC6343
10 www.honeywell.com
Command Protocol
The command protocol defines the content of the data (payload) bytes of I2C protocol sent by the master, and the slave
device (HMC6343). Note that angular outputs are in tenths of a degree (0-3600 heading, ±0-900 tilt).
After the master device sends the 7-bit slave address, the 1-bit Read/Write, and gets the 1-bit slave device acknowledge
bit returned; the next one to three sent data bytes are defined as the input command and argument bytes. To conserve
data traffic, all response data (Reads) will be context sensitive to the last command (Write) sent. All write commands shall
have the address byte least significant bit cleared (factory default 0x32). These commands then follow with the command
byte and command specific binary formatted argument bytes in the general form of:
(Command Byte) (Argument Binary MS Byte) (Argument Binary LS Byte)
The slave (HMC6343) shall provide the acknowledge bits between each data byte per the I2C protocol. Response byte
reads are done by sending the address byte (factory default 0x33) with the least significant bit set, and then clocking back
response bytes, last command dependant. Table 2 shows the HMC6343 command and response data flow.
Table 2 HMC6343 Interface Commands/Responses
Command
Byte
(hex)
Argument 1 Byte
(Binary)
Argument 2 Byte
(Binary)
Response Bytes
(Binary)
Command Description
(0x40)
MSB/LSB Data
(6 Bytes)
Post Accel Data. AxMSB, AxLSB,
AyMSB, AyLSB, AzMSB, AzLSB
(0x45)
MSB/LSB Data
(6 Bytes)
Post Mag Data. MxMSB, MxLSB,
MyMSB, MyLSB, MzMSB, MzLSB
(0x50)
MSB/LSB Data
(6 Bytes)
Post Heading Data. HeadMSB,
HeadLSB, PitchMSB, PitchLSB,
RollMSB, RollLSB
(0x55)
MSB/LSB Data
(6 Bytes)
Post Tilt Data. PitchMSB, PitchLSB,
RollMSB, RollLSB, TempMSB,
TempLSB
(0x65)
Post OP Mode 1
Read the current value of OP Mode 1
(0x71)
Enter User Calibration Mode
(0x72)
Level Orientation (X=forward, +Z=up)
(default)
(0x73)
Upright Sideways Orientation
(X=forward, Y=up)
(0x74)
Upright Flat Front Orientation
(Z=forward, -X=up)
(0x75)
Enter Run Mode (from Standby Mode)
(0x76)
Enter Standby Mode (from Run Mode)
(0x7E)
Exit User Calibration Mode
(0x82)
Reset the Processor
(0x83)
Enter Sleep Mode (from Run Mode)
(0x84)
Exit Sleep Mode (to Standby Mode)
(0xE1)
EEPROM Address
Data (1 Byte)
Read from EEPROM
(0xF1)
EEPROM Address
Data
Write to EEPROM
HMC6343
www.honeywell.com 11
Timing
Upon power application to the HMC6343, wait nominally 500 milli-seconds before sending the first I2C command (typically
a 0x32 byte followed by a 0x50 byte for the usual heading/pitch/roll). Depending on the command sent, a delay time
should be inserted before clocking out the response bytes (send 0x33, clock back response bytes). The following table
indicates the response delay times for various commands.
Table 3 HMC6343 Command to Response Delay Times
Commanded Action
Response Bytes & Description
Response/Delay
Time
(milli-seconds)
VDD1-3 low to high
No Response Data
500 nominally
Post Accel Data.
6 binary data Bytes. AxMSB, AxLSB,
AyMSB, AyLSB, AzMSB, AzLSB
1
Post Mag Data.
6 binary data Bytes. MxMSB, MxLSB,
MyMSB, MyLSB, MzMSB, MzLSB
1
Post Heading Data.
6 binary data Bytes. HeadMSB, HeadLSB,
PitchMSB, PitchLSB, RollMSB, RollLSB
1
Post Tilt Data.
6 binary data Bytes. PitchMSB, PitchLSB,
RollMSB, RollLSB, TempMSB, TempLSB
1
Post OP Mode 1
OP Mode 1
1
Enter User Calibration
Mode
No Response Data
0.3
Level Orientation
(X=forward, +Z=up) (default) No Response Data
0.3
Upright Sideways
Orientation
(X=forward, Y=up) No Response Data
0.3
Upright Flat Front
Orientation
(Z=forward, -X=up) No Response Data
0.3
Enter Run Mode
No Response Data
0.3
Enter Standby Mode
No Response Data
0.3
Exit User Calibration
Mode
No Response Data
50
Reset the Processor
No Response Data
500
Enter Sleep Mode
No Response Data
1
Exit Sleep Mode
No Response Data
20
Read from EEPROM,
RAM
1 binary data Byte
10
Write to EEPROM, RAM
No Response Data. Data Settling Time
10
HMC6343
12 www.honeywell.com
Operational Mode Registers
EEPROM registers 0x04 and 0x05 contain bits that are read for operational mode status and for setting the Run Mode
measurement rate. The tables below describe the register contents and interpretation. It is recommended that Operational
Mode Register 1 and 2 written only to change default orientation and update measurement rate.
Table 4 Operational Mode Register 1 (EEPROM 0x04)
OM1_7
OM1_6
OM1_5
OM1_4
OM1_3
OM1_2
OM1_1
OM1_0
Comp(0)
Cal(0)
Filter(0)
Run(1)
Stdby(0)
UF(0)
UE(0)
Level(1)
Table 5 Operational Mode Register 1 Bit Designations
Location
Name
Description
OM1_7
Comp
Calculating compass data if set. (read only)
OM1_6
Cal
Calculating calibration offsets if set. (read only)
OM1_5
Filter
IIR Heading Filter used if set.
OM1_4
Run
Run Mode if set.
OM1_3
Stdby
Standby Mode if set.
OM1_2
UF
Upright Front Orientation if set.
OM1_1
UE
Upright Edge Orientation if set.
OM1_0
Level
Level Orientation if set
Table 6 Operational Mode Register 2 (EEPROM 0x05)
OM2_7
OM2_6
OM2_5
OM2_4
OM2_3
OM2_2
OM2_1
OM2_0
(0)
(0)
(0)
(0)
(0)
(0)
MR1(0)
MR0(1)
Table 7 Operational Mode Register 2 Bit Designations
Location
Name
Description
OM2_7 to
OM2_2
0
These bits must be cleared for correct operation.
OM2_1 to
OM2_0
MR1, MR0
Measurement Rate
0,0 = 1Hz
0,1 = 5Hz (default)
1,0 = 10Hz
1,1 = Not Assigned
User Hard-Iron Calibration
The HMC6343 provides a user calibration routine with the 0x71 command permitting entry into the calibration mode and
the 0x7E command to exit the calibration mode.
After entering the calibration mode, rotate the device reasonably steady for 360 degrees about the Y (Left - Right) axis
and then 360 degrees about Z (Up - Down) axis. During the first rotation, maintain the Y axis at Level as much as
possible. Maintain the Z axis upright as much as possible during the second rotation and until the exit calibration
HMC6343
www.honeywell.com 13
command is issued. The first rotation can also be done by rotating 360 degrees about X (Fore -Aft) axis. Then exit
calibration.
The calibration routine collects these readings to correct for hard-iron distortions of the magnetic field. These hard-iron
effects are due to magnetized materials nearby the HMC6343 part that in a fixed position with respect to the end user
platform. An example would be the magnetized chassis or engine block of a vehicle in which the compass is mounted
onto. Upon exiting the calibration mode, the resulting magnetometer offsets are updated.
Example Communication
For basic power up and compassing using the defaults, the flowing order of operations is recommended:
1. Apply power to the VDD pins (nominally +3.3 volts)
2. Wait at least 500 milli-seconds for device initialization. The HMC6343 is in the default Run Mode.
3. Send 0x32 and 0x50 to command the Heading and Tilt Data to be clocked out next.
4. Wait at least 1 milli-second to allow the HMC6343 to process the command.
5. Send 0x33 and clock back six more response Bytes from the HMC6343. These will be the Heading, Pitch and
Roll Byte pairs; binary format in tenths of a degree with 2’s compliment on pitch and roll angles. (0 to 3600
heading, ±900 pitch, and ±900 roll)
6. Repeat steps 3 - 5 every 200 milli-seconds or longer to get fresh data from the default 5Hz update rate.
ORDERING INFORMATION
Ordering Number
Product
Packaging
HMC6343
HMC6343-demo
HMC6343-eval
3 axis Compass with Algorithms
Development Kit
Evaluation Board
Tubes
Demo Board, USB Cable
and Demo Software
Board
FIND OUT MORE
For more information on Honeywell’s Magnetic Sensors visit us online at www.magneticsensors.com or contact us at
800-323-8295 (763-954-2474 internationally).
The application circuits herein constitute typical usage and interface of Honeywell product. Honeywell does not warranty or assume liability of customer-
designed circuits derived from this description or depiction.
Honeywell reserves the right to make changes to improve reliability, function or design. Honeywell does not assume any liability arising out of the
application or use of any product or circuit described herein; neither does it convey any license under its patent rights nor the rights of others.
U.S. Patents 4,441,072, 4,533,872, 4,569,742, 4,681,812, 4,847,584 and 6,529,114 apply to the technology described
Honeywell
12001 Highway 55
Plymouth, MN 55441
Tel: 800-323-8295
www.magneticsensors.com
Form #900357
March 2011
©2011 Honeywell International Inc.
Caution
This part is sensitive to damage
by electrostatic discharge. Use ESD
precautionary procedures when
touching, removing or inserting.
CAUTION: ESDS CAT. 1A
Caution
This part is sensitive to damage
by electrostatic discharge. Use ESD
precautionary procedures when
touching, removing or inserting.
Caution
This part is sensitive to damage
by electrostatic discharge. Use ESD
precautionary procedures when
touching, removing or inserting.
CAUTION: ESDS CAT. 1A