ModelRailPro logo ModelRailPro NLENDE

Turnout decoders: accessory decoders for turnouts and signals

A turnout decoder receives an accessory command and drives a solenoid, slow-motion motor or servo. This guide explains how the addressing system works, which drive methods exist and where things can go wrong in practice.

What is an accessory decoder?

An accessory decoder — commonly called a turnout decoder or points decoder — is a separate type of decoder that does not drive a locomotive but controls track accessories: turnouts, signals, uncouplers and relays. The decoder receives an accessory command from the command station via the track or a separate bus system and converts it into an electrical signal for the accessory motor.

NMRA standard S-9.2.1 distinguishes two types. The Basic Accessory Decoder uses a 9-bit address field and is intended for simple accessories such as turnouts and signals. The Extended Accessory Decoder uses an 11-bit address field and is designed for complex signal aspects requiring more than two states. Most turnouts on a model railway layout are operated by a Basic Accessory Decoder.

Accessory decoders are separate from loco decoders and have their own address space. They communicate via the same DCC signal on the track or — in some systems — via a separate bus such as LocoNet or the Märklin CAN bus. See also the decoder interfaces guide for a general distinction between decoder types.

DCC address range and address structure

The linear accessory address range in DCC runs from 1 through 2044. Addresses 2045–2048 are reserved for broadcast commands. Address 0 is officially reserved; in practice some manufacturers use it for test purposes. The underlying structure consists of 511 decoder addresses each with 4 sub-addresses (outputs), giving 511 × 4 = 2044 usable addresses.

What that means in practice: a decoder with decoder address 1 theoretically drives outputs at linear addresses 1, 2, 3 and 4. A decoder with address 2 drives addresses 5, 6, 7 and 8 — and so on. But whether the manufacturer and the software number them in this way is an entirely separate question.

The address-offset problem: the biggest pitfall

The NMRA specification describes the structure of the address field but does not prescribe an encoder convention. That means the standard does not define how a command station or software package should present linear addresses 1–2044 to the user. The result is a persistent interoperability problem: "address 5" in software A is not the same turnout as "address 5" in software B or on decoder C.

Concrete variants encountered in the field:

Practical consequence: when setting up a new system, always test address 1 and note which physical turnout responds before programming the whole layout. Consult the manual of both the command station or software (here: ModelRailPro plus the underlying command station) and the decoder. There is no universal formula that works for all combinations. To be confirmed on a layout for each combination of command station and decoder used.

More about the supported command stations: see DCC-EX and Märklin CS2/CS3.

Motorola turnout decoders: k83 and k84

Alongside DCC, the Märklin ecosystem has its own accessory protocol based on the Motorola format. The best-known decoders are the k83 (four outputs, solenoid pulse) and the k84 (four outputs, solenoid pulse or relay hold). Both work exclusively with the Motorola accessory protocol, are unidirectional — the position is not reported back — and support addresses 1 through 256, with the exact numbering depending on the command station.

Command stations that support the Motorola accessory protocol alongside DCC include the Märklin CS2/CS3, Z21 black, DR5000 and ESU ECoS. DCC-EX does not support the Motorola protocol. If you have a mixed layout with both DCC loco decoders and Märklin k83/k84 turnout decoders, you need a command station that can transmit both protocols.

Drive methods: solenoid, slow-motion motor and servo

The way the decoder drives the turnout mechanism determines the settings and the choice of decoder.

Solenoid (magnetic turnout motor)

The most traditional method. The decoder sends a short current pulse — typically 50 to 200 ms — to one of the two solenoid coils, which mechanically moves the point blade. Prolonged activation damages or burns out the solenoid; this is a well-known cause of failures on older layouts where the decoder had no time protection.

Modern DCC command stations limit the pulse duration internally. Whether the pulse length that ModelRailPro sends via the underlying command station is compatible with your specific solenoid decoder is to be confirmed on a layout. See the hardware overview for the status of the command station you use.

Slow-motion motor

A slow-motion motor (e.g. Märklin 74491, Tortoise) remains energised in the end position. The decoder holds the voltage on the relevant output after the drive command. This requires a decoder that keeps the output on continuously rather than sending a pulse — not all turnout decoders can do this; check the datasheet.

Servo

Servo decoders convert a DCC accessory command into a servo PWM signal. The servo moves slowly to the programmed end position, giving a more realistic movement than a solenoid. Well-known examples include the ESU SwitchPilot Servo and similar modules. Servo decoders generally offer adjustable travel speed and end positions via CV programming. See the DCC tools page for help with CV calculations.

Turnout position feedback

An important distinction: standard DCC accessory decoders do not report the turnout position back. The command station and software assume the command was executed and store the assumed position. If the turnout jams mechanically or the power fails, the software does not know automatically.

Some decoders do report the actual position back via an additional system — such as s88, LocoNet or RailCom — but this is manufacturer-specific and not required by NMRA S-9.2.1. Examples include the ESU SwitchPilot Servo (s88 feedback) and certain Littfinski modules (LocoNet). If reliable turnout position feedback is required for automatic operation, choose a decoder with explicit feedback via a return bus supported by your command station.

More about feedback options and linking occupancy detection to block control: see the feedback detection guide.

Practical setup tips

When configuring turnout decoders in ModelRailPro, keep the following points in mind:

Frequently asked questions

What is the address range for DCC turnout decoders?
NMRA S-9.2.1 defines linear addresses 1 through 2044 for accessory decoders. Addresses 2045–2048 are reserved for broadcast. Address 0 is officially reserved; some manufacturers use it anyway. Always check the manual of your decoder.
Why does address 5 in my software not match address 5 on the decoder?
Because numbering is inconsistent across manufacturers and software. Some systems count from 1, others from 0, and others use the formula (decoder-1)x4+output. NMRA does not prescribe an encoder convention. Always consult the manuals of both command station/software and decoder — there is no universal formula.
Will a DCC command damage my solenoid turnout motor?
A solenoid turnout decoder sends a short pulse of approximately 50–200 ms. Sustained current will damage the solenoid. Modern DCC command stations limit the pulse duration internally. Whether the pulse length that ModelRailPro sends is compatible with your specific solenoid decoder is <span class="badge test">to be confirmed on a layout</span>.
Download ModelRailPro Try free for 30 days

← Back to hardware · DCC-tools