NMRA Programming Track

There are two ways of programming decoders as provided by the NMRA.  Both type of programming allow you to WRITE to a given decoder CV to set it values as required.  But that is where commonality ends.  To understand why there are two types, one needs to understand the differences between them.

PROGRAMMING ON THE MAIN, AKA OPERATIONS MODE (NMRA S-9.2.1 Extended Packet, CV access Instruction)

DISADVANTAGES: (Not in any specific order)
1) You cannot read any CV's
2) You must know the decoder address before you program anything.
3) There is no protection against a wiring error if one installed a decoder themselves.  A short circuit will result in some form a damage to the decoder.

ADVANTAGES: (Not in any specific order)
1) Decoder Inrush Current is not an issue.
2) You do not need to move the engine off the main line and place it on the programming track.  Certain types of decoder programming, such as motor control CV's, are best done where you can quickly test the results.  The cycle of test, program and retest can be very fast.
3) No significant cost increase to the DCC system to implement.


DISADVANTAGES: (Not in any specific order)
1) You must build a dedicated programming track.
2) you must always move the given engine to the programming track to program it.
3) Its a feature that generally increases the cost of the DCC system.
4) You cannot test motor operation or exercise functions while on the programming track.  You must go back to the main line.

ADVANTAGES: (Not in any specific order)
1) You do not need to know the decoders address to program it.
2) You can read any CV valued for verification and/or record keeping.
3) Before programming, you can place an engine with a questionable decoder wiring on the programming track without worry of damage.  All Power is off when not programming.  No track power.
4) You can program the decoder in an electrically safe environment.  NO risk of damage to decoder when programming track power is on.


One of the Key goals of the NMRA standard S-9.2.3 service mode Programming track was to not burn anything up even if there is a short circuit involving the decoder.   The safety feature allowed you to verify:

1) Track to Decoder power connections are not shorted.  You will get a short circuit warning if short is detected.  Power is removed.
2) The motor connections are connected.  No motor connection = no CV read response. 
The only thing you cannot verify is the functions (lights) are connected properly.  A short on a function output will NOT BE CAUGHT. 


Most, but not all, DCC systems have a set of dedicated terminals to connect to the programming track. 

If you see a set of programming track terminals on the command station, you know:

1) the system has a Service Mode programming track capability. 
2) you can place a engine of questionable decoder wiring on the programming track at any time without risk of damaging the decoder.  Power is off.

Otherwise you must investigate the system further.  For example, some DCC systems use the same 2 wire terminals used to power the main line to also power the Service Mode programming track.  As sold, they do not meet the full NMRA Service mode Programming track requirement because they do not meet the dead track requirement when not operating in Programming Track mode.  However there is an accessory devices available from NCE that will restore that missing requirement.  (NCE AutoSwitch)

Some DCC system allow you to run the layout and use the programming track at the same time.  Others will shutdown the layout and only focus on the programming track until the task is completed.

NMRA TRACK VOLTAGE RATING (Applies to Programming track)

With respect to the decoder sitting on a piece of track

1) The minimum voltage allowed on the track is 7V.
2) The maximum voltage allowed on the track is 22V.

However when you are running the train, the minimum voltage on the track is 12V.

Conclusion:  That programing track can have any voltage between 7V and 22V because you are not running a train.  You are only programming a decoder.  In practice the voltage is typically 12V anyway but there is not a requirement.


The maximum programming current is 250mA which is the same as 0.25Amps under any and all conditions.


The requirement is a ENERGY LIMITED programming track.   

Power = Voltage * Current.
Energy (Heat) = Power * Time.

The Voltage is typically 12V
The Current is 0.25 Amps maximum
The time duration is 100mS (0.1seconds)

If we plug in the values

Power = 12V * 0.25A = 3Watts.
Energy = 3W * 0.1S = 0.3 Watt-seconds.

Conclusion:  The amount of energy available on the programming track is 0.3watts-seconds which is a very low power rating.  This is what makes the programming track a safe place to test the wiring of the decoder.  There is not enough "heat" energy to do any thermal damage.


The NMRA S-9.2.3 Service Mode standard says the following:

"Service Mode operations should be performed in an environment with limited energy to prevent damage to decoders during programming. For the purposes of this STANDARD, limited energy is defined as 250 mA, sustained for more than 100 ms. A programmer may further limit the energy via a current limiting resistor, if it is clearly documented that not all compatible DCC devices may be programmed by this programmer."

S-9.2.3 is silent on all voltages because the voltage specification is the same as the main line track voltage specification.  This is covered by NMRA S-9.1 Digital Command Control (DCC) standard, Section C, which says:

"The RMS value of NMRA digital signal, measured at the track, shall not exceed by more than 2 volts (Note 8) the voltage specified in standard S 9 for the applicable scale.  In no case should the peak amplitude of the command control signal exceed +/- 22 volts. The minimum peak value of the NMRA digital signal needed to provide power to the decoder shall be +/-7 volts measured at the track.

Note 8: The additional voltage is to compensate for voltage drop in the Digital Decoder, to ensure that the maximum voltage as specified in the NMRA Electrical Standard (S-9) is available at the motor brushes.

NMRA S-9.1 is silent on the "typical RMS track voltage" for a given scale because that is covered by NMRA S-9 ELECTRICAL DC standard.   (NMRA S-9.1 DCC standard, Section C ,Booster Voltage graphs do offer a non numerical "typical track voltage" for the most common scales.  But that does not apply to S-9.2.3 Service Mode because DCC boosters are not used on the programming track.) 

NMRA S-9 focuses on the DC voltage as seen by the DC motor itself.  It knows nothing of DCC. 
Section 1 says:

A. Full throttle voltage available at railhead shall not be less than 12 volts direct current at maximum anticipated load. (Note 1)

NOTE 1:  When using a power source delivering a wave with greater harmonic content than full wave rectified sine wave, exercise care not to operate in such a manner to exceed the rated current or otherwise overheat the motor.

Notice S-9 does NOT give a "RMS voltage" for any scale.  Only a single MINIMUM RMS voltage for all scales which is 12V.  That is pragmatically interpreted to mean the 12VDC standard we all know and love.   But since it is a minimum, one would like to know what is the maximum RMS voltage is for a given scale.  For that, we must refer to Note 1.   Note 1 states that what ever voltage you do apply to the motor that is above 12V, it must never overheat the motor.  So their is an implied upper limit on the track voltage the depends on the capabilities of the motors used in that scale.  In other words the track voltage can be higher if the motor in that given scale can support it.  Simplistically larger scales have larger motors which can typically take more voltage.  Sorry....No specific values given for a scale, but there is a upper limit defined by motor failure.