Step by Step Guide to Calibrate PID Settings

  • Some of the links on this forum allow SMF, at no cost to you, to earn a small commission when you click through and make a purchase. Let me know if you have any questions about this.
SMF is reader-supported. When you buy through links on our site, we may earn an affiliate commission.

AmIaPilotYet

Newbie
Original poster
Sep 12, 2024
2
3
Recently, I’ve installed an Auber AW-1520H PID controller to my SmokinTex PRO 1400 model smoker. This model of smoker comes with a manual thermostat base temperature controller which makes it a great candidate to upgrade with a PID controller. Due to the simplicity of the smoker’s system, it makes the AW-1520H basically plug and play upgrade. I’ve researched online to see if someone has published PID settings for this smoker but I did not find any. So, I came up with a test procedure to find out the best PID settings for my smoker and write this post to educate fellow smokers on the logic behind a PID controller and how you can configure your PID controller for your smoker as accurately as possible.

Before we get started, the most important thing about configuring a PID controller for a smoker is the location and permanency of the temperature location inside the smoker. The temperature probe that reads the temperature inside the smoker provides the most critical information for the PID controller. Auber recommends the probe to be placed 1/3rd distance from the top of the smoker, and certainly not anywhere close to the heating element. In addition to that, for your PID settings to work correctly, the location of the probe has to be exactly the same, every single time you operate the smoker. The best way to accomplish this is to place the probe in its location permanently (e.g. screw in the probe). If you are unable to do that, then make sure to attach the probe to the exact same location every single time when you use the smoker.

In this calibration exercise, we have a couple of variables of measurement that we will be using.

Error: The error is the temperature difference between the target temperature and the current temperature. If you set your smoker target temperature to 225F, and the current temperature of the smoker is 210F, then the error would be 15F.

Error Spread: Once the smoker reaches the target temperature, the controller will attempt to keep it there. In a perfect world, the temperature would stay at your target temperature, let’s say 225F, but it won’t. It will fluctuate over and under that target temperature as the controller powers up and down the heating element. So, if you observe the temperature fluctuating, let’s say, between 230F and 220F, then your error spread would be +-5F. By calibrating the PIDs, our goal is to get the error spread to as minimum as possible. After calibrating, my smoker is able to hold an error spread of +-1F.

Target Temperature: It is the temperature you set the controller to keep the smoker at. We will use 225F.

During this calibration, you must put some heat absorber inside the smoker. When you use your smoker, you have a piece of meat that absorbs the heat. We need to create a real-world scenario for the calibration. Yes, you can use a piece of meat (which may be ruined), or you can find two or three bricks, wrap them in aluminum foil, and place them in the smoker. The bricks will absorb heat, like a piece of meat would do, thus creating real-world conditions.

Step 1: Figure out full power overshoot

Make sure the smoker is empty! No bricks or meat inside for the first step. Set the controller settings to P:1, I:0, D:0, and target temperature 225F. Turn on the controller and let the temperature come up to 225F. The temperature will overshoot, note by how much. In my case, the temperature overshot by 27F degrees which means the temperature reading was 252F before it started to come down. The reason overshoot happens is that even though the controller cut the power from the heating element exactly at 225F (due to P being set to 1), the element is still hot and it will continue to heat.

Step 2: Figure out P value

Open the door of the smoker and let it cool down. Place the bricks (heat absorbers) inside. Set the controller PID to P: Half of the overshoot amount (in my case I set it to 13), I:0, D:0. Close the door, let the smoker heat up and temperature stabilize. Note the error spread. In my case, I was seeing -11F+2F, meaning the temperature fluctuated between 214F and 227F. This is where the experiment begins. Half of the overshoot as a P value will always be too high. So, we will repeat this experiment, each time, open the door, let the smoker cool down a bit, lower the P value by one, close the door, and note down the spread after the temperature stabilizes. You will end up with something like this:

P Value Negative Spread Positive Spread
13 -11 +2
12 -10 +3
11 -8 +5
10 -7 +6
9 -5 +7
8 -5 +9
7 -4 +11

As you can see, the lower the P number is, the more power the controller will apply as the temperature starts dropping, hence lower negative spread, but the consequence is, that the carryover heat from the heating element due to high power will overshoot the target temperature. You want to find a P value that gives you the closest negative and positive spread. In my case, I picked a P value of 10.

Step 3: Figure out I value

So far our controller is set to P:10, I:0, D:0. This setting will give us a -7F+6F error spread with a target temperature of 225F. We will not change the P value anymore. So, the temperature will fluctuate between 218F and 231F. This is already a big improvement compared to the results without a PID controller, but we want to be better. If we can, we want an error spread of +-1F. This is where the I setting comes in. The P value is like a drummer, banging on the drums with a lot of power. The I value acts like a harpist playing a harp, gentle power with fingers. So, the I value will help smooth out the power inputs coming from the P value to help us get the error spread even smaller. At this point, the smoker is still on, with the bricks inside and holding a temperature of around 225F. Set the PID settings to P10, I: 200, D:0. Open the door, and let the temperature drop to 190F. Close the door. Let the temperature stabilize around 225F, and take a look at the error spread. At this time, the error spread should be better than what we had before. In my case, the error spread now was -5F+6F. Now, we will repeat the same process, by increasing the I value by 100. So, set the PID to P10, I: 300, D:0, open the door, let the temperature drop to 190F, close the door, and let the temperature stabilize. Observe and note the error spread. In my case, I had to repeat this experiment 4 times until I hit the I value of 600 which resulted in an error spread of +-1F. Thus, with the PID settings, P:10, I:600, D:0, my smoker was holding a temperature of 224F and 226F. At this point, you have a very stable smoker.

Step 4: Figure out D value

Now, we have a very stable smoker that is holding temperature really well. However, what would happen if we open the door, let's say for a bit to take the temperature of our meat? The smoker's temperature will drop like crazy because all the heat will escape from the open door. This is where the D value will come in. The D value is for emergencies when the temperature drops massively due to the open door, the D value will determine how aggressive the controller needs to be with power to get back to the target temperature. To figure out the D value, we need to time measurements. Time to Recovery, and Time to Stable. The experiment will go as follows. We will open the door and let the temperature drop to 190F. We will close the door and time how many minutes it will take for the temperature to hit back up to our target temperature which is 225F. Time to stabilize will be calculated as how many minutes it will take the temperature to stabilize with the expected error spread (+-1F in our case). For example, at 1pm you open the door, let the temp drop to 190F, and close the door. You will have a temperature chart over time like this:


Time Smoker Temperature (F)
1:00 225
1:01 190
1:02 182
1:03 185
1:04 198
1:05 211
1:06 219
1:07 225
1:08 229
1:09 226
1:10 223
1:11 220
1:12 222
1:13 226
1:14 225
1:15 224
1:16 225
1:17 226
1:18 225
1:19 224
1:20 225

In this example, Time to Recovery is the time elapsed between 1:01 and 1:07, thus 6 minutes. Time to stable is the first target temperature we hit once stable error spread is observed after time to recovery point, hence 1:07 to 1:14, thus 7 minutes.

Now you know how we measure, we will set the D value in 50 increments and measure both Time to Recovery and Time to Stable, then chart it. The experiment is, to set the D value, open the door, close the door once the temperature drops 190F, let the smoker heat and stabilize, take a look at the temperature data, and calculate. In my case, this is what I observed.


D Value Time to Recovery (min) Time to Stable (min)
50 6 39
100 7 14
150 8 10
175 8 4
200 9 3
250 10 3
300 11 3
350 13 2

As you can see, between 150 and 200 seemed to be right where I needed to be to minimize the time it takes to recover and stabilize. To fine-tune, you can reduce the increments. So in this case, I did one more experiment by setting the D value to 175 which gave me a very good result, and I’ve decided to keep it there. So for my smoker, and based on the location of the temperature probe, P:10, I:600, and D:175 worked great.

After all this, with the PID settings I got, here is an example of how well it worked. Here I have the smoker started cold with a smoke tube (already smoking), and a couple of beef short rib racks! From cold to target temp of 235F, it only overshoots by 2F and kept holding the temps -+1F. Really amazing stuff.

IMG_1899.jpeg


I hope this was useful. You can follow these steps to calculate your PID settings for any smoker or any controller really. They work the same way regardless of brand or smoker. Happy smoking!
 
There's an entire sticky thread within the Electric Smokers sub-forum for this exact subject.


Mods might want to merge this within that thread.
 
  • Like
Reactions: JIMSMOKES
Recently, I’ve installed an Auber AW-1520H PID controller to my SmokinTex PRO 1400 model smoker. This model of smoker comes with a manual thermostat base temperature controller which makes it a great candidate to upgrade with a PID controller. Due to the simplicity of the smoker’s system, it makes the AW-1520H basically plug and play upgrade. I’ve researched online to see if someone has published PID settings for this smoker but I did not find any. So, I came up with a test procedure to find out the best PID settings for my smoker and write this post to educate fellow smokers on the logic behind a PID controller and how you can configure your PID controller for your smoker as accurately as possible.

Before we get started, the most important thing about configuring a PID controller for a smoker is the location and permanency of the temperature location inside the smoker. The temperature probe that reads the temperature inside the smoker provides the most critical information for the PID controller. Auber recommends the probe to be placed 1/3rd distance from the top of the smoker, and certainly not anywhere close to the heating element. In addition to that, for your PID settings to work correctly, the location of the probe has to be exactly the same, every single time you operate the smoker. The best way to accomplish this is to place the probe in its location permanently (e.g. screw in the probe). If you are unable to do that, then make sure to attach the probe to the exact same location every single time when you use the smoker.

In this calibration exercise, we have a couple of variables of measurement that we will be using.

Error: The error is the temperature difference between the target temperature and the current temperature. If you set your smoker target temperature to 225F, and the current temperature of the smoker is 210F, then the error would be 15F.

Error Spread: Once the smoker reaches the target temperature, the controller will attempt to keep it there. In a perfect world, the temperature would stay at your target temperature, let’s say 225F, but it won’t. It will fluctuate over and under that target temperature as the controller powers up and down the heating element. So, if you observe the temperature fluctuating, let’s say, between 230F and 220F, then your error spread would be +-5F. By calibrating the PIDs, our goal is to get the error spread to as minimum as possible. After calibrating, my smoker is able to hold an error spread of +-1F.

Target Temperature: It is the temperature you set the controller to keep the smoker at. We will use 225F.

During this calibration, you must put some heat absorber inside the smoker. When you use your smoker, you have a piece of meat that absorbs the heat. We need to create a real-world scenario for the calibration. Yes, you can use a piece of meat (which may be ruined), or you can find two or three bricks, wrap them in aluminum foil, and place them in the smoker. The bricks will absorb heat, like a piece of meat would do, thus creating real-world conditions.

Step 1: Figure out full power overshoot

Make sure the smoker is empty! No bricks or meat inside for the first step. Set the controller settings to P:1, I:0, D:0, and target temperature 225F. Turn on the controller and let the temperature come up to 225F. The temperature will overshoot, note by how much. In my case, the temperature overshot by 27F degrees which means the temperature reading was 252F before it started to come down. The reason overshoot happens is that even though the controller cut the power from the heating element exactly at 225F (due to P being set to 1), the element is still hot and it will continue to heat.

Step 2: Figure out P value

Open the door of the smoker and let it cool down. Place the bricks (heat absorbers) inside. Set the controller PID to P: Half of the overshoot amount (in my case I set it to 13), I:0, D:0. Close the door, let the smoker heat up and temperature stabilize. Note the error spread. In my case, I was seeing -11F+2F, meaning the temperature fluctuated between 214F and 227F. This is where the experiment begins. Half of the overshoot as a P value will always be too high. So, we will repeat this experiment, each time, open the door, let the smoker cool down a bit, lower the P value by one, close the door, and note down the spread after the temperature stabilizes. You will end up with something like this:

P Value Negative Spread Positive Spread
13 -11 +2
12 -10 +3
11 -8 +5
10 -7 +6
9 -5 +7
8 -5 +9
7 -4 +11

As you can see, the lower the P number is, the more power the controller will apply as the temperature starts dropping, hence lower negative spread, but the consequence is, that the carryover heat from the heating element due to high power will overshoot the target temperature. You want to find a P value that gives you the closest negative and positive spread. In my case, I picked a P value of 10.

Step 3: Figure out I value

So far our controller is set to P:10, I:0, D:0. This setting will give us a -7F+6F error spread with a target temperature of 225F. We will not change the P value anymore. So, the temperature will fluctuate between 218F and 231F. This is already a big improvement compared to the results without a PID controller, but we want to be better. If we can, we want an error spread of +-1F. This is where the I setting comes in. The P value is like a drummer, banging on the drums with a lot of power. The I value acts like a harpist playing a harp, gentle power with fingers. So, the I value will help smooth out the power inputs coming from the P value to help us get the error spread even smaller. At this point, the smoker is still on, with the bricks inside and holding a temperature of around 225F. Set the PID settings to P10, I: 200, D:0. Open the door, and let the temperature drop to 190F. Close the door. Let the temperature stabilize around 225F, and take a look at the error spread. At this time, the error spread should be better than what we had before. In my case, the error spread now was -5F+6F. Now, we will repeat the same process, by increasing the I value by 100. So, set the PID to P10, I: 300, D:0, open the door, let the temperature drop to 190F, close the door, and let the temperature stabilize. Observe and note the error spread. In my case, I had to repeat this experiment 4 times until I hit the I value of 600 which resulted in an error spread of +-1F. Thus, with the PID settings, P:10, I:600, D:0, my smoker was holding a temperature of 224F and 226F. At this point, you have a very stable smoker.

Step 4: Figure out D value

Now, we have a very stable smoker that is holding temperature really well. However, what would happen if we open the door, let's say for a bit to take the temperature of our meat? The smoker's temperature will drop like crazy because all the heat will escape from the open door. This is where the D value will come in. The D value is for emergencies when the temperature drops massively due to the open door, the D value will determine how aggressive the controller needs to be with power to get back to the target temperature. To figure out the D value, we need to time measurements. Time to Recovery, and Time to Stable. The experiment will go as follows. We will open the door and let the temperature drop to 190F. We will close the door and time how many minutes it will take for the temperature to hit back up to our target temperature which is 225F. Time to stabilize will be calculated as how many minutes it will take the temperature to stabilize with the expected error spread (+-1F in our case). For example, at 1pm you open the door, let the temp drop to 190F, and close the door. You will have a temperature chart over time like this:


Time Smoker Temperature (F)
1:00 225
1:01 190
1:02 182
1:03 185
1:04 198
1:05 211
1:06 219
1:07 225
1:08 229
1:09 226
1:10 223
1:11 220
1:12 222
1:13 226
1:14 225
1:15 224
1:16 225
1:17 226
1:18 225
1:19 224
1:20 225

In this example, Time to Recovery is the time elapsed between 1:01 and 1:07, thus 6 minutes. Time to stable is the first target temperature we hit once stable error spread is observed after time to recovery point, hence 1:07 to 1:14, thus 7 minutes.

Now you know how we measure, we will set the D value in 50 increments and measure both Time to Recovery and Time to Stable, then chart it. The experiment is, to set the D value, open the door, close the door once the temperature drops 190F, let the smoker heat and stabilize, take a look at the temperature data, and calculate. In my case, this is what I observed.


D Value Time to Recovery (min) Time to Stable (min)
50 6 39
100 7 14
150 8 10
175 8 4
200 9 3
250 10 3
300 11 3
350 13 2

As you can see, between 150 and 200 seemed to be right where I needed to be to minimize the time it takes to recover and stabilize. To fine-tune, you can reduce the increments. So in this case, I did one more experiment by setting the D value to 175 which gave me a very good result, and I’ve decided to keep it there. So for my smoker, and based on the location of the temperature probe, P:10, I:600, and D:175 worked great.

After all this, with the PID settings I got, here is an example of how well it worked. Here I have the smoker started cold with a smoke tube (already smoking), and a couple of beef short rib racks! From cold to target temp of 235F, it only overshoots by 2F and kept holding the temps -+1F. Really amazing stuff.

View attachment 704129

I hope this was useful. You can follow these steps to calculate your PID settings for any smoker or any controller really. They work the same way regardless of brand or smoker. Happy smoking!
Your PID settings out of the box ( P=7, I=600 and D=150) is really close to the settings you discovered. Probably at 225 with your style smoker and smaller vents and the pic of your smoker in the app. With the bigger 3" vents in the Mes 40 and mailbox mod for the pellet maze it really breathes and I cook ribs, butts and brisket 265-275. So I like the P mode P=1, I=0 and D=0. It doesn't over shoot but 10 degrees empty or so at higher temps so I set it 10 degrees lower and reset after it coasts up to 265 with single step mode so it stays at the set temp without messing with minutes. The heating element at full power, switching for 50% power or off in P mode keeps this style +/- 3°. Even +/-5 or 6° doesn't bother me since it keeps getting tighter every cycle. I just want to get to my set temp as fast as possible. I have the out of the box settings same as yours being the Auber 1500 series (WS-1510ELPM) but being a significantly different smoker the stock setting and autotune came out of full power 25° too low. After reading the P mode in the manual I stuck with it that gives you a 27 degree over shoot that wouldn't work.
 
So I’ve been trying to follow this with the smokin Tex 1400 wired to a Rex c-100 PID. I believe my full power setting was P=0 I=0 D=0 I set that with no auto tune and I can’t seem to get the oven over 200degrees.. I do have the back insulation out and back panel off. But on the flip side it’s indoors and empty. And it seems to max out at 200 in step 1. Any suggestions ??
 
SmokingMeatForums.com is reader supported and as an Amazon Associate, we may earn commissions from qualifying purchases.

Latest posts

Hot Threads

Clicky