The Development Log


 
Almost all my effort recently has purely been spent on updating documentation in the wiki and adjusting it as questions come in. I've also set up an OpenWrt "Barrier Breaker" development area because it looks like the new version will be out in a few months. There are a lot of changes needed to support the new release, which includes a lot of upstream kernel changes which might improve reliability of the SD card storage on the Pi.

I'm also considering adding another max fan speed configuration item, this one will be "Startup Max Fan Speed" or the max fan speed that's used until the grill has achieved temperature the first time. I know a lot of people lower their max fan speed to provide better control when the PID is regulating temperature but then you lose the nice boost you can get from stoking the coals at a higher speed when lighting the BBQ. This will give you two maxes, one for normal, one for startup. Startup is defined as the time period between a temperature setpoint change (which occurs once at boot time as well) and the first time that temperature is exceeded. Coming back from lid detect mode would be considered a recovery and would use the existing max fan speed.

Does that add unnecessary complication for something that wouldn't be useful? If you have a lower than 100% max fan speed, would you use a larger max during startup? Would there be another method that would be more beneficial?
 
For low and slow I generally use the fan at max only and let the damper run things the rest of the time, and use the top vent to provide better flow if needed, so this feature doesn't impact/improve my setup really. I can see how it would be beneficial in some situations and certain setups, and am all for having more options and flexibility in configuration, so I say go for it...

You asked for other suggestions, and so I will bring up again something I suggested long ago. Instead of "On at Max Only" I would like to be able to set a range of operation for the blower, like blower on above XX% (instead if just kicking in at 100%), 'cause I find there is a point (below 100%) where it would be beneficial for the fan to start blowing. When the damper is "almost" getting you where you need to be without the fan, when the fan kicks in at 100% it will cause a dip in temp due to higher air flow, as a result the HM can tend to over stoke the fire a bit to compensate. I think if we were able to set the blower to kick on a bit earlier, and have it scale from the min to max speed you have set within that range (from XX% to 100%) the blower would be able to ramp up the air flow in a gentler and more effective fashion. The way it is now it's like pushing the pedal to the floor when you need to bump up your cruising speed just a bit. I know you suggested before that we could alter PID settings to accomplish something similar, but I firmly believe this added flexibility in the blower settings would be a much easier way to to get things tuned up and running smoothly when using a blower in combination with a damper....
 
For low and slow I generally use the fan at max only and let the damper run things the rest of the time, and use the top vent to provide better flow if needed, so this feature doesn't impact/improve my setup really. I can see how it would be beneficial in some situations and certain setups, and am all for having more options and flexibility in configuration, so I say go for it...

You asked for other suggestions, and so I will bring up again something I suggested long ago. Instead of "On at Max Only" I would like to be able to set a range of operation for the blower, like blower on above XX% (instead if just kicking in at 100%), 'cause I find there is a point (below 100%) where it would be beneficial for the fan to start blowing. When the damper is "almost" getting you where you need to be without the fan, when the fan kicks in at 100% it will cause a dip in temp due to higher air flow, as a result the HM can tend to over stoke the fire a bit to compensate. I think if we were able to set the blower to kick on a bit earlier, and have it scale from the min to max speed you have set within that range (from XX% to 100%) the blower would be able to ramp up the air flow in a gentler and more effective fashion. The way it is now it's like pushing the pedal to the floor when you need to bump up your cruising speed just a bit. I know you suggested before that we could alter PID settings to accomplish something similar, but I firmly believe this added flexibility in the blower settings would be a much easier way to to get things tuned up and running smoothly when using a blower in combination with a damper....

If your damper can only 'almost' get you there, you need the fan & should change your mode to fan + servo so that the HM can do what it does. What Bryan suggested above would then act like your "fan at max only" for startup. A PID system isn't really good at 'sometimes' cases - it is intended to reduce the oscillations inherent to controlled systems. A control system that has PID control that has to go to 100% + sometimes ~150% is a really complicated & expensive way to make a normally pretty stable contraption (Kamado) really unstable.

I like the idea of having 100% at startup, then switching to a lower max, but I would suggest switching somewhere before you reach target temp. 90% or so. Once my keg overshoots, it takes forever to cool down (it barely holds low temps as it is with drafting through the fan, I need to get a 3D printer setup to make a servo setup. I showed my wife your roto-damper & she said it looked much nicer than my Lego HM case....so maybe she's on board) I usually set my start-up setpoint 20-30* lower than my cook temp, then lower max fan % to 30% & creep up (even if the fan is at 30% for a while). I know I could probably tune my PID settings better, but I'm not that patient.
 
I know you still want that Ralph, I keep thinking about it too. I almost added it the other day but then backed out the changed because it made one bit of the code a little hard to follow and also it would have to expand the configuration storage area. I also still feel the same way, as Andy described, if the damper alone isn't enough to maintain temperature then it isn't enough to maintain the temperature and the blower should be used always. I think I understand what you're saying but if on every cycle the blower has to turn on to maintain temperature then the blower is needed.

The new version 4.2 TruVolt output can take the stock blower down to 5V, which is much lower than then old pulse method could go which can give you a more gentle of an air infusion. The new "startup mode" also allows you to have a low "running" fan max and still keep the 100% blasting startup fan. I like having options but really I just think the tools that are needed are already there.

I've been spending most my free time setting up my business and trying to get costs of the prebuilt thermocouple pcb down (the next batch will be about 10% cheaper and is already in the pipeline), as well as looking further down the road at future prebuilt/kit heatermeter hardware options. However, I did extend the codepath from the microcontroller to linkmeterd to the homepage to show actual fan output as well as PID output. For now it just is a slightly different color overlay on the regular output bar (shown here with fan speed max = 75%)
 
Well, you know I will give the new two speed fan setup a try, maybe I'll love it...
I still wish the blower setup would look kinda like this:
FanOptions.jpg

I understand what you are saying, if you can't hit temp with 99% damper then the fan probably should be running all the time. However, sometimes its just a matter of getting the fire scaled to the right size which the HM will do eventually in most cases, but I think it could do that better if we could choose at what point the fan comes on. I would just prefer if when in "Max Only" mode the blower would come on a bit more gently, cause the jump in flow from 99% to 100% is like night and day...

My reasons for not wanting the fan on all the time is 'cause I want to run with as little air flow required to maintain temps and keep my food moist etc. I guess we'll see how well the new fan driver scheme works at coming on without creating too much flow. Is all that stuff you just mentioned in the latest snapshot already?
 
It definitely is a huge jump up from 99% no fan to 100% with full fan. However, the only-on-at-100% situation isn't for maintaining temperature so I don't think you can compare the two. Anyway, I'll keep it on the todo list and we'll talk about it every few months :)

The snapshot has the startup max stuff, but not the dual output reporting because it needs a linkmeterd change and I didn't want to create confusion if someone flashed the AVR snapshot and suddenly their graph stopped working.
 
I run electric which very few do so these may not make sense for anyone else but A couple of things I'd like to see are:

1) A pid override for a constant percentage setting. I'd like to be able to temporarily manually set output at say 32% and have it stay there until I put it back on auto.
2) Startup. My electric always way overshoots and my normal startup is to set it to 190 then when it hits that set it to 225. I'd like a way to automate this for startup.
 
1) Type 32% into the setpoint. To switch back, enter a temperature in the setpoint.
2) Set an alarm on the pit probe for 190 and then fill in the "setpoint" box with 225. The alarm may keep ringing, I forget, but if it does and you don't want it, just add a script for the pit probe which turns it off (al_set 0). There will be a checkbox for this in the future too.

(drops the microphone and walks off)
 
Most excellent Bryan. Wyld sta.... nevermind. So the setpoint ans a percentage will even work with the 10 second Pulse timer? I'm guessing that really the granularity is only 10%, 20%, 30%, 40%, etc....

Thanks again, I'll play with that and the alarms(which I haven't touched) this weekend. i normally use the alarm on PitDroid.


So why would the alarm range not trigger the setpoint to change to 225 when it hits 190 as it is cooling down?
 
Last edited:
The snapshot has the startup max stuff, but not the dual output reporting because it needs a linkmeterd change and I didn't want to create confusion if someone flashed the AVR snapshot and suddenly their graph stopped working.

I've installed the latest AVR Firmware Snapshot (July 29th) but I don't see options for blower startup max etc?
 
Thanks for the reply, since I already had the Linkmeter11 package installed I didn't think I would have install it. I just reinstalled it and now I do see the additional fan options. I'll be giving it a try on the next few cooks and will let you know how it works for me.

On another note, this may sound a bit odd, but if there is any way you could add an OFF function to the HM that would be a nice feature. Since I've been running the roto damper I put out my fire using the damper (which works great). In order to do this I either have to change the setpoint to a super low temp or change it to manual fan mode, if I forget to do that my HM stokes away while I am eating, wasting fuel etc. Even worse, if I pulled the pit probe out but forget to change the set point or set manual fan mode the HM could stoke the pit to a raging inferno!

I'm wondering if there is any possibility that you could add an OFF function to the HM menu (on the LCD)? Perhaps if you hit the joystick down (while on the main display page) you could have it ask "Turn OFF the pit?" and if you hit the joystick down again it goes to OFF? Turning back on could be done the same way and also if the setpoint is changed.... This would be a quick easy way to shut down the pit when done cooking, which I think is important cause when I have a platter of food fresh off the grill my mind is elsewhere and I can't tell you how many times I have forgotten to lower the setpoint on the pit, and I don't much care for disassembling the HM from the grill before I eat either.
 
You're right about that. I usually have a browser going so before I go pull the food I set the setpoint to ambient. If you're already out there it is a bit of a pain to Right -> Right -> Up or Down (which sets manual 0%). An OFF state might be a good idea, that doesn't persist (if you reboot it, it goes back to the previous setpoint).

I'm not sure how to trigger it though. The up / down is already mapped to scrolling through the food probes. I was considering making a left long press into starting a count up timer, so maybe long press down? I still haven't added long press events because long presses mess up the UI. You have to wait when you see a button press to know if it is a long press, which makes the UI seem really sluggish and I haven't worked out how to easily get around that.

The only problem I have with this is that if it takes longer or the same amount of time as "right right up", is saving any effort? Either way, you're right, it is a very common use case that I've never re-evaluated the usability of and requires more thought.
 
Last edited:
Can it be done based on a time trigger? If no pit probe detected for 2 minutes, change the setpoint to 0 until a pit probe is detected again.
 
I kinda like the long press left cause it seems to make sense... short press left = lid mode, long press left = off, but if the long press causes so much issue then maybe thats not the best option. Why have Up AND Down mapped to scrolling through a max of 4 probes, why not make UP be scroll probes and down (probably down-down) be shut down (off)?
 
As an aside, I'm also investigating the RT5350 chip as a potential all-in-one standin for the Pi+SD Card+Wifi. That's months away before I even get my hands on a device, but could be a $20 1"x1" replacement for all those parts.

What kind of boards have you been considering for this? From what you have written I'm guessing VoCore? I'm planning to try and do something similar, except with the HLK-RM04 Those are about $9 a pop on aliexpress. 4MB Flash and 16MB RAM are going to be a really tight fit though.
 
Yup the VoCore. The old WRT54GL firmware was under 4MB flash and 16MB RAM and it sucked hard core things just kept running out of memory. The OpenWrt people even won't support Attitude Adjustment on 16MB devices. 32MB is alright, the Pi only uses 21MB at idle (with linkmeterd running for a long time) and adds about 1-2MB per connection so it theoretically should fit. I'm concerned about the speed though so we'll see.

Also the VoCore has the wifi antenna integrated so that's a space / money saver as well.
 
Yeah, I'll need to strip and optimize a lot. Its a challenge. If everything else fails I'll have to upgrade the RAM to 32MB.
I'd prefer the VoCore too, but having to wait until end of the year kinda sucks.

If I succeed I'll give you remote access so you can test the resulting performance yourself. Its based on the same chip, so it should be close.
 

 

Back
Top