(Last updated: Oct. 2014. See last step for details on changes.)

This is the UDS Digital Supervisor, an Android app and hardware for remotely maintaining the temperature of your UDS like a thermostat. Your phone monitors the temperatures inside the UDS and adjusts a blower to keep the temperature to the setting you decide. Don't have a UDS? You can build one yourself!

What cool stuff can the UDS Digital Supervisor do?

The Supervisor app has the following functionality:

  • Maintains a constant temperature inside your smoker (duh).
  • Sounds an alarm if a thermometer temperature falls outside a configurable range. Very handy for overnight cooks so you can sleep worry-free.
  • Records the temperatures in a database and displays a graphical chart showing the progress of your cook.
  • Periodically tweets the status of your smoker so you can monitor your cook from anywhere in the world. Requires an internet connection (double duh). If you need something to put yourself to sleep you can follow my smoker's twitter account.
  • A companion app running on another Android device can monitor the Twitter feed and sound an alarm if there is an error. Go see a movie in peace knowing that your smoker is purring like a kitten in a basket full of warm socks.
  • Can monitor up to eight thermometers and measures in Fahrenheit, Celsius, or Kelvin.

How It Works

The app monitors the temperature using thermometers inside your smoker and compares it to your target temperature. If the temperature is too low the app will turn on a blower to force more air into the UDS, which will stoke the coals and increase the temperature. The app uses a PID algorithm to determine when to turn on the blower. Your phone uses Bluetooth to communicate with the hardware attached to the blower and the thermometers.


This project is made up of three main parts:

  1. Blower The temperature of the smoker is ultimately determined by the amount of air the coals get. The more air the blower pushes into the smoker the hotter it will get.
  2. IOIO controller The IOIO (pronounced yo-yo) is a microcontroller specially made for Android and acts as the connection between the blower/thermometers and the Android app. The blower and thermometers plug into the controller and it sends signals to your phone using Bluetooth. Check out the IOIO home page for more information.
  3. Android app The app monitors the thermometer temperatures and adjusts the blower speed accordingly by sending a signal to the IOIO controller. The app uses a PID algorithm to determine the correct blower speed. The temperatures and the blower speed are recorded in a DB (database) which can then be used to display a chart of the entire cook. The app is free to download and is Open Source, which means it will always be free.

Step 1: Parts and supplies

Not including the Android device, you can expect to pay approximately $120 to build the controller and blower that you see here (this includes two Maverick thermometers). The battery I used is ~$40 but you can probably get away with a much cheaper option, especially if you don't plan on running 12-hour cooks.

Android Device

You'll need an Android phone. You do not need a cell or internet connection (unless you want to use the Twitter functionality) but it must have Bluetooth. This app should run on any 2.3.4+ Android device but I can't guarantee it will work until someone tries it. The following platform/OS combos have been tested. If you build one using a different combo let me know and I'll add it.

Device Android OS Version
Motorola Droid (original) 2.3.7
Samsung Galaxy S III 4.0.4
Motorola Droid 3Minimoto v1.7
Samsung Note 34.4.2
OnePlus One4.4.4
Nexus 74.4.2


Part Description Qty URL Price
IOIO This is the hardware that links your Android to the blower using Bluetooth. I used an older version of the IOIO but the new one should work fine. The main difference is that you need an adapter (supplied) to connect the Bluetooth dongle. If you don't want to use the new one you can get the older version on ebay. 1SparkFun $40
Bluetooth dongle The Bluetooth dongles proved to be tempermental. The two dongles linked here work but have a short range. See extended discussion later in this page. 1

Seeed Studio


Maverick ET-73 probes You want at least two probes, one for the pit temperature and one for the food. The pit probe looks different from the food probe so look at the pictures above to get one of each.

Be sure to get ET-73 probes, not ET-732 probes. They have slightly different plugs and are not compatible.
2+, max of 6 Search Amazon and Ebay $10-15 each
2.50mm mono jacks 2.50mm mono female jacks for connecting the thermometers. You need one per thermometer. I bought one jack in a different color to indicate which one is the pit thermometer. MultipleDigiKey
$1 each
Standoffs For attaching the IOIO to the enclosure. Any standoffs will do as long as the screws for attaching the IOIO fit through them. 4All-Electronics $0.40 for 10
3.5mm stereo jack Used to connect power between the IOIO board and the blower. Another one is required for the blower.(listed below) 1All-Electronics 1*
All-Electronics 2
3.5mm male stereo cable Used to connect the IOIO to the blower. A 3' cable is fine. 1All-Electronics $1.50
2.1MM power jack Double-check to make sure it fits with whatever power supply you buy. 1All-Electronics
TIP41C Switching transistor for controlling the blower via PWM. 1Digi-Key $1
1N4004 diode Protects the IOIO electronics from blower. 1All-Electronics
#4-40 screws + nuts Attaches the IOIO to the enclosure. Half-inch screws are just barely long enough so longer ones might be good. 4 Local hardware $5
Breadboard I soldered all the components to a breadboard that I bought at a local electronics supply. The one linked to the right should work although you may need to trim it down. 1All-Electronics $5-10
22.1k ohm resistors One needed for each thermometer. It would be a good idea to get twice as many as needed and measure them with a multimeter. The closer they are to 22.1k ohm the more accurate the measured temperature will be. Don't obsess about it: being off by 100-200 ohms is fine. MultipleAll-Electronics
$0.10 each
830 ohm resistor Part of the PWM circuitry. 1All-Electronics $0.50
Enclosure You can use any enclosure that will hold the IOIO and parts. I used a food storage container from the Container Store. A clear plastic box not only looks cool but lets you see the LEDs to verify that your IOIO is powered and working. Electric project boxes might not work as well--they have slots on the interior that make it harder to install panel-mount components. 1The Container Store $5
Headers I soldered headers to the IOIO. This allowed the breadboard (with the Arduino headers) to be plugged into the IOIO instead of soldered directly.Digi-Key $2.50
Arduino Headers I used Aurduino headers to connect the circuit board to the IOIO. Arduino headers have a longer pin. This let me replace the circuit board or the IOIO without having to unsolder anything. 1 pkgAll-Electronics $1.50
Total price w/ two thermometers (including optional headers) $100-$110

* - The first jack from All-Electronics is the jack I used. However, the second one is probably easier to use.

Power Supply

There are a few options for supplying power:


Using a battery for power means you can use your controller anywhere, which is convenient. I use a 10 amp-hour sealed lead-acid battery because I want to be able to run the smoker for 10-12 hours. This appears to be much more power than necessary because the battery hardly drained after 8 hours, so you may be able to get by with something cheaper.

Part Description Qty URL Price
12 volt battery 10 amp-hour battery 1RadioShack
Battery charger You'll need a charger if you use the battery above. 1RadioShack
Alligator clips Alligator clips to connect the cable to the battery leads. 2 (one pair)All-Electronics
Power plug Power plug for connecting battery to the controller. 1All-Electronics
Rectifier diode (Optional) If you follow my build then it's possible to accidentally reverse the polarity when you hook up the battery, which will fry your IOIO. A rectifying diode will prevent this at the cost of a bit of voltage. A 1-amp diode such as the 1N4007 should do. 1All-Electronics
Total price $40

AC Power adaptor (i.e. wall-wart)

You can buy an AC adaptor but you can probably find one at a thrift shop for cheap. The one I used for testing was a power supply from an old laptop that I bought for 50 cents. You can use any adaptor as long as:

  • It's 12 volts.
  • At least 1 amp. More amps is fine. If you want to be overly anal get one that can supply 2 amps. When the blower starts up it will momentarily take more power.

If you still want to buy an adaptor:

Part Description Qty URL Price
12v adaptor 12 volt / 1amp adaptor 1All-Electronics

Cigarette 12 volt adaptor

One other option is to use a 12-volt adaptor that fits into the cigarette lighter of your car. I haven't tried it but it should work fine.

Blue Tooth Dongle

The IOIO can be persnickety on what dongle it will accept. The IOIO has a dongle page that lists dongles that have been shown to work with the IOIO but it varies by phone and you may have to purchase multiple dongles before you find one that works with your setup. DealExtreme has lots of dongles cheap but they can take 4-5 weeks to ship. The dongles linked in the list above are known to work with the phones I've used.

Class 1 dongles are better because those have a longer range but I haven't found one yet that works. If you do, send me a message so I can try it too.


These are the parts required for the blower assembly. The nipple that I used fits into the 1/2" ball valve on my smoker. You may have to adapt your blower to fit your smoker.

Part Description Qty URL Price
Enclosure Any enclosure that can house the blower and the PCB connection can be used. The one I used is linked here. 1All-Electronics
3.5mm stereo jack Used to connect the power cable from the controller. Another one is required for the controller. 1All-Electronics 1*
All-Electronics 2
12v blower The blower I used has a tachometer sensor which isn't currently being used. 1Digi-Key $14
M20 Washer M20 washer. I bought it at a local Ace Hardware. 1HomeDepot $0.60
Nipple 1/2 x 3 pipe nipple. 1HomeDepot $2
PVC bushing 3/4 x 1/2 PVC bushing. I had to cut off the end to get it to fit in my enclosure. 1HomeDepot $0.66
Screws + nuts For attaching the blower to the enclosure.
Total price $22


  • Drill and bits, preferably a drill press.
  • If you build a blower like the one above you'll need a drill bit for cutting 7/8" holes, like this one.
  • Soldering iron and solder.
  • X-Acto knife or similar.
  • Wire cutters, pliers, etc.

Not necessary but helpful:

  • Heat gun and shrink tubing to protect your wiring.

Skills Required

The most difficult skills for this project are soldering and the ability to read simple schematics. You'll likely need some patience, too. :)

<p>Deeg, yes, the fan cycles on and off. Also I must restart the phone to exit the app. John</p>
<p>John, I've put up a beta version of UDS 2.0 that you can try. It works on my Nexus 5x with 6.0.1. Let me know if you have any problems.</p><p>https://sourceforge.net/projects/udssupervisor/files/?source=navbar</p>
Deeg, The beta version will not run. When I try to start it the following message appears &quot;Unfortunately, UDS Digital Supervisor has stopped.&quot; John
<p>Can you send me the logcat? I'll give you my email via PM.</p>
<p>Thanks for the info John. I'll try to look into it this week but then I go on vacation for a while. I'll let you know when I have a new beta version you can try.</p>
<p>Deeg, Finally completed this project. Going to try the UDS tomorrow. The fan cycles on and off. Also the fan speed does not show on the app. Phone is HTC 6525LVW with Ardriod 6.0. Thanks, John</p>
<p>John, do you mean the fan just turns off and on but doesn't adjust its speed? I'm in the process of updating the UI to work with Android 6.0 and I noticed the fan speed bug. I'll try to fix it soon. Let me know if you run into any other problems.</p>
<p>Hey Deeg hallo again! how did i missed that post and i spent money buying maveric .... ! How accurate are the thermometers? Very nice post very nice project for this year!</p>
<p>When I did a test a while back the pit thermometer was within 2 degrees F. When I have 6 thermometers plugged in they are all within 5 degrees F, plenty good enough for smoking. :)</p>
<p>Yeap ... dont think that will make any big diversions!</p><p>Dont laugh with my question ! i dont know nothing about electronics but it would be a good idea to put a LCD display! or its not possible?!?!</p>
<p>It wouldn't be easy to add an LCD screen with the current construction. The IOIO can attach to an LCD but the wiring would have to be re-configured. I'd be happy to help re-write the software if someone wanted to do this but I don't have the desire to do the re-wiring for the screen.</p>
<p>I built one today, using a nexus 5, and for some reason, my temp comes and goes, like every 2 seconds, any idea's?</p>
<p>Was the blue tooth, thanks</p>
<p>I assume what you mean is that the display vacillates between showing a temp and &quot;NA&quot;. Is it doing it for all thermometers or just one? If all thermometers are showing NA then the connection between your Nexus and the IOIO is dropping. If it's just one then you probably have a loose wire connecting the thermometer.</p><p>Have you looked at the logcat? That should show if your connection is getting dropped.</p>
<p>Hi,</p><p>I've just stumbled across this whilst looking for a way to automate my UDS using an Arduino or the HeaterMeter. I love what you've done, it's so much simpler and is definitely cheaper.</p><p>I was wondering if the webserver you removed in the latest version of the apk allowed the settings to be altered remotely? I realise I can get status updates by monitoring the twitter feed (do you have a preferred app for this out of curiosity?), however I'm hoping to be able to alter settings mid cook remotely as varying recipes may require.</p><p>Anyway thanks for the great work you've done already, it's much appreciated. As a novice to the UDS scene (it's only growing in Australia) I'm keen to learn how I can get the most out of it.</p>
<p>if you are using a rooted android device you can use an app called webkey to remotely control it. </p><p>https://play.google.com/store/apps/details?id=com.webkey&amp;hl=en</p>
<p>Thanks for the comments CivB :)</p><p>I never got the webserver working more than just returning the current temperature before turning to Twitter instead. My initial plan was to accommodate changing the target temperature but I've never needed it. Pretty much everything I cook is done at a steady temperature and most BBQers do the same. If there is enough demand for it I can look into it. I'd probably implement it via Twitter.</p><p>I added some functionality to the UDS to monitor the twitter feed (I see that I haven't updated the documentation; it's under the &quot;Menu&quot; button on the main page). It will monitor the feed and display the most recent message and temperature chart. It will sound an alarm if there hasn't been a tweet in 20 minutes or if the UDS notices an error with the temperatures. I use it on all my overnight cooks to warn me that something is wrong.</p>
<p>I think that s so cool but can i use my samsung not 4</p>
<p>Could somebody please post a detailed picture of the Stereo Jack wiring? Everything works fine so far (power supply, temperature in app with sony experia) </p><p>I'm unsure how to connect the powerjack with the 825k transistor TIP41C and D11N4001 in the right way. In most pictures, this part is not clear to see </p>
<p>I'm having trouble finding a 830ohm resistor in germany</p><p>the link doesn't give away much information besides</p><p>825ohm 5watt resistor (which is confusing, 825 or 830?)</p><p>http://www.allelectronics.com/make-a-store/item/825-5/825-ohm-5-watt-cer.-resistor/1.html</p>
<p>Hmmm...looks like allelectronics has updated their web site and the original link doesn't work any more. I'll fix that some day. Any resistor ~830 ohms will work fine. You can order the 820 1/4-watt resistor from this page: http://www.allelectronics.com/make-a-store/category/530200/resistors/1/4-watt-resistors/1.html</p>
<p>Great project I will be making one but I am wondering do you think it would be possible to use a wifi dongle instead of bluetooth ? </p>
<p>The project as constructed must use a bluetooth dongle. The IOIO doesn't support wifi that I know of and even if it did the code would have to be rewritten.</p>
<p>hey i installed the new version you put up the 1.2 but how do i get to the settings now my action menu button part were i could get to settings before is gone?</p>
<p>The settings UI hasn't changed so it should work the same as before. At least one other person has used 1.2 and didn't mention any problems with the UI. If you still have problems send me a PM and I'll give you my email so you can send me the logcat.</p><p>I just put up a new version of 1.2 with some bug fixes so you may want to try that.</p>
<p>I feel like i am missing something about how to get to the settings. It use to be in the bottom right corner now its no longer there and i dont know how to get there to access the twitter settings.</p>
<p>I'm having trouble setting up the twitter part do i put the @xxxx or just my twitter account name like xxx and i have the api key and api secret access token and token secret but i cant seem to get it to tweet. There isn't much on instructions on setting up the twitter part. Do I need to do more on the account or is it suppost to be as simple as plug in token secret tokent api key and secret api key?</p>
I have the same problem, what is mean with api key and api secret access token and token secret?
<p>How do i get to the action button on the new andriod 4 were it use to come up and say settings when i was using my tablet its andriod 3 were all the twitter info goes? Its no longer gives me the option on the 1.2 vesrion to access it like this?</p>
<p>g00se, can you send a screenshot? I'm using the UDS on Android 4.4.4 (Nexus 7) without any problems.</p>
<p>You need to register UDS as an application in Twitter. Here are the step-by-step instructions: <a href="http://iag.me/socialmedia/how-to-create-a-twitter-app-in-8-easy-steps/" rel="nofollow">http://iag.me/socialmedia/how-to-create-a-twitter-...</a></p><p>The &quot;Website&quot; (step 5) can be anything and leave &quot;Callback&quot; blank. On step 7 select &quot;Read and Write&quot;. Step 8 will show you the keys that you need to put into UDS.</p>
<p>Did you get your Twitter already running, goose? i did it once and until now not again.</p>
<p>Use just your Twitter account name (e.g. &quot;deegsmoker&quot;) for the Twitter handle. If you believe you've set it up correctly and it's still not tweeting then send me your logcat and I'll take a look.</p>
<p>From what i have found twitter changed whats acceptable to post for security reasons</p>
<p>Update: I'm working on this but I've updated a few dependencies and I'm working through some DB problems.</p>
<p>Nice to hear, my coding is pretty bad im you are taking your time to update it to make it compatible. I am putting the finishing touches onto my controller.</p>
<p>I just put up a new version named uds-1.2-SNAPSHOT.apk. Try it out and let me know if you have problems.</p><p>https://sourceforge.net/projects/udssupervisor/files</p>
<p>Thx you for your time and great build and help I ran Catlog and I'm getting a error when it trys to update to twitter code 92 its ssl required.</p><div></div>
<p>Ready!!! Hope I can fix the Twitterproblem soon :-)</p>
Any problems with the IOIO-OTG board? I had to order a new board and it seems I ordered the last original IOIO board available on eBay. <br><br>My ID10t tip is don't put Vin across the analog I/O pins. :-(
I use the OTG without any problems at the moment.
<p>Ouch! I feel your pain--I accidentally swapped the power pins and fried my IOIO. The UDS works with the IOIO-OTG just fine. At least one person has used the OTG.</p>
Twitter works! :-)))))
<p>Nice work Sascha and thanks for the pictures! I like how you have an external jack for the bluetooth dongle. That probably helps with the range. Now you'll have to post a picture of some good German BBQ.</p>
Software works on Galaxy Note 3 and OnePlus One. <br><br>Bluetooth tip: Turn up/down the current going to the USB port using a small screwdriver.<br><br>I am trying to use a PC case fan. I will update since I am still waiting for parts.
<p>Thanks jschlager! What versions of Android OS are you using on those devices? I'll update the list.</p>
Note 3 Android 4.4.2<br>OnePlus One Android 4.4.4
I also used an MPS6532 NPN transistor since that is what I had instead of the TIP41C. MPS6532 can handle 500mA fan was rated at 300mA at 12V. TIP41c is rated for 6 amps.
<p>I've updated the table with your devices, thanks! It'll be interesting to see what kind of range you get with that bluetooth dongle. I haven't found anything yet that is consistent past 30 feet.</p>
<p>Hello!</p><p>Just did my first wireing, but the Software shows negativ degrees and the therm has no influence on the temperature. Did anyone can help me? I add an picture of my wireing.</p><p>Regards</p><p>Sascha</p>

About This Instructable




More by Deeg:Memom's apple pie with simple DIY crustTea Light for Two -- make your own pendant light from a tea setUgly Drum Smoker (UDS) How-to and FAQ
Add instructable to: