How to set up a DCC programming track
Build a short isolated piece of track for setting up decoders, so programming commands reach only the loco you want and you can read CVs back.
- Time
- 1 hour
- Difficulty
- Easy
- Cost
- Low cost
- Steps
- 6
- Checked
What you’ll need
- A length of track (a straight siding or a spare piece on a board)
- Insulated rail joiners, or a fine saw to cut gaps Search Amazon for insulated rail joiners
- Twin wire for the feed Search Amazon for twin core wire model railway
- Optional: double-pole switch if the track is part of the layout Search Amazon for DPDT toggle switch
- Wire strippers Search Amazon for wire strippers
As an Amazon Associate we earn from qualifying purchases. The Amazon links go to search results, so you can compare what’s available.
Before you start
- Never connect the programming output to the main track bus – it can upset both outputs and every loco would be reprogrammed.
Step by step
-
Step 1: Understand why you need one
Programming on the programming track (service mode) is a broadcast: every decoder on that track obeys it. So the programming track must be electrically separate from the main layout and hold one loco at a time (Digitrax DCS240 manual).
Next: step 2 -
Step 2: Find your system's programming output
Check your manual. Some command stations have dedicated programming terminals (Digitrax DCS240: Program A/PA and Program B/PB). DCC-EX uses motor-driver output B as PROG and A as MAIN (reversed on the EX-MotorShield8874). Some systems switch the main output into programming mode instead – then you program with nothing else on the track.
Next: step 3 -
Step 3: Isolate the track
Use a standalone length of track, or gap both rails at each end of a siding with insulated joiners or saw cuts.
Next: step 4 -
Step 4: Wire it up
Run a pair of wires from the programming terminals to the two rails. If the programming track joins the layout, DCC-EX advises keeping it in phase: connect the PROG positive to the same rail as the MAIN positive.
Next: step 5 -
Step 5: Add a switch if it doubles as a siding
If you want to drive locos onto it from the layout, a double-pole changeover switch can feed the siding from either the main output or the programming output. Make sure the loco is fully on the siding before switching to programming.
Next: step 6 -
Step 6: Test with a known-good loco
Put one decoder-fitted loco on the track and read CV1 (short address) and CV8 (manufacturer ID). If the readback works, you are ready. Remember a loco will not run on the DCC-EX programming track – that's normal.
Tips
- A clean track and clean wheels matter more here than anywhere: readback depends on the decoder pulsing the motor.
- Label the programming feed wires so they never get joined to the main bus.
Questions people ask
Why won't my sound loco read back?
Some sound decoders draw more current at power-up than a programming track allows. Check your decoder and command station manuals; many offer programming on the main as an alternative.
Can I program on the main instead?
Yes, for most CVs, if your system supports POM. ESU notes long addresses can't be written by POM on its LokPilot decoders, so use the programming track for that.
Sources
Checked 18 October 2026. We wrote this guide in our own words, using:
- Digitrax DCS240 command station manual (digitrax.com)
- DCC-EX: initial assembly (DIY) (dcc-ex.com)
- DCC-EX: test your setup (dcc-ex.com)
- ESU LokPilot 5 instruction manual, Edition 7 (distributor copy) (intermountain-railway.com)
Was this guide helpful?
Report a problem with this guide
Printed from dcctrainautomation.uk/guides/set-up-a-programming-track/ · Checked 18 October 2026 · General information only. Follow the maker’s instructions for your own equipment, and keep mains wiring inside properly made, enclosed power supplies.