MLX90614 IR Thermometer Hookup Guide

Pages
Contributors: jimblom
Favorited Favorite 9

Hardware Hookup

Hooking up the MLX90614

If you're not using the SparkFun Evaluation Board, you can wire the MLX90614 up to just about any Arduino-compatible microcontroller (or, really, any µC with an I2C interface). Power the sensor using the 3.3V rail, wire up SDA-to-SDA and SCL-to-SCL, and add 4.7kΩ pull-up resistors to the two I2C signals.

Example hookup

MLX90614 PinArduino PinNote
VDD3.3VNearby 0.1µF decoupling capacitor
VSS0VNearby 0.1µF decoupling capacitor
SDA/PWMSDA (A4)Pulled up to 3.3V via a 4.7kΩ Resistor
SCLSCL (A5)Pulled up to 3.3V via a 4.7kΩ Resistor

Use the "notch" on the sensor to help identify which pin is which.

Hooking Up the IR Thermometer Evaluation Board

To use the evaluation board, you'll need to solder something to at least the 6-pin serial header. We like right-angle male headers for this purpose, but straight headers may also work.

Headers soldered to the board

While you're at it, you may also want to solder headers to the GPIO header and/or the ICSP header -- just in case you want to interface with the SPI interface or analog inputs.

Connecting an FTDI Basic

The easiest way to interact with the MLX90614 Evaluation Board is via a 3.3V FTDI Basic Breakout or a 3.3V I/O FTDI Cable, which both provide power and set up a serial interface between the eval board and your computer.

FTDI plugged into board

Take care to match up the "GRN" and "BLK" labels (or the green and black wires of the FTDI cable) between the two devices! Also note that the FTDI can supply, at most, about 50mA. That'll be enough for this board, but if you add more devices to the circuit, you may need to add a separate power source.

The FTDI also sets up a programming interface -- using the pre-programmed serial bootloader and the Arduino IDE.

Using the Pre-Programmed Firmware

The IR Thermometer Breakout board ships with simple example code, allowing you to quickly test the functionality of the MLX90614. The demo code outputs the ambient and object temperatures over the serial interface at 38400 bps.

To view the output, open a serial terminal of your choice (if you don't already have one, check out our Serial Terminal Basics tutorial for suggestions). And set the baud rate to 38400 bps (8 data bits, no parity, 1 stop bit). You should see the object temperature readings stream by every second-or-so.

Serial output example

The "STAT" LED should also blink every time new data is produced.

Once you've gotten a handle on that, check out the next section to start writing your own IR thermometer-interfacing code!