Multifunction Decoder Troubleshooting

=== Conditions Which Lead to Decoder Failures ===
# ESD can damage a decoder prior to, or during installation
# Soldering using Acid Flux
# A Soldering iron which is not ESD Safe
# Overvoltage on input (from track)
# Failure to isolate the motor from the frame.
# Current draw exceeds decoder ratings (wiring short or another overload condition)
# Overheating: Do not install a decoder on top of the motor. If possible, a location above a truck where there is airflow is preferred. 
#Incorrect wiring. Any power source other than the decoder's outputs is a recipe for failure.
Verify the motor brushes are not connected to the frame before installation. This can be difficult as many older locomotives simplified their wiring by using the frame for half the circuit. Be aware that some manufactures may have soldered one brush's connection to the motor frame, common on brass locomotives.
Always try to install a decoder where there is airflow. If possible, mount the decoder to a metal surface (without removing the heat shrink). If needed a piece of metal can be used, by placing the (heat shrink wrapped) decoder on it and securing with Kapton tape.
 Some manufacturers will not warranty a decoder when any flux was applied during installation. This is directly related to the use of inappropriate flux products. 
 Never test a new install on the mainline. Use a program track. If your DCC system lacks a program track, use a 100Ω resistor in series with the track outputs. 
==== Analog Power Packs ====
 Analog power packs with pulse power capabilities produce a very dirty DC output. The presence of voltage spikes produced by the pulse circuit can destroy a multifunction decoder. Therefore, it is advisable to avoid attempting to operate a decoder equipped locomotive using an analog power pack of that type. 
Operating on an analog power pack with pulse power may void any warranties, as the manufacturer is not responsible for the decoder's failure.
=== Decoder Resets ===
==== What Causes a Decoder Reset ====
Decoders are small, task specific computers. Whenever they power up, they run through an initialization process. 
Two situations can occur that produce an unexpected result.
Upon powering up, after the microcontroller has initialized, the validity of the decoder’s alterable parameters stored in NV-RAM (Non-Volatile Random Access Memory) is verified by performing a checksum and comparing that to a previously calculated value. If the two values don’t match, the decoder’s operating system decides that the memory has been corrupted and resets those parameters to the factory defaults.
Anytime you alter a CV, the checksum is recalculated and the result is stored in the NV-RAM.
A power interruption during that phase can scramble the decoder's memory, so when the checksum is done, it results in a fail. The decoder's software then initiates a reset to factory defaults. Should the previously calculated checksum be corrupted, the same results will occur. This can be trigged by a short circuit or a distorted DCC signal on the track.
This process is done without warning or user intervention. The checksum only indicates a pass or fail. The decoder cannot determine where the problem(s) are. The only solution is to clear the memory and reset its values to the factory default. 
Many decoders require a power interruption to restore the decoder to factory settings when a reset is purposely initiated. Cycle the track power off and on again to complete the process.
==== Reducing the Possibility of a Decoder Reset ====
Good trackwork, proper bus wiring following the recommended best practices, proper power management and eliminating the cause of shorts goes a long way to prevent random decoder resets from occurring.
=== Programming ===
* Decoder Locked: If the Decoder Lock is active, any attempt at programming will fail. Unlock the decoder and try again.
* Poor contact: Dirty track and wheels can interfere with signals when programming. Since the programming outputs use low voltage and current, excessive resistance can be an issue. Placing additional weight on the vehicle, such as a bean bag, may help.
* Improper Programming Mode:
** Ops Mode should not be used when changing the Extended Address
** Service Mode has a number of programming methods availableS-9.2.3: Service Mode supports four different methods for access to Configuration Variables (CVs): Direct Configuration, Address-Only, Physical Register, and Paged Addressing. The Service Mode instruction packet sequences are defined from a Command Station/Programmer perspective. </p>. Most modern multifunction decoders prefer Direct Mode. Most command stations support most, if not all modes to maintain backward compatibility As of 2002, all command stations were required to implement Direct Mode programming. If unsure, consult the decoder's documentation.
=== My DCC Decoder Equipped Locomotive will not Work on a Direct Current (Analog) Layout ===
If that occurs, the power conversion mode has been set to NMRA Digital Only, so the decoder, while powered up and active, will not apply power to the motor or respond to any changes in throttle settings.
The solution is to change CV29 so it can operate on an analog layout.
This can only be done using a DCC system, so planning is required before moving the locomotive to an analog layout. Many modellers disable the Alternate Power Source setting in CV29 by setting it to "NMRA Digital Only." This is done to prevent runaways.
=== Decoder Will Not Respond ===
==== New DCC Equipped Locomotive ====
 Multifunction Decoders installed at the factory are not required to use a value of 3 as their default address. Read the instructions for the locomotive regarding its default address. 
For a decoder sold at retail, the default address is 3, with no leading zeros.
=== Decoder Has Sound, Will Not Move ===
* Many sound equipped decoders include various shutdown/startup routines, as well as Idle. There may also be a function (such as a brake or neutral setting) which must be released first. The instructions will include the function keys to activate the decoder.
==== Brakes, Idle or Neutral ====
For example, the locomotive has prime mover sound, but will not respond to throttle commands.
The decoder may be in IDLE or NEUTRAL. There may also be a brake function which is active. Consult the manual to see how to change that, as many decoders are different.
* QSI: Press F9 twice, (within two seconds), then press F6 to initiate startup mode.
** Some QSI decoders come out of idle when F3 or F6 is pressed twice.
Many Atlas and BLI products came equipped with QSI decoders. Some brass importers may have used them as well.
==== Consist Address ====
This issue causes many problems. Moving a consist created using NCE's Intelligent Consisting to another layout leads to this problem.
* Was the locomotive part of an Advanced Consist?
** Clear CV19. This CV holds the address used for Advanced Consisting. (Also known as Decoder Assisted Consisting.) 
*** The decoder will only respond to the consist address in CV19, not the Primary or Extended Address.
** Writing a value of 0 (zero) to CV19 will clear the consist address.
=== RailCom ===
If RailCom is enabled in the Command Station, some decoders may not respond to commands. Many decoders made prior to the introduction of RailCom may not work either.
NCE multifunction decoders are known to have issues with RailCom.
Disabling the RailCom cutout will eliminate this issue. See your manual for issues.
* Lenz command stations with Version 3.6 firmware enable RailCom by default.
=== Consist Issues ===
If the locomotive is part of a consist it may not respond to its address. 
# Place the locomotive on the programming track and read CV19. It should be Zero. Any other number indicates it is part of a consist. Reset CV19 to 0 to correct this.
# Delete the consist from your command station
=== Memory Corruption ===
The multifunction decoder has two types of memory: 
# The firmware, which is the operating system software for the decoder, and the factory default values, are usually stored in memory that is non-volatile, or permanent. It can be part of the microcontroller’s die, or a separate integrated circuit. 
# User values, such as configuration variables are stored in memory that while being non-volatile, can be altered. This alterable memory can be part of the microprocessor die, or a separate IC.
There are many types of memory. The most well-known is RAM, Random Access Memory, which loses its contents when power is removed. Another form is ROM, or Read Only Memory, which is not affected by power loss. It is programmed at the time of manufacture.
A familiar type of memory is NV-RAM, or Non-Volatile RAM. Well known examples would be Compact Flash, SD, or Memory Sticks used for cameras, which do not lose their contents when power is removed. (Note: Eventually they will lose their contents, so don’t rely on them for long term storage. They depend on little capacitors, which eventually lose their charge.)
For this reason, storing a copy of the decoder programming is a good idea. Software such as JMRI's DecoderPro or LokProgrammer can read the decoder's memory and store its contents on your computer, which you can reload anytime. If you spend a lot of time tweaking, this will save you much grief.
=== Memory Corruption Causes ===
* One of the most common is bad power. If the track voltage is not stable during the decoder's initialization, the checksum routine can return an incorrect value which does not match the stored value. 
* If the layout experiences a short during this routine, and power is interrupted, that can be enough to force a reset.
* The reset can be caused if the locomotive itself is the cause of the short. Power cycling can do interesting things to memory contents.
** Should power be interrupted while the locomotive is in operation on a section of track with low voltage or signal quality issues, it can either corrupt the memory, or interfere with the initialization of the decoder causing an error, with the result being a reset to factory defaults.
=== Runaway Locomotives ===
After a successful startup (or a restart), the decoder checks to see if there are digital or analog voltages on the track. If it sees a digital packet, it switches to a digital mode. The NMRA DCC standard defines a number of modes available, under the term “power conversion”. Most decoders only support two modes, DCC and Analog. The need to support other digital modes was reduced as DCC became more popular. 
If the mode setting in allows for dual mode (DCC and analog), the decoder will switch from DCC mode to analog. This can happen with a noisy or distorted digital signal, as the decoder cannot determine it is DCC, so it switches to analog. 
The Mode Control CV #29 uses bit #2 to indicate if an Alternate Power Source is permitted. If that bit is set to "1", the software will look at CV12, Power Conversion for the mode to use. If CV12 has a decimal value of "1", Analog operation is enabled. In this case the full track power is passed directly to the motor when the decoder switches to Analog mode.
 Setting the in CV1 to "0" when CV12 = "1" overrides the Alternate Power Source bit in CV29. A runaway immediately occurs when track power is turned on. 
Another is intermittent power or a short that is cleared quickly. If the decoder doesn’t have enough of a power interruption to force a restart, it may interpret the signals present as a non-DCC signal. All it needs is a distorted or poor-quality power signal, which is often present for a short time after the circuit protector has reconnected the track to the power source.
When this happens, the locomotive can run away. There is no control, as it sees full track voltage and since it is in analog mode, that means full throttle ahead. For this reason, many modellers will set the decoder to “NMRA Digital Only”. Thus, the decoder will only respond to a proper DCC digital packet. It will not respond to analog Direct Current voltages when placed on the track of a non-DCC layout.
=== Booster Issues ===
A defective or poorly designed booster may be the cause of a runaway. Although rare, it can happen with older boosters.
Some boosters manufactured many years ago had a design fault. When track power is turned off or the signal from the command station is lost a booster is required to shut off its track outputs. There should be no voltage going to the track under these conditions. The design of the booster prevented this; its outputs latched at whatever state they were in at that time. The result was an analog voltage on the track, which the decoder would interpret as "Switch to Analog Mode" launching the locomotive into motion at full speed.
A defective booster with voltage present on the output when the track power is off may also cause this issue. Checking the output of a booster may also narrow down the cause of a runaway.
=== Avoiding Runaway Locomotives ===
Good trackwork, proper wiring following the recommended best practices, proper power management and eliminating the cause of shorts goes a long way to prevent runaways from occurring.
A runaway is scary, and the only way to stop it is a total shutdown of track power. (See note on Booster Issues above.)
Also read the section on Compatibility Issues for technical details on multifunction decoder addressing to avoid a runaway.
=== Loss of Control ===
Ghost throttles can cause loss of control. If another throttle has the same address selected, it can cause erratic operation as the command station responds to speed changes caused by one of the throttles.
Dispatching properly is important, as locomotives can creep due to a throttle which was not set to zero prior to the dispatch. 
== Decoder Troubleshooting Videos ==
This video refers to a Hornby track connector which may be causing a problem.
=== See Also ===
* Decoder installation - How to install mobile decoders
* Installing LEDs with DCC Decoders
* Throttles
* Ghost Throttle
* Configuration variable
* Decoder Reset
* Packet Timeout
* CV29
* Programming
* Programming Modes
* Program Track
* Configuration Variable
Category:Throttle Network
Category:Decoder Features
Category:Sound
Category:DCC
Category:Decoder
Category:Troubleshooting
Category:Programming
Category: Multifunction Decoder
==External Links==
From the Australian NMRA site:
These refer to JMRI.
* Tuning Decoders with Decoder Pro
* Setting the Brake Function
* Speed Matching a Diesel Tsunami Decoder