Multi Thermocouple Monitor


My name is Nicolas Juteau and I am a currently attending my third year in computer engineering at Université Laval, Québec, Canada. Outside of studies and work, I really like to spend time cooking with my beloved wife; smoking food being something we got used to really quickly because it is so good! Bacon, smoked salmon, smoked meat, brisket, ribs, name it!

As a smoking food enthusiast, keeping the smoker temperature stable is very important to get great result in a reasonable time window. Without the proper gear, I ended up constantly watching the smoker temperature from the built-in thermometer, leaving not much time to do anything else, for those sometime very long hours necessary to smoke.

There are already out there some gears that allows you to wirelessly monitor the temperatures, for a couple hundred of bucks, but hey, why not build it yourself? Not only I will not pay for it (except for the parts, of course), but I will be rewarded with knowledge and experience for my future carreer! How good is that?

I went the whole process myself: features & specifications (with the help of my wife, because she will use it too!), schematics, parts selection, through-hole prototype, software programming, 3d modeling, footprints, pcb layout, testing. The only missing part is the PCB manufacturing by PCBway!!! :)


The project has the following features:

  • Portable, USB rechargeable, battery powered

  • Battery state of charge monitoring

  • Up to 3 K-type thermocouples

  • Programmable timer per thermocouple

  • Interconnected devices (remote communications)

  • Audible/visible alarms when certain conditions are met (over temperature, etc.)

  • Display with controllable backlight

  • Highly configurable (min/max temperature alarm per thermocouple, microcontroller sleep duration, remote transmission power, etc.)


It all started with an atmega328p but quickly upgraded to a atmega1284p due to the increasing need in GPIO & code ressources. At the beginning, the internal 8MHz clock of the atmega was used. When the programmable timer came in, quickly moved to a more precise 8MHz crystal for accurate timing. Most of the time, the CPU is sleeping, thus saving the battery. The "active" frequency is configurable, from 1 second to 10 seconds. For this type of application, extremely fast temperature acquisition is not necessary. The MCU is flashed / fused by using a ISP 6-pins connector. In order to avoid SPI interference between external devices and the flashing tool, a slide switch was integrated to select between "normal mode" and "programming mode". In the latter case, power rail is fed by the VTARGET  pin of the remote flasher instead of the output of the voltage regulator.

Thermocouple interface

The IC used is a MAX31855-K which does the cold-junction compensation internally, a plus. SPI based. To save on cost, only one MAX31855 is used and thermocouples are multiplexed. The cold-junctions (negative side) are tied together on a large copper plane and only the positive sides are multiplexed. Thermocouples connectors used are standard with available thermocouples sold on the market. The IC also features thermocouple failure detection.


The battery chemistry selected is a LiPo 750mAh for its compact size, long lasting charge for small current demand, price, availability, etc. The battery recharge is assured by the MCP73833 and a mini-B USB port. This IC features 3 states output which can be used to determine device state (charging, charge complete, etc.). A MCP1824ST LDO 3.3V 300mA voltage regulator is used to power all the devices, which are 3.3V compliant.

The battery state of charge monitoring starts with a simple voltage divider to meet the internal atmega's 1.1V reference. A PMOS transistor is used to enable the battery input only when measuring the battery SOC, to reduce power consumption. A simple lookup table is used to associate state of charge vs battery voltage. It is not the best way to proceed, but it does the job. 

Remote communications

For the remote communication feature, a 2.4GHz wireless module was chosen which uses the NRF24L01 chip from Nordic Semiconductors.  This module feature a U.FL connector which allows to use an external RP-SMA antenna outside an enclosure. The antenna chosen is a monopole (1/4 wavelength) whip antenna. The antenna is planned to be mounted nearby the main ground plane, in order to achieve proper performance.

There is also a complete footprint to use a wireless IoT chip, the CC3100MOD from Texas Instruments. The footprint is suited to allow either a chip antenna or an external antenna through a U.FL connector. The landmark for antenna matching via passive components is also there. The project's next phase is to develop the software that will connect on a wireless home network in order to be able to receive the data on mobile phone, sending alerts, logging data, etc. Then, antenna can be matched using a network analyzer. Indeed, antennas performances are greatly affected by surroundings, enclosures, etc.

Great care was taken in order to not cut the bottom ground plane so it can act as a good counterpoise for the whip antenna, as per required by antenna chosen. RF signal is fed to the antenna using an impedance matched and grounded coplanar waveguide with via stitching for enhanced noise immunity.

Display and other components

The display is a OLED display device of NHD display, which is 128x64 pixels. The size allows to display all the temperatures, min/max limits, alarms, timers, battery state of charge, modes activated, etc. This display also feature a backlight on demand. The latter is activated using a simple 2N3904 transistor.

For the audible alarms, a simple piezzoelectric buzzer is used in conjunction with the PWM feature of the atmega. Depending on the type of the raised alert, a specific tone pattern / frequency is chosen.

The connectors used for the thermocouples are standard mini PCC thermocouples allowing fast and robust connection of the thermocouples to the device.


Because I knew the OLED display & pushbuttons I would be using in the final design, I could choose a proper enclosure with sufficient dimensions for the largest components I would be using, that is, the display. The best is that the manufacturer of the enclosure publish the CAD drawings of their products so it is easy to modify them in order to fit in the display, buttons and connectors. You can then make a 3d print of the front cover with all the pockets, inserts, holes you need to see if it fits before making the final holes on the enclosure itself.

### Project photos

Enough talking, more photos!

The prototype

Device final look

PCB layout 

Board with components (front side)

Board with components (rear side)

### Words to PCBWay

As you can see on the prototype picture, it is quite messy and not usable in a real usage scenario, a PCB would be really handy!

Thank you for giving us, students and electronics enthusiasts, an opportunity to sponsor our projects!

I hope this will be the beginning of an happy relationship for my future projects! :)

Apply for sponsorship >>
524 Projects Sponsored
Aug 02,2017
1,709 viewsReport item
  • Comments(0)
  • Likes(5)
You can only upload 1 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP
    View More
    Earn a $5 Welcome Bonus