
Figure 1. Digital Potentiometer Selection and Validation Workflow.
A digital potentiometer uses a resistor string between A and B, also called H and L, and a switch network that connects wiper W to one tap. In three-terminal mode, the string forms a voltage divider, and W produces a code-dependent fraction of the voltage between H and L.
In rheostat mode, W and one end terminal form a programmable resistance. The unused end terminal may be left floating or tied to W when the selected datasheet permits. Tying it to W provides a full-string path in the simplified circuit if the wiper contacts open, but it is not a guaranteed fault-safe state.

Figure 2. Voltage-Divider and Rheostat Operating Modes.
Terminal names do not define polarity. For the TPL0501, H may be above or below L, but H, W, and L must remain between GND and VDD during recommended operation. Other products use A, B, and W or device-specific labels, so the selected datasheet determines the terminal limits and transfer equation [1].
The required analog function determines the device category. A digipot fits variable resistance or ratio control within its terminal, current, and power limits. A DAC fits a driven programmable voltage or current. A mechanical potentiometer fits direct manual adjustment and retains its physical position without power.
|
Decision
Point |
Mechanical
Potentiometer |
Digital
Potentiometer |
DAC |
|
Electrical function |
Physical divider or rheostat |
Digitally selected divider or rheostat |
Converts a code into voltage or current |
|
Output drive |
Limited by track, contact, and wiper
ratings |
Wiper is load-sensitive and may need a
buffer |
Many devices include an output buffer |
|
Adjustment method |
Continuous mechanical travel |
Discrete digital codes |
Discrete digital codes, often at higher
resolution |
|
Power-off behavior |
Retains physical position |
Volatile default, unknown unpowered
impedance, or NVM recall, depending on device |
Device-specific output and recall state |
|
Intended use |
Standalone manual adjustment |
Resistance emulation, ratio control,
calibration, or attenuation |
Programmable bias, reference, or driven
output |
TI notes that a digipot wiper may need an external buffer, while many DACs include one. The choice is architectural, not a feature-count ranking [2].
Before replacement, measure the original potentiometer at minimum, maximum, and normal settings. Record terminal voltages, AC amplitude and frequency, load current, startup behavior, resistance, and taper. Isolate a mechanical potentiometer for powered-off resistance measurements; do not assume an unpowered digipot can be measured the same way.
The end-to-end value, RAB, sets the tradeoff between current and output impedance. Lower resistance draws more current; higher resistance increases sensitivity to load resistance, leakage, bias current, and capacitance. Linear taper gives equal nominal increments, while audio taper follows a specified attenuation law. Include external resistors when calculating response and usable codes.
The TPL0501 has 256 positions addressed by codes 0 through 255. Its ideal equations use a denominator of 256, so code 255 represents 255/256 of the string. Other products may use a different denominator or provide special endpoint states [1].
Resolution is the nominal code increment, not system accuracy. An error budget can include INL, DNL, endpoint error, RAB tolerance, loading, leakage, drift, reference and buffer error, and measurement uncertainty. TPL0501-100 guarantees 80 kΩ to 120 kΩ RAB; at VDD = 5 V and 25°C unless stated otherwise, it specifies ±1 LSB INL, -0.5 to +0.5 LSB DNL, 0 to +2 LSB zero-scale error, and -2 to 0 LSB full-scale error [1].
Recommended operating limits define normal use. Absolute maximum ratings are stress boundaries, not operating targets. For the TPL0501, H, W, and L must remain from 0 V to VDD. The ±5 mA continuous and ±20 mA pulse ratings for H, W, and L are absolute maximum values and must not be used as recommended design currents [1].
For a divider string:
IAB = |VH - VL| / RAB
PAB = (VH - VL)2 / RAB = IAB2RAB
Here, IAB is string current in amperes, PAB is string power in watts, terminal voltages are in volts, and RAB is in ohms. Use the minimum guaranteed RAB for the highest string current and power. These calculations do not replace separate checks of wiper current, pulse duration, package power, or junction temperature.

Figure 3. Standard and High-Voltage Terminal Windows.
The MCP41HV31 illustrates the separate analog and logic domains of a high-voltage digipot. Microchip specifies a 10 V to 36 V analog supply span, including 0 V to +36 V or -18 V to +18 V terminal configurations under the stated rail relationships. Its logic supply is referenced to DGND and has additional VL-to-V− requirements [3].
At midscale, a nominal 100 kΩ divider has about 50 kΩ per segment and 25 kΩ Thevenin resistance. A 1 MΩ load is only 40 times that value and therefore shifts the output.
The TPL0501-100 specifies 25 Ω typical and 100 Ω maximum wiper resistance with H floating, L grounded, a forced test current, and code 0x80. The same datasheet lists a nominal 35 ppm/°C end-to-end temperature coefficient and a 4 ppm/°C ratiometric coefficient at midscale. These are different error mechanisms: an unloaded divider can retain its ratio more closely than its absolute segment resistance [1].
AC response varies with resistance, code, parasitic and load capacitance, signal, and supply. TPL0501-100 data include 265 kHz typical bandwidth at midscale with 10 pF, 3 µs typical settling, and 0.005% typical THD at 1 VRMS and 1 kHz [1].
AD5141 data list 3 MHz typical bandwidth for 10 kΩ and 0.43 MHz for 100 kΩ. With ±2.5 V supplies, VA = 1 VRMS, VB = 0 V, and 1 kHz, typical THD is -80 dB and -90 dB, respectively [4]. Do not compare values taken under different conditions as equivalent.
Lifecycle status was checked on the manufacturers’ product pages on August 28, 2026 [8]-[11]. The devices address different circuit conditions and are not ranked as direct substitutes.
|
Device
and Lifecycle Status |
Channels,
Positions, Taper |
RAB Options and Tolerance |
Analog-Terminal
and Supply Range |
Terminal-Current
Limit |
Interface,
Memory, POR State |
Dynamic
Performance and Test Conditions |
Intended
Use and Principal Limitation |
|
TPL0501-100, TI, Active |
1 channel, 256 positions, linear |
100 kΩ, ±20% maximum |
H/W/L: 0 V to VDD; VDD:
2.7 V to 5.5 V |
±5 mA continuous and ±20 mA pulse at
H/W/L, both absolute maximum ratings |
SPI write-only, volatile, POR 0x80; DIN
with no serial-data output |
265 kHz typical at midscale and C_L=10{
pF}; 3 µs typical settling; 0.005% typical THD at 1 VRMS,
1 kHz |
Low-voltage divider or rheostat; limited
to 100 kΩ and no register readback |
|
AD5141, Analog Devices, Production |
1 channel, 256 positions, linear |
10 kΩ or 100 kΩ, ±8% maximum |
A/W/B: VSS to VDD;
single 2.3 V to 5.5 V or dual ±2.25 V to ±2.75 V; VLOGIC:
1.8 V to 5.5 V |
±6 mA maximum continuous, with additional
current restrictions in the datasheet |
I²C or SPI variant, EEPROM and readback;
restores EEPROM after power-up, 75 µs maximum |
3 MHz typical for 10 kΩ and 0.43 MHz for
100 kΩ; THD -80 dB and -90 dB respectively under ±2.5 V, 1 VRMS,
1 kHz conditions |
NVM calibration, tolerance readback, and
gain setting; terminals remain supply-limited |
|
MCP41HV31, Microchip, In Production |
1 channel, 128 taps, linear |
5 kΩ, 10 kΩ, 50 kΩ, or 100 kΩ, each
nominally ±20% |
Analog span 10 V to 36 V; up to +36 V or
±18 V under stated rail relationships; separate VL/DGND
logic domain |
25 mA for 5 kΩ, 12.5 mA for 10 kΩ, and 6.5
mA for 50 kΩ or 100 kΩ; safe code depends on resistance and voltage |
SPI, volatile, midscale POR code 0x3F for
the 7-bit device |
500 kHz typical -3 dB bandwidth for the 5
kΩ option; other AC and linearity data are condition-specific |
Higher-voltage terminals; code, option,
package, and thermal limits constrain wiper current |
|
DS1881, Analog Devices, Production |
2 channels, audio taper; positions 0-62
plus mute at 63, or positions 0-32 plus mute at 33 |
45 kΩ, ±20% at 25°C |
H/W/L: 0 V to 5.5 V; VCC:
4.5 V to 5.5 V; VDD: 2.7 V to 5.5 V |
±1 mA wiper current |
I²C, volatile or EEPROM operation; 1 ms
power-up time and stored-setting recall |
5 MHz at a 10 pF load; -110 dB crosstalk
at 1 kHz and -6 dB tap; 0.005% THD+N at 1 kHz, -6 dB, C_L=10{ pF} |
Stereo attenuation and zero-cross updates;
fixed audio law, 5 V analog domain, and finite NVM endurance |
For MCP41HV31 rheostat use, a first current check is:
RBW,min ≥ |VBW| / IW,max
and the selected code must provide at least that resistance. Microchip’s detailed table shows that the allowable minimum code depends on the RAB option, resistance tolerance, voltage across W-B or W-A, resolution, wiper resistance, package, and temperature [3].
SPI avoids addressing; I²C reduces signal count but needs pull-ups, address planning, and bus recovery. Match logic thresholds, clock mode, timing, and sequencing. TPL0501 accepts DIN, SCLK, and CS but has no serial-data output, so firmware cannot read back its wiper register [1].
Microchip’s 64-tap MCP4011/2/3/4 family uses a U/D edge protocol, not a direct push-button interface. The controller handles debouncing, timing, and state tracking [6].
Multiple channels reduce package count but do not guarantee matching. Check interchannel matching, crosstalk, independent control, and simultaneous-update support, especially for stereo attenuation or differential gain.
Startup is device-specific. Even an NVM part can present an intermediate impedance during supply rise or recall. Separate volatile updates from stored-memory writes and define behavior for brownout, interrupted communication, and incomplete programming.

Figure 4. Device-Specific Startup and Recall Sequences.
TPL0501 requires VDD before its digital inputs and H, L, or W. It then starts at code 0x80. Because it has DIN but no serial-data output, a write cannot be confirmed by register readback; firmware must retain a shadow code and use analog diagnostics when confirmation is required [1].
AD5141’s ideal order is VSS, VDD, VLOGIC, then digital and analog inputs. Its maximum power-on EEPROM restore time is 75 µs, reset restore time is approximately 30 µs, and EEPROM programming is approximately 18 ms typical with a 50 ms maximum. The interface is blocked while programming [4].
DS1881 requires VCC before VDD, and VDD must not exceed VCC, including during startup. Its specified power-up time is 1 ms [5].
For an ideal linear divider with denominator M:
VW,ideal = VL + (D / M) × (VH - VL)
The ideal inverse calculation is:
Dideal = M × (VW,target - VL) / (VH - VL)
Round Dideal according to the application, then clamp it to the device’s permitted code range. For the TPL0501, M = 256, 0 ≤ D ≤ 255, and
RWL(D) = RAB × D / 256
RHW(D) = RAB × (1 - D / 256)
Thus code 255 produces the nominal fraction:
255 / 256 = 0.99609375
rather than exactly 1. With H at 5 V and L at 0 V, the nominal result is 4.98046875 V, rounded to 4.9805 V [1].

Figure 5. Ideal TPL0501 Wiper Voltage Versus Code.
The common simplified loaded-divider equations assume zero wiper-switch resistance. For a load RL from W to L:
RD,eq = RD ∥ RL
VW = VL + (VH - VL) × RD,eq / (RU + RD,eq)
where RU = RHW and RD = RWL are the upper and lower string segments.
For the complete DC model, define RW as the wiper-switch resistance. The branch from the selected tap to L through the wiper and load is RW + RL. Then:
RP = RD ∥ (RW + RL)
VT = VL + (VH - VL) × RP / (RU + RP)
VW = VL + (VT - VL) × RL / (RW + RL)
Here, VT is the selected-tap voltage before the wiper switch. The unloaded Thevenin resistance at the tap is approximately RU ∥ RD. Leakage, terminal resistance, and buffer input current can be added as parallel or series terms when their effects are comparable with the error budget.
Rounding a target voltage to the nearest code contributes up to ±0.5 LSB. Add INL, endpoint error, loading, drift, reference error, wiper drop, buffer offset, and measurement uncertainty. Sum signed worst-case limits for a guaranteed boundary; use root-sum-square only for defensibly independent statistical terms.
End-to-end tolerance often cancels in an unloaded ratiometric divider, but not in rheostat use, with external resistors, or under load. Typical values are not guaranteed acceptance limits.
This calculated, not measured, case uses TPL0501-100 at 5 V with H at 5 V, L at GND, D = 128, and a 1 MΩ load driven by an OPA320 follower. RAB is 100 kΩ nominal and 80 kΩ to 120 kΩ guaranteed. Initial calculations omit nonidealities and measurement uncertainty [1].
OPA320 is unity-gain stable from 1.8 V to 5.5 V. Maximum input bias is 0.9 pA at 25°C and up to ±600 pA from -40°C to +125°C. Verify output swing, offset, capacitive-load stability, and layout [7].
The ideal step is:
Vstep = 5 V / 256 = 19.53 mV/code
Code 128 gives 2.500 V. At midscale, the nominal upper and lower segments are 50 kΩ. With a direct 1 MΩ load and zero wiper resistance:
RD,eq = 50 kΩ ∥ 1 MΩ = 47.619 kΩ
VW = 5 V × 47.619 / (50 + 47.619) = 2.439 V
The nominal loading error is -61 mV, or approximately -2.44% relative to 2.500 V. Moving the 1 MΩ load to the buffer output returns the nominal divider node to approximately 2.500 V before remaining digipot, op-amp, supply, and measurement errors.
Using minimum RAB gives the highest string current and power:
IAB,max = 5 V / 80 kΩ = 62.5 µA
PAB,max = (5 V)2 / 80 kΩ = 0.3125 mW
These results do not replace the separate wiper-current, fault-current, package-power, and temperature checks.

Figure 6. Buffered TPL0501 Implementation and Test Points.
Connect TPL0501 H and VDD to 5 V, L and GND to ground, W to the OPA320 noninverting input, and the op-amp output to its inverting input. Place the 1 MΩ load at the buffer output and connect CS, SCLK, and DIN with compatible logic levels.
Place a low-ESR 0.1 µF to 10 µF capacitor at TPL0501 VDD and 0.1 µF at the OPA320 supply. Keep returns short and expose 5 V, H, W, buffer-output, and ground test points [1], [7].
After POR, write the code, retain a firmware shadow value, and verify the analog output when diagnostics are required, because TPL0501 has no register-readback output. Reject out-of-range commands and capture the supply and output during cold start, shutdown, brownout, host reset, and interrupted SPI activity.
At midscale, RAB tolerance cancels from the ideal unloaded ratio but changes direct-loading error. With 1 MΩ connected directly, the 80 kΩ to 120 kΩ range produces about 2.451 V to 2.427 V at code 128; the nominal result is 2.439 V.
For the buffered path at 25°C, combining TPL0501 ±1 LSB INL with OPA320’s 150 µV maximum offset gives about 2.4803 V to 2.5197 V. A production limit must also include actual 5 V reference accuracy, temperature, output swing, PCB leakage, loading, and measurement uncertainty.
At code 255, the nominal value is 4.9805 V, TPL0501 full-scale error is -2 to 0 LSB, and buffer high-side swing may lower the output further. State separate acceptance limits for code 0, midscale, full scale, loaded output, and dynamic tests.
The following values are manufacturer-published specifications, not author measurements.
Open-loop resistance trimming must include end-to-end tolerance, wiper resistance, drift, external resistors, and usable codes. Ratiometric trimming rejects much of the RAB tolerance, but loading and ratio nonlinearity remain.
AD5141 provides 10 kΩ and 100 kΩ options, 256 positions, EEPROM, and ±8% maximum RAB tolerance. Stored tolerance data can refine the resistance estimate used by software, but it does not change that guaranteed end-to-end tolerance. Linear gain mode programs the two string segments independently [4].
In an amplifier or regulator feedback loop, resistance, capacitance, noise gain, and fault response change with code. Simulate code extremes and open or short faults, then measure stability and transients. Fixed resistors can prevent firmware from commanding unsafe gain.
DS1881 Configuration 1 uses positions 0 through 62 for 0 dB to -62 dB in 1 dB steps and position 63 for mute. Configuration 2 uses positions 0 through 32 for its segmented attenuation law and position 33 for mute [5].
The datasheet specifies ±0.5 dB interchannel matching. Above position 50, this value is a typical maximum and is guaranteed by characterization rather than production test. The same characterization table states the supply and temperature conditions [5].

Figure 7. DS1881 Zero-Cross Audio Update.
Zero-cross detection can reduce switching clicks but does not guarantee zero noise or distortion. With detection enabled, DS1881 updates when the H and L terminals of the same channel reach equal potential. If no crossing occurs, it updates at the end of the specified 50 ms window [5].
MCP41HV31 uses separate analog and digital domains. Its 25 mA, 12.5 mA, and 6.5 mA terminal-current limits depend on resistance option; permitted code also depends on segment voltage, minimum resistance, wiper resistance, package, and temperature [3].
These example devices are not interchangeable without checking package, pinout, supply domains, terminal range, interface, firmware, lifecycle status, and the exact orderable part number.
This is a proposed method, not author-run data. Published results should identify hardware, conditions, uncertainty, and acceptance criteria.
Record the complete order code, package, lot or date code, sample count, board revision, capacitor values, firmware version, and instruments. Include calibration status, range, resolution, accuracy, ambient temperature, supply, signal amplitude and offset, frequency, load, code, dwell time, repetitions, expected and measured values, uncertainty, and pass/fail criterion.

Power the device in its specified sequence and sweep all permitted codes with W unloaded or buffered. Record endpoints, midscale, monotonicity, missing or repeated steps, and settling dwell.
Repeat with known loads and compare both loading models. To measure programmed resistance, apply a known safe voltage or current while correctly powered and calculate
R = V / I
Do not use an ohmmeter on an unpowered TPL0501: impedance is unknown and its volatile code is lost. Reserve unpowered testing for the isolated mechanical potentiometer or a device whose datasheet permits it [1].
Keep H, W, and L inside their rails while measuring gain versus frequency with documented load and probe capacitance. For settling, capture the command, supply, W, and buffered output with adequate bandwidth.
THD or THD+N tests need a low-distortion source, suitable analyzer bandwidth, and documented noise floor. Treat typical datasheet bandwidth and distortion as comparison data unless matching guaranteed test limits are provided.
Capture supplies, digital inputs, and analog output during cold start, shutdown, brownout, host reset, and interrupted communication. Verify POR or recall only after the specified interval.
For NVM, record programming time, busy behavior, recall, endurance use, and interrupted-write response. Keep routine corrections volatile and store only deliberate presets.
Report expected and measured values in the same units and conditions. Label each limit as guaranteed, characterized, typical, calculated, or proposed. Include repeatability and uncertainty from instruments, supply, probes, loads, temperature, and fixtures.
A typical value neither proves compliance nor defines failure. Use guaranteed limits or documented system requirements with measurement guard bands.
|
Symptom |
Likely
Cause |
Test
and Corrective Action |
|
Output misses one or both rails |
Code denominator, endpoint error, terminal
resistance, or buffer swing |
Compare code 0 and full scale with the
product equation, endpoint specifications, and output-swing limit |
|
Midscale voltage is low |
Load from W to L |
Measure unloaded and loaded values,
calculate RTH, and add a buffer if required |
|
Output changes with connected equipment |
Scope, ADC, protection, or resistor
network loads W |
Include every parallel impedance, probe
capacitance, and leakage path in the model |
|
Distortion or clipping appears |
Terminal overvoltage, excess wiper
current, RC roll-off, or switch nonlinearity |
Probe H, W, and L at signal and code
extremes; reduce amplitude or change device |
|
Audible click occurs during updates |
Abrupt code change or missing zero-cross
control |
Check command timing and verify
device-specific zero-cross behavior |
|
Setting is lost after reset |
Volatile POR code or incomplete EEPROM
write |
Verify POR, store completion, recall
timing, endurance use, and firmware recovery |
|
Bus writes fail |
Logic threshold, address, SPI mode,
timing, or sequencing error |
Measure digital pins and supplies and
compare them with the interface timing table |
|
Device heats or fails |
Terminal overvoltage, excess current,
string power, or signal applied to an unpowered device |
Remove power, inspect rail and signal
sequencing, then add current limiting or isolation |
A digital potentiometer should be selected as an analog component before its interface or memory is considered. Terminal range, resistance law, current, power, loading, code transfer, error budget, startup state, and dynamic behavior determine whether the device fits. Product-specific calculations and a documented bench procedure then show whether the circuit needs a buffer, a DAC, fixed limiting resistors, or a different control architecture.
Technical References:
[1] Texas Instruments, TPL0501 256-Taps, Single-Channel, Digital Potentiometer With SPI Interface, SLIS136C, Revision C, September 2019. Direct PDF
[2] Texas Instruments, Replacing Digital Potentiometers with Precision DACs, SLAA906, July 2019. Direct PDF
[3] Microchip Technology, MCP41HVX1 7/8-Bit Single, +36 V (±18 V) Digital POT with SPI Serial Interface and Volatile Memory, DS20005207C, Revision C, 2022. Direct PDF
[4] Analog Devices, AD5121/AD5141 Single-Channel, 128-/256-Position, I²C/SPI, Nonvolatile Digital Potentiometer, Revision F. Direct PDF
[5] Analog Devices, DS1881 Dual NV Audio Taper Digital Potentiometer, Revision 1, February 2006. Direct PDF
[6] Microchip Technology, MCP4011/2/3/4 Low-Cost 64-Step Volatile Digital POT, DS20001978D, Revision D, 2017. Direct PDF
[7] Texas Instruments, OPAx320x Precision, 20-MHz, 0.9-pA, Low-Noise, RRIO, CMOS Operational Amplifier With Shutdown, SBOS513F, Revision F, December 2016. Direct PDF
[8] Texas Instruments, TPL0501-100 Product Page, lifecycle status and ordering data, accessed August 28, 2026. Product page
[9] Analog Devices, AD5141 Product Page, lifecycle status, accessed August 28, 2026. Product page
[10] Microchip Technology, MCP41HV31 Product Page, lifecycle status, accessed August 28, 2026. Product page
[11] Analog Devices, DS1881 Product Page, lifecycle status, accessed August 28, 2026. Product page
No. Readback confirms digital state on devices that provide it, not switch continuity, terminal voltage, loading, reference accuracy, or buffer behavior. TPL0501 provides no register-readback output, so firmware must retain a shadow code and use analog monitoring when confirmation is required.
Firmware can map user commands to nonuniform codes, but the available steps become uneven and may cluster at one end of the range. Load impedance, channel matching, mute behavior, and update transients still differ from a purpose-built audio attenuator.
Series or feedback resistors can limit gain, output range, and fault current even if firmware commands an extreme code. The tradeoff is a smaller programmable range and fewer effective adjustment steps, so the code map and error budget must be recalculated.
Keep routine corrections in the volatile register. Commit a value to EEPROM only after a deliberate save event or defined stable interval, and apply hysteresis or rate limiting so measurement noise does not trigger repeated stores.
Protection must keep voltage and current inside device limits without excessive leakage, capacitance, or resistance. Model those parasitics at the highest frequency and temperature, then repeat endpoint, loading, and distortion checks.
August 28th, 2024
July 29th, 2024
October 6th, 2024
July 4th, 2024
September 20th, 2025
September 15th, 2025
July 15th, 2024
April 22th, 2024
July 10th, 2024
November 15th, 2024









