123 Main Street, New York, NY 10001

Adding Hysteresis to a Comparator (VTH+ / VTH− Design)

← Back to:Comparators & Schmitt Triggers

Adding hysteresis turns a noisy, slow-moving threshold into two deterministic trip points that you can calculate, guardband, and verify. This page shows how to compute VTH+/VTH−, choose resistor values safely (including source-R and bias/leakage), and measure the real thresholds on the bench.

What this page solves

Adding hysteresis turns a noisy or slow-changing threshold into two deterministic trip points (VTH+ and VTH−) that can be measured, guarded, and reproduced across temperature and load.

Common failure modes this page fixes

Slow ramp chatter / multiple toggles
  • Likely cause: a single threshold is crossed repeatedly by noise while the input dwells near the transition.
  • What breaks: double-count edges, spurious interrupts, false alarms, unstable state machines.
Threshold drift / “same circuit, different trip point”
  • Likely cause: Rs, Ib, Ileak, and real VOH/VOL shift the effective threshold node.
  • What breaks: window limits, brown-in/brown-out points, calibration assumptions, margin.
“Window not accurate” in the real system
  • Likely cause: hysteresis is computed with ideal rails, but the board sees non-ideal output swing and input loading.
  • What breaks: nuisance faults or missed faults under temperature, supply ripple, or load changes.

What this page delivers (copyable engineering outputs)

Calculation template

Compute VTH+ and VTH− using real output swing (VOH/VOL) and resistor ratio, then apply guardband for tolerance and temperature.

Sizing workflow

Start with a VHYS target → pick resistor ratio → pick absolute resistance range that keeps Ib×R and Rs-loading errors below the allowed threshold shift.

Error checklist (threshold shift owners)

Account for Rs, Ib, Ileak, VOH/VOL, input clamps/leakage, and temperature coefficients—each maps to a measurable ΔVTH.

Verification plan (bench → production)

Sweep input up/down to measure VTH+/VTH−, add controlled noise/ripple to confirm no re-trigger, run temperature corners, then convert results into production pass/fail limits.

From chatter to deterministic trip points using hysteresis Three-stage diagram: no hysteresis causes multiple toggles; adding a feedback network creates VTH plus and VTH minus; outcome is a clean edge and verifiable thresholds. No hysteresis Add feedback network Deterministic result VTH multi toggles Comparator + feedback VIN VREF VOUT Rf Rin VTH+ / VTH− VTH+ VTH− clean edge

Next steps on this page: define terms precisely, then compute VTH+/VTH− with non-ideal effects (Rs, Ib, Ileak, real VOH/VOL) and verify using up/down sweeps across corners.

Definition: hysteresis, VHYS, VTH+ and VTH−

Hysteresis creates two switching thresholds rather than one. The rising transition occurs at VTH+, and the falling transition occurs at VTH−. Their difference is the hysteresis width: VHYS = VTH+ − VTH−

Terms that must stay consistent

  • VTH+: the input level that triggers the output when the input is rising.
  • VTH−: the input level that triggers the output when the input is falling.
  • VHYS: the separation between the two trip points; it is not “noise margin” by definition, but it can be used as a noise margin when sized correctly.
Practical sizing rule (quick, measurable)
  • Measure or estimate the effective disturbance at the threshold node (noise + ripple coupling + ground bounce + spikes).
  • Choose VHYS_target large enough that disturbances do not cross both thresholds during one event (a common starting point is several times the observed peak-to-peak disturbance, then refine by test).
  • Verify by injecting ripple/noise and confirming no re-trigger when the input sits near the transition.

Common traps that cause “mystery” thresholds

  • Assuming VOH = VDD and VOL = 0, then discovering real output swing shifts both trip points.
  • Measuring only one sweep direction and calling it “the threshold” instead of separating VTH+ and VTH−.
  • Using very large resistors while ignoring Ib×R and leakage, which can dominate the intended hysteresis.
  • Taking noise at the signal source as the disturbance, while the real disturbance is at the threshold node due to coupling and ground bounce.
Waveform definition of VTH plus, VTH minus, and hysteresis width Waveform plot showing Vin slow ramp with noise, two dashed threshold lines labeled VTH plus and VTH minus, and Vout switching once on rising and once on falling. Vin time VTH+ VTH− Vout VHYS

Hysteresis must be specified and verified using two sweep directions: rising to capture VTH+ and falling to capture VTH−. Any design step that changes the threshold node (output swing, source resistance, bias/leakage, clamps) shifts these points and must be included in the sizing and guardband.

Principle: positive feedback creates two stable states

Positive feedback makes the decision boundary depend on the current output state. That is why a hysteretic comparator has two trip points: VTH+ for a rising input and VTH− for a falling input.

Two-state viewpoint (state machine)

  • State S0: OUT = L. The feedback term is based on VOL, so the boundary is one line.
  • State S1: OUT = H. The feedback term is based on VOH, so the boundary shifts to a second line.
  • Key rule: the trip point is computed using the pre-transition output state (before the output flips).

Why the threshold is not a constant

The input node is a weighted mix of sources through resistors. A compact way to think about it is:

Vnode = a·Vin + b·Vref + c·Vout
When Vout jumps from VOL to VOH (or back), the feedback term shifts Vnode, so the next trip requires a different Vin.

Thevenin intuition (engineering view)

  • The feedback network makes the threshold node look like an equivalent source whose value depends on Vout.
  • With OUT=L, the equivalent source is closer to VOL; with OUT=H, it is closer to VOH.
  • The comparator flips when the node crosses the reference boundary, producing two distinct trip points.
Two-state hysteresis principle: output state shifts the decision boundary Top shows a two-state diagram for OUT low and OUT high with arrows labeled VTH plus and VTH minus. Bottom shows a simplified comparator with a positive feedback resistor network creating a threshold node Vnode influenced by Vin, Vref, and Vout. Two stable states (threshold depends on OUT) OUT = L uses VOL OUT = H uses VOH Vin rising → trip at VTH+ Vin falling → trip at VTH− Vnode is influenced by Vin, Vref, and Vout (feedback) Comparator decision Vnode Vref Rin Vin Vout Rf OUT=L → boundary A OUT=H → boundary B

This principle is the reason the next section computes trip points by writing one node equation and solving it twice: once with Vout = VOL and once with Vout = VOH.

Core equations: compute VTH+ and VTH−

The goal is a copyable method that produces VTH+ and VTH− using the real output swing (VOH/VOL). The same recipe works for both common external-hysteresis topologies; only the mapping of which output state applies to “rising” vs “falling” changes.

Unified recipe (one equation, solved twice)

  1. Write the threshold-node equation in weighted form: Vnode = a·Vin + b·Vref + c·Vout
  2. Apply the switching condition (ideal comparison boundary): Vnode = Vref (or the internal reference boundary).
  3. Solve for Vin twice: Vout = VOL gives one trip point; Vout = VOH gives the other.
  4. Assign results to VTH+ and VTH− using the rule below.
Mapping rule (pre-transition output state)
Input sweep Use Vout state Trip point name
Vin rising the output level before it flips VTH+
Vin falling the output level before it flips VTH−

In a non-inverting threshold detector the rising trip typically uses VOL, while in an inverting configuration it often uses VOH. The equation is the same; the assignment differs.

Case A: non-inverting (Vin to +, Vref to −)

With Rin from Vin to the + node and Rf from Vout to the same node, the node voltage is the weighted mix:

V+ = (Vin·Rf + Vout·Rin) / (Rin + Rf)

Switching occurs when V+ = Vref, so:

Vin(th) = Vref·(Rin + Rf)/Rf − Vout·(Rin/Rf)
Rising trip (VTH+)
VTH+ = Vref·(Rin + Rf)/Rf − VOL·(Rin/Rf)
Uses Vout = VOL because the output is still low right before it flips on a rising input.
Falling trip (VTH−)
VTH− = Vref·(Rin + Rf)/Rf − VOH·(Rin/Rf)
Uses Vout = VOH because the output is still high right before it flips on a falling input.
Quick sanity check
Hysteresis width increases with output swing and Rin/Rf: VHYS ≈ (VOH − VOL)·(Rin/Rf).

Case B: inverting (Vin to −, Vref to +)

The inverting topology has the same weighted-node math at the node, and switching occurs when V− = Vref. The important difference is the assignment of which output level applies to rising vs falling trips.

Vin(th) = Vref·(Rin + Rf)/Rf − Vout·(Rin/Rf)
Typical assignment for inverting behavior
  • VTH+ (Vin rising): often flips the output H → L, so use Vout = VOH as the pre-transition state.
  • VTH− (Vin falling): often flips the output L → H, so use Vout = VOL as the pre-transition state.
Rising trip (often)
VTH+ = Vref·(Rin + Rf)/Rf − VOH·(Rin/Rf)
Falling trip (often)
VTH− = Vref·(Rin + Rf)/Rf − VOL·(Rin/Rf)

If a specific implementation flips in the opposite direction, the assignment must follow the same rule: use the pre-transition output level.

Case C: non-ideal output swing (VOH ≠ VDD, VOL ≠ 0)

  • Do not substitute VDD and 0 unless the output swing is guaranteed under the real load.
  • Use the datasheet conditions (load current, pull-up, temperature) to pick worst-case VOH and worst-case VOL for threshold guardband.
  • Then apply the same equations with those substituted values; hysteresis width scales with (VOH − VOL).
Guardband reminder
Compute thresholds at corners: (VOH min, VOL max, R tolerance, Vref tolerance). The acceptable window must include these shifts before moving on to resistor sizing constraints (Rs, Ib, leakage).
Common hysteresis topologies and the unified equation approach Three side-by-side mini schematics: non-inverting and inverting hysteresis using Rin and Rf, and a VOH/VOL box indicating non-ideal output swing substitution. A unified node equation box appears below. Case A non-inverting Case B inverting Case C VOH / VOL CMP Vin Rin Vref Vout Rf CMP Vin Rin Vref Vout Rf Output swing use VOH / VOL Vout = VOH/VOL Unified node form Vnode = a·Vin + b·Vref + c·Vout Solve twice: Vout = VOL and Vout = VOH → assign to VTH+ / VTH− by pre-transition state

The next step is resistor sizing: pick a VHYS target, then choose a resistor ratio and an absolute resistance range that keeps source-R and Ib/leakage from shifting the computed thresholds beyond guardband.

Design workflow: from required VHYS to resistor values

Use the equations to land on practical resistor values. The workflow outputs VTH+/VTH−, a resistor ratio, and an absolute-value range that remains valid across corners.

VTH+ VTH− R ratio Rabs range

5-step workflow (inputs → action → outputs)

Step 1 Set VHYS target
  • Inputs: noise/ripple/ground-bounce/sensor jitter seen at the threshold node.
  • Action: pick a margin factor (typical 3× to 10× the disturbance peak-to-peak).
  • Outputs: VHYS_target, margin factor.
Step 2 Use real VOH/VOL
  • Inputs: corner values VOH(min) and VOL(max) under the real load/pull-up.
  • Action: compute available swing: ΔVout = VOH − VOL.
  • Outputs: ΔVout_corner.
Step 3 Pick ratio, then absolute values
  • Action A (ratio): choose Rin/Rf to hit VHYS_target while placing VTH+/VTH− where needed.
  • Action B (absolute): choose a resistance range that does not overload the source and does not amplify bias/leakage errors.
  • Outputs: Rratio, initial Rin/Rf, and Rabs range.
Step 4 Check VICR and edge cases
  • Inputs: input common-mode range VICR, intended input range, and computed thresholds.
  • Action: verify both trip points and the pre-transition node voltages remain within VICR (especially near rails at low VDD).
  • Outputs: pass/fail and the adjustment direction (change Vref, ratio, or part).
Step 5 Add tolerance and drift (corners)
  • Inputs: resistor tolerance/TC, VOH/VOL drift, Vref tolerance/TC.
  • Action: compute VTH+_min/max and VTH−_min/max; then define guardband for production.
  • Outputs: corner thresholds and a validation window.

Common pitfalls (fast checks)

  • Using VDD/0 instead of real VOH/VOL under load.
  • Choosing very large resistors first, then discovering Ib and leakage dominate threshold error.
  • Targeting VHYS for noise only and ignoring ground-bounce or coupled spikes at the threshold node.
  • Checking typical values only (no corners across temperature/load).
  • Skipping a monotonic sweep test for both directions (no clean verification of VTH+ and VTH−).

Outputs recap (copy to the project notes)

  • VHYS_target = disturbance_pp × margin_factor
  • Rratio chosen to hit VHYS and place VTH+/VTH− correctly
  • Rabs range chosen to limit bias/leakage error and source loading
  • Corner thresholds: VTH+_min/max and VTH−_min/max

The next section converts non-idealities into an explicit ΔVTH budget to bound the guardband and resistor range.

Five-step workflow to choose hysteresis resistors A five-step flowchart: set VHYS target, use VOH/VOL, pick resistor ratio and absolute values, check VICR, then add tolerances and drift. Each step shows short outputs. From VHYS requirement to resistor values Step 1 Set VHYS target output: VHYS Step 2 Use VOH / VOL output: ΔVout Step 3 Pick Rratio, then Rabs output: Rratio/Rabs Step 4 Check VICR output: pass/fail Step 5 Corners & drift output: VTH bounds Outputs: VTH+ / VTH− · R ratio · Rabs range Validate by monotonic sweeps (rising and falling) and corner assumptions

Non-idealities: source-R, input bias/leakage, and a threshold error budget

Real thresholds shift because the input node is not ideal. Treat every non-ideality as an injected ΔVTH term, then budget the total shift before finalizing resistor values and production guardbands.

Rs loading Ib Ileak / clamps ΔVTH_total

Source resistance (Rs): loading changes the divider ratio

  • Mechanism: Rs adds series impedance to the Vin path, changing the effective weighting at the threshold node. This can shift both trip points and shrink the achieved VHYS.
  • Worst-case inputs: Rs corner (sensor output impedance, divider source resistance, or upstream filter R), plus resistor tolerances.
  • Budget form: treat the effect as ΔVTH_Rs and recompute thresholds with Rs included in the node equation.
Mitigations (actionable)
  • Lower the network impedance (reduce Rin/Rf absolute values) to make the node less sensitive to Rs.
  • Buffer the source if Rs is unavoidable (keep the threshold node stiff).
  • Recompute VTH+ / VTH− at Rs corners and add guardband before committing to values.

Input bias current (Ib): DC offset through the node resistance

  • Mechanism: bias current through the node’s Thevenin resistance creates a DC voltage shift at the input, translating directly into a threshold shift.
  • Worst-case inputs: Ib_max across temperature/process, and the effective node resistance seen by the input.
ΔVTH_Ib ≈ Ib_max · Rth(node)
Use the same corner philosophy as thresholds: Ib_max and the largest plausible Rth set the worst-case shift.
Mitigations (actionable)
  • Reduce Rabs (but keep source loading and power acceptable).
  • Select a comparator with lower Ib corners when absolute thresholds matter.
  • Re-allocate the VHYS/guardband if Ib-driven shift is a dominant term.

Input leakage / clamps: “hysteresis changed” symptoms

  • Clamp conduction: protection diodes or internal clamps can conduct during overshoot/undershoot, pulling the node and shifting the apparent trip point.
  • Environmental leakage: contamination/humidity can create leakage paths that behave like an extra current source at the node.
  • Budget form: treat leakage as an injected current that creates ΔVTH through the node resistance.
ΔVTH_Ileak ≈ Ileak_max · Rth(node)
Use worst-case Ileak at temperature and include clamp events as a separate corner if the input can overshoot.
Mitigations (actionable)
  • Lower node impedance so leakage produces less ΔVTH.
  • Add current limiting and control overshoot to avoid clamp conduction.
  • Verify with slow sweeps and environmental stress if leakage is suspected (repeatability matters more than a single run).

Error budget template (fill with datasheet numbers)

Error source Mechanism Worst-case inputs Worst-case estimate Mitigation How to verify
Rs ratio change Rs_max, R tolerance ΔVTH_Rs (recompute) reduce Rabs / buffer sweep with Rs corners
Ib DC shift Ib_max, Rth Ib_max · Rth lower Rabs / better part temp sweep
Ileak node pull Ileak_max, clamp events Ileak_max · Rth limit overshoot / lower R repeat sweeps, env test

A conservative total can be formed as ΔVTH_total = Σ |ΔVTH_i| and applied as guardband to the corner thresholds.

Error injection view: Rs, Ib, and Ileak contribute to threshold shift A central threshold node receives three arrows from Rs loading, Ib, and Ileak/clamps. A small bar chart on the right shows delta VTH contributions and a total guardband concept. Convert non-idealities into ΔVTH contributions Threshold node Vnode decision boundary Rs loading ratio change Ib DC shift Ileak / clamp node pull ΔVTH contribution Rs Ib Ileak guardband: ΔVTH_total Budget first, then lock resistor values Use corners for Ib/Ileak/VOH/VOL and apply the total as threshold guardband

Slow ramp & chatter: combining hysteresis with RC debounce (without over-filtering)

Slow edges plus noise and short spikes are the most common reason a threshold circuit toggles more than once. Hysteresis stabilizes the decision boundary; RC suppresses high-frequency glitches. The design must control false toggles without creating excessive delay or “moving” thresholds.

Goal: single clean edge Control: t_delay Avoid: over-filtering Check: Rs / Ib / Ileak coupling

Why slow ramps cause chatter (and sometimes extra power)

  • Multiple crossings: when the input moves slowly through the decision region, small noise can cross the boundary repeatedly.
  • Long dwell time: the longer the signal spends near the trip level, the more opportunities noise has to create extra edges.
  • Downstream logic effects: a non-Schmitt digital input can draw higher current when held near its threshold (linear region), so slow edges can appear as “power spikes” during transitions.
Verification hooks
  • Record Vin slope at the threshold and count output edges per event.
  • Measure supply current during the transition window to confirm “dwell-time” correlation.

Hysteresis vs RC: what each one solves

Hysteresis (VHYS)
  • Solves: noise-driven uncertainty around the boundary by creating two trip points (VTH+ / VTH−).
  • Does not solve: very short spikes that jump over VTH+ briefly.
  • Side effects: a wider decision window; absolute threshold targets must include error budget.
RC debounce / low-pass
  • Solves: high-frequency glitches by reducing their amplitude at the threshold node.
  • Does not solve: a noisy slow ramp by itself if the boundary remains a single point (no VHYS).
  • Side effects: adds delay and can amplify Rs/Ib/Ileak-driven threshold shifts via increased node impedance.
Practical decision rule
  • Noise chatter on a slow ramp → add hysteresis first.
  • Short spikes causing false edges → add RC after VHYS is set.
  • Both present → VHYS for stability + RC for spikes, then budget delay and threshold error.

How to set RC (start from delay budget, then spike/noise targets)

Step 1 Set allowed delay
  • Define t_delay_budget from system timing.
  • Use the worst-case input slope and corners (temperature/supply/loading).
  • Keep RC-induced delay below the budget at the trip point.
Step 2 Target spikes/noise band
  • Identify glitch duration (pulse width) and the dominant noise band at the node.
  • Choose τ so short spikes are attenuated enough that the node does not cross VTH+.
  • Avoid choosing τ so large that normal edges become timing failures.
Step 3 Check coupling to threshold error budget
  • RC increases the effective impedance seen at the input node in many real layouts.
  • Re-check ΔVTH_Rs, ΔVTH_Ib, and ΔVTH_Ileak after adding RC.
  • Update guardband with corner values before locking R and C.
Production fields: VTH+_meas · VTH−_meas · t_delay_meas · false_trigger_count
Measure with monotonic rising and falling sweeps, then repeat with injected spikes and across temperature corners.
Time-domain comparison: no hysteresis, hysteresis only, hysteresis plus RC Three stacked panels show input ramp with noise and spikes and the resulting output. Top: multiple toggles. Middle: hysteresis reduces chatter but spikes can still trigger. Bottom: hysteresis plus RC yields one clean transition with delay marked. Slow ramp + noise + spikes: what each fix changes A) No hysteresis / No RC B) Hysteresis only C) Hysteresis + RC VTH+ VTH− VTH+ VTH− Vin Vout spike t_delay

Output swing matters: VOH/VOL, saturation, and topology notes (OD vs push-pull)

External hysteresis uses output feedback, so thresholds depend on the real output levels. Do not assume VDD and 0. Always use VOH(min) and VOL(max) under the real load and temperature corners.

Use: VOH(min) / VOL(max) OD: load-dependent VOH PP: stronger edges Watch: recovery / storage

Why VOH/VOL must be “real” (not ideal rails)

  • Feedback amplitude: the effective hysteresis injection scales with ΔVout = VOH − VOL.
  • Corners matter: lower VOH(min) or higher VOL(max) can shrink achieved VHYS and move both trip points.
  • Action: compute VTH+ / VTH− using VOH(min) and VOL(max) at the same load and temperature assumptions used in the system.
Use in equations: Vout = { VOH(min), VOL(max) } → VTH+ / VTH− bounds
Tie the swing assumptions to measurable conditions (load current, pull-up, temperature), then treat the result as a worst-case threshold window.

OD vs push-pull: threshold drift paths (only what affects hysteresis math)

Open-drain / open-collector (OD)
  • VOH is external: determined by pull-up, load, leakage, and temperature; treat VOH(min) as a corner value.
  • VOL is specified: use VOL(max) at the actual sink current corner.
  • Implication: feedback injection varies with conditions → thresholds vary unless corners are budgeted.
Push-pull (PP)
  • VOH/VOL are usually more defined for a given load, which helps keep thresholds predictable.
  • Edge energy is higher: fast transitions and ground bounce can couple into the input node and appear as extra “noise” at the decision boundary.
  • Implication: keep hysteresis sized for real node disturbances and verify on the PCB with worst-case switching activity.

Saturation / recovery: when “threshold shaping” looks wrong

  • Observed symptom: large overdrive events or deep output states can show longer-than-expected recovery before the output becomes a clean logic level.
  • Relevance here: if Vout is used in the feedback network, delayed or distorted VOH/VOL behavior can alter the apparent trip timing and the measured thresholds.
  • Action: validate with worst-case overdrive and temperature; avoid design conditions that force deep saturation when timing/shape is critical.
Checklist (fields to collect before final resistor lock)
  • VOH(min) and VOL(max) at real load/pull-up corners
  • Temperature corners used for those values
  • Recomputed VTH+_min/max, VTH−_min/max, VHYS_min/max
  • Basic timing checks: propagation and any recovery behavior relevant to the application
VOH/VOL enters hysteresis thresholds Two output-stage blocks (open-drain and push-pull) feed arrows into a formula box that emphasizes using VOH(min) and VOL(max) to compute VTH+ and VTH− bounds. Use real output levels in the hysteresis math Open-drain (OD) VOH depends on load Use VOH(min) / VOL(max) corners: pull-up + temp Push-pull (PP) More defined VOH/VOL Verify edge coupling corners: load + temp Threshold computation Use VOH(min), VOL(max) Compute VTH+ / VTH− Get corner bounds Do not substitute ideal rails for feedback calculations

Protection & layout: clamps/series-R/TVS can shift thresholds

Input protection is not electrically “transparent”. Series resistance, clamps, and TVS devices can introduce leakage, capacitance, and ground-bounce coupling that change the effective threshold node and increase false triggers. The design must keep the protection benefits while preserving VTH+/VTH− predictability.

Key paths: leakage · capacitance · ground bounce Outcome: stable thresholds Check: ΔVTH from Ileak × Rth

How series-R shifts thresholds (and why it can amplify leakage errors)

  • DC shift path: any clamp/TVS leakage current creates a node error through resistance: ΔV ≈ Ileak × R(series-to-node).
  • Hidden amplifier: larger resistance makes the threshold node more sensitive to Ib/Ileak, so “safe” protection can become a threshold-drift driver.
  • Action: size series-R for protection needs, then re-check the worst-case threshold window using node Thevenin resistance.
Verification hooks
  • Repeat VTH sweeps at hot temperature to expose leakage-dominated shifts.
  • Compare VTH results with and without the protection population (same board, same stimulus).

Clamps/TVS: leakage and capacitance change both DC threshold and false-trigger risk

Leakage (DC bias path)
  • Corner behavior: leakage often rises strongly with temperature and board contamination, appearing as threshold drift.
  • Worst-case estimate: use the maximum leakage at the relevant node voltage and temperature corner.
  • Budget template: convert leakage into threshold shift using the node resistance.
ΔVTH_leak ≈ Ileak(max) × Rth(node)
Evaluate at hot temperature and at the highest node voltage expected during normal operation.
Capacitance (dynamic coupling path)
  • Fast transients: TVS/clamp capacitance and parasitics can couple fast edges into the threshold node.
  • Observed symptom: false toggles with EFT-like spikes even when DC thresholds look correct.
  • Action: verify with pulse/noise injection and measure whether the node crosses VTH+ under worst-case coupling.

Layout rules that directly improve threshold stability

  • Keep the input loop small: short path from connector to the threshold node with tight return to reduce pickup.
  • Keep the reference clean: avoid sharing sensitive comparator ground/reference return with high di/dt switching currents.
  • Avoid asymmetric routing: asymmetry turns ground bounce into effective differential input noise, increasing the needed VHYS.
  • Place protection intentionally: TVS close to the connector; keep the threshold node short, compact, and low-impedance.
If effective node noise increases → raise VHYS only after ruling out leakage-driven DC shift.
Input protection chain and threshold node Block diagram from connector to series resistor, RC, clamp/TVS and comparator input node. Short labels indicate leakage, capacitance, and ground bounce effects on thresholds. Protection chain can shift VTH+ / VTH− Connector Series-R Rin RC R · C Clamp / TVS Comparator Input Vnode leakage capacitance ground bounce

Verification: how to measure real VTH+ / VTH− and hysteresis (bench + temp)

Calculations are only the first pass. The practical goal is to measure real trip points and hysteresis under the same conditions that define the application: VDD, temperature, load, VOH/VOL, and source impedance. The workflow below produces data that can be migrated into production screening.

Outputs: VTH+ · VTH− · VHYS Add: P-P jitter Add: false-trigger rate Condition tags: VDD · Temp · Load · Rs

Step 1 — Sweep up/down and log trip points (baseline bench method)

  • Stimulus: drive the input with a slow monotonic ramp using a DAC, SMU, or a function generator with offset control.
  • Trip logging: capture the exact input level when the output changes state on an up-sweep (VTH+) and on a down-sweep (VTH−).
  • Debounce rule: count a trip only if the output remains stable for N consecutive samples (or for a minimum hold time).
Log: { sweep=up → VTH+ } · { sweep=down → VTH− } · VHYS = VTH+ − VTH−

Step 2 — Repeat across corners (temperature, VDD, load, VOH/VOL, Rs)

  • Temperature points: cold / ambient / hot to reveal bias and leakage changes.
  • Supply corners: repeat at minimum and maximum VDD used in the system.
  • Output condition: record VOH/VOL under the real load or pull-up conditions (especially critical for open-drain).
  • Input source impedance: repeat with worst-case Rs to bound the node error and settling effects.
Corner output format
Condition{VDD, Temp, Load, Rs, VOH/VOL} → VTH+ · VTH− · VHYS

Step 3 — Noise/ripple/spike stress: verify false-trigger rate

  • Ripple test: add controlled ripple near the threshold region and check if the node crosses VTH− and returns, causing extra edges.
  • Spike test: inject short pulses and log whether the threshold node briefly crosses VTH+.
  • Metric: report a false-trigger count per time window or per input event count.
Report: P-P jitter at trip · false_trigger_rate · (with corner tags)
Keep the debounce criterion consistent with the application’s sampling and decision logic.
Bench setup to measure VTH+ and VTH− Block diagram showing DAC or SMU driving the input, comparator under test, and measurement by logic analyzer and oscilloscope, with logging of sweep up and down trip points. Sweep up/down and log trip points DAC / SMU slow sweep Comparator / Schmitt device under test Vnode Logic Analyzer edge log Oscilloscope Vnode/Vout Sweep up/down → log trip points (VTH+ / VTH−) Output: VTH+ · VTH− · VHYS · P-P jitter · false-trigger rate

Engineering checklist + IC selection logic (fields → risk mapping → vendor questions)

This section turns “hysteresis math” into a repeatable tool: a prioritized checklist, a datasheet-field risk map, and vendor questions that prevent threshold drift, chatter, and false trips at corners.

Outputs: VTH+/VTH− range Tool: checklist + mapping Tool: vendor questions

A) Prioritized engineering checklist (tick-box ready)

1) Threshold budget (absolute trip accuracy)
  • Reference: Vref accuracy / TC / noise → Record: Vref(min/max) at corners.
  • Output swing: VOH(min)/VOL(max) under real load → Record: VOH/VOL vs load and temperature.
  • Resistors: tolerance + tempco → Record: R ratio range (min/max).
  • Bias/leakage: Ib/Ileak at temperature → Compute: ΔVTH = I × Rth(node).
  • Source impedance: Rs worst-case → Check: Rs does not re-divide the hysteresis network.
Deliverable: VTH+_min/max · VTH−_min/max · VHYS_min/max (with corner tags)
2) Dynamic budget (noise / ripple / delay / false trip)
  • Noise/ripple at the node: estimate peak-to-peak at worst case → Set: VHYS margin (e.g., multiple of observed p-p).
  • Ground bounce coupling: layout-driven effective input noise → Action: fix return paths before inflating VHYS.
  • RC delay: t_delay vs system timing → Record: t_delay_meas at corners.
  • False trigger metric: Report: false_trigger_rate (per time or per event).
3) Front-end chain (protection/RC/ESD impacts on thresholds)
  • Series-R: does it raise Rth(node) and amplify Ib/Ileak errors?
  • Clamp/TVS: Ileak vs temp/humidity → Compute: ΔVTH_leak.
  • Capacitance: Cnode injects spikes → Verify: pulse test does not cross VTH+.
  • Layout symmetry: asymmetric routing converts bounce to input noise.
4) Verification items (bench → production migration)
  • Sweeps: temperature sweep · supply sweep · load sweep · source-R sweep.
  • Stress: ripple/noise injection · spike injection.
  • Outputs: VTH+ · VTH− · VHYS · P-P jitter · false-trigger rate.
  • Decision rule: define debounce criterion (stable N samples / hold time).

B) Selection logic: datasheet fields → risks → actions (guardband-friendly)

Each row below forms a closed loop. If a field is weak or poorly specified at corners, the risk becomes visible and the action becomes specific.

Datasheet field
Risk (symptom)
Action (fix)
Ib vs temperature (min/max)
Threshold drift (hot/cold shift)
Lower Rth(node) · buffer source · guardband VTH window
Input leakage vs temperature (Ileak)
“Hysteresis looks different” · false trips in humidity/hot
Reduce node resistance · relocate/leakage-isolate protection · clean PCB
VOH/VOL conditions (load, pull-up, temp)
VHYS mismatch vs expectation · trip points shift with load
Recompute with VOH(min)/VOL(max) · define pull-up/load in spec
VICR / crossover behavior near rails
Unexpected toggles near supply rails
Ensure node stays inside VICR at corners · change topology or supply headroom
tPD vs overdrive curve (small overdrive)
Timing miss · edge jitter in slow crossings
Increase VHYS margin or add RC · validate delay and false-trigger rate
Built-in hysteresis tolerance/guarantee
VHYS variation across units/lots
Prefer external hysteresis network if VHYS must be controlled tightly

C) Vendor questions (copy-paste checklist)

Please confirm / provide the following, with test conditions:
  • Ib vs temperature: min/typ/max at defined VIN and VDD.
  • Input leakage vs temperature: Ileak(min/max) with VIN polarity and magnitude stated.
  • VOH/VOL conditions: IOH/IOL, pull-up value (if open-drain), load type, and temperature corners.
  • VICR / crossover behavior: behavior near rails and under overdrive; any known crossover region constraints.
  • Built-in hysteresis guarantee: VHYS min/max across process and temperature (if present).
  • Propagation delay vs overdrive: curve/table at small overdrive.
Request condition tags: {VDD, Temp, Load/Pull-up, Rs, VIN range} for every spec table.

D) Reference part numbers (starting points only; verify corners)

The part numbers below are provided to accelerate datasheet lookup for hysteresis-based threshold design. Selection must be driven by the checklist and field-to-risk mapping above.

Nano / micro-power comparators (external hysteresis friendly)
TLV3691 · TLV3701 · MCP6541 · LMV331
Comparator with integrated reference (brown-in/out style thresholds)
TLV3011 (OD) · TLV3012 (PP)
Window comparator / window thresholds (limit detection)
TLV6700
High-speed / latching comparators (timing / fast edges)
LMH7220 · LTC6752 · ADCMP580
Schmitt-trigger buffers / gates (digital cleanup path)
SN74LVC1G17 · 74HC14 · 74LVC14
Note: “OD” = open-drain, “PP” = push-pull. Always re-compute VTH+/VTH− using VOH(min)/VOL(max) under the real load.
Datasheet fields to risk to action mapping Three-column mapping diagram showing datasheet fields such as Ib, Ileak, VOH/VOL and VICR mapping to risks such as drift, chatter and false trips, then to actions such as bigger hysteresis, lower resistance, buffer and guardband. Fields → Risk → Action (threshold stability loop) Datasheet fields Risk (symptom) Action (fix) Ib vs Temp Ileak vs Temp VOH / VOL VICR crossover tPD vs OD threshold drift chatter false trip timing miss guardband corners lower Rth(node) buffer / reduce Rs bigger VHYS adjust RC Use VOH(min)/VOL(max), Ib/Ileak corners, and Rs worst-case to bound VTH+/VTH−.

Application recipes (hysteresis-focused; copy-and-adapt)

Each recipe stays inside the “adding hysteresis” boundary: it shows when hysteresis is needed, the minimum wiring, the key numbers to fill, and concrete reference part numbers to speed up prototyping and vendor conversations.

Recipe 1 — Slow sensor threshold: avoid multi-trigger on noisy slow ramps

When to use
  • Input crosses a threshold slowly and carries noise/ground bounce.
  • Output shows multiple edges near the threshold region.
Minimal circuit
  • Comparator + external positive feedback (Rf, Rin) to create VTH+ and VTH−.
  • Optional small RC at the input only after delay budget is defined.
Fill: VHYS target Fill: Rs worst-case Fill: Ib/Ileak corners
Reference ICs: TLV3691 · MCP6541 · LMV331
Quick verify: sweep up/down → log VTH+ and VTH− → count extra edges under injected ripple/spikes.

Recipe 2 — Brown-in / Brown-out: hysteresis window as a simple “valid power” detector

When to use
  • Supply rises/falls through a noisy region and causes repeated resets or state toggles.
  • Two trip points are required: enter-valid (VTH+) and exit-valid (VTH−).
Minimal circuit
  • Divider + comparator reference + external hysteresis (or a window device if a two-limit detector is needed).
  • Compute VTH+/VTH− using VOH(min)/VOL(max) and divider tolerance.
Reference ICs: TLV3011 (OD) · TLV3012 (PP) · TLV6700 (window)
Quick verify: sweep VDD up/down at cold/ambient/hot → log VTH+/VTH−; repeat under load to confirm VOH/VOL impact.

Recipe 3 — Noisy digital input cleanup: comparator hysteresis vs Schmitt buffer

When to use
  • Long cable / slow edges / EMI spikes produce double edges in logic inputs.
  • Threshold must be defined and stable across temperature and supply variation.
Minimal circuit choice
  • Schmitt buffer: fastest, simplest digital cleanup when the input is already logic-domain.
  • Comparator + external hysteresis: better when logic thresholds are not suitable or when level translation is needed.
Reference ICs: SN74LVC1G17 · 74HC14 · TLV3691
Quick verify: inject narrow spikes and ripple near the threshold region → confirm single transition and acceptable t_delay.

Recipe 4 — Level translation threshold: open-drain + pull-up defines the logic-domain swing

When to use
  • Analog threshold detection must drive a different logic voltage domain.
  • VOH is defined by the pull-up rail and load, so VOH(min) must be used in VTH math.
Minimal circuit
  • Open-drain comparator output + pull-up to the target logic rail (VOH depends on pull-up/load).
  • External hysteresis network computed using VOH(min)/VOL(max) under the real load.
Reference ICs: TLV3011 (OD) · LM393 (OD) · TLV3691
Quick verify: repeat VTH sweeps with min/max pull-up and load → confirm the VTH window stays within the target limits.
Hysteresis recipe collage Four mini block diagrams showing inputs, hysteresis resistor network, two trip points, and outputs for slow threshold, brown-in/out, noisy input cleanup, and level translation. Application recipes using the same hysteresis building block Slow threshold Vin R network Out VTH+ / VTH− Brown-in/out VDD R network Out VTH+ / VTH− Noisy input cleanup Vin Schmitt / R Out VTH+ / VTH− Level translation Vin OD + R Out VTH+ / VTH− All recipes share one rule: compute using VOH(min)/VOL(max) + Ib/Ileak + Rs worst-case, then verify with sweeps.

Request a Quote

Accepted Formats

pdf, csv, xls, xlsx, zip

Attachment

Drag & drop files here or use the button below.

FAQs (adding hysteresis) — short, actionable, data-structured

Each answer follows a fixed structure: Cause → Quick check (numbers/conditions) → Fix (one action). No diagrams. No scope creep beyond external hysteresis design.

How to back-calculate resistor ratio from a target VHYS? Which two VOH/VOL conditions matter first?
Cause

VHYS comes from the feedback injection amplitude, which depends on real output swing at corners (VOH/VOL), not ideal VDD/0.

Quick check (numbers / conditions)
  • Use VOH(min) at the worst load condition (IOH or pull-up/load for open-drain).
  • Use VOL(max) at the worst sink condition (IOL, temperature corner).
  • Compute with corners: VHYS_min must meet the target (guardband included).
Fix (one action)

Choose the resistor ratio to satisfy VHYS_min using VOH(min)/VOL(max), then choose absolute values to keep Ib/Ileak error below the threshold budget.

Use corners: VOH(min), VOL(max) → solve R ratio → then set Rabs by Ib/Ileak error limit
VHYS matches the calculation, but measured VTH+ / VTH− are both shifted. Check Rs first or Ib first?
Cause

A common-mode shift usually comes from DC biasing errors at the input node (source impedance re-division, Ib×Rth, or leakage), while VHYS can still look “right”.

Quick check (numbers / conditions)
  • Change source impedance by ~10× (add series R or buffer the source): if VTH shifts strongly, prioritize Rs mechanism.
  • Repeat at hot vs ambient: if shift grows with temperature, prioritize Ib/Ileak.
  • Temporarily remove/replace front-end clamp/TVS: if VTH shift changes, prioritize leakage.
Fix (one action)

Reduce Rth(node) (lower resistor values or buffer the source) so Ib/Ileak and Rs cannot move VTH beyond the allowed window.

With a large source impedance, will hysteresis become “smaller” or “larger”? What direction is most common?
Cause

High Rs makes the threshold node less stiff, so the feedback network and bias/leakage currents distort the effective trip points seen at the source.

Quick check (numbers / conditions)
  • Most common symptom: trip points become less predictable and drift with temperature/humidity because Ib/Ileak effects grow with Rth(node).
  • Measure VHYS and VTH with Rs = low and Rs = high: if both VTH+ and VTH− move together, it is a node bias shift, not “true VHYS change”.
  • Avoid probe loading: use ≥10 MΩ probe, short ground lead, or buffer the node for measurement.
Fix (one action)

Lower Rth(node) (smaller resistors or a buffer) so Rs cannot re-divide the hysteresis network and Ib/Ileak cannot dominate.

Bias current causes threshold drift. How to cap it with a single “max resistor” rule?
Cause

DC error at the input node scales with Ib_max × Rth(node), typically worst at hot corners.

Quick check (numbers / conditions)
  • Pick an allowed threshold error slice: ΔV_allow (e.g., a fraction of the total VTH window budget).
  • Use Ib_max @ hot from the datasheet corner spec.
  • Enforce: Rth(node) ≤ ΔV_allow / Ib_max.
Fix (one action)

Reduce resistor absolute values until the rule is met, then re-check VOH/VOL corners to confirm VHYS_min still meets the target.

Max node resistance rule: Rth(node) ≤ ΔV_allow / Ib_max(@hot)
Open-drain output makes thresholds load-dependent. How to guardband without diving into pull-up details?
Cause

In open-drain, VOH is not fixed; VOH(min) depends on pull-up and load, and VOH enters the hysteresis math.

Quick check (numbers / conditions)
  • Define two corner swings: VOH(min) at worst load, and VOL(max) at worst sink.
  • Recompute a VTH window using those corners (VTH+_min/max, VTH−_min/max).
  • Verify by toggling between min-load and max-load on the output pin while sweeping input.
Fix (one action)

Design to VOH(min) and VOL(max) (worst corners), then accept only the resulting VTH window as the production spec.

Example open-drain comparators often used as starting points: LM393, TLV3011
RC debounce made the response slow or missed triggers. How to debug with a delay budget?
Cause

RC shifts the crossing time; if the delay exceeds the system window (or filters the peak), triggers become late or missing.

Quick check (numbers / conditions)
  • Define t_delay_budget (max acceptable latency from input event to output edge).
  • Measure t_delay_meas at corners (cold/hot, VDD min/max, load extremes).
  • If input is a step/edge, approximate: t ≈ −RC · ln(1 − VTH/Vstep) to sanity-check the measured delay.
Fix (one action)

Reduce RC until t_delay_meas ≤ t_delay_budget, then rely on adequate VHYS (not RC) to prevent multi-toggling.

Why does slow-ramp input increase power abnormally? How to tell “transition-region dwell” from external leakage?
Cause

Slow crossings can keep downstream logic or input stages in a semi-linear region (extra dynamic current), while leakage can bias the threshold node and create continuous current paths.

Quick check (numbers / conditions)
  • Observe output edges: multiple toggles during the slow ramp strongly suggests transition-region dwell.
  • Compare supply current with clean input vs ramped input: a ramp-only increase suggests dwell; a persistent increase suggests leakage path.
  • Remove/replace clamp/TVS or clean the board: if current drops noticeably, prioritize leakage.
Fix (one action)

Increase VHYS enough to ensure a single clean transition (and add minimal RC only if delay allows); if leakage is indicated, lower Rth(node) and use low-leakage protection and proper cleaning/coating.

Will external hysteresis ruin a precision threshold? When is smaller VHYS + cleaner reference better?
Cause

Precision is limited by the corner stability of Vref, VOH/VOL, Ib/Ileak, and node impedance—not by the existence of hysteresis itself.

Quick check (numbers / conditions)
  • If node noise is low and reference stability dominates, smaller VHYS can work (avoid oversizing).
  • If noise/ground bounce is comparable to the threshold budget, VHYS must exceed it with margin (or false trips are guaranteed).
  • Confirm by logging VTH window across temperature and load; if drift is reference-driven, fix Vref first.
Fix (one action)

Allocate an error budget: stabilize Vref and reduce node impedance first, then set the minimum VHYS that clears the measured node noise with margin.

Input clamp/TVS makes thresholds “wander”. Which two leakage specs should be checked first?
Cause

Clamp/TVS leakage currents bias the threshold node, and leakage often increases sharply with temperature and voltage.

Quick check (numbers / conditions)
  • Ileak vs temperature (hot corner is usually worst).
  • Ileak vs applied voltage and polarity (reverse vs forward region, VIN magnitude).
  • Estimate shift: ΔVTH ≈ Ileak_max × Rth(node).
Fix (one action)

Use lower-leakage protection (or relocate it to a less sensitive node) and reduce Rth(node) so leakage cannot move VTH outside the allowed window.

How to measure real VTH+ / VTH− reliably with scope/logic analyzer, without mistaking noise as threshold?
Cause

Without a consistent sweep method and decision rule, random noise, probe loading, and trigger settings turn VTH into a moving target.

Quick check (numbers / conditions)
  • Sweep input slowly up/down (DAC/SMU), log the input value at the output state change.
  • Define a debounce rule: output must be stable for N samples or T_hold before logging a trip point.
  • Record conditions with each log: VDD, temperature, load, and (for OD) pull-up/load configuration.
Fix (one action)

Standardize one bench procedure (sweep rate + stability rule + condition tags) and report VTH+ / VTH− as a range across corners, not a single number.

Same resistor ratio, different comparator model — thresholds become inaccurate. Which three datasheet items to compare first?
Cause

Different input/output stage behavior changes corner conditions (Ib/Ileak, VOH/VOL under load, and input common-mode behavior), which directly changes the real VTH window.

Quick check (numbers / conditions)
  1. Ib and Ileak at temperature corners (especially hot).
  2. VOH(min)/VOL(max) under the real load (and OD pull-up/load if applicable).
  3. VICR / crossover behavior near rails (ensure the node stays inside VICR at corners).
Fix (one action)

Recompute VTH+ / VTH− using the new device’s corner specs (VOH/VOL, Ib/Ileak, VICR), then validate by sweep logging across temperature and load.

Common low-power starting points (verify corners): TLV3691, MCP6541
Temperature changes cause false triggers. Increase VHYS, or hunt ground-bounce/leakage first?
Cause

Temperature-sensitive false triggers are often caused by leakage/bias drift or layout-driven effective noise. Increasing VHYS can mask root causes but may not fix drift.

Quick check (numbers / conditions)
  • If failures correlate with humidity/contamination or hot corners → prioritize Ileak and board cleanliness/coating.
  • If failures correlate with switching events (motors, DC/DC edges) → prioritize ground bounce/return path.
  • If failures correlate with output load changes (especially OD) → prioritize VOH/VOL corners and guardband.
Fix (one action)

Fix leakage and return-path issues first, then increase VHYS only to cover the remaining measured node noise with margin.