I am working on a project for my car and currently want to control the speed of the blower on the HVAC system. I ran into the problem that the negative is tied to ground. My solution... I hope is to use a P channel MOSFET. I have several IRF9540 and having issues pulling up the gate. The MOSFET gets hot without a load... first one started smoking so I trashed it.
I tried to drive the MOSFET directly with the Arduino and using a NPN transistor 2N3904.
I am trying to find a p channel with a logic gate I am considering get the FQP27P06 but I am not sure if that is going to work better.
I am a hobbyist and I am still learning how to read datasheets. I will try to attach schematics tomorrow to help explain what I have setup.
Munkeeworks:
I tried to drive the MOSFET directly with the Arduino and using a NPN transistor 2N3904.
That is the correct approach. What value pullup resistor did you have between the 2N2904 collector/mosfet gate and the +12V/mosfet source? How much current does the blower take? The Rds(on) of the IRF9540 may be too high for it to pass the blower current without needing to be cooled.
Munkeeworks:
I am trying to find a p channel with a logic gate I am considering get the FQP27P06 but I am not sure if that is going to work better.
That won't help.
One other consideration is that transients are very common on 12V automobile supplies. So both the mosfet and the transistor should be rated at 60V or more.