MU consisting

DCCWiki, a community DCC encyclopedia.

Short Definition

Running more than one locomotive (double heading) on a train.

When you use more than one locomotive at a time on a train, you want them respond to a single throttle, as they do on the prototype. You do this under DCC by creating a Multiple Unit Consist.

Before creating a consist, be sure to match up your loco speeds.

The basics:

  • Basic consisting means all the decoders in the set are programmed with the same address, and their NDOT has been set to allow them to all run in the same direction.
  • Advanced consisting means that a consist address has been set in the decoder.
  • Command Station consisting means that the consist was created, and is managed by the command station. It will remain a consist until the set is broken up by the command station. The locomotives will not behave as a consist on another layout.


There are a number of terms used with consisting. There are the "official" terms the NMRA uses, and those employed by the manufacturers. Unfortunately, the two don't mix well.

NMRA DCC Terminology

See the NMRA website for the RP 9.2.1 Extended Packet Formats for more details.


  • A Consist is a group of decoders linked together, such as several Diesel-Electric locomotives in a Multiple Unit lashup.
  • Consist Address: The address to which several linked decoders will respond. For example, the consist address is 1000, and controls decoder addresses 1234, 5678, and 90.
  • Consist Control Instruction: A subset of instructions used to send commands to a consist.
  • Address Consisting; Decoder Based: All locomotives in the consist have a common address. One packet is sent out, which controls all the units in the lashup. This arrangement is portable. CV1 or CV17/18 are set to the common address.
  • Basic Consisting; Command Station Based: The command station builds a list of locomotives that are part of a consist. When a command is sent, the command station sends a packet to each unit in the lashup. This consist is not portable, when the locomotives are moved to another layout the consist ceases to exist. Once back on home rails, they are again a consist.
This method will work with a small number of locomotives. On a large layout with multiple locomotives consisted, network latency becomes an issue, and jerky operations result due to the volume of packets that must be transmitted.
  • Advanced Consisting; Decoder Based: The consist information is stored in the decoders (CV19). The command station will set CV19 using Ops Mode for all the locomotives in the lash-up. The address will be a short address. The original addresses are not altered (CV 1, 17/18). The lash-up is portable from layout to layout, since the information needed is stored onboard the locomotives.
  • Unified Consisting: The consist method is a mixture of NMRA Basic and Advanced Consisting methods. Only Digitrax and NCE support these under the term "Nested Consisting".

Comparison of NMRA Terminology with Manufacturer Terms

Other terms for Basic Consisting.

Manufacturer Term
NCE Old Style
Digitrax Universal
Lenz Double Header
Easy DCC Standard
MRC Universal
Zimo Double Header

Other terms used for Advanced Consisting:

Manufacturer Term
NCE Advanced
Digitrax Advanced
Lenz MU Consist
Easy DCC Advanced
MRC Advanced
Zimo Unknown

Consisting with Digital Command Control

There are three ways of creating a consist with DCC. Each method has its advantages and disadvantages. Not all methods are supported by all systems - check your documentation if you aren't sure what you can do with your equipment!

Basic Consisting

Basic Consisting - This is the simplest way of creating a consist. You simply program all the locomotives you want to run together with the same address. This can be done with a two or four digit address.

It has the advantage of only using one slot in the command station. The command station will see all the locomotives with the same address as a single locomotive, and they will all respond to all commands in unison. This requires reprogramming the decoder to change consists.

All locomotives in a basic consist will respond to function commands at the consist address. The command station sees the basic consist as a single locomotive.

An analog (non-decoder equipped) locomotive cannot be part of a basic consist.

Advanced Consisting

Advanced Consisting - Also known as Decoder Assisted Consisting, this uses a temporary secondary address in the locomotive to group locomotives together without changing the primary address.

The consist will use a single slot in the command station. It is limited to a two digit address.

Advanced Consisting is done by using ops mode programming to change configuration variable 19 to set the address and normal direction of movement. This also requires reprogramming the decoder to change the consist, but some systems do this transparently to the user. Some decoders will allow you to specify what functions will respond to commands addressed at the consist address.

The command station sees the consist as a single locomotive.

An analog locomotive cannot be part of an advanced consist.

Decoder Assisted Consisting

  • See Advanced Consisting above.

Command Station Consisting

Command Station Consisting - Digitrax calls this UniVersal Consisting (Yes, with a capital "V" in the middle). With this method of consisting, you make no changes to the programming of the decoder.

All the bookkeeping chores for the consist are performed by the command station. Each locomotive in the consist uses a separate slot in the command station, so the size of the consist is limited to the capacity of the command station. Analog locomotives may be a part of one consist - all analog locomotives on the track will respond to the same commands, so you can't run them in different consists.

Consists may be stacked, making up consists of consists. Locomotive functions can still be individually controlled without affecting other locomotives in the consist. The command station sees the consist as individual locomotives.

An analog locomotive can be part of a command station consist.

Universal Consisting

  • See Command Station Consisting above.

Best Use of Each Consisting Method

  • Basic Consisting is best used when command station slots or limited memory capabilities are at a premium (because of either command station limitations or large numbers of trains to be run) or locomotives are always run together (such as A-B-B-A sets for long passenger trains). Since you are programming the primary address for these locomotives, it is best done on a separate programming track rather than on the layout where you might accidentally reprogram ALL the locomotives on the layout.
  • Advanced Consisting can be used in the same circumstances as Basic Consisting, but can be done on the main layout using operations mode programming since you can select the individual locomotive you want to affect before programming it. The consist address is limited to short addresses, so this might be an undesirable restriction if you are wanting to use the train number as the address. Some DCC systems have ways of controlling the Advanced Consist using a long address.
  • Command Station Consisting is the most convienient method to use, but also uses the most system resources. If you have a command station has limited memory available. For example: An entry level Digitrax command station is limited to 10 slots and are wanting to run 4 trains with 3 locomotives each, that's a total of 12 slots using this method - it's not going to work. You'll have to use one of the other consisting methods for at least one of the trains. Also see Dispatch. NCE Example: NCE command stations do not have slots and as such does not require the user to be aware of them. There is no requirement to dispatch a locomotive. NCE's entry Level system is limited to 2 engines per consist with a maximum system limit of running 12 unique engine addresses simultaneously. Therefore the NCE entry level system can run up to a maximum of 6 trains of 2 locomotives each. The only way it could run 4 trains with 3 locomotive each would be by using Advanced Consisting.

You can mix and match consisting methods. Digitrax example: If you have 3 locomotives running together as a basic consist (1 slot), 3 running together as an advanced consist (1 slot), and four running together in a command station consist (4 slots), you can create another advanced consist bringing all 10 locomotives together, and it will use no more than 6 slots. NCE Entry Level Example: It could run the same setup as Digitrax with the only exception that a given engine cannot be used in more than one consist at the same time. So you cannot do the last step of create another advance consist using the previous locomotives. However you could run 10 more engines in an advanced consist if the 10 locomotive were not part of any consist.

An analog locomotive can be part of command station consist if it is supported by the DCC system, but it cannot be part of a basic or advanced consist which rely on the installed decoder to determine the consist.

The greatest advantage of the command station consist as implemented by Digitrax is its flexibility. it is very simple to add and delete locomotives or groups of locomotives to a consist, making it easy to assemble long trains with multiple mid-train helpers (common on N-Trak layouts) or add a helper to get a long train up a steep grade. It's important to remember though that you're still using one slot per locomotive with this method - and the most capable system from Digitrax only has 120 slots available at the most, so it's not really suitable to use command station consisting on large layouts where you are expecting more than 20 or so people to be running at a time.

The greatest advantage of the Advanced Consisting as implemented by NCE is its flexibility. It is very simple to add and delete locomotives or groups of locomotives to a consist (nesting), making it easy to assemble long trains with multiple mid-train helpers or add a helper to get a long train up a steep grade. Depending on the NCE system chosen, you can run between 16 on up to 127 unique advanced consist and there is no limit on the number of engines you can have within a given advanced consist. NCE has the ability to control a given consist using just the lead locomotive address regardless if it is a long or short address. Specifically if the locomotive has a long address, the long address is used to control the consist (an Alias). In other words, use the engine number like you would normally do if the engine was not part of a consist. Unique to NCE is the ability to dynamically redefine the front of the locomotive consist without needing to turn the engines around. All one does is select the last engine of the existing consist and it instantly now becomes the new lead engine of the same consist. Included in this change is both the train direction and function control (headlight and sounds) automatically. The advantage become obvious when you run a train down a stub branch which has no turning facilities. It goes forward down the stub branch line to the end and leaves the end by going forward in the opposite direction. This action follows the prototype. A nested consist is made up by using Command Station consisting to control multiple Advanced Consist and/or a mix of individual locomotives and advanced consist. Up to maximum of 4 pre-defined advanced consist can be combined into a temporary single consist. Hence you can temporarily add a helper consist to a train with a lead consist, climb the grade using 1 throttle and then break them apart back into their original individual consist. The helper consist then goes back down the hill for the next train. NCE also has a consist browser which allows you to manage all of the advance consist by 1) being able to see all the locomotives that make up a given advance consist and 2) edit the consist.


NCE Advanced Consisting

NCE uses a hybrid version of Advanced Consisting, which they call Intelligent Consisting. Motor commands are sent to the consist address, while function commands are addressed to the lead locomotive. Consist address is stored in CV19. The consist addresses range from 1 to 127 using a short address (2 digits in hexadecimal).

The command station creates a table that references your locomotive address to the assigned advanced consist address. This table creates an alias of the locomotive address for controlling the assigned consist address.

NCE Hybrid Consisting and other DCC Systems

For a Hybrid Consist to work any another DCC system, the consist must be created with a 2 digit decimal number, not a hexadecimal number. Addresses up to decimal 99 ($63 hex) will work. Addressing requiring a 4 digit number (100 to 127) will not work.

Troubleshooting NCE Consist Issues

If you have problems with multiple sound decoders (such as SoundTraxx's SoundCar decoder with an NCE Power Pro DCC system, do the following:

  1. Delete all NCE-style advanced consists that were created and consist your locomotives manually with Advanced Consisting: Set CV 19 (Consist Address) in each locomotive to the same value from 1 to 127 (+128 when the locomotive is facing backward). Consist Function Groups (CVs 21 and 22) should also be programmed manually in each decoder.
  2. With the consist address selected on your cab, you can use Intelligent Consisting to add the SoundCar decoders to that address.

Soundtraxx Tech Note 15 SoundCar Intelligent Consisting (NCE-style Advanced Consist)

Speed Matching

An important task before creating a consist, is to ensure that all locos within a consist run the same speed. If you don't do this, some locos will run significantly faster than others. This will result in tug-of-war between locos, or a push/pull between the locos. This is hard on the couplers, as well as the locomotives themselves. This can also lead to derailments.

The goal is: With the same throttle setting, we want each locomotive to travel the same speed (or the same distance at the same time). Think of method as distance/time matching rather than speed matching.

Also read the article on Back-EMF for more details.

Read your documentation for the decoder as well, as it may have advice on speed matching, plus CVs needed.


This method involves running locomotives on a long section of track and timing how long a locomotive takes to travel that distance. For N scale, you'll need 15-20 feet, you'll have to adjust this method to your scale. Measure out a known distance on your layout, the longer the better. You'll also need a stopwatch.

With this method, we will determine a locomotive's speed by measuring the time it takes to travel a known distance. This will need to be completed twice for each locomotive, using different throttle settings (speeds). We needs to determine which locomotive starts the slowest, and which locomotives run the fastest at a high throttle setting.

Another possibility is to use a test stand with a speedometer, such as that offered by Bachrus. That method allows you to adjust speeds on your workbench.
  1. Set CVs 02, 03, 04, 05, and 06 all to 0. If these CVs are NOT zero, their effects will adversely influence your observations; thus these efforts will be fruitless.
  2. Turn off BEMF for now.
  3. For each locomotive, determine which throttle setting gets the locomotive moving from a dead stop. Note this setting, and also the time it takes to travel the track section.
  4. Now run each loco at some ridiculously high throttle setting to determine which loco runs *faster* at that setting. (We can decrease top voltage on the faster one; we cannot increase the slow one.)
  5. Be sure to start the loco some distance before reaching the beginning of the measured distance, so that its speed stablizes before it begins the measured distance.

Let's start adjusting the start speed:

  1. Determine which loco starts the slowest.
    1. In this step, we are only interested in what it takes to get the loco moving from a dead stop.
    2. Through decoder settings, we can increase the startup voltage on the slower locos to match that of the faster locomotives on startup.
  2. Once the fastest startup locomotive has been found, we need to match the slower locomotives to that.
    1. Slowly increase CV02 on one of the slower locos, until it matches that of the fastest startup speed.
    2. Repeat this step for each locomotive to get starting speeds matching.

Let's start adjusting the max speed:

  1. Here, we will be adjusting the faster locomotives down to match the speed of the slower locomotives. Begin with one of the faster locomotives you wish to match.
  2. Keep adjusting CV05 until the maximum speed matches that of the slowest locomotive you wish to match.
  3. Repeat the above step for each of the faster locomotives, remember, we are not changing this setting on the slowest locomotive.

Once you get the above working, you now start turning on special features such as BEMF if you feel the need.

Things to keep in mind:

  • We cannot match the speed of every locomotive exactly. There are unadjustable differences in motors, drivetrains, etc. We can only get close.
  • At a given throttle setting:
    • Some locos will run at one speed going forward, and an entirely different speed going reverse!!
    • Some locos will run at one speed running "light", and an entirely different speed under load.
    • Some locos will run at one speed going uphill, and an entirely different speed going down...

You will not be able to eliminate these irregularities and differences. You will not be able to match every speed perfectly. There is just no way.

So do it the simple, direct way, and as long as they run within about 10% of each other, you've been successful!!

Some decoders may have a Forward/Reverse Trim feature, which allows you to adjust the speed to match in both directions.

See Also


  • Soundbits Issue 21 Dec 2014: Consisting, NCE and SoundCar.

More information about the SoundCar.