Who is here? 1 guest(s)
 Print Thread
SOLVED: TC4+ fan control goes cracy
mtwenzel
Finished my build of the popper based TC4+ roaster last week, did some dry runs to check all is behaving well (thermocouples, fan, heater), connection to Artisan is stable... worked like a charm.

So I managed to brown some first beans yesterday, was very happy with a quite even roast in a quite agreeable time.

Now as I plug in the power today, the fan spins up for a second to like 5%, turns of, then spins up to an estimated 60-70% and no matter what I try, I can't regain control.

Control over heater works, also, the LCD attached to the TC4+ shows the fan values I set through button or slider in Artisan, so I can exclude a communication problem.

Can it be that somehow my TC4+ board has acquired a hardware issue overnight? The TC4+ fan controller component (the IRF540 MOSFET) close to the output for the fan gets hot (not measured, but too hot to touch, but for a power switching unit I would have expected that).

I also considered that it might be something in the Arduino sketch like a safety measure to spin up the fan if <..mysterious condition..>?
Edited by mtwenzel on 02/01/2021 8:52 AM
 
renatoa
Did you checked the fan if works separately ?
Maybe a short in the fan motor...

Under normal conditions the MOSFET should not heat, at any fan % value. It works as a switch, high speed switch, but only on-off, no intermediate state. A semiconductor heats only when used in the linear range, between the on-off extreme states.
For this reason there is no need for fan MOSFET heatsink.
 
mtwenzel
OK, thanks for the explanation re. the MOSFET. It does get very hot, though, in my situation. I'd therefore hypothesize that this must be somehow connected to the problem.

I ran the fan off a 9V DC source, and it spins up all fine. Also, I reversed polarity to check if the flyback diode didn't burn -- apparently intact, as the fan doesn't run backward.

I mean, what puzzles me most it that yesterday at 9pm it worked, and today at 9am, it doesn't, with no modification in software or hardware, except I swapped the ET/BT TC channel assignments in Artisan since they were wrong for me, and exchanged the heater TC4+-OT1 --> SSR cable (needless to say, heater is working properly).

I rolled back all changes, even reset Artisan and re-created my settings to the bare minimum, but to no avail.
 
mg512
Just to be clear, the fan turns on to roughly 5%, then turns off, then on again to 50-60%, and then stays there, and all that happens completely by itself without you touching anything or doing anything in Artisan? That would be something new, haven't seen that before. Curious!

Some Arduino sketches do have a safety feature that automatically turns on the fan when OT1 is on, including the one I use for pre-configured Arduinos, but you should still have manual control when OT1 is off.

It's possible that the MOSFET somehow got damaged, that happens relatively easily e.g. if there's a short in the motor circuit even momentarily. But the 0%-5%-0%-60% behaviour doesn't quite fit that, usually the MOSFET would fail either constant open or constant shorted. On the other hand, while it is possible for the MOSFET to get a bit warm during operation, but it shouldn't be "very hot", so that would point toward damage or a short circuit somewhere.

A couple of things you could try to narrow things down more definitely:
1) To test that the correct control signal gets sent to the TC4+: If you have a multimeter, measure the voltage between the IO3 and GND pins on the IO3 header. When the fan slider in Artisan is off, that should be 0V, when it's on at 100%, it should read 5V. If either of those measurements is different, it could point toward an issue somewhere in the Arduino or Artisan.

2) To test only the fan circuit, you could do the following: Disconnect everything from the TC4+, including the Arduino. With only the bare TC4+ board, on the IO3 header short the IO3 pin to GND (use one of the jumpers from the BT_SEL header, or a short jumper wire). Then connect only the DC power suppple to DC IN, and the fan to DC OUT. The fan should stay off now. If you short IO3 to 5V, then the fan should be on 100%. If either of that doesn't work like that, it's likely a hardware issue.
 
mtwenzel
Thanks for that!

What I did just now (based on thoughts of a sleepless night :-) ) is run a test procedure on the still built-in MOSFET with a multimeter, and there very definitely is a Source-Drain short to be noted. S-D should be blocked with the gate not charged, as much as I understand. The one uncertain thing here is: can one do this test in a built-in MOSFET or do I have to unsolder it?

Otherwise, the 5% estimate I gave is probably wrong: the fan spins very briefly, but since it will actually always per the MOSFET see the full voltage, but only for fractions of the time, it always spins 100% -- only, power is cut off, and inertia doesn't let it run high.

The on-off-on pattern is btw mirrored by the TC4+ board "power LED", which goes on-off-on in the same rhythm.

When you say in your last sentence "hardware issue": would you mean a bad (short circuited) MOSFET?

I will try the 2nd procedure, as I don't really think the problem is with either Arduino (I have a second one with the same sketch which also worked before), nor Artisan, since I didn't change that.

Thanks! Markus
 
mtwenzel
So I ran test (2) above: Shortened the IO3 to GND, fan spins up fully. I didn't run the "short to 5V" then.

This probably means my MOSFET is done; which in turn might indicate a short most likely in the fan circuit, right?
 
renatoa
Not necessarily a permanent short, could be a temporary shaft lock due to mechanic reasons, then released... if the fan spins fully now.
But a millisecond shaft blocking with brushes in conduction is enough to "fire" the mosfet.
If you replace the mosfet and happens again, I would consider a fan revision. Bushes/bearings greasing and brush inspection.
Edited by renatoa on 01/31/2021 1:14 PM
 
mg512
Yes, that sounds like a fried MOSFET. Your fastest fix would be to replace it - it's an IRF540N, which is widely available for pennies or at most 1-2 Euros from electronics suppliers, eBay, Amazon, etc. Takes a soldering iron and a few minutes of time to desolder the old transistor and solder the new one in place. If you're not equipped to do it PM or email me though, and we'll figure something out. smile

And yes, as renatoa said, it doesn't necessarily have to be a permanent short. If the fan is working directly connected to the PSU, then it should be fine (at least for now). If it was permanently shorted, the PSU overcurrent protection should have tripped.

In fact, I think that might also be the cause of the 0-5-0-60 behaviour: Sometimes the inrush current when going 0->100% on the fan motor can be too much for the PSU, and it'll reset. Which would also explain the TC4+ power led going off too. And then maybe your PSU turned back on again just quickly enough that there was still a little inertia in the fan, and so the second time it needed a little bit less current to start up, thus not tripping the PSU again. This is pure speculation, but might plausibly explain what happened.
 
mtwenzel
I already unsoldered the IRF540, and just out of precaution soldered a pin fem. header to this place. Should I fry it again (instead of the beans :-( ) I at least can just hot-swap it with no delay. And since a replacement IRF costs 0.50 a piece, but 8 EUR postage, I ordered some more...

So, if someone needs a MOSFET, PM me, and I'll send it cheaper than the competition ;-)

The "PSU reset" thought is a very proper explanation: now, with the missing MOSFET, the board turns on, and the power LED goes on and stays on (no reset).

Actually, thinking back, the behaviour with the "short on" in the power surge was there from the beginning, only, it would not lead to the second "on" after the reset (but the fan would spin up once). I do suspect that there is still some hidden problem.
 
mg512

Quote

mtwenzel wrote:
Actually, thinking back, the behaviour with the "short on" in the power surge was there from the beginning, only, it would not lead to the second "on" after the reset (but the fan would spin up once). I do suspect that there is still some hidden problem.


You mean when you plugged it in, or when you turned on the fan? It's not uncommon for the PSU to reset when you turn on the fan from 0 to 100% due to inrush current. In that case, the solution is simply to spin it up more slowly, e.g. go 0-> 50% for a second or two, and then 50 -> 100%.

If you get the PSU resetting from just plugging in the TC4+ without the fan turning on, that would be a little more concerning. Once you replace the IRF540N, keep an eye on the TC4+ power led when you plug it in. If it goes off while this happens that would point toward a PSU reset.
 
mtwenzel
Uhm, seems I was imprecise.

When I connected the complete setup to the mains (before the "situation" with the fried MOSFET started, i.e. when the fan was still under control), the fan and power LED would turn on once, and off again, and then the LED would turn on, the fan stay off. I didn't pay attention to this back then, but apparently there was already a power surge to the fan that caused the PSU reset. I might now think that over time, these repeated power surges fried the MOSFET which was perhaps a "monday part" to begin with, since the power surge must have come from somewhere.

So no: just plugging in the TC4+ now (without the MOSFET and hence with interrupted circuit to the fan), it just turns on and stays on nicely.
 
mtwenzel
I was able to get me a new IRF540N MOSFET.

I have soldered the old one off, and instead soldered a pin header into place so that I can swap this componenent easier, should it fry again.

With the new MOSFET:
* The board turns on in complete silence
* The Power LED turns on and stays on
* The fan doesn't make a sound
---------------------------------------
So in sum: Everything works again.

And I have learned a few more bits and pieces -- thanks to everyone for informed and quick responses!
Edited by mtwenzel on 02/01/2021 11:45 AM
 
ACEMBL

Quote

mg512 wrote:

Quote

mtwenzel wrote:
Actually, thinking back, the behaviour with the "short on" in the power surge was there from the beginning, only, it would not lead to the second "on" after the reset (but the fan would spin up once). I do suspect that there is still some hidden problem.


You mean when you plugged it in, or when you turned on the fan? It's not uncommon for the PSU to reset when you turn on the fan from 0 to 100% due to inrush current. In that case, the solution is simply to spin it up more slowly, e.g. go 0-> 50% for a second or two, and then 50 -> 100%.

If you get the PSU resetting from just plugging in the TC4+ without the fan turning on, that would be a little more concerning. Once you replace the IRF540N, keep an eye on the TC4+ power led when you plug it in. If it goes off while this happens that would point toward a PSU reset.


A bit over a year ago when I started my popper journey there were a few little issues along the way. One was resetting of the PSU on start if I went to too fast on the fan too soon. The fix for me has been to ramp the fan at 50% then 70% for 1 second each then hit the desired max. I think it might have something to do with current draw due to static pressure.

I also have all of my wires twisted as well as a small capacitor across the motor terminals to help with EMI.
 
renatoa
Guys, I suspect you are using the wrong command in artisan for the fan control, if you encounter such issues, and they are solved by stepping the fan control.
DCFAN is the right command and was been introduced to solve such issues. Even if you try to change brutally from 0 to 100% the FAN speed, DCFAN use a slew technique, allowing speed change only 5% every 200 msec.
 
mtwenzel

Quote

renatoa wrote:
DCFAN is the right command and was been introduced to solve such issues. Even if you try to change brutally from 0 to 100% the FAN speed, DCFAN use a slew technique, allowing speed change only 5% every 200 msec.


Thanks, this would be helpful. To be clear:
I would still select Type=SerialCommand, and set "Documentation" to e.g. "DCFAN;{}", replacing IO3;{} in Buttons and Sliders, right?

BTW, is there any documentation of such things anywhere? The Help of the dialog is very minimal..
 
mg512
Yep, you just change IO3 to DCFAN. There isn't much in terms of documentation, although there's a list of commands supported by aArtisan and aArtisanQ_PID, respectively:
https://github.co...mmands.txt
https://github.co...mmands.txt
 
ACEMBL
Ah ha, so I just change the command in events from IO3 to DCFAN, that simple? I have two Arduino one with 3.11 and the other with PID6_7 both happy with DCFAN?

I?ve been struggling recently running 3.11 with roasts failing six to seven minutes into a roast. It doesn?t always happen but I get wild bean temp spikes and then loose connection with the Arduino (it keeps running at same state). It?s the same for Bluetooth and USB. I switched over to 6_7 and it was lovely and stable. Should I reflash 3.11 or are there other newer alternatives? I should have kept notes on how I changed the script to work with the ?cheaper? displays ????
 
Jump to Forum: