10K pulldown too low resistance?

I'm currently working on a BLDC motor controller using IRLZ44N MOSFETs. I have an array of 6 MOSFETs, 3 to 12V, 3 to ground. I have attached the diagram of a single MOSFET wiring diagram that pulls to ground. I'm having issues with R1. When it is at 10K, the MOSFET does not even supply enough current to turn on an LED, but when R1 is 22K, the LED lights up perfectly. My question is, why is a 10K pulldown resistor not working? From my understanding, 10K is what many people use for pullups/pulldowns. Am I doing something wrong or is 10K too low for an Ardunio?

Thanks.

Posting images
How to post an image.
Another page on posting images.

groundFungus:
Posting images
How to post an image.
Another page on posting images.

Thanks. I'm not sure why the image wasn't displaying because I did what it said to do for "Image from another website". I did it the other way and it worked though.

You speak about R1, not R2.
Are you sure it is 10k? Maybe it is only 10R? Measure the Gate-Source voltage.

Smajdalf:
You speak about R1, not R2.
Are you sure it is 10k? Maybe it is only 10R? Measure the Gate-Source voltage.

Ah, sorry about that. I'm working way too late. Yeah I meant R1, I edited the original post to fix that. That's what I was thinking too, so I double checked all of them with an ohm meter and they are all 10K.

Gate-Source with 22K is 1.8V
Gate-Source with 10K is 1V

As I was measuring the Gate-Source voltages I had to change the code around because I was messing with it. Turns out I just didn't have the pin type declared. When I added in pinMode(6, OUTPUT); it started working with a 10K resistor. I'm not exactly sure why having the pin non-declared made it output less amperage, but it did. In an odd chain of events, you helped lead me to the answer. Thanks!

pandagolf:
I'm not exactly sure why having the pin non-declared made it output less amperage, but it did.

Writing a HIGH to an input pin enables the build-in pull up resistor, which is about 30k.
You made a voltage divider with the 30k:10k gate pull down resistor.

Should use the 10k pull down resistor on the Arduino side of the 220 ohm resistor.
Bookmark this page.
Leo..

R1 is in the wrong place, it should be on the output pin, not the gate. Where you have it it's forming a potential divider with R3 and reducing the gate voltage.

Wawa:
Writing a HIGH to an input pin enables the build-in pull up resistor, which is about 30k.
You made a voltage divider with the 30k:10k gate pull down resistor.

Should use the 10k pull down resistor on the Arduino side of the 220 ohm resistor.
Bookmark this page.
Leo..

Ok. Thanks for explaining it! That makes a whole ton of sense. I forgot the 10K should be before the 220 ohm. I'll swap that over too.

PerryBebbington:
R1 is in the wrong place, it should be on the output pin, not the gate. Where you have it it's forming a potential divider and reducing the gate voltage.

Ah, yup you are right. I'll move that over to before the 10K. I assumed it was going to reduce the voltage only a little (~2.2%). That assumption was wrong because of what Wawa pointed out, I was actually making a 30.22K:10K voltage divider

The 10k can be either side of the 220 ohm resistor, it makes no difference as the FET is
designed for 4.5V or more to turn it on and 220:10k divider turns 5.00V to 4.89V

I see this so often and its often touted as super important, yet the maths says its
irrelevant.

MarkT:
I see this so often and its often touted as super important, yet the maths says its
irrelevant.

Depending on the values used, it may or may not be important in a given case.

What is important is understanding the principles involved, so that it does not become a problem in a different situation. The need for the pull-down arises because the Arduino is not controlling the pin until it has successfully booted the code. Since that is the problem, the pull-down should be connected at the Arduino pin.

Where the Arduino is controlling a CMOS (almost always) device such as a shift register, you generally need a pull-down or pull-up to prevent spurious activation of the device. :roll_eyes: