I am trying to set up an Sestos D1S temperature controller. Initially, just to see if it works at all, I am trying to use it to control the temperature of my kettle. I've wired it all up correctly so that it can switch the kettle on and off, and the temperature probe is in the kettle. The temperature reading on the front is correct, but the device seems to be impossible to set up.

I have tried autotuning, manual tuning, and simple manual mode. None of thes has worked properly. The only thing which does work is On/Off mode, although it seems to only switch off about 2 seconds after the temperature has gone past the set point.

Sestos D1S

How do I set up the time period?
Since the kettle heats up very quickly, the time period should be very short, and preferably the duty cycle kept low. Se I set the Ctl (Control Period) to 1, for 1 second. I assumed that I would see the output switching on and off at 1Hz, but I do not. I also set the oPH to 50, meaning that it should have a maximum 50% duty cycle. However, the output stays on for many seconds.

How do I set the PID valued? According to the manual:

M50 = Integral
P = Differential
t = Hysteresis Time

Can this really be correct? Where is the Proportional setting?

How do I get it to auto tune? I followed the manual and managed to make it flash 'At', which I think means it's Autotuning. However, the temperature fluctuated wildly, and finally settled, oscillating between 53ºC and 60ºC, even though the set point was 50ºC.

Added: I am using the following settings

dF   0.3    (Hysteresis)
Ctrl   3    (PID mode)
M50    0    (Integral)
P   1000    (Proportional?)
t      0    (Derivative?)
Ctl    1    (Control Period: 1 second)
oP1    0    (Output method: Time Duty)
oPL    0    (Output minimum: 0%)
oPH   50    (Output minimum: 50%)
run    1    (Automatic)


With Ctl at 3 (3 second period) and the output duty at 50% (display reads A 50) I an see that the output comes on for 35 seconds, then goes off for 35 seconds. This is a period of 70 seconds.

With Ctl at 0 (0.5 second period according to the instuctions) the period is still 70 seconds.

So it looks like the control period is stuck at 70 seconds. Flicking through the settings, none of the numbers are set to 70 (or 35 or 140). So I don't think there's another setting which is controlling the period.


Ctl  Period
40  = 40s
20  = 20s
10  = 10s
 8  =  8s
 6  =  8s
 4  =  8s
 3  =  8s
 2  = 70s
 1  = 70s
 0  = 70s


I set P=2, I=0, D=0, Max output = 50%, and set the setpoint to 70ºC. I watched the output duty as the temperature rose slowly to 69ºC. At that point, the output duty slowly began to fall, until at 70ºC it was still at 42%. It finally settled at 79.4ºC with an output duty of 4%. This really sounds like a fault in the control.

6 Answers 6


I have 3 of these in my brewery. During autotune, the temperature will go well past the set point in order to determine the amount the system will overshoot, and it will need to do this several times, meaning you may have to leave the unit for possibly several hours before the autotune is complete.

Autotune worked well for me, so I didn't try setting the PID parameters by hand. P is the Proportinal parameter - can also be called Differential as in the manual - the output level is adjusted in proportion to the difference between the present value and the set value. t is the Derivative. After auto-tune I get these values:

  • M50=54
  • P=1142
  • t=40

This is for a 20 gallon kettle and a 5500W element.

My guess why you're seeing continual power output is that you have entered the On/Off mode and oPL/oPH do not function there, since power output by definition is either fully on or fully off. Only with PID mode is output variable, and then you will see the power drop to 50% maximum specified by oPH.

As a diagnostic aid, you can get the device to show you the current output level. A short press of the SET button toggles between showing the SV and the output level percent. For automatic mode, you'll see something like "A 50" for 50% output. You can also switch the device to manual mode either by changing the run parameter, or by holding in the Run/down button, and then dialing in manually the percent.

You mention that in On/Off mode, the output is switched off 2 seconds after hitting the set point. This is probably because of the hysteresis parameter - dF - the unit switches off when the PV >= SV+dF. This is to avoid continual cycling on and off. Personally, I would have preferred if the unit switched off at the set point and then on again when the temperature had fallen past SV-dF, so the SV is the maximum temperature. The default value is 0.3C, so you'll overshoot by 0.3C before it switches off. I set dF to the smallest value, 0.1C to reduce this overshoot to a minimum.

  • Thanks mdma. I will try your suggestions tonight. I have added a little more information on my current configuration. Commented Sep 5, 2012 at 17:02
  • Just to be sure, when you say the output is on continually do you see the "out" light lit continuously? It may help to increase the control period to 4s or longer so you can see the switching on and off.
    – mdma
    Commented Sep 5, 2012 at 17:49
  • Yes. It's definitely on continuously. I would easily be able to tell if it was less than 100% duty at 1Hz. And it should have been no more than 50%. I am a robotic engineer, and have made many PID controllers for robots, so I'm used to watching for pulsing outputs, even at much higher frequencies. Commented Sep 5, 2012 at 18:45
  • I just saw your two edits, where you say it's on 50% duty, so it's not on continuously? The 70s cycle sounds out of whack, did you find a solution to that? I have mine set to 2s and that's working fine.
    – mdma
    Commented Mar 11, 2013 at 1:08
  • mdma, I beg you to help me some more. The more I try to get this thing working, the more frustrated I get. I am offering almost all of my meagre reputation in exchange for help. Commented Mar 19, 2013 at 23:19

The following below helped me to figure out the function of the 'P' component:

The "P" term is provided in 0.01 s/C (0.01 seconds per degree Celsius).

Assume the temperature is off by -1.0 degree Celsius of the setpoint.

The value of the "P" term is set to e.g. 3000, and the "Ctl" term is set to 120, then the heater will come on 30 seconds out of the 120 set for the "Ctl" value.

Not that difficult is it?

  • does it work out 30 seconds "on" time and then transplant that onto the current duty period? E.g. if the period was 3 seconds, would it stay on for 10 whole periods then shut off?
    – mdma
    Commented Mar 14, 2013 at 21:05

After much trial and error with this PID, I worked out that to use the auto-tune you need to follow this procedure:

1) set to manual mode by setting run = 0 in the setup menu

2) adjust the duty cycle to some convenient value (say 50%) by pressing then the up and down arrows

3) allow the system you're controlling to reach thermal equilibrium then adjust the set-point temperature to the equilibrium temperature

4) now set to auto-adjust mode by setting CtrL=2 in the setup menu, then allow the PID to auto-tune (this could take a few minutes, during which time the display will flash "At").

  • Dan, I beg you to help me some more. The more I try to get this thing working, the more frustrated I get. I am offering almost all of my meagre reputation in exchange for help. Commented Mar 19, 2013 at 23:20

Thanks for that number example. However, I'm getting frusttrated with my controller and I had PID in my studies! If I set t=0 and P50=0 I should end up with a P-controller, rigth. But ever with P=1, I get 100% output for 10deg difference and Ctr=10. Any thoughts?

  • 1
    Probably best to add a new question instead of digging up an old post if this doesn't sufficiently meet your needs. Commented Mar 19, 2013 at 13:44
  • +1 Please add a new question. You can link to this one if you want to. That way, others can answer and comments on your question properly. Commented Mar 20, 2013 at 6:56

I had this exact same problem with my brewing controller. I don't have the entire answer as yet, but I have found that the ctl period will not go to a short time when the P value is a lot longer than the control period. Set the controller back to default values and it will allow 4 seconds for Ctl. (The amount doesn't appear to be linear, but is around P< ~200ctl for ctl=4. I reduced P and got the controller to do 1 second control periods and even 0.5 if I set P to 60 or less. Unfortunately, the auto-tune found a setting that worked very accurately, but had a 38 second control period that means the element could be too hot below the mash and I won't be able to use any settings to limit the heat.


Please use the following constraint:


There is a bug which causes the P value to override the Ctl value. The control periode jumps to 60 seconds if you violate the expression above for Ctl=0 (0.5 seconds) and Ctl=1 second.

  • Can you link to an official bug report?
    – Robert
    Commented Feb 2, 2018 at 20:42
  • I found this bug myself by trial and error, so you will not find any other sources before someone else verifies my findings. Commented Feb 3, 2018 at 21:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.