Building a servo controlled damper valve


 
Dave,

The kit arrived today neatly built and packaged. Thanks a lot for the time and hard work you have put into this project. Hopefully I'll have some time to adapt the damper to my smoker for the next cook.

Thanks again,
 
Got it wired up and tested now to make the mount and glue the servo down. Also put latest version of the software v8, hope to do test cook this week
 
Last edited:
When running with a blower, I have to keep my egg sealed up pretty tightly or the temperature can't be controlled due to the natural draft that comes through the fan body. With the servo, I can leave my top vent mostly open which lets out all the nasty smoke. If you're running the system off a car battery, it is also uses much less power.

The downside is that the initial heat up time goes a little faster with a blower going 100%.
 
Doing first cook. working great the Big Steel Keg definitely is more stable using the natural draft of the servo, sure have been spoiled by the quick heat up of the blower. looking forward to using the mega design just need the plans for the daughter cards.


Brian can you change the main page to say dampener or servo percent instead of blower when in servo mode? Can the main title at the top be changed dropping the word current and allow larger custom name?
 
I am just finishing up my own servo damper, seems to have gone together well, should be able to test it in a day or two....

Bryan, I am wondering if it is possible for the fan port to remain powered when the HM is in servo mode? I just plugged in the fan for the first time while in servo mode and noticed it is deactivated. I know I am going to miss the fast stoking of the fire with the blower, if the fan output remained powered I could connect the fan when I light the fire and then unplug and remove it once the fire is going and let the servo damper take over....

Also, is there a way to backup/restore the configurations locally on the HM instead of to your hard drive? It would be nice to be able to save a config locally for servo mode and another for fan mode, or configs for different pits, and be able to load them from the HM menu (without being connected to a PC).....
 
Last edited:
The fan and servo both use the same control line so they can't both be powered at the same time. The code also uses the same variables for both fan speed and servo position, both in the runtime data, the EEPROM configuration storage, and the web UI.

To make them two separate entities is a lot of work, and confusing for the user. If you set manual fan speed do you want it to change both the servo and the fan? Just one? Well some might think one way or the other so you'll need two entries and then an entry to possibly gang the two. You might just want a "blower assist mode" where the blower runs at X% if the servo is open more than Y%. There's two more config items. The config page is already INFORMATION OVERLOAD and there's no way all that could be built into the device itself, where it would be even more annoying to navigate through.

That said, having them be two separate entities is something I'd prefer, so if I can come up with an elegant way to do it I certainly will.

As for having multiple configs stored on the device itself, theeeere's sort of EEPROM space to store it but it takes a lot of code space to add profiles. I'm also wary of there being just too much crap in the menus.
 
Ralph,

Take a look at our experimental prototype here - http://tvwbb.com/showthread.php?43312-Heatermeter-on-Mega2650 for a way of possibly addressing your issue.

The ATMega2560 platform also will start to address Bryan's issues (architectural issues at least) as well:

* More ports - more control lines (separate out Blower vs Damper on separate control lines)
* More ISR ports - ability to have rotary encoder navigation on the device, which is much faster and more precise than buttons. Think about a knob that you turn to rotate through menu options, and then push to select the option - much easier and much faster than 4 buttons.

Cheers,

Dave
 
Last edited:
Bryan, thanks for the reply and info.

On the blower and servo setup, if the blower could just be set to blow full speed that would work, though I guess that cant be done if the same control line is used for the blower and the servo. I had been thinking of using a separate power supply to power the fan so I can connect it to the servo damper and use the forced air to help stoke the fire when first lit, I would then unplug and remove the fan when the fire was stoked up to temp. This made me think, "Boy, it sure would be nice if I could just plug the fan into the HM instead and it would blow". I guess I can always go with the separate PS or move over to the new Mega2560 platform when it is ready for prime time.

As for the config saving/loading I would like to press that issue and ask that you strongly consider adding it in a future release. You already have a "reset config" in the menu, couldn't you change that to "load config" and then if you load the default config that would be your reset, or you could choose to load another config that had been stored instead. Reason being, I use my HM on several smokers/grills and they all have different settings.... and sometimes I will be running servo mode and other times I will be using the blower. Also, it has on occasion happened where my config was screwed up for one reason or another, when your fire is lit and food is ready to cook it is no time to run the HM back to the lab and wire up a computer to connect and fix the config (which I have frantically done in the past). If something was screwed up in the config at cook time and you could load a backup config from the HM menu that would be a quick fix that didn't require you to move the HM away from the smoker. I was kinda thinking the configs could be stored and loaded from the SD card???

Also, is there any way you could add an indicator on the display when the HM is running in servo mode? Perhaps just an S somewhere on the display? It would be nice to be able to look at the HM and know it is set in servo mode before you plug it in to the servo damper and possibly fry it.....
 
Last edited:
Dave, I've been interested in what you guys are doing with the Mega2560 platform... How ready is it? How much expense is there associated with moving over to this platform? Has anyone designed a case that will fit it yet?

I wasn't really looking to invest any more $$ into the HM at this point (but probably will if you give me reasonable answers), and I am not looking forward to using the controller in a bare board configuration again. I've gotten used to having my HM mounted in a proper case, it was a real PITA dealing with the HM when I just had a bare board set stuck in a tupperware container....

Although I must admit you guys are developing a controller that satisfies most of my "wish list"... and I probably should do my part to build and test the design so I can provide you guys feedback. I've cooked for a few party's now and get a lot of requests to do more, I can see the need to control two pits coming soon enough, you guys are working on that as well, right?
 
Bryan,
I used my servo for two cooks Saturday, both came out great. I started with ribs did ribs frist high heat 275. Set temp low and closed top dampener put out fire, reloaded lump. Then Started a brisket 220 deg went to bed the temp held at + or - a few degrees all night could not believe it.

Went out to drink morning coffee by the smoker and notice the servo opening and closing every about ever 30 seconds or so, and the smoker sending up smoke signals looked so coo!!! . I found the servo setting instead of 110 and 220 which i did my fist cook, was at 110 and 100. looking at the graph it never shows the servo more than a few percent open but I was watching it go 100 percent open and closed.

It held temp well but I dont understand why it was doing it or if it will wear out the servo quickly. worked great.

fHqUayV.png
 
Last edited:
Aha! I finally found this post I wanted to reply to.
I was kinda thinking the configs could be stored and loaded from the SD card???
That's more likely than storing it on the HeaterMeter, but there'd still be no menu option on the device for switching to another profile. The HeaterMeter doesn't really talk to the rPi, it just talks at it. It wouldn't be able to say 'tell me about all the configuration profiles you know about' or 'send me configuration profile X'. The amount of work to do it isn't justified by what you'd get for it. The "Reset Config" just reloads the EEPROM from program memory, which is hard-coded to those values. It actually doesn't even contain a full set of config, just enough to get you going.

I'm not sure why you'd have to disconnect the HeaterMeter and bring it inside to make configuration changes. It also has profile support in that you can bookmark the "Configuration URL" and name the bookmark whatever you want to call the profile, and when you click it, it uploads the profile to the HeaterMeter. All without getting off your couch (assuming you have a laptop or something)!

On the blower and servo setup, if the blower could just be set to blow full speed that would work, though I guess that cant be done if the same control line is used for the blower and the servo. I had been thinking of using a separate power supply to power the fan so I can connect it to the servo damper and use the forced air to help stoke the fire when first lit, I would then unplug and remove the fan when the fire was stoked up to temp. This made me think, "Boy, it sure would be nice if I could just plug the fan into the HM instead and it would blow".
Yeahhhhhh, I agree on this point. There really shouldn't be a servo mode vs blower mode. It should just have two outputs with two sets of the 3 parameters. I probably should do something about that but knowing the internals of the code I'm sort of hesitant to make the change.
 
Aha! I finally found this post I wanted to reply to.....I'm not sure why you'd have to disconnect the HeaterMeter and bring it inside to make configuration changes......

Well, first time I had to do this was because the WiFi connection failed for whatever reason, and the probe settings had somehow magically changed from what I had set so they weren't reading right and/or were disabled. (I think because of the bug I pointed out the other day, if you hit SAVE and there were no changes it screws up all kinds of settings) But more likely than that scenario is doing cooks away from home, where you do not have WIFI and would prefer not to bring a computer along to hard wire to the HM and select the configuration or manually change the settings. Having the ability to load custom configurations would let you KNOW that you can get the HM working without having a computer connected. So basically it would give you confidence that the HM is going to work without having a computer connected. Unfortunately I have found the HM setup to be buggy, things change when I have not made the changes myself, so I do not feel comfortable using it without having a computer available to fix the configuration if needed. For remote cooks this is a PITA, I dont want to drag my laptop to every remote cook...
Now that I have several smokers that have different settings, and sometimes use a damper and other times use a fan, and soon I will have a large servo damper and a smaller one (for low and slow) and they both require different settings, I have many scenarios I want the HM to control, each one needs it's own custom configuration. I dont always have a computer connected and that's why I was asking if custom configs could somehow be stored and loaded right from the HM....

Is there any chance of getting this done on the Mega 2560 platform guys?
 
Hi Ralph,

RE Mega2560, we tried to keep everything as compatible as possible with the native HM codebase to minimize pain with a change in hardware architecture. I did NOT want to have to fork Bryan's code, unless I wanted long term headaches - and I didn't.

The nature of having different profiles, is well, profiles have to be stored somewhere, either in EEPROM or RPI Config files. The Mega 2560 architecture doesn't change (nor require) changes in code (of any substantial nature).

If you wanted something custom to manage profiles, a way (unfortunately nontrivial) to address the problem is to hack out some menu options in Bryan's code to allow you to pick different hard coded profiles on startup, subject to your ability to code and the available space in the 328P. The Mega will offer more code space for custom changes of course. I haven't looked at the code - Bryan might be able to offer an estimate about how difficult/easy it is to hack out the changes you needed.

Hope this helps - Dave
 
Is there perhaps a way to code the HM to be able to retrieve a small number of preset configs from the SD card that are in a predetermined location with predetermined file names? Like presets on a radio? Then change the "Reset Config" menu to "Load Config 1, 2, 3, 4" etc? If that's not possible is there any extra space on the 2560 to store at least 1 or 2 configs compared what can be stored on the current HM platform, which is apparently very limited from what Bryan said?
 
.....noticed the servo opening and closing every about ever 30 seconds or so, and the smoker sending up smoke signals looked so coo!!! . I found the servo setting instead of 110 and 220 which i did my fist cook, was at 110 and 100. looking at the graph it never shows the servo more than a few percent open but I was watching it go 100 percent open and closed.

It held temp well but I dont understand why it was doing it or if it will wear out the servo quickly. worked great.

I just got my servo working for the first time tonight, worked like a charm to regulate low and slow temps but was very slow stoking to temp and recovering temps compared to the blower system. I came up with a different approach which I am really digging..... (see my post "Runaway temps? Cheap fix/long story....")

With my new approach I use the fan, and have to set the minimum speed to 30%. I notice the HM saying the fan is running at speeds lower than 30% while the fan isn't blowing at all, then there is a short burst of what seems like the fan running at about 30%, then it goes off again . I figured it was doing short 30% bursts in place of longer periods of 10-11% as it is showing on the HM display?

At any rate, it seemed to be doing the same sort of puffing that you describe with your damper so I thought I would mention it here....
 
Last edited:
With my new approach I use the fan, and have to set the minimum speed to 30%. I notice the HM saying the fan is running at speeds lower than 30% while the fan isn't blowing at all, then there is a short burst of what seems like the fan running at about 30%, then it goes off again . I figured it was doing short 30% bursts in place of longer periods of 10-11% as it is showing on the HM display?
Yeah, if the calculated percentage is less than the minimum it just runs proportionally the min speed. In your example, 10% / 30% min means run 1/3rd of the time at 30% speed.

HeaterMeter can't load stuff from an SD card, especially not an SD card that's connected to another host operating system. Besides, you'd still need a web front-end "profile manager" and I'm just not very excited about writing that.
 
HeaterMeter can't load stuff from an SD card, especially not an SD card that's connected to another host operating system. Besides, you'd still need a web front-end "profile manager" and I'm just not very excited about writing that.

That's a real bummer, I've started using my HM in a handful of scenarios and a profile manager sure would be useful....
 
Well, ya know, maybe some day. You could always put the config in a startup script and then just swap SD cards or something :-D It's sort of a neat idea but I'd rather work on other apsects.
 

 

Back
Top