MOSFET Heater Is Its Own Thermostat

While we might all be quick to grab a microcontroller and an appropriate sensor to solve some problem, gather data about a system, or control another piece of technology, there are some downsides with this method. Software has a lot of failure modes, and relying on it without any backups or redundancy can lead to problems. Often, a much more reliable way to solve a simple problem is with hardware. This heating circuit, for example, uses a MOSFET as a heating element and as its own temperature control.

The function of the circuit relies on a parasitic diode formed within the transistor itself, inherent in its construction. This diode is found in most power MOSFETs and conducts from the source to the drain. The key is that it conducts at a rate proportional to its temperature, so if the circuit is fed with AC, during the negative half of the voltage cycle this diode can be probed and used as a thermostat. In this build, it is controlled by a set of resistors attached to a voltage regulator, which turn the heater on if it hasn’t reached its threshold temperature yet.

In theory, these resistors could be replaced with potentiometers to allow for adjustable heat for certain applications, with plastic cutting and welding, temperature control for small biological systems, or heating other circuits as target applications for this type of analog circuitry. For more analog circuit design inspiration, though, you’ll want to take a look at some classic pieces of electronics literature.

17 thoughts on “MOSFET Heater Is Its Own Thermostat

  1. That seems way overkill, a NTC or PTC driving the bias of a power darlington connected to a heater resistor can be equally effective while much simpler; I’m sure I’ve seen a similar approach used in a simple thermal regulator for home made TCXOs.
    For software based solutions, a possible one could be using the internal temperature sensor of the ubiquitous ATTiny85 to vary the duty cycle of a PWM signal driving the same BJT.

    1. I think the idea of this solution though is that there is no need for any thermal interfacing between sensing element and heater, or failure due to them becoming disconnected or worrying about error due to the thermal impedance of the connection between sensor and heating element. The heater is the FET which is the sensor. In theory, we could just run three wires to the FET at the point we want to heat from the control circuit and be confident it will do what we want.
      I’ll agree 100% when it comes to suddenly getting the external heating resistor involved, now we are suddenly needing a thermal interface again which makes this just overly complex IMO. Also, depending on the FET package impedance, this may not accurately heat a large sink like say a water tank since the die temp might be way off from the average of the tank.

      1. On the other hand, the thing you’re heating never reaches the temperature you set, because you’re measuring the temperature from the heater and not the thing you’re heating.

    1. As usual, for more details, follow the link, DYOR, be enlightened, and share your new knowledge.
      Or just ask questions and expect someone else to do that for you, you choose.

    2. Good observation. All mosfet has a parasitic diode by construction, but is a bad and unreliable diode. Most of the mosfets have a paralell diode (for protection) and this have reliable parameters and can be used as described.

  2. The idea I have, not having looked closely at the requirements to exploit this effect, is that a device that can overheat very quickly might not be able to rely on the speed of conduction into its microcontroller’s thermometer – or it might be one that doesn’t offer a good temperature reading. Rather than adding a separate part, maybe it would be possible to correlate a rapid rise in fet temperature with a possible rise in device temperature.

    Picture a high power flashlight or something – you might drive the led hard with a fet for high brightness, and use pwm for dimming, but your driver is tiny and not on the same board as the led(s). So the leds could cook if you run at 100% duty cycle and wait for the heat generated in the fet to conduct into the microcontroller, but if you sense temperature right in the fet you might be able to shorten the feedback loop.

    I mean, if you could calibrate everything finely enough you might be able to measure directly on the leds, or you might put a thermocouple there, but hey. Less hardware and more software is nice in this scenario.

    If you want to do this for a heater you have to compete against a lot of thermostats and also PTC/NTC devices. The hysteresis is awful, but I kinda like snap discs. On another note, there’s apparently even a kind of ptc rubber, but I couldn’t find a hose made out of the stuff unfortunately.

  3. This approach avoids the thermal interface between the sensing element and the heater, failure due to disconnecting them, and error due to thermal impedance. FET sensors are heaters. We could run three wires to the FET at the spot we want to heat from the control circuit and expect it to work.
    I agree that adding the external heating resistor requires a thermal interface, making this too complicated. Depending on the FET package impedance, this may not accurately heat a big sink like a water tank because the die temp may be far from the tank average.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.