Skip to content
Automatic temperature controller (ATC) for an ugly drum smoker (UDS)
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Smokey The Barrel

Automatic temperature controller (ATC) for an ugly drum smoker (UDS)

This ESP8266-based project is controllable via the Blynk smartphone app [over WiFi], reprogrammable OTA, uses 5 k-type thermocouple temperature probes which feed into a PID algorithm, and controls the speed of a 12v DC blower fan via PWM. So many 3 letter acronyms! It pushes the data to Thingspeak and automatically tweets from @SmokeyTheBarrel when certain conditions are met.

Materials for automatic temperature controller:

  • 1x ESP8266 12E module (I used the WeMos D1 mini)
  • 5x K type thermocouples & amplifier circuits
  • 1x 12V DC blower fan with PWM speed control (4 wires)
  • 1x 12V power supply
  • 1x 12V -> 3.3V DC-DC step down power regulator
  • 1x waterproof project box
  • ~1 meter heat-resistant silicone tubing
  • misc. resistors, wires, and jacks

This project started out as a way to monitor and record the temperature of the smoker and the food, but I've added more and more features (reads as: "broken the code and had to start again") over time. First I got my ESP8266 to work with the temperature probes using the max6675 library, and was able to post the readings to Thingspeak, doing all this periodically with the SimpleTimer library. I then integrated the 12v DC blower fan, which I was able to control with PWM- I set analogWriteFreq(30000) as the signal that my fan expected according to its specs was around 28k-30k. To keep the temperature from oscillating up and down too much, I integrated the PID_v1 library. Finally I added OTA update capability so that I don't have to take the whole project apart every time I want to tweak the code.

The Blynk app (how to control the ATC)

I use the Blynk mobile app to send the desired pit temp and pull temp to the ATC. It can also visualize things like the fan speed, a graph of the last few data points, etc.

If you would like to clone this project, you can use the following QR code which will copy my Blynk interface which should automatically work with your ATC:

It is pretty straight forward- you move the sliders left and right to set the pit/pull temp, and the Blynk app sends these changes to the ATC. The ATC updates the app with the current temperature of the pit, the temperature of the food, the fan speed, etc.

The Ugly Drum Smoker

I cleaned out the inside of the barrel, then I cut off the lid, stripped the paint, and re-painted it with heat-resistant paint. I used six brass 3/4" pipe fittings to provide air flow- three on the bottom as intakes and thee as vents on the top. I used a large steel paellera as a lid, and it rests on the three vents. I also added handles and a modular rack system to adjust the height of the grills inside of the smoker.

Find more info and pics about the UDS project here.

Materials for barrel:

When I picked up the barrel it still had some residue of the previous contents, so I did about 5 rounds of washing it out with ample soap and water. I then let it dry, and after making sure there were no flammable vapors remaining in the barrel, I cut off the lid with an angle grinder. Keep the lid if you want to use it as a heat/smoke diffuser plate; you can drill a bunch of 1" holes to let the air flow through it better.

I drilled the three holes for the air intakes about 2" from the base of the barrel (120 degrees apart), and three more for vents near the top. I filled the barrel with some wood, used an extractor fan to blow air into the intakes at the base, and burned until the barrel glowed red hot for 15~25 minutes. This may not actually get rid of all of the leftover carcinogenic chemicals in the remaining residue and paint, but I felt that it was good enough. it took a lot of elbow grease to get the charred paint off of the outside of the barrel! I used a steel wire brush and it took me ~3 hours. I drilled the remaining holes to mount the interior rack system, the handles, the temperature probes, etc. After cleaning the surface, I used a heat-resistant paint to coat the outside of the barrel. I did another few burns (at a lower temperature) to wear it in a bit, oiled up the inside, and started smoking!

Materials for the coal basket:

I stitched together the basket with the expanded steel using the stainless steel wire, taking care to not shred my hands-- thick leather gloves are a must. I plan to build a bigger/stronger coal basket with thicker expanded steel & a welder.

March 1st 2019 Update: I've been using SmokeyTheBarrel for a few years now and it's been loads of fun! Having the ATC and meat temperature probes really takes the guesswork out of estimating cook times. We've had a good run so far- plenty of ribs, pulled pork, smoked sausages, briskets, turkey legs, and many more good memories. Here's to you, Smokey.

You can’t perform that action at this time.