Pull-up / Pull-down Resistor Calculator

Current and power for a general pull resistor, plus the correct I²C pull-up range from bus speed and capacitance.
General Pull-up / Pull-down
I²C Pull-up Range

General Pull Resistor

I = VCC / R (when the pin is driven to the opposite rail)  •  P = VCC² / R
3.3V, 10kΩ
5V, 4.7kΩ
5V, 1kΩ (strong)
V
kΩ
Enter values and press Calculate.

I²C Pull-up Resistor Range

Rmin = (VCC − VOL) / IOL  •  Rmax = tr / (0.8473 × Cbus)
3.3V, 100pF, Standard
3.3V, 200pF, Fast
5V, 150pF, Fast
V
pF
VmA
Enter values and press Calculate.

Pull-up and Pull-down Resistors

A pull-up resistor gently ties a signal to VCC so it reads high when nothing is driving it; a pull-down ties it to ground for a default low. They set a defined logic level for floating inputs, buttons, and open-drain buses. The value is a trade-off: too large and the line is slow and noise-prone; too small and it wastes current and can overload the driver.

QuantityFormula
Current when opposedI = VCC / R
Power dissipatedP = VCC² / R
I²C minimum RRmin = (VCC − VOL) / IOL
I²C maximum RRmax = tr / (0.8473 × Cbus)

For simple logic, 10 kΩ is a common default. For I²C the resistor must be small enough to charge the bus capacitance within the required rise time, yet large enough that the driver can still pull the line low — giving a valid range.

Real-World Applications & Examples

Worked examples

1. Standard 10 kΩ pull-up on 3.3 V. When the pin is pulled low it draws I=3.3/10k=0.33 mA and dissipates ~1.1 mW — efficient and quiet.
2. Strong 1 kΩ pull-up on 5 V. I=5 mA, P=25 mW — faster edges but more current; make sure the driver can sink 5 mA.
3. I²C at 100 kHz, 100 pF, 3.3 V. Rmax=1000 ns/(0.8473×100 pF)=11.8 kΩ; Rmin=(3.3−0.4)/3 mA=967 Ω. A 4.7 kΩ pull-up sits nicely in range.
4. Fast mode 400 kHz, 200 pF. Rmax=300 ns/(0.8473×200 pF)=1.77 kΩ — higher speed and capacitance force a smaller pull-up.
5. Too weak a pull-up. A 47 kΩ on a 200 pF fast-mode bus can\'t charge the line in time, so the signal edges are rounded and communication fails.
6. Pull-down for a gate. A 10 kΩ from a MOSFET gate to ground keeps it off during power-up before the driver takes control.

Frequently Asked Questions

What does a pull-up resistor do?

It connects a signal line to VCC through a resistor so the line reads a defined high level when nothing actively drives it, while still allowing a driver to pull it low.

What is the difference between pull-up and pull-down?

A pull-up defaults the line high (tied to VCC); a pull-down defaults it low (tied to ground). Choose based on the idle state your circuit needs.

What value pull-up should I use for a button?

10 kΩ is a common, safe default — low current and good noise immunity. Many microcontrollers also have internal pull-ups you can enable instead.

Why does I2C need external pull-ups?

I²C uses open-drain drivers that can only pull the line low, so a pull-up resistor is required to return the line high. Its value must suit the bus speed and capacitance.

How do I choose an I2C pull-up value?

Between Rmin = (VCC−VOL)/IOL (so the driver can still pull low) and Rmax = tr/(0.8473×Cbus) (so the line rises in time). 4.7 kΩ is a typical choice.

What is bus capacitance?

The total capacitance on the I²C line from wiring, pins, and traces — usually tens to a few hundred pF. More capacitance needs a smaller pull-up to keep the rise time fast.

What happens if the pull-up is too large?

The line rises too slowly, so at higher speeds the signal never fully reaches the high level in time and communication becomes unreliable.

What happens if it is too small?

It draws more current and the open-drain driver may not be able to pull the line low enough (below VOL), causing logic errors and extra power use.

Can I use the microcontroller's internal pull-ups?

For simple inputs, yes — but internal pull-ups are weak (tens of kΩ) and usually too high for I²C, which needs dedicated external resistors.

Do pull-up resistors waste power?

Only while the line is held low: P = VCC²/R. A 10 kΩ on 3.3 V wastes about 1 mW in that state, and nothing when the line is high.

Where should I place the I2C pull-ups?

One pair for the whole bus, typically near the master or at the electrical centre. Do not add a pull-up on every device or the effective resistance becomes too low.

Does a longer cable change the pull-up?

Yes — longer wires add capacitance, lowering Rmax, so you may need a smaller pull-up or a slower bus speed.

Related Calculators

Ohm's Law CalculatorResistor Power RatingVoltage DividerAll Calculators