The Pull-Up Resistor: How It Works and Choosing a Value

The pull-up resistor is very common and you’ll see it in digital circuits all the time. It’s just a resistor connected from an input up to V DD , the positive supply of the circuit.

For example on digital inputs on an Arduino. Or the input of digital chips such as the 4000-series IC .

Pull-up resistors are used to make sure you have a HIGH state on the input pin when the button is not pushed. Without one, your input will be floating , and you risk that the input randomly changes between HIGH and LOW as it picks up noise in the air.

How To Choose a Pull-Up Resistor Value

Rule 1: The value can’t be too high.

The higher the pull-up value, the lower the voltage on the input becomes. It’s important that the voltage is high enough for the chip to see it as a HIGH, or logical 1, input.

For example, if you use a CD4017 with a power supply of 10V, it requires a minimum of 7V on the input for it to be seen as HIGH.

Rule 2: But it can’t be too small either.

If you for example choose 100 Ω, the problem is that you get a lot of current flowing through it when the button is pushed.

With a 9V power supply, you get 9V across 100 Ω, which is 90 mA. It’s an unnecessary waste of power, but it also means the resistor needs to withstand 0.81W. Most resistors can handle only up to 0.25W.

Rule of thumb

The rule of thumb when choosing a pull-up resistor is to choose a resistance value that is at least 10 times smaller than the input impedance (or the internal resistance) of the pin.

Often, a pull-up value of 10 kΩ will do the trick. But if you want to understand how it works, keep reading.

How Do Pull-Up Resistors Work?

You can think of the input pin of an integrated circuit (IC) as having a resistor connected to ground. This is called the input impedance :

These two resistors make up a voltage divider . If you look at the standard voltage divider circuit, you can see that the pull-up resistor is R1 and the input impedance is R2:

You can use the voltage divider formula to find the voltage on the input pin when the button is not pushed:

Below, I’ve renamed the components of the formula to fit the pull-up example. The input voltage is V DD from our pull-up example. And the output voltage is the voltage on the input pin. So the formula becomes:

Example Calculation

Let’s say your chip has an input impedance of 1MΩ (100kΩ to 1MΩ is normal for many chips). If your power supply is 9V and you choose a pull-up resistor value of 10 kΩ, what’s the voltage you get on the input pin?

You get 8.9V on the input pin, which is more than enough to act as a HIGH input.

In general, if you stick to the rule of thumb of using a pull-up resistor that is no more than ten times lower than the input impedance, you’ll make sure you always have a minimum...