It's been awhile since my last post, within the nearly year its been I have graduate with my doctorates, moved to a new state, got a nice job, and started to rebuild my electronics lab. The first thing I did after getting the bare basics assembled is evaluate the state of my exhaust fan and light. After my last post I had received some pre-assembled boards minus the connectors and started testing the boards. The LED control via the pot worked perfectly and allowed me to easily change it from being barely on to essentially a sun with the heat output to compare, I only had to do minor edits to the micro code to set the lower limits on the PWM control so that they never shut off without the power switch. The fan control was another matter, it only worked at full blast or off without any rhyme or reason it seemed. As such I investigated it more.
The circuit is rather simple and can be seen above. It is a PWM signal from the micro, labeled FAN_PWM, with a pulldown resistor that goes through a current limit resistor to a 2N7002 N-Channel Mosfet. This is used to control the gate of a P-Channel DMP3007SPS-13 with a smoothing capacitor and also gate limiting resistor. There is also a flyback diode as this mosfet is controlling an inductive device whose field collapsing can overcome just about any mosfet I can afford. This seems like a rather straight forward control circuit where similar to the LED control, the PWM duty is read from an analog pin on the micro and output through a PWM pin. However I could never get the circuit perform anything but full on or full off once the duty reached near 0%. I then discovered that the 2N7002 I had used was a automotive version and whose gate-drain voltage was 12v which meant my 5v micro could never get it in the proper zone. Replacing it with a standard 2N7002E whose gate-drain voltage is 4.5V made everything work as planned. As such this is a reminder to double check all your parts.