DCC decoder CV reference

The configuration variables you actually use, what each one does, and the sensible starting values — in one table for quick lookup.

Every DCC decoder implements the NMRA-standard CVs below. Manufacturers add their own on top, so always check the sheet that came with the decoder before writing anything above CV100.

The essentials

CVNameRangeWhat it does
1Primary address1–127The short address. Ignored if CV29 bit 5 is set.
2Vstart0–255Motor power at the lowest throttle step. Raise until it creeps reliably.
3Acceleration0–255How gradually it gets up to speed. Higher is slower.
4Deceleration0–255How gradually it stops. Higher is slower.
5Vhigh0–255Top speed. Lower it to tame a fast loco or match a pair.
6Vmid0–255Mid-point of the three-point speed curve.
7Versionread-onlyDecoder firmware version.
8Manufacturerread-onlyManufacturer ID. Writing 8 here resets most decoders to factory defaults.
17Long address (high)192–231High byte of the long address.
18Long address (low)0–255Low byte of the long address.
19Consist address0–127Address when running in a consist. 0 disables.
29Configuration0–255Bit field — see below.

CV29 bits

CV29 is eight settings in one byte. Add the values of the bits you want.

BitValueOffOn
01Normal directionReversed direction
1214 speed steps28/128 speed steps
24DCC onlyAnalogue DC conversion allowed
38RailCom offRailCom on
416Use CV2/5/6 curveUse speed table CV67–94
532Short address (CV1)Long address (CV17/18)

Common combinations:

ValueMeaning
2Short address, 28/128 steps. The usual default.
3As above, reversed direction.
6Short address, 28/128 steps, DC running allowed.
34Long address, 28/128 steps.
35Long address, 28/128 steps, reversed.
50Long address, 28/128 steps, custom speed table.

Tick the boxes instead of adding it up: CV29 calculator.

Working out a long address

CV17 = (address / 256) + 192      # integer division, discard remainder
CV18 = address % 256              # remainder

Worked examples:

AddressCV17CV18
128192128
1000195232
2451201147
4468209116
999923115

Remember to set CV29 bit 5 as well, or the decoder will carry on answering to CV1.

Or skip the arithmetic: the long address calculator converts both ways and checks the ranges for you.

Speed tables and trim

CVNameWhat it does
65Kick startA brief power pulse to overcome stiction at low speed.
66Forward trimScales forward speed. 128 is neutral.
67–94Speed table28 individual step values, used when CV29 bit 4 is set.
95Reverse trimScales reverse speed. 128 is neutral.

CV66 and CV95 are the neat way to make a loco run at the same speed in both directions without rebuilding the whole speed table.

Sound decoders

Sound-specific CVs are almost entirely manufacturer-defined, but two are near-universal:

CVTypical use
63Master sound volume
64Brake sound / squeal volume

Check the manufacturer’s sheet. Values above CV100 vary enormously between makers, and writing a guessed value into a sound decoder is a good way to spend an evening resetting it.

Recovery

SituationDo this
Lost the addressRead CV1, CV17, CV18 and CV29 on the programming track.
Decoder unresponsiveWrite 8 to CV8 to factory reset. Address returns to 3.
Writes work, reads failNot the decoder — see EX-MotorShield8874 vs the L298N.
Loco runs backwardsToggle CV29 bit 0 (add or subtract 1).
Jerky, lights flickerSpeed step mismatch — see 128 vs 28 speed steps.