DIY Gadgets Sous Vide

DIY Sous Vide Heating Immersion Circulator for About $75


I’ve recently been fascinated by the idea of sous vide cooking – a method of slowly cooking vacu-sealed foods in a precisely controlled water bath to achieve the optimal doneness.  Last year, Sur La Table started carrying the world’s first “home” sous vide cooker, the SousVide Supreme.  This was fantastic, since commercial sous vide cooking machines cost north of $2000.  However, the home model (priced at $450) is still a steep investment for something that essentially just keeps water warm.  I was determined that I could build a better device on-the-cheap.

Behold, the $75 DIY sous vide heating immersion circulator!  By scrapping together parts that are readily available on eBay and Amazon, I was able to build a self-contained device that heats and circulates water while maintaining a temperature accurate to .1 degree Celsius (yes, point one degrees!).  And unlike the SousVide Supreme, my device can be mounted onto any container (up to a reasonable size, perhaps 15 gallons) allowing you more room to cook, if needed.

To build your own device, you’ll need some basic soldering skills, the list of stuff below, about 6 hours of free time (plus time for glue to dry) and the can-do attitude of a geek who doesn’t want to pay $450 for a water heater.  Click the “more” link for complete step-by-step instructions.

If these instructions have helped you build you own machine, I hope you’ll consider donating.  My goal is to mass-produce the world’s first sous vide heating immersion circulator for under $100, and every donation helps!

Update: Along with my business partners, I’ve finally commercialized a home sous vide machine!  It’s called the Sansaire, and it’s available for pre-order now!
Sansaire $199 Sous Vide Machine

DSC_0050 DSC_0046

Makes: 1 sous vide immersion heater
Total tinker time: about 6 hours

Shopping list:

Note: Make sure the controller you purchase has an SSR or Voltage output.  Controllers with a relay-only output will require an external relay and different wiring than what is listed in this project.

I’ve updated the parts list to specify an SSR – it adds a little to the cost of the project, but it is far more reliable, easier to connect, and works with any SSR/Voltage-output PID controller.

  • 1 piece of 1/4” acrylic, about 5cm x 20cm
  • 1/4” x 2” eye bolt and nut
  • About 2’ of 16-18 gauge wire
  • 3 wire nuts
  • Electrical tape
  • A means of cutting acrylic (see article)
  • Soldering iron and solder
  • Multimeter (tool that measures voltage, current, resistance)
  • Hobby knife (X-Acto or similar)
  • Tub and Tile Silicone Caulk
  • Hot glue gun
  • Krazy Glue

Step 1 – Making cutouts in your enclosure

This is the most difficult part of the whole project.  In order for the final assembly to be sturdy, water-resistant and decent looking, you’ll need to cut your mounting holes as precisely as possible.  I am very lucky to have access to a laser cutter at a lab at work, which makes this kind of precision cutting very easy and accurate.  However, in the absence of a $30K computerized laser cutting machine, with a steady hand, you can achieve the same results using a high-speed rotary tool like a Dremel.

I’ve included a cutting template that is matched to the heaters, PID controller and switch in the shopping list.  However, if you use different parts (different models, different manufacturers) you’ll need to adjust the template to ensure a tight fit of all parts.

image Click here for the 1:1 scale diagram (PDF)

  1. Pick a side of the storage container that you want to be the bottom.  Using the template as a guide, cut out the three holes for the immersion heaters.  Make sure that these holes are closest to the open end of the container (the end that has the lid) to ensure you’ll be able to reach inside later for wiring, etc.
  2. Next, cut the small oval-shaped hole for the water pump power cord.
  3. Turn the container over so the side with the holes is facing down.  Now, cut out the openings for the PID controller, the on-off switch, and the power cord.  Be sure that the hole for the PID controller is towards the top.  Otherwise, you’ll be cramped for space when trying to reach the back of the controller.
  4. Next, dry-fit all of the parts to ensure a good, snug fit.  The tighter the fit, the more sturdy the finished product will be. IMG_0441

Step 2 – Making the mounting bracket and pump holder

The mounting bracket is a J-shaped piece of acrylic that will let you attach the finished sous vide cooker to the side of a pot or basin.

  1. Cut out the rectangle on the 2nd page of the parts diagram and drill the hole as indicated.
  2. Find a rectangular surface that will allow you to make the 2 90-degree bends necessary to shape the acrylic into a “J”.  I used a small, glass olive oil bottle with flat sides and rounded corners.
  3. Turn on your stove.  Holding the long end of the acrylic with an oven mitt, warm it a few inches above your stovetop, turning to heat both sides.  It may take a few minutes for the acrylic to be warm enough to bend- you’ll know you’re getting close when the acrylic starts to curl away from the heat.
  4. Bend the acrylic along (approximately) the lines indicated in the diagram to form a “J”.  Press the bottom part of the J (not the side with the hole, and not the long side) against a flat surface such as your counter top.  Immediately cool the acrylic with cool water to hold its form.

Step 3 – Mounting the immersion heaters

The immersion heaters are the primary working element of the sous vide machine.  We’ll mount them hanging down from the bottom of the enclosure, and arranged so that the opening in the middle of the coil is lined up between all three heaters.

  1. Cut the power cord off of each heater, leaving about a 4” tail of wires from the heating end.  Keep one of the long lengths of power cord (including the plug) to use later as the main power cord.
  2. Using your hobby knife, scrape down the flat sides of the heater handles to remove lettering and to flatten out the circular rim at the top of the handle.  This will allow for a deeper and tighter fit in the heater openings.
  3. Arrange all three heaters in their respective openings.  Note that the heaters should be oriented such that the coils are facing towards the center-line of the enclosure.  You should be able to fit your finger down the middle of all three coils.  Make sure the heaters are snug in their openings. IMG_0449
  4. Apply a small bead of tub and tile caulk around the heaters on the outside of the enclosure.  Allow to dry overnight before proceeding.

Step 4 – Wiring

CAUTION: Don’t ever power on the heater coils unless they are submerged in water!  Also, don’t electrocute yourself.

If you have experience with basic circuitry and wiring, this will be pretty easy.  However, if you’ve never worked with a soldering iron or circuit diagrams, these steps will take you a while.  Refer to the wiring diagram below for the “big picture.”

Wiring diagram for JLD612 PID Controller with SSR

sous vide electrical diagram for LJD612 PID

Wiring Diagram for CD101 PID Controller with physical relay

Update: I’ve updated the wiring diagram to make it clear that the view of the relay posts is from below.  In other words, if you set the relay down on your table with the pins facing up, that will match the alignment in the wiring diagram.

circuit diagram


  1. Strip off about 1/4” of shielding from your power cord (remember, the cord that you saved from one of the immersion heaters?).  Run the power cord in through the power cord opening on the front of the enclosure.  Separate the 2 wires about 6”.  One of these wires will go through the power switch, and the other will go directly to the PID controller, heaters and pump.
  2. Use your multimeter to find the two posts on the back of the power switch that are normally open, but closed when the switch is on.  On my power switch, these were the far and middle posts (not the two posts closest to the “ON” side of the switch, you know, with the dot).  IMG_0457
  3. Pass the switch mounting nut (the thing that screws on the back) over one lead from the power cable, inside the enclosure.  Run the lead out through the power switch hole.  Solder that lead to one of the posts you identified in step 2.  Cut an 8” length of wire and solder one end to the 2nd lead on the switch.  Tuck the wires inside the enclosure, place the switch in its hole, and tighten the mounding nut to secure it in place.  You’re now done with the power switch.
  4. Next, wire together the heater leads.  Separate the leads from the heating coils.  Gather together one lead from each coil to make two bundles of three.  Cut two 6” lengths of wire and add one to each bundle.  You should now have two bundles, each with four wires – 3 of which go to the heaters, and one left dangling.  Solder the wires in each bundle together, then cap with a wire nut and some electrical tape.
  5. Of the leads you have coming out of the heater bundles, one will go straight to the incoming power, and the other will go to the relay that turns on and off the heaters.
  6. At this point, it gets too difficult to describe the rest of the wiring in words, so refer to the wiring diagram.  Just make sure to be aware of how everything will mount in the enclosure when you’re all done.  Pass the wires through the mounting ring on of the PID controller before attaching them to the terminals, etc.
  7. After wiring the connections to the relay (or SSR), coat the bottom with hot glue to surround the connection points.  This will act as an insulator and prevent the relay from shorting out against any metal inside the case.  Or, if your SSR came with a plastic cover, secure it in place to prevent the connections from shorting.
  8. If you are using the PT100 thermocouple (which I recommend), make sure you connect the leads exactly as shown in the wiring diagram or you will have an inaccurate temperature reading.  (There’s no instruction manual with these probes, so it took 30 minutes of trying different combinations before I found the right one).

Step 5 – Final Assembly

  1. Using Krazy Glue, glue the J clamp to the bottom-front of the enclosure.  Wait until dry before proceeding.
    Note: This glue joint is a popular point of failure.  If you’d like, strengthen the connection between the J clamp and the body by using two screws and nuts.
  2. Glue the nut for the eye bolt to the inside of the hole in the J clamp.  Ensure that the nut lines up with the hole so the eye bolt can pass through.
    eye bolt
  3. Seal the openings for the power cord and pump cord using tub and tile caulk.
  4. Put the back cover on the enclosure and wrap the seam with electrical tape.
  5. Stick the suction cup feet of the immersion pump to the flat end of the J clamp and position the water outlet to pump through the middle of the heating coils.DSC_0039

Step 6 – Testing

Now that everything is wired up and assembled, you probably want to see if it works.  WAIT!  Don’t turn the machine on (ever!) unless the coils are submerged in water or, they will burn out in about 5 seconds (I learned this the hard way).  DSC_0038
To test the machine out, fill a basin with water so that it covers at least the coil part of the heaters.   Mount the machine on the edge, so that the J clamp hangs over the lip.  Tighten the eye bolt to secure the machine.  Plug in the cord and flip the power switch!  If the PID controller turns on and the pump starts pumping, that’s a good sign!  Note that the heaters may not warm up just yet, depending on what the target temperature is by default.

Step 7 – Programming the PID Controller

For users of the JLD612 PID Controller

For programming instructions such as running Auto-tune and changing alarm values, refer to the JLD612 manual.  Here are the steps you should take when programming your controller for the first time.

  1. Press SET and enter code 0089, then press SET.
  2. Set the value of Inty to Pt10.0 to get the temperature to display with one decimal place.  (I had to set it to Pt100, then back to Pt10.0 to get this to work the first time.
  3. Select End to exit the programming menu.


For users of the CD101 PID Controller

Out-of-the-box, the PID controller is designed to work with a different type of thermocouple, so the readings that you get using a PT100 will be strange.  Follow the instructions in this manual (that doesn’t ship with the PID controller) to set it for the PT100 probe.  You can also follow the instructions there to set the number of decimal points of precision.

Next, set a target temperature by tapping the SET button, then using the up and down arrows to pick a number and pressing SET again to confirm.  50C is a good target temp.  The OUT1 light will light up, indicating that the PID controller is turning on the heater.  You should hear a soft clicking noise – this is the relay kicking in.  At this point, the heating coils are on and warming up.  As the temperature measured by the probe (green, top line) approaches the target value (orange, 2nd line), the relay will click on and off more frequently to sustain the temperature.. DSC_0040

Ideas, Improvements, Thoughts

After burning out my first set of heating coils, I realized that there must be a better method of heating the water.  The coils are very effective and heat the water very quickly.  However, I’m pretty paranoid about burning them out again, and they’re a pain to replace.  I’ve found some commercial immersion heating elements, but they’re about $100, which inflates the budget for this project by quite a bit.  I may try using the heating element and pump system from an old espresso machine, the kind that makes steam.  Since it already has a self-contained heater and an pump, it might even be cheaper than the heating coils and aquarium pump.

I’ve also thought about turning this machine into a general-purpose temperature control unit.   Instead of wiring the heaters directly to the relay, I would install a power outlet on the back of the enclosure and add a jack to plug in an external temperature probe.  If I wanted to use the immersion heaters, I’d just plug them in to the power outlet.  If one got fried, I’m only out $6 instead of an hour of removing glue and solder.  Also, a general-purpose temperature controller is great for making your own smoker box.  A-la Alton Brown, you can plug in a hotplate filled with wood chips and have a precisely temperature-controlled smoker for just a few bucks.

I’m thrilled to start playing with sous vide cooking, and I’m happy that I was able to build an accurate, reliable machine for $75.  Even the PID Controller + Crockpot method costs $185 (not including the Crockpot!).


I gotten a lot of emails and comments asking for troubleshooting help, and rightfully so – there’s a lot going on in this project, especially if you’re pretty new to DIY electronics.  I’ve decided to add my basic troubleshooting routine, which should hopefully get you sorted out.  If you still have problems, please post a comment below, or send me an email at

If your heaters don’t get hot when they should (i.e., your machine isn’t working), do the following:

  1. Ensure that your OUT1 light goes on and off when it should.  It should be on when the unit is heating, and off when you’re at or above the set value.  If not, double check that you’ve set your temperature probe type correctly, and that OUT1 is set to heating mode in the PID settings menu.  If this looks correct, proceed to step 2.
  2. Verify that your PID controller has an SSR/Voltage output.  This should be specified on the sticker on the side of your PID controller.  The controller in the photo below only has a relay output (this is not what you want).
    relay only controller
    PID controllers generally have two types of outputs: relay and voltage.  Contrary to how it sounds, a relay output is not used for controlling a relay.  Rather, a PID controller with a relay output actually has an internal relay.  Unfortunately, the internal relay is typically not rated for the kind of load that the heating coils pull, so you cannot connect them directly to the internal relay.  A PID controller with an SSR/voltage output produces a DC voltage (8-12V DC) that we can use to control an external mechanical relay or a solid state relay (SSR).  That’s what we want.
    Telltale signs that your PID controller has a relay-only output: a) there’s no voltage across pins 5&6 (or the corresponding pins on your controller) when the OUT1 light is on, b) you hear a clicking sound when OUT1 turns on and off, even when your external (blue) relay is disconnected, and c) you measure continuity across the pins that correspond to OUT1 when OUT1 is on.
    If you have a PID controller with a relay output, not all is lost.  You’ve got two options:
    1)  Return it for a PID controller with an SSR/voltage output, or
    2)  Use the internal relay to control an external 120VAC relay that is rated for 8+ Amps @ 120VAC.  The wiring for this configuration is a little messier, and you’ll need to buy a different relay than the one specified in the parts list.  The wiring diagram for this configuration is below.  Note that I haven’t attempted to show the actual pin configuration of the external relay – rather this is the logical way you’ll need to wire it in.
    circuit diagram for relay-out
    If you’re sure that your PID controller has an SSR/voltage output, proceed to step 3.
  3. Verify that you are using the right kind of relay for your PID controller. The CD101 will work with either an SSR (solid state relay) or a physical relay. However, the JLD612 and many other PID controllers will only work with an SSR.
  4. If you’re using a CD101 and a physical relay, ensure that your external (blue) relay is wired correctly.  You should hear a clicking noise coming from that relay when OUT1 lights up or turns off.  If not, you may have connected the leads from pins 5 & 6 backwards, or your external relay may require a higher activation voltage than what your PID controller outputs.  Measure the voltage from pins 5 & 6 and compare to the coil voltage specified by your relay.  In practice, there is some wiggle room (ex., a relay with a 9V coil will often be activated by less than 9V).  If the PID doesn’t produce enough voltage, buy an SSR.  If your relay is clicking, proceed to step 5.
  5. Check for 120VAC going to the heater leads when OUT1 is on.  If you’re not seeing a voltage, check the connections across your relay and between pin 1 and your heaters.  If you’re getting 120VAC to your heater bundles, proceed to step 6.
  6. Your heaters are likely burnt out.  This can happen in a flash if you accidentally supply power to the heaters when they are out of water.  Double check by submerging your heaters and connecting an 120VAC power source directly to the leads (exercising great caution not to electrocute yourself).  If they heat up, you’ve got a loose wire somewhere in your connections.  If they don’t heat up, they’re burnt out and you’ll need to replace them.

If these instructions have helped you build you own machine, I hope you’ll consider donating.  My goal is to mass-produce the world’s first sous vide heating immersion circulator for under $100, and every donation helps!

998 comments on “DIY Sous Vide Heating Immersion Circulator for About $75”

As far as i am aware, the type of vacuum pump available to the home chef can’t create a significant enough vacuum unless the temp of the food is very high. If you have cooked a steak to 90 degrees c and then vacuum it, I am sure it will boil, but at 60 in the water bath, it will be ok.
The type and strength of vacuum used, depends on the desired results. Some dishes require a strong vacuum to create pressure on the food, but others only require the vacuum to remove the air to ensure good contact with the water and ensure effiecient heat transmition. For most home requirements (basic meat recipies etc) a ziplock back and a straw will suffice.
If you want to see the geeky extreme of sous vide and explore the possibilities, get “Under Pressure” by Thomas Keller.

Hi Scott,

Firstly, fantastic article, cheers!..
Having read your tutorial i was inspired to build a waterbath myself, which i have duely done. However after soldering the last wire and programming the temp controller i’m having some problems:

I have set a temperature to achieve (50 0c), the out1 light comes on, a click is heard from the controller but not my relay. On testing with a multi meter there seems to be no power reaching the relay and so the element doesn’t heat up, dispite the out1 light being on.

I was wondering if there were any settings you had troubles with, as i couldn’t get my head around all of it… any suggestions would be really greatefully received!


Hi Jay,

The most common reason for this (you’re not gonna like it) is that your PID controller has only a relay output and no SSR (voltage) output. I’ve heard reports of some sellers misrepresenting their PID controllers as supporting an external SSR, when in fact, they do not. The click you’re hearing is almost certainly an internal relay.

What model of PID controller are you using? If you look at the sticker on the side of the controller, it should say “Relay”, “Voltage”, “Relay + Voltage” or “Relay + SSR” or something along those lines. If your PID controller does in fact have a voltage/SSR output, make sure that’s the output that your external (blue) relay is connected to. Also check that the voltage/ssr output is set to Heating mode (in the settings menu for your controller).

If your PID controller only has a relay output, you’re not totally SOL. You can return it, or you can use it’s built-in relay to trigger an external relay capable of withstanding the load of the heaters. I’d recommend getting a relay with a coil voltage of 120V AC, like this one Use the internal relay of your PID controller to trigger the external relay. DO NOT simply connect the heaters to the internal relay – it will burn out within a few hours of use.

I hope this helps!

Hey scott,

I’m in the process of building. I have everything together, and wired in what I believe is the correct way. My only problem is that my pump does not turn on and it seems like the coils are not heating up. The probe is monitoring temperature correctly, but the pump and coils are just not working. I don’t have much experience with wiring, so I think that might be my problem and I might just need to rework that a little. I was wondering if you had any insight about what my problem might actually be. Thanks a lot.


What your pump and heaters have in common is AC voltage. Depending on how you made your wiring connections, there’s probably a bundle of wires that starts with one of the wires from your power cord, then branches out to one side of the pump and one side of the heaters (or to the relay for the heaters). I’d double check that connection.

Your PID controller doesn’t, by any chance, use a DC input (from a transformer or a “wall wart”), does it? If so, you’ll need to separately run AC power to the pump and heater connection points.

Ahh… Thanks for the help Scott. Indeed, the sticker on the side of the controller states: Output – relay. So i guess i’ll use the internal relay to control an external one. Will be 240v though as i’m in the UK! Will let you know how it all works out.


Hello, I built this cooker for a lab project. I am having several troubles making it work and I was wondering if anyone could help me. First of all my heating elements are not coming on. The temperature of the water bath is lower than my set temperature which should trigger the heating elements to kick on, and they are not. I hear the relay clicking which make me believe that is still working. I am not sure what is going. I wired it EXACTLY like the diagram said to and have checked everything like 4 times. I even tore apart one of my solders and redid it just to make sure they were all connected. Also, my PID is reading the wrong temperature. The manual is little to no help so I wasn’t sure if anyone could tell me how to calibrate it. Thanks!

Just FYI for the guys with PID controllers with built-in relays. You don’t need an external relay (and can thus connect the immersion heaters straight to the PID) SO LONG AS you make sure the total draw on the PID is not more than it supports.

For example, I bought a CD101 off ebay. Listed in its spec sheet, it says the relay contact output supports 250V @ 3A. Total power is VxA, which gives 750 watts. Just make sure the heaters you connect draw less than this amount, and you’ll be fine.

What would you recommend in place of your PID controller that would allow me to set a program for fluctuating the temperatures at different times? I currently have a homemade coffee roaster, but I have to stand there and control the heat at different times (ex: 375 degrees for first 4 minutes then raise it up to 430 degrees for 8 minutes). I am going to build your immersion circulator, but I was hoping I can make the control unit dual purpose.

Just finished my first quarter of culinary school which got me even more interested in sous vide; I just ordered the parts on amazon and am excited to get started; anyone in San Diego that wants to see this done, I hope to have this made by the middle of January.

My latest experiment for Christmas isn’t strictly Sous Vide.
However I am using my previously constructed PID Controller.

I am attempting to emulate a “bargain basement” Alto Sham.
This is an oven that is used in restaurants etc to make that wonderful carving roasts etc.
I have used one and I have improvised one before but now I will use my controller to be even more accurate.
Using an electric Roaster. Firstly “crank up the heat to about 400 F and let the unit pre warm. Prepare your Roast of beef (standing Rib aka “prime Rib”). I usually Stab it and insert slivers of Garlic & Rosemary. I rub salt and oil on the surface. Put it in an aluminium foil pan that fits inside the roaster (to help clean up & capture the juices for gravy). Put the foil pan into the roaster and put the lid on. wait 30 minutes (this does have a purpose apart from causing the wonderful Maillard reactions on the surface – it is recomended as a means of killy any Surface bacteria).
Then unplug your roaster from direct power and now use your PID to control the unit. Using one of the vent holes in the lid put your temperature probe and use it to meter Air temps in the roaster. Dial in about 57 – 60 C and let the unit “do” its thing. As a counter monitor you can use a remote sensing probe thermometer to measure the internal temp of the meat. After about 2 -3 hours the meat should be perfectly rare – increase the temperature if you want to “murder” the roast to medium or even shudder well done.
You can also use some hot au jus to cook the sliced meat for those individuals who insist on well done (keep the aujus just below boiling dunk the slice of beef into the au jus for about 45 seconds and viola they have a well done piece of beef while the rest of the roast is still done rare. Similarly Medium can be done by dunking for about 15 seconds.
After the roast has come to the desired temp switch off and let the roast sit for about 5 minutes covered in foil…
Carve & enjoy.

So, perhaps in the 300+ comments somebody has already said this, but I didn’t have all day to read all the comments. Anyway, I think it would be really super awesome cool if you did a workshop for this project in the Seattle area. I totally want to make this, but I find it a little daunting without my PhD chemist dad looking over my shoulder. You could charge a fair chunk of change, and I’d still be better off than if I bought a “Sous Vide Supreme.” Since your article in Seattle Weekly, I’m sure there are a handful of us who would participate in a weekend workshop, and it would probably be pretty fun! (I guess the moral of the story is that I’m nervous that I’ll get a bunch of money and time invested in the thing and it won’t work because of some silly mistake I make. Then it’ll sit in my project room staring at me, making me feel guilty and sad, until finally I hide it in the closet to collect dust.)

Interesting observation.
When using the Roaster and measuring Air temps.
Although the PID would switch on the heating elements when the air temp would be at 57 C and switch off at the same temps as there was less thermal mass (water) the actual air temps would “bounce” 5 – 10 C. (the heating elements were switched off and on under PID control).

Would there be some form of fine tuning that could be done to cut down on this variance?

The Standing Rib was done perfectly though – I used a probe thermometer in the “thickest” part to confirm internal temps.

I am using the CD101, but I cannot for the life of me get it into auto-tune mode. I set the ATU to 0001, and go back into Run mode, but the AT light never comes on and the P/I/D values never get set. *bangs head against wall* I also no longer have the Self-Tune option at all. *bangs harder* Any ideas?


Set Ar to 25, no change.

Any chance I could get a dump of your parameters, including the “secret mode” ones? I’m finding both the Graco and RKC manuals less than optimal.

Dear Scott, did you consider using the insides of a normal bathroom electric water heater (they call it boiler in hungary) it seems to be a natural choice for hating water up to 100 C. Also they come relatively cheap, and you can find lotsa used ones. Coupled with an aquarium pump you might be all set.

@Ixxorn You’re right that a household hot water heater element is cheap and great at heating water. Unfortunately, the heating element is very poorly insulated from its housing, which means that the base of the heating element gets extremely hot. So hot, in fact, that it will melt straight through the plastic enclosure.

However, if you mount the heater through the side of a metal hotel pan, so the entire heating element and its base is in contact with the water, that may dissapate the heat enough to make it safe. This would be a great design for heating very large basins.

Good idea for the large volume water heater, but I think another addition would be a piece of metal that would sit above the element and keep the bags away from the surface of the heater. Ascii Picture

– – – – Plate
Water Gap
======= Heater

This would make sure the sous vide plastic pouches don’t end up in contact with the heater (maybe melting).

Am I correct in seeing that you use the SSR output on the JLD 612 PID controller to switch a mechanical relay? It does not seem like it is rated for driving this kind of relay, although the voltage does match up. Let me know if you’ve had positive results with this combination. Meanwhile, I will be using the internal relays to drive a smaller power load (see

After building a version with a plug to power a slow cooker, I am currently building mark II.
New version will comprise of two main parts. This time using a direct water heater, but will be plugging it in to the seperate unit with a plug, just in case of unfortunate burn out accidents.
Making a case to hold the heater, probe and circulator out of angle aluminium and stainless mesh to protect the bags from the element. Will post pictures when complete.

Hi Scott,
Great post. I have a few questions- I bought a PID controller that looks exactly like the one you show in your picture on ebay. It came marked as RKC brand but I suspect it is a Chinese knock off. Anyway, after reading your post I see that is says “RELAY” in the box meaning there is no SSR output. The instructions say there is an SSR output on pin 5 and 6, but alas I get no DC output there. So I was wondering which model PID you actually bought? I suspect that some of the models for sale on ebay are not suitable for SSR output, but mine is IDENTICAL to your photo so wondering if there are different models of same PID.
I later bought one from (the link you have) and it works perfectly.

Have you thought about adding a float type switch inline with the rocker so as not to burn out the elements out of water.

@glassguy213 Unfortunately, a lot of people have fallen into this trap. Here’s the problem – the CD101 model comes in several flavors, all of which look identical, and all of which use the same instruction manual. Take a look at the Troubleshooting section at the bottom of this post to see why.

@Deacon Yes, a float switch would certainly help ensure you don’t accidentally burn out the heaters. I considered one for this project, but it added a little cost and I didn’t see an obvious location to mount it safely. If you want to add a float switch to your build, just take one lead of the DC output that would normally go to the coil side of the relay and connect it through the float switch. DO NOT connect the 120V AC leads going to the heaters through the float switch. They aren’t rated for that kind of load, and passing 120VAC through the water bath has lots of other bad consequences (like injury or death).

First of all, Scott, thanks for the great guide!

I just finished putting mine together and it is working really well. I can get very stable temperatures (+/- ~0.2 degrees) with a heating rate of ~2 degrees/minute. For those of you with the JLD612 (which is what I used) here are some solutions to a few issues I’ve seen in the comments.

# Issue: AL1 and/or AL2 lights are always on.

In order to fix this you need to change the settings in the “temperature and alarm parameter setting mode”.

Hit “Set”, then enter “0001”, then hit “Set”. You’ll want to scroll through the list and set the “AH1” value to the same value as “AL1”. By default “AL1” is set to 90.0 and “AH1” is set to 80.0, so change one or the other so that they are the same. Do this for “AH2” and “AL2” as well.

# Issue: PT100 Probe is showing “EEEE”

This took me a bit to figure out. Go into the “0089” settings menu (by hitting “Set”, entering “0089” and hitting “Set” again). Put “Inty” to “pt10.0”. Exit the menu.

Then double check your wiring. My PT100 thermocouple didn’t have red, blue and yellow like Scott’s, and instead had red, blue, blue. Plug the red connection into port 8 and then the other two blue connections into ports 9 and 10 (it doesn’t matter which one goes where). According to you might need to modify one of the blue connections such that it connects to the metal sleeve of the thermocouple cable if your temperature reading is unstable. I didn’t have this problem with my setup.

# Issue: Relay isn’t turning on (or off) and you are *positive* you have it wired correctly.

As far as I can tell, the relay that Scott uses here doesn’t work with the PLD612; at least it doesn’t work with my setup. I checked that the relay was working properly by manually switching it on and off with a 9V battery and everything worked exactly as expected, but the PLD612 just wasn’t outputting enough voltage to properly switch the relay (in my case it was outputting about 7V across ports 6 and 7 and not 8V as stated in the data sheet). I’m still looking for a better relay, but in the meantime I’ve put together a very hacky solution; I’m using the built-in relay (J2) at 120V, through a 120V AC to 9V DC converter (from an old cellphone). The ~9V put out by the adapter is enough to actually switch the relay used in this guide. Again, I’m only using this as a temporary solution, but it works as an interim solution.


@Weston Thank you so much for this! That information is most certainly going to help out a lot of folks. Very clever workaround with the 9V transformer as well! My advice for a permanent solution is to buy a Solid State Relay (SSR). They typically have a much lower activation voltage. I’d recommend either of these:

I was reading about the concerns of overheating. Perhaps the use of a thermal fuse (Radio Shack). A catalogue number I have is 270-1321 (this is rated for 229C 10A 250vAC).Put this in series with your heater element – attached to the underneath of your heating pan. This will then cut out before any real damage happens.

I see that you have upgraded your equipment for version 1.5. I was wondering what PID you selected as well as what your other internal upgrades were. I’m looking at using a commercial immersion heater and MAYBE an Omron PID. Is it necessary that I go the commercial route? Have you had matched sucess with cheaper elements? Any advice would be appreciated. Thanks

Just wondering if anyone had used four elements in thier buildup. I accidently ordered four and got to thinking the extra heat might be nice for larger baths.

@David The PID I’m using for my newer models is from Novus Automation. ( The temperature performance is the same as the CD101, but the buttons, display and menu system are a little more friendly.

For the heating elements, I don’t think it’s necessary to go commercial. These immersion heaters actaully do a great job!

@Archie I haven’t tried 4 elements, but if you do, I’d suggest using a solid state relay (
). The additional heater will put extra load on the relay, so you’ll want something beefy to stand up over time.

First of all, I’d like to thank Scott for the plans and troubleshooting as well as everyone else who posted information here; I wasn’t sure if I could tackle this project but I’ve started gathering the parts and I’m very excited to build it!
Now, a question:
I just received my PID from LightObject (the JLD612 that you link to) and noticed that at contact #11, instead of a screw, it has what looks like a resistor sticking out of the hole. Because the sticker on the side describing the contacts showed a screw next to #11 as well, I was concerned and called LightObject. The fellow I spoke to there assured me that this is in fact the way is is supposed to be and what looks like a resistor there is a small temperature sensor used for the auto-setting functions and that I would be able to attach a PT100 thermocouple without problems. However, on your (Scott’s) wiring diagram, it shows one of the three leads from the thermocouple going to that contact point. Should I be concerned? Should I just not attach that wire? What function does that temperature sensor serve?
Thanks again!
– Julian

Hey everyone,

I built one of these with the CD101. It’s working but the PID seems to hold the temperature 1 or 2 degrees above my SV. Anyone else seeing this? I’m using a small container… could that be the problem?

@Julian Not sure on the resistor on your PID… If you can remove it, try that, then connect the PT100 as normal.

Regarding the Novus PID controllers, they don’t sell direct to consumers. I called and placed a (small) bulk order.

@Jay, the small container may very well be the problem. Try running an autotune cycle in the small container and see if that fixes it. If not, I’d try using something slightly larger – at least 1 gallon.

I built one following your plans and have done my first cook and it worked great! However, I’m unclear at one thing… Do I have to do a new Auto Tune everytime I change the temperature? For instance, I just auto tuned it for 131 degrees. Now if I want to set it to 185 degrees do I need to do an auto tune again? Just wondering because the auto tune seems to take so long (several hours). Any recommendations on speeding up the auto tune (smaller water bath, etc)?

Just saw an add for a Hamilton Beach crock pot (the Set & forget models). They appear to be temperature programmable using an external probe.
I don’t know how stable they are, How accurate etc etc.
It wouldn’t solve the problem of water circulation … but they might be another tool to try hacking?

@superrooster007 Nope, you only need to re-run autotune if you change the size of the water bath (by a lot). Depending on the amount of water you’re heating, autotune can take a few hours. Typically, I run it once for a new machine in the tub I’m planning to use for most of my cooking.

@John My wife got one of these for Christmas. I’ll run some tests and see how it will perform as a sous vide machine.

John and Scott: sous vide build can control anything that can be plugged into my controller. I’ve run a few cooks with a cheap crock pot that I got from a local thrift store. In general it works great but my crock pot is a little small. I was able to cook 8 steaks at once but it took some creativity to get them all in (a coat-hanger was involved).

Hi Scott, Again… Thanks for all the help with this project here.

I too have the JLD612 PID, and I just got her up and running today. I’m having an issue with the heaters not coming on. Ive narrowed it down to the settings not being correct on the PID, or an issue with the relay wiring.

Im an uber novice when it comes to electrical wiring, I wired the relay exactly like you showed. So the problem may lie with how I have the wiring connected to the PID. Could you take a look and see if you can shed light on this pleasee?

TIA, Brandon

Make sure the coil on your relay is connected to pins 6 & 7 (the SSR output) on your controller. [5 & 6 shown in the diagram are for a CD101 controller, not the JLD612]. Also make sure the OUTY setting is set to 2 and RD is set to 0. The OUT1 light is on, you should get ~8V DC across pins 6 & 7, and your relay should click.

Leave a Reply

Your email address will not be published.