I am trying to make a circuit that will allow me to light up some RGB LED strips with PWM (obviously), but I'm having some confusing problems. It should be a really simple thing, but I just can't get it to work properly. After troubleshooting various things, I think I've isolated the problem down to the MOSFETs I am trying to use.
So, for testing purposes, I've hooked up my strips exactly as shown here except I am using different MOSFETs, I'm only testing one colour right now, and I'm not even using PWM at the moment. I've put the Blink test onto my Arduino and connected the gate of the FET to pin 13. +12V on the strip to 12V, red channel on the strip to drain on the FET, and source on the FET to GND.
My strip lights up and it does get brighter on the blink, but it never completely goes off. I've even tried eliminating the Arduino and tried using just a 3.3V or 5V line. With this, when I repeatedly pull the voltage line in and out of the breadboard at the gate pin of the MOSFET, sometimes the LEDs go out when I pull the voltage out, sometimes they don't.
The only explanation I can think of is that there is a problem with the MOSFETs I am using... whether that problem be with the MOSFETs I am using or something else. The first ones I tried (before I did any of this troubleshooting) were IRFZ44Ns and those didn't really work very well. After reading around a lot, I figured that I needed some that were "logic level." I was directed to STP16NF006s. These worked better but I was still having really inconsistent issues. I've learned a lot since picking up this hobby (I'm much better at writing code), but clearly, I am inexperienced and datasheets confuse the hell out of me sometimes. Obviously, I am doing something wrong and I can't quite figure out what it is.