The Development Log


 
I just heard back from Thermoworks about the thermocouple I was thinking of using, which I posted about the other day. Model: 113-420/425
They said it is an isolated thermocouple, so I think it might work out OK...
 
Oh no kidding? Man those guys are the best with their information. I'll pick one up for testing using my Amazon Millions.
 
Yah, the reply I got from their tech support was:
"The junction inside is insulated from the sheath of the probe so it is an isolated thermocouple"

Isolated, completely sealed from water and steam, bendable, made for semi-permanent mount, withstands temps over 2000F... seems like it may be an ideal unit for a kamado hood....
 
Yeah it will be interesting to see how it works in the HeaterMeter circuit. All the probes I've picked up so far have been affected by being touched causing a ground loop so I'm curious to see what happens here.

I also was able to reduce some of the noise by reducing the resistance to ground on the thermocouple circuit. I thought a larger impedance would reduce the noise but it appears to be the opposite? It was my original perception that the ground connection needed to be high impedance to not affect the readings. I'm starting to think the reference design went with high impedance to not affect a grounded probe while still providing acceptable performance with an ungrounded probe. If using a grounded probe then the grounding impedance should be low to provide the most stable readings.

But anyway I selected one of the 1/8" probes due to their suggestion that it was more durable. Also it may be a little less sensitive to minor temperature fluctuations that mess with the PID control.
 
Last edited:
I don't have the thermocouple circuit yet, I do have one of the boards from a HMv4.1, has the thermocouple circuit evolved further on the HMv4.2.2?
 
Yeah it will be interesting to see how it works in the HeaterMeter circuit. All the probes I've picked up so far have been affected by being touched causing a ground loop so I'm curious to see what happens here.


Ground loop, hmm, isn't ceramic one of the best insulators on the planet?
 
I don't have the thermocouple circuit yet, I do have one of the boards from a HMv4.1, has the thermocouple circuit evolved further on the HMv4.2.2?
Yes there's a low pass filter on the output and a proper common mode noise rejection circuit on the input.
8GwEpne.png


I'm calling it a ground loop, I can't seem to measure it with proper tools because measurement affects it. All I know is when something touches the probe wiring the value gains enough noise to shift the value anywhere from a 3-20 degrees.
 
Spent some time today cleaning up the switching mode voltage blower output, reducing the size considerably while making it more robust. I will be making it so that you can select between the output modes from the webui too. I've considered coming up with stupid names for each output type like this is some sort of commercial project. PWM mode could be UltraPulse(tm) and fixed voltage could be TruVolt(tm), that way nobody will know what they actually do just like in a real product!

As the code stands right now, TruVolt(tm) output mode scales the blower output voltage between 5V at 1% to 12V at 100%. 0% is still off, and the min fan speed can still be used to do a long on/off mode effectively raising that 5V minimum to whatever you want. Max fan speed simply limits the upper voltage similar to how the existing PWM max fan speed does. The 5V-12V limits are not adjustable from the webui because there are enough knobs already. The standard recommended blower will work at 5V so I think we're actually gaining a little more control on the low end.

I do want the TruVolt(tm) mode to "lock on" to the proper output voltage a little more quickly though, as it can take 2-4 seconds to properly adjust the output to find the right voltage when there's a large jump in output percentage. That's a pretty simple thing to do though. The configuration webui still needs to be written as well.

Finally, the 4.2.2 PCBs should be here tomorrow so let's see how this first round of the new design goes! My thermocouple amps won't be here until next week so I'l have to cannibalize one off a previous attempt, hopefully without destroying it.
 
In one of those great news / terrible news events, I've got both. Good news is that this design is completely noise free. No matter what speed the blower is running, the ADC results are entirely stable with a max 1 LSB of range. Touching the probe is totally OK as well, but I'll have to see what happens when I put it on the BBQ.


Bad news is that physically the design doesn't work. The blower/servo output bumps against the Pi so it doesn't mate all the way down. Same story with the capacitors, although those can easily be bent out of the way. Final bad news is that the LCD connector is too far inboard for the LCD to reach it. That's not such a big deal either because there's room to grow that way (the case on that side needs extra room to accommodate the screws). Due to a DRC SNAFU in the annular ring, all the pads are a little small as well but they still all work.

So the big thing is the ethernet jack not fitting. Everything else is somewhat straight forward to fix.
 
That's great news about zero noise...
On the ethernet jack, any chance since you have to move it anyways you can move it over to the probe side even if the board has to grow a bit larger? I much prefer the ethernet jack on the same side as the probes, it is harder to confuse with the lan port on that side as well...
 
The largest reason the noise is gone is because the output jack was moved to the "power" side. I prefer it on the other side too, but running high-ish current 12V power that's being strobed on and off real fast injects a ton of noise into the ground plane. Even if I moved all the signal lines to wires that stay inches away from the board, I still couldn't clean up the ground noise. Providing a second power section just for the analog side, as well as it's own isolated ground coupled using ferrite beads even made it worse. I don't have the technical expertise to fix that, so the power input and blower output have to be on the same side.
 
I thought that would be your reply. I was hoping that perhaps the board could be enlarged and the leads for the ethernet port could be run down the enlarged and unpopulated edge to the other side of the board. I guess you've tried this approach already and found it still created noise. I am totally with you on eliminating the noise at whatever cost, I am anxious to see if some of my more problematic probes behave better with this new design.
 
You can get Rj45 caps to go on the connector or the case could be changed a bit and cover the jack completely, so as to not be able to make the mistake of plugging in the blower into the wrong one. I too would prefer it on the other side, because I have a few times plugged into the wrong jack and did not realize it lol
 
I guess as long as it happens at the grill it's not a big deal, cause I'm pretty sure plugging a servo or blower into the LAN port on the rPi wont cause a problem, but I think it would be a bad day if you plug your laptop or other network device into the HM output with the +12v and +5v in there...
 
Bryan, I am wondering if there is an easy way to boost the servo signal a bit? I find if I run the CAT5 wire too far or if the connection gets a little weak the servo will start to spazz out, bouncing back and fourth rather than landing on the proper position. I figure it has to be due to receiving degraded pulse signal. (a bit shorter cable always works reliably)
I know you don't quite get the need to run the HM over a long CAT5 cable (being a Floridian), but much of this country gets bad winter weather and I have heard from quite a few people that they would like to leave their HM inside for winter and bad weather cooking. I've been using a lengthy cable for a while now that is permanently installed (through the wall in my basement), over time the connection has degraded and I have had to cut back the cable and crimp a new CAT5 end on to get the servo to track. My cable seems to be right on the edge of the maximum length but I would kinda like it a little longer (like others will I am sure), so I was hoping it might be possible to add a little booster circuit to the servo signal? I'd be willing to mock up and test any circuit you might suggest...

Edit: I forgot the this isn't supposed to be a "wish list" thread, sorry.
 
Last edited:
Yeah you may want to create a new thread about it. How long is the cable? I need to design a test so I can see what's happening at the far end of the cable.
 
Yah, sorry for throwing that in here, but I figured while you are designing this new board perhaps I should raise this. I guess my cable is about 50ft long or so, hard to tell cause I pulled it from my deck through a hole in my basement then up through the floor into my kitchen cabinet.
What it does when the cable is too long, the servo will freak out and start whipping rapidly back and forth, not just chattering, I mean moving quite a distance, like its having a seizure or something. I am guessing it has to be degraded pulses on the signal lead cause I don't think it would do that if the gnd or +5v were weak...

Looking at the schematic as far as I can see the servo control lead comes right from the ATMega? Is this putting out a 3.3V pulse then? I've seen some very cheap servo signal boosters that boost 3v to 5v to help push that signal, wondering if I should try one of those (if the servo control line is currently at 3V) Although it seems a simple circuit with a transistor and a couple resistors should be able to boost this signal pretty easily....

Edit: I've been doing some reading about running servo's from a 3.3V arduino. It seems the 3.3v signal can be problematic for a 5V servo, with the 3.3v pulse being close to 50% of the servo power which may cause pulses to be rejected as noise. I've seen suggested to run the servo at 3.3v to alleviate the issue or to boost the signal with transistors, I've also read that any 5V 74HC chip can be used to raise the pulse to 5V (to match the 5v servo power). I know we use a 74HC chip for the shift register, but it's a 3.3v version. I'm wondering if we could possibly change to a 5v version of the 74HC and task the unused portion for boosting the servo signal?
 
Last edited:
Ralph,
You mentioned that it works, then stops and you shorten the cable, and reattach a cat5e end.

If this is true, it sounds more like the connections is losing its integrity, becoming highly resistive and causing the loss. Any increase in the resistance in the connector would make a big problem for the servo.

dave

Yah, sorry for throwing that in here, but I figured while you are designing this new board perhaps I should raise this. I guess my cable is about 50ft long or so, hard to tell cause I pulled it from my deck through a hole in my basement then up through the floor into my kitchen cabinet.
What it does when the cable is too long, the servo will freak out and start whipping rapidly back and forth, not just chattering, I mean moving quite a distance, like its having a seizure or something. I am guessing it has to be degraded pulses on the signal lead cause I don't think it would do that if the gnd or +5v were weak...

Looking at the schematic as far as I can see the servo control lead comes right from the ATMega? Is this putting out a 3.3V pulse then? I've seen some very cheap servo signal boosters that boost 3v to 5v to help push that signal, wondering if I should try one of those (if the servo control line is currently at 3V) Although it seems a simple circuit with a transistor and a couple resistors should be able to boost this signal pretty easily....

Edit: I've been doing some reading about running servo's from a 3.3V arduino. It seems the 3.3v signal can be problematic for a 5V servo, with the 3.3v pulse being close to 50% of the servo power which may cause pulses to be rejected as noise. I've seen suggested to run the servo at 3.3v to alleviate the issue or to boost the signal with transistors, I've also read that any 5V 74HC chip can be used to raise the pulse to 5V (to match the 5v servo power). I know we use a 74HC chip for the shift register, but it's a 3.3v version. I'm wondering if we could possibly change to a 5v version of the 74HC and task the unused portion for boosting the servo signal?
 
This is why I suggested making a new thread because this has gone way off topic.

The servo PWM is indeed 3.3V. Generally receiving circuits only need something like 0.3*VCC for detection of a pulse or 1.5V minimum in this 5V case. 100ft of CAT5 24AWG cable is 2.5 ohms so the 3.3V signal should still be pretty close to 3.3V considering the current draw is near zero. Some oscilloscope samples of commercial RC controllers show only 3V-3.5V output. It is probably more likely that the cable is picking up enough noise from the 12V high current line to trigger a pulse detection.

There's no "unused portion" of the shift register (other than the carry bit) and running the servo on that would be to CPU intensive (transferring 100x a second), and imprecise to boot. You can shift the 3.3V signal to 5V just using an NPN transistor or N-MOSFET with a couple resistors if you'd like to try it.
 
Ok, last post in this thread about this, again, sorry for the diversion...

D Peart, yes, a small addition of resistance by the cable end takes it over the edge, but a little more cable with good ends does too... So it seems to be the combo of the two...

Bryan, from what I read in other forums about servo's, when using a 3.3v control source people use a signal booster circuit to bump the 3.3v up t0 5V just to get the signal to pass through a couple feet of cable. With that in mind I guess it is a miracle that it works so well over this long cable I have. So it seems to me the length of the cable is possibly an issue... I'm gonna give one of those inline boosters a try and perhaps try home made transistor circuit as well if I can come up with a circuit to use. I'm running a HMv4.0 right now so it is no big deal for me to put a booster circuit between the HM board and the CAT5 jack, I guess on the HMv4.1 or newer a trace would need to be cut to insert the booster. Perhaps you could at least include an easily cutable trace for the servo lead on future boards if the inline booster proves to be effective?

Here is a link to some of the info I was referring to

And here is a link to the thread about servo jitter and other problems/solutions when running a servo from a 3.3v Arduino, as well as the suggestion to use a 74HC chip as a booster (which I understand is a dead idea since you have used up all the 74HC resources already apparently)
 

 

Back
Top