The Pull-Resistor Sizing Contract

The Pull-Resistor Sizing Contract

Ada audits the pull-resistor sizing contract — current, edge speed, and leakage margin

foundations
math-foundations
electronics
intermediate
Ada ADA · CALCULATION AUDIT

Foundations · optional mathematics and physics

The Pull-Resistor Sizing Contract

The chapter sizes a button’s pull-up resistor as a balance: a 10 kOhm pull-up passes 0.33 mA when the button is pressed — ten times stronger than a 100 kOhm part but ten times lighter than a 1 kOhm one — while the weak pull releases the line 100 times more slowly. Too strong wastes current; too weak gives soft, leakage-sensitive edges. This audit works the pull-resistor sizing contract, checking sink current, idle leakage, and RC edge speed.

Companion to the chapter Floating Input and Pull Resistor Contracts — every number here comes from that chapter.

Current, edge speed, and leakage margin, ~4 minutes

A pull resistor is a physical compromise: small enough to define the voltage and recharge capacitance, large enough not to waste current whenever a switch or open-drain device pulls the node the other way.

See the relationship before changing it

The chapter figure below shows: Resistor applications grouped into protection, sensing, conditioning, and calibration roles.

The retained audit below checks several chapter fixtures. This model keeps those stated values fixed and changes only pull-up resistance, so the numeric fixture does not switch without explanation.

Protection, sensing and conditioning introduce resistor roles, followed by open and pressed button circuits. A 10 kΩ pull-up defines default HIGH; pressing the button makes the input LOW.
Resistor applications grouped into protection, sensing, conditioning, and calibration roles.

Derive the baseline in four named moves

  1. 1

    Name the input. The chapter baseline is 10 kOhm.

  2. 2

    Name the relationship. current = 3.3 V / resistance in kOhm

  3. 3

    Substitute with units. 3.3 / 10 = 0.330 mA

  4. 4

    Read the result. Keep the unit beside the value. Use it only inside the technical boundary on this page.

Predict, then change pull-up resistance

Try Predict the direction of current = 3.3 V / resistance in kOhm. Test another pull-up resistance, then compare pressed current.

10 kOhm
Chapter baseline
Pressed current

Observe A stronger pull makes a firmer edge but burns more current while the button is pressed. Reset pull-up resistance to 10 and compare pressed current.

Explain Pressing the button connects the pull-up across the supply, so a larger resistance limits the pressed-state current inversely.

Check yourself

What should you do before trusting a moved-control result?
Answer: Predict its direction, apply the shown relationship, keep the units, and reset to the worked baseline.
What does this small model leave out?
Answer: Only pull-up resistance moves here. Field effects named in the technical boundary stay fixed.
TryUse Check derivation on the 3.3 V, 10 kOhm pull-up, then compare its pressed current with the 1 kOhm and 100 kOhm alternatives.
ObserveThe 10 kOhm choice draws 0.33 mA when grounded. Reducing resistance strengthens the logic level but raises sink current; increasing it saves current while making leakage and the RC rise time more influential.
ExplainOhm's law sets the asserted-state current, while resistance with input and wiring capacitance sets edge speed. A usable pull resistor must satisfy the input threshold and timing requirements without exceeding the device's sink-current or power budget.

The working

pressed button current with the chapter's 10 kOhm pull-up = 3.3 V / 10,000 Ohm = 0.00033 A = 0.33 mA
same current in microamps = 0.00033 A * 1,000,000 = 330 uA
strong 1 kOhm pull from the comparison table = 3.3 V / 1,000 Ohm = 0.0033 A = 3.3 mA
weak 100 kOhm pull from the comparison table = 3.3 V / 100,000 Ohm = 0.000033 A = 33 uA
Check Arithmetic Design meaning
Current ratio 3.3 mA / 0.033 mA = 100 The 1 kOhm pull burns 100 times the driven-low current of the 100 kOhm pull, so it is stronger but less sleep-friendly.
10 kOhm middle point 0.33 mA / 0.033 mA = 10 The chapter's button example is ten times stronger than 100 kOhm but ten times lighter than 1 kOhm.
RC edge ratio tau = R * C, so tau(100 kOhm) / tau(1 kOhm) = 100 For the same node capacitance, the weak pull releases the line 100 times more slowly.

Round only at the end: the 10 kOhm example is exactly 0.00033 A from the stated values, then reported as 0.33 mA. That is the same contract the prose describes: check sink current, idle leakage margin, and RC edge speed before trusting the logic level.

Technical boundaries
The pull-resistor ledger deliberately does not simulate input capacitance, leakage spread, coupled noise, switch bounce, trace impedance, or edge-rate dynamics; it compares steady DC current for the stated resistor values.

Work the audit first, then check the displayed derivation.

Every number above is taken from the chapter's own pull-resistor example and re-derived step by step.