Digital Compass Solution HMC6352 The Honeywell HMC6352 is a fully integrated compass module that combines 2-axis magneto-resistive sensors with the required analog and digital support circuits, and algorithms for heading computation. By combining the sensor elements, processing electronics, and firmware in to a 6.5mm by 6.5mm by 1.5mm LCC package, Honeywell offers a complete, ready to use electronic compass. This provides design engineers with the simplest solution to integrate high volume, cost effective compasses into wireless phones, consumer electronics, vehicle compassing, and antenna positioning. Honeywell continues to maintain product excellence and performance by introducing innovative solid-state magnetic sensor solutions. These are highly reliable, top performance products that are delivered when promised. Honeywell’s magnetic sensor products provide real solutions you can count on. FEATURES BENEFITS 4 Compass with Heading Output 4 A Complete Compass. Everything is Done. 4 Full Integration of 2-Axis Magnetic Sensors and Electronics Complete Digital Solution with Heading Output to Avoid Design of 4 A Hardware and Compassing Firmware Routines. 4 Firmware Included Acquisition, Calibration, and Heading Computation Routines 4 Data Included for Quick-to-Market Designs. 4 Small Surface Mount Package (6.5 x 6.5 x 1.5mm, 24-pin LCC) 4 Easy to Assemble & Compatible with High Speed SMT Assembly 4 Low Voltage Operation (2.7 to 5.2V) 4 Compatible for Battery Powered Applications 4 I2C 2-Wire Serial Interface 4 Works as a Slave to Customer’s Master Processor (100kHz). 4 Lead Free Package Construction 4 Complies with Current Environmental Standards (RoHS) 4 Wide Magnetic Field Range (± 2 Oe) 4 Sensor Can Be Used in Strong Magnetic Field Environments 4 Set/Reset Strap Drive 4 Stray Magnetic Field Protection and Temperature Compensation 4 RoHS Compliant 4 Lead Free and No Banned Substances HMC6352 HMC6352 SPECIFICATIONS Characteristics Supply Voltage Supply Current Conditions (1) Min Typ Max Units Vsupply to GND 2.7 3.0 5.2 Volts Vsupply to GND Sleep Mode (Vsupply = 3.0V) 1 µA Steady State (Vsupply = 3.0V) 1 mA Steady State (Vsupply = 5.0V) 2 10 Dynamic Peaks Field Range (2) Heading Accuracy Total applied field mA mA 0.10 0.75 gauss 2.5 degRMS Heading Resolution 0.5 deg Heading Repeatability 1.0 deg Disturbing Field HMC6352 - Sensitivity starts to degrade. 20 gauss Enable set/reset function to restore sensitivity. Max. Exposed Field Operating No permanent damage and set/reset function restores performance. 10000 gauss Ambient -20 70 °C Ambient -55 125 °C For Lead-Free SMT Reflow 230 240 °C Temperature Storage Temperature Peak Reflow - Temperature Moisture Sensivity Output Size Max 240°C MSL3 - Heading, Mag X, Mag Y 6.5 x 6.5 x 1.5 mm Weight 0.14 (1) Tested at 25°C except stated otherwise. (2) Field upper limit can be extended by using external resistors across CA1/CA2 and CB1/CB2. grams Pin Configuration/Package Dimensions 2 www.honeywell.com HMC6352 Pin Descriptions HMC6352 Pin Name 1 OF2 SR+ 3 NC 4 NC 5 GND 6 NC 7 SDI 8 SDO 9 PGM 10 SCL 11 SS 12 NC 13 NC 14 VDD 15 NC 16 NC 17 NC 18 NC 19 CB2 20 CB1 21 NC 22 CA2 23 CA1 24 OF+ Description No User Connection (Offset Strap Negative) No User Connection (Set/Reset Strap Positive) No User Connection No User Connection Supply/System Ground No User Connection I2C Data Output (SPI Data In) No User Connection (SPI Data Out) No User Connection (Program Enable) I2C Clock (SPI Clock) No User Connection (Slave Select) No User Connection No User Connection Supply Voltage Positive Input (+2.7VDC to +5.0VDC) No User Connection No User Connection No User Connection No User Connection Amplifier B Filter Capacitor Connection Amplifier B Filter Capacitor Connection No User Connection Amplifier A Filter Capacitor Connection Amplifier A Filter Capacitor Connection No User Connection (Offset Strap Positive) I2C Communication Protocol The HMC6352 communicates via a two-wire I2C bus system as a slave device. The HMC6352 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 HMC6352 slave, and binary data returned. Negative binary values will be in two’s complement form. The default (factory) HMC6352 7-bit slave address is 42(hex) for write operations, or 43(hex) for read operations. The HMC6352 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 HMC6352. Pull-up resistance values of about 10k ohms are recommended with a nominal 3.0-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. 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 www.honeywell.com 3 HMC6352 address byte designates if the operation is a read (LSb=1) or a write (LSb=0). At the 9 th clock pulse, the recieving 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 transmit back data for a read operation. All bus transactions are terminated with the master issuing a stop sequence. The following timing diagram shows an example of a master commanding a HMC6352 (slave) into sleep mode by sending the “S” command. The bottom two traces show which device is pulling the SDA line low. START 0 1 0 0 0 0 1 0 ACK 0 1 0 1 0 0 1 1 ACK STOP SDA SCL M_SDA S_SDA 42(hex) Write to This I2C Address “S” Command 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. Command Protocol The command protocol defines the content of the data (payload) bytes of I2C protocol sent by the master, and the slave device (HMC6352). 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 42(hex)). These commands then follow with the ASCII command byte and command specific binary formatted argument bytes in the general form of: (Command ASCII Byte) (Argument Binary MS Byte) (Argument Binary LS Byte) The slave (HMC6352) 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 43(hex)) with the least significant bit set, and then clocking back one or two response bytes, last command dependant. For example, an “A” command prompts the HMC6352 to make a sensor measurement and to route all reads for a two byte compass heading or magnetometer data response. Then all successive reads shall clock out two response bytes after sending the slave address byte. Table 1 shows the HMC6352 command and response data flow. 4 www.honeywell.com HMC6352 Table 1 – HMC6352 Interface Commands/Responses Command Byte ASCII (hex) w (77) r (72) G (47) g (67) Argument 1 Byte (Binary) EEPROM Address EEPROM Address RAM Address RAM Address Argument 2 Byte (Binary) Response 1 Byte (Binary) Response 2 Byte (Binary) Data Write to EEPROM Data Read from EEPROM Data Write to RAM Register Data Read from RAM Register S (53) W (57) O (4F) C (43) E (45) L (4C) A (41) Description MSB Data LSB Data Enter Sleep Mode (Sleep) Exit Sleep Mode (Wakeup) Update Bridge Offsets (S/R Now) Enter User Calibration Mode Exit User Calibration Mode Save Op Mode to EEPROM Get Data. Compensate and Calculate New Heading Operational Controls HMC6352 has two parameters; Operational Mode and Output Mode, which control its operation. The Operational Mode control byte is located at RAM register byte 74(hex) and is shadowed in EEPROM location 08(hex). This byte can be used to control the continuous measurement rate, set/reset function, and to command the HMC6352 into the three allowed operating modes; Standby, Query, and Continuous. The Output Mode control byte is located at RAM register byte 4E(hex) and is not shadowed in the EEPROM, and upon power up the device is in the Heading output mode. This byte can be changed to get magnetometer data if necessary but is typically left in a default heading data mode. Non-Volatile Memory The HMC6352 contains non-volatile memory capability in the form of EEPROM that retains key operational parameters and settings for electronic compassing. Table 2 shows the balance of the EEPROM locations that the user can read and write to. Details on the features of these location bytes will be discussed in the following paragraphs. Table 2 – HMC6352 EEPROM Contents EE Address (hex) 00 01 02 03 04 05 06 07 08 Byte Description I2C Slave Address Magnetometer X Offset MSB Magnetometer X Offset LSB Magnetometer Y Offset MSB Magnetometer Y Offset LSB Time Delay (0 – 255 ms) Number of Summed measurements(1-16) Software Version Number Operation Mode Byte Factory Default 42(hex) factory test value factory test value factory test value factory test value 01(hex) 04(hex) > 01(hex) 50(hex) Operational Modes The HMC6352 has three operational modes plus the ability to enter/exit the non-operational (sleep) mode by command. Sleep mode sends the internal microprocessor into clock shutdown to save power, and can be brought back by the “W” command (wake). The “S” command returns the processor to sleep mode. The three operational modes are defined by two bits in the internal HMC6352 Operation Mode register. If the master device sends the “L” command, the current operational mode control byte in the RAM register is loaded into the internal EEPROM register and becomes the default operational mode on the next power-up. The application environment of the HMC6352 will dictate the most suitable operational mode. www.honeywell.com 5 HMC6352 Standby Mode: (Operational Mode=0) This is the factory default mode. The HMC6352 waits for master device commands or change in operational mode. Receiving an “A” command (get data) will make the HMC6352 perform a measurement of sensors (magnetometers), compute the compensated magnetometer and heading data, and wait for the next read or command. No new measurements are done until another “A” command is sent. This mode is useful to get data on demand or at random intervals as long as the application can withstand the time delay in getting the data. Query Mode: (Operational Mode=1) In this mode the internal processor waits for “A” commands (get data), makes the measurements and computations, and waits for the next read command to output the data. After each read command, the HMC6352 automatically performs another get data routine and updates the data registers. This mode is designed to get data on demand without repeating “A” commands, and with the master device controlling the timing and data throughput. The tradeoff in this mode is the previous query latency for the advantage of an immediate read of data. The above two modes are the most power conserving readout modes. Continuous Mode: (Operational Mode=2) The HMC6352 performs continuous sensor measurements and data computations at selectable rates of 1Hz, 5Hz, 10Hz, or 20Hz, and updates the output data bytes. Subsequent “A” commands are un-necessary unless re-synchronization to the command is desired. Data reads automatically get the most recent updates. This mode is useful for data demanding applications. The continuous mode measurement rate is selected by two bits in the operational mode selection byte, along with the mode selection and the periodic Set/Reset bit. The periodic Set/Reset function performs a re-alignment of the sensors magnetic domains in case of sensor perming (magnetic upset event), operating temperature shifts, and normal thermal agitation of the domains. Exposure of the HMC6352 to magnetic fields above 20 gauss (disturbing field threshold) leads to possible measurement inaccuracy or “stuck” sensor readings until the set/reset function is performed. With the periodic Set/Reset bit set, the set/reset function occurs every few minutes. Operational Mode Control Byte Syntax As described above, the HMC6352 operation mode, measurement rate, and periodic set/reset are selected and stored both in a processor RAM register and in EEPROM. Upon power-up the EEPROM will transfer the saved operational mode control byte into register address 74(hex). The following is the byte format: Bit 7 =0 Bits 6 and 5 (Continuous Mode Measurement Rate) Bit 6 0 0 1 1 Bit 5 0 1 0 1 Description 1 Hz Measurement Rate 5 Hz Measurement Rate 10 Hz Measurement Rate 20 Hz Measurement Rate Bit 4 (Periodic Set/Reset), 0 = Off, 1 = On Bit 3 = 0 Bit 2 = 0 Bits 1 and 0 (Operational Mode Value) Bit 1 0 0 1 1 Bit 0 0 1 0 1 Description Standby Mode Query Mode Continuous Mode Not Allowed The total bit format for the Operational Mode Byte is shown below: Bit 7 (MSB) 0 6 Bit 6 M. Rate_H Bit 5 M. Rate_L Bit 4 Per. S/R Bit 3 0 Bit 2 0 Bit 1 Op Mode_H Bit 0 (LSB) Op Mode_L www.honeywell.com HMC6352 Output Data Modes The read response bytes after an “A” command, will cause the HMC6352 will return two bytes with binary formatted data. Either heading or magnetometer data can be retrieved depending on the output data selection byte value. Negative signed magnetometer data will be returned in two’s complement form. This output data control byte is located in RAM register location 4E(hex) and defaults to value zero (heading) at power up. The following is the byte format: Bits 7 through 3 = 0 Bits 0, 1, 2 (Output Mode Value) Bit 2 0 0 0 0 1 Bit 1 0 0 1 1 0 Bit 0 0 1 0 1 0 Description Heading Mode Raw Magnetometer X Mode Raw Magnetometer Y Mode Magnetometer X Mode Magnetometer Y Mode The total bit format for the Output Mode Byte is shown below: Bit 7 (MSB) 0 Bit 6 0 Bit 5 0 Bit 4 0 Bit 3 0 Bit 2 Mode Bit 1 Mode Bit 0 (LSB) Mode Heading Mode: The heading output data will be the value in tenths of degrees from zero to 3599 and provided in binary format over the two bytes. Raw Magnetometer Modes: These X and Y raw magnetometer data readings are the internal sensor values measured at the output of amplifiers A and B respectively and are 10-bit 2’s complement binary ADC counts of the analog voltages at pins CA1 and CB1. The leading 6-bits on the MSB are zero filled or complemented for negative values. The zero count value will be about half of the supply voltage. If measurement averaging is implemented, the most significant bits may contain values of the summed readings. Magnetometer Modes: These X and Y magnetometer data readings are the raw magnetometer readings plus offset and scaling factors applied. The data format is the same as the raw magnetometer data. These compensated data values come from the calibration routine factors plus additional offset factors provided by the set/reset routine. User Calibration The HMC6352 provides a user calibration routine with the “C” command permitting entry into the calibration mode and the “E” command to exit the calibration mode. Once in calibration mode, the user is requested to rotate the compass on a flat surface at least one full circular rotation while the HMC6352 collects several readings per second at various headings with the emphasis on rotation smoothness to gather uniformly spaced readings. Optimally two rotations over 20 seconds duration would provide an accurate calibration. The calibration time window is recommended to be from 6 seconds up to 3 minutes depending on the end user’s platform. The calibration routine collects these readings to correct for hard-iron distortions of the earth’s magnetic field. These hardiron effects are due to magnetized materials nearby the HMC6352 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 and scaling factors are updated I2C Slave Address The I2C slave address byte consists of the 7 most significant bits with the least siginificant bit zero filled. A described earlier, the default (factory) value is 42(hex) and the legal I2C bounded values are between 10(hex) and F6(hex). This slave address is written into EEPROM address 00(hex) and changed on the power up. Magnetometer Offsets The Magnetometer Offset bytes are the values stored after the completion of the last factory or user calibration routine. Additional value changes are possible, but will be overwritten when the next calibration routine is completed. Note that www.honeywell.com 7 HMC6352 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 01(hex) to 04 (hex) and loaded to RAM on the power up. These offsets are in ADC counts applied to the 10-bit ADC raw magnetometer data. Most offset MSB values will likely be zero filled or complemented. Time Delay The EEPROM time delay byte is the binary value of the number of milliseconds from the time a measurement request was commanded and the time the actual measurements are made. The default value is 01(hex) for no delay. Extra measurement delays maybe desired to allow for amplifier stabilization from immediate HMC6352 power-up or for external filter capacitor selection that limits the bandwidth and time response of the amplifier stages. This value is written into EEPROM address 05(hex) and loaded to RAM on the power up. Measurement Summing This EEPROM summed measurement byte permits designers/users to back average or data smooth the output data (heading, magnetometer values) to reduce the amount of jitter in the data presentation. The default value is 04(hex) which is four measurements summed. A value of 00(hex) would be no summing. Up to 16 sets of magnetometer data may be selected for averaging. This slave address is written into EEPROM address 06(hex) and loaded to RAM on the power up. Software Version This EEPROM software version number byte contains the binary value of the programmed software. Values of 01(hex) and beyond are considered production software. Timing Requirements Table 3 contains the time delays required by HMC6352 upon receipt of the command to either perform the commanded task or to have the response available on the I2C bus. Table 3 – Interface Command Delays Command Byte ASCII (hex) w (77) r (72) G (47) g (67) S (53) W (57) O (4F) C (43) E (45) L (4C) A (41) Description Write to EEPROM Read from EEPROM Write to RAM Register Read from RAM Register Enter Sleep Mode (Sleep) Exit Sleep Mode (Wakeup) Update Bridge Offsets (S/R Now) Enter User Calibration Mode Exit User Calibration Mode Save Op Mode to EEPROM Get Data. Compensate and Calculate New Heading Time Delay (µsec) 70 70 70 70 10 100 6000 10 14000 125 6000 Command and Operation Mode Interactions All commands are accepted in the standby mode. Honeywell strongly recommends using this mode during the initial setup stage. Setting up of the HMC6352 operation mode and its slave address are typical set up examples. Although execution of all commands in the Query and Continuous Modes is acceptable, the completion outcome is not guaranteed. Q: How to Read Data from HMC6352? A: In Standby Mode - Use “A” command. In Query Mode - Send 43(hex) slave address to read data and clock out the two register data bytes for heading. An initial “A” command is needed to update the heading after each read. 8 www.honeywell.com HMC6352 In Continuous Mode - Send 43(hex) slave address to read data and clock out the register data bytes for heading. The “A” command is not allowed or required. Waveform Examples Example 1: This example shows how to read a single byte from the HMC6352. The Slave (HMC6352) continues to hold the SDA line low after the acknowledge (ACK) bit because the first bit of the data byte is a zero. Remember that the data read is last command sensitive. SDA SCL M_SDA S_SDA 43(hex) Read From This I2C Address 55(hex) Data Example 2: This example shows how to read two bytes from the HMC6352 (slave). The slave continues to hold the SDA line low after the acknowledge bit because the first bit of the data bytes is zero. SDA SCL M_SDA S_SDA 43(hex) Read From This I2C Address 55(hex) Data 00(hex) Data Example 3: This example shows how to command HMC6352 to read a RAM register by sending the “g” command and the register address 7F(hex). Note that this example does not show the process of reading the answer. See example 1 for reading a byte. SDA SCL M_SDA S_SDA 42(hex) Write to This I2C Address “g” Command 7F(hex) Register 7F Example 4: This example shows how to write to a RAM register in the HMC6352 by sending the “G” command, the register address 7F(hex), and the data byte 55(hex) to the HMC6352 slave. SDA SCL M_SDA S_SDA 42(hex) Write to This I2C Address www.honeywell.com “G” Command 7F(hex) Register 7F 55(hex) Data 9 HMC6352 Example 5: The final example shows how to read RAM register 7F(hex). First perform a write operation to command the HMC6352 to read a RAM register and define which register to read (Example 3). The sensor puts the answer in the data buffer. Then perform a read operation to clock out the answer (Example 1). There is a Stop/Start event in between the write operation and the read operation. This example is just a combination of Examples 3 and 1, but it is provided to show that reading a register involves both a write and a read operation. STOP START SDA SCL M_SDA S_SDA 42(hex) “g” Write to This I2C Address Command 7F(hex) Register 7F 43(hex) Read From This I2C Address 55(hex) Data Application Notes The HMC6352 Integrated Compass Sensor circuit is composed of two magneto-resistive (MR) sensors with orthogonal orientation for sensing the horizontal components of the earth’s magnetic field (0 to 630 milli-gauss), plus two amplifiers, a set/reset drive circuit, and a microprocessor (µP). Best accuracy is obtained in clean magnetic environments (free air) and held level, or perpendicular to the gravitational direction. At worst case, each degree of tilt from a level orientation could add two degrees of compass heading error. Magnetic errors can be introduced if operated near strong magnetic sources such as microphone or speaker magnets, transformers in test equipment, and CRT deflection yokes in video displays/monitors. These magnetic errors can typically be reduced or eliminated by performing the calibration routine. When locating the HMC6352 in dense printed circuit board designs, take precautions in location of this magnetic field sensing device for soft-iron effects that bend the earth’s magnetic field. These soft-iron effects are from ferrous materials without residual magnetization and tend to be items like nickel-plating on SMT component contacts and RFI/EMI shielding materials. The amount of stand-off of the HMC6352 from these soft-irons is heuristic and dependant on the amount of material, material shape, and proximity. A user calibration mode is available in the HMC6352 to diminish hard-iron effects of the end-user’s (customer’s) location of the product. Hard-iron effects come from nearby ferrous materials with residual magnetism that buck or boost the intensity of the earth’s magnetic field, leading to heading errors. Such hard-iron effects come from vehicle chassis, speaker magnets, and high current conductors or circuit traces. PCB Pad Definition (Dimensions in Millimeters) The HMC6352 is a fine pitch LCC package with a 0.80mm pin pitch (spacing), with the pin pads defined as 0.70mm by 0.33mm in size. PCB pads are recommended to be oversized by 0.025mm from each pad for a short dimension oversize of 0.05mm. The interior PCB pad is recommended to be 0.05mm oversized per pin with an exterior oversize of 0.20mm for proper package centering and to permit test probing. Lead finish is SnAgCu. Soldering attachment shall be done by SMT lead-free reflow methods with standard preheating, soaking, reflow, and cooling profiles for large body parts. Caution, excessive temperature exposure beyond the profiles may result in internal damage to the HMC6352 circuits. 10 www.honeywell.com HMC6352 24 1 TOP VIEW 5.00 6.90 0.80 0.38 MECHANICAL DIMENSIONS (In millimeters) D A E e E1 e Dimension D D1 E E1 e A Minimum 1.37 Nominal 6.50 BSC 4.00 BSC 6.50 BSC 4.00 BSC 0.8 Basic 1.52 Maximum 1.67 D1 SOLDERING GUIDELINES Most LCC packages have no special requirements beyond normal procedures for attaching SMT components to printed circuit boards. The exception to this process is the Honeywell HMC6352 that has a FR4 substrate package with epoxy top encapsulation. www.honeywell.com 11 HMC6352 If the HMC6352 is stored in an uncontrolled humidity environment (>10% RH) beyond one week, a 24-hour bakeout period should be implemented before solder reflow. This bakeout should be in accordance with JEDEC J-STD-033A at 125°C for MSL3 devices. Three heating zones are defined in SMT reflow soldering process; the preheating zone, the soaking zone, and the reflow zone. The preheating zone includes the soaking zone, and nominally ranges from 2 to 4 minutes depending on temperature rise to arrive in the 160°C to 180°C soaking plateau to active the flux and remove any remaining moisture in the assembly. Preheat rise times must not exceed 3°C per second to avoid moisture and mechanical stresses that result in “popcorning” the package encapsulation. The soaking zone is a one to two minute temperature stabilization time to bring the all the PCB assembly to an even temperature. Typically this zone has a 0.5 to 0.6°C rise in temperature heading towards the main reflow heating elements. The reflow zone is 30 to 90 second bump in temperature over the 180°C point to reflow the screened solder paste before a gradual cooling. The peak temperature is typically in the 230°C to 240°C range. It should be noted that lead-free solders tend to require higher peak reflow temperatures and longer reflow times. Cooling zone temperature fall should decrease not more than 6°C per second to avoid mechanical stresses in the PCB assembly. REFERENCE DESIGN The schematic diagram in Figure 1 shows the basic HMC6352 application circuit with a minimum of external components. From Figure 1, the host microprocessor (µP) controls the HMC6352 via I2C serial data interface lines for data (SDA) and clock (SCL). Two external 10k-ohm pull-up resistors to the nominal +3 volt DC supply create normally high logic states when the interface lines are not in use. The host initiates use of the interface by creating the 100kHz clock and pulling low the data line to indicate the start condition. The data line logic state transitions are only allowed during the clock low states and require the data line to be stable in the high states, with the exception of the start and stop conditions. Figure 1 Reference Design Schematic The 0.01µF supply decoupling capacitor in this reference can be omitted if another supply filter capacitor is already included in the overall circuit design. If the supply traces extend beyond a couple inches to the HMC6352, it is advisable to add a local supply decoupling capacitor near the HMC6352 to retain optimum circuit stability. Additional masters and slaves can be added to the I2C bus traces without interface trouble to the HMC6352. There are no periodic maintenance commands required, and even HMC6352 sleep mode or power shutdown can be accomplished without harm to the data or clock lines. 12 www.honeywell.com HMC6352 Amplifier Filter Connections The HMC6352 design has provisions for the feedback loop of each amplifier stage to be accessible via the CA1, CA2, CB1, and CB2 pin contacts. Across the contacts and internal to the HMC6352 is the amplifier section plus a 1200k-ohm feedback resistance to set the voltage gain. By placing small value ceramic capacitors across CA1 to CA2 (or CB1 to CB2), the designer can set the –3dB bandwidth of the amplified magnetometer signals to drop spurious magnetic interference in the system. For example a 120 pico-Farad capacitor (Cext) in the amplifier feedback loop would limit the bandwidth to about 1kHz. Be aware that larger values of capacitance begin to slow the amplifier response to where the measurement delay time EEPROM byte may have to be increased in value to let the signal settle before making a measurement. Figure 2 shows the partial schematic of the amplifier feedback loop. Figure 2 Amplifier Filter Connections An optional gain reducing resistor (Rext) could also place across the feedback loop of the amplifier stages. With the amplifier set with the internal 1200 k-ohm feedback for ±750 milli-gauss maximum magnetic field flux density, a second 1200k-ohm external resistor would halve the gain and permit ±1.5 gauss capability if desired. Gain can be reduced for up to ±6 gauss capability for magnetometry-only applications or compassing with significant magnetic stray fields nearby. ORDERING INFORMATION Ordering Number HMC6352 Product Digital Compass Solution, I2C 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 customerdesigned 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 International Inc. 12001 Highway 55 Plymouth, MN 55441 Tel: 800-323-8295 www.honeywell.com www.honeywell.com Form #900307 Rev D January 2006 ©2006 Honeywell International Inc. 13