What Vref should I set on my stepper driver?
Vref is the sense resistor times a constant times the current. An A4988 with 0.068 Ω resistors needs Vref = 8 × 0.068 × I, so 544 mV for a 1 A limit. A DRV8825 with 0.100 Ω needs 5 × 0.100 × I, 500 mV for 1 A. A TMC2209 with 0.110 Ω sets an RMS current, and 800 mA RMS needs 1.131 V.
The step-by-step guide with the multimeter, and why a TMC2209 number is RMS while an A4988 number is a peak, is in how to set Vref on A4988 and TMC2209 drivers.
Key results from the calculator
- A4988, R068, 1 A limit: Vref 544 mV. On an older R050 board, 400 mV.
- DRV8825, R100, 1 A limit: Vref 500 mV, which is simply half the current.
- TMC2209, R110: Vref ≈ 1.41 × the RMS current, so 800 mA RMS is 1.131 V and the top of the 2.5 V range is 1.77 A RMS.
- TMC2208, R110: 800 mA RMS needs 1.218 V; 2.5 V gives 1.64 A RMS.
Six boards
Each example loads the driver, the sense resistor and the current.
An A4988 carrier set to 1 A
A4988 · R068Pololu has fitted 0.068 Ω sense resistors to its A4988 carriers since 2017. Vref = 8 × 0.068 × 1 = 544 mV. In full step each coil then carries 707 mA.
An older A4988 with R050 resistors
A4988 · R050Earlier Pololu boards had green 0.050 Ω resistors. The same 1 A needs only 400 mV, so a Vref copied from a newer board would set 1.36 A.
A DRV8825 carrier set to 1 A
DRV8825 · R100With 0.100 Ω resistors, Vref = 5 × 0.1 × I = I ÷ 2, so 500 mV for 1 A. TI quotes full accuracy for Vref from 1 to 3.5 V; below 1 V the chip works but the current is less exact.
A TMC2209 at 0.8 A RMS
TMC2209 · R110Watterott suggests 0.5 to 0.8 A RMS for 3D-printer NEMA 17 motors, which is Vref 707 mV to 1.131 V on a 0.110 Ω SilentStepStick. The peak of each coil's sine wave is 1.13 A.
A TMC2209 read as a peak current
TMC2209 · R110With R110 the volts on the pot equal the peak amps: BIGTREETECH ships its TMC2209 at about 1.2 V, a 1.20 A peak and 849 mA RMS.
A TMC2208 at 0.8 A RMS
TMC2208 · R110Watterott gives the TMC2208 SilentStepStick 1.64 A RMS at 2.5 V against 1.77 A for the TMC2209, so the same current needs a slightly higher Vref: 1.218 V for 800 mA.
Vref for common boards
| Current | A4988 R068 | A4988 R050 | DRV8825 R100 | TMC2209 R110 (RMS) | TMC2208 R110 (RMS) |
|---|---|---|---|---|---|
| 500 mA | 272 mV | 200 mV | 250 mV | 707 mV | 761 mV |
| 800 mA | 435 mV | 320 mV | 400 mV | 1.131 V | 1.218 V |
| 1.00 A | 544 mV | 400 mV | 500 mV | 1.414 V | 1.523 V |
| 1.20 A | 653 mV | 480 mV | 600 mV | 1.697 V | 1.828 V |
| 1.50 A | 816 mV | 600 mV | 750 mV | 2.121 V | 2.284 V |
A4988 and DRV8825 columns treat the current as the limit (peak); TMC columns treat it as RMS. Check the marking on your own sense resistors before using a column.
How the calculator works
A4988: ITripMAX = Vref ÷ (8 × Rs), from the Allegro datasheet. Vref range 0 to 4 V, trip accuracy ±5% at 70.71% and 100%.
DRV8825: ICHOP = Vref ÷ (5 × Rs), from the TI datasheet. Recommended Vref 1 to 3.5 V, ±5% at 71% to 100%.
TMC2209: IRMS = 0.325 V ÷ (Rs + 0.02 Ω) × 1/√2 × Vref ÷ 2.5 V, as BIGTREETECH and Watterott give it. The peak is √2 times the RMS.
TMC2208: the same form with 0.03 Ω in place of 0.02 Ω, which reproduces Watterott’s 1.64 A RMS at 2.5 V.
Full step: both coils sit at 70.71% of the peak, which is why Pololu notes that a coil-current reading in full step is about 0.7 times the limit.
What the model leaves out
- Logic voltage on A4988 boards: on Pololu carriers Vref is divided down from VDD, so changing between 3.3 V and 5 V logic changes it. Measure again after a change.
- Motor speed: at high step rates the coil voltage cannot drive the full current in, and the real current falls below the limit.
- Heat: a driver that can be set to 2 A will not carry it on a bare board. Pololu rates its A4988 carrier at about 1 A per phase without a heat sink or air flow.
- UART setups: a TMC2208 or TMC2209 can also be configured over UART by the printer firmware, so check the firmware current setting as well as the pot.
Common misconceptions
"Vref is the current." It is a voltage. Only on a TMC2209 with 0.110 Ω does it happen to equal the peak current in amps.
"Same Vref, same current on any board." The sense resistor sets the scale. R050 and R068 A4988 boards differ by 36%.
"Set it to the motor rating." Watterott suggests starting at half the rated current and raising it in 0.1 A steps only if steps are lost.
Frequently asked questions
What should Vref be for an A4988?
Vref = 8 × Rs × I. With 0.068 Ω resistors, 544 mV for a 1 A limit; with older 0.050 Ω resistors, 400 mV.
What should Vref be for a DRV8825?
Vref = 5 × Rs × I. On a 0.100 Ω board that is half the current: 500 mV for 1 A.
What should Vref be for a TMC2209?
With 0.110 Ω sense resistors Vref ≈ 1.41 × the RMS current, so 1.131 V for 0.8 A RMS. The highest it can set at 2.5 V is 1.77 A RMS.
Is TMC2209 Vref RMS or peak?
The Trinamic formula gives RMS. On a 0.110 Ω board the Vref in volts equals the peak current in amps, and the RMS is that divided by √2.
Why is my full-step coil current lower than the limit?
In full step both coils are on at 70.71% of the limit, so a meter in series with one coil reads about 0.7 times the setting.
Keep learning
How to Set Vref on A4988 and TMC2209 Stepper Drivers
Vref = 8 × Rs × I on an A4988, 5 × Rs × I on a DRV8825, and about 1.41 × the RMS current on a TMC2209 with 0.110 Ω resistors. How to read the sense resistor, why TMC numbers are RMS, and how to measure the pot.
How Does an H-Bridge Work? Decay, Dead Time, Losses
Four switches reverse a motor, but the details decide whether it works: shoot-through and dead time, brake vs coast, why an L298 loses 2.5 V and PWM ripple.
PCB Trace Width for Current: IPC-2221 vs IPC-2152
IPC-2221 says internal traces need 2.6x the width. IPC-2152 test data says they run cooler. How to size a trace for 2 A, its voltage drop, and vias.