Blog #8

Mobile Decoder Testing

On this page: DCC | Railcom | Compatibility

Explore my library of mobile decoder test results. My analysis focuses on DCC command support and Railcom compliance, providing objective data on each decoder’s performance and functionality.

This blog presents raw measured results to maintain a neutral, unbiased position.

DCC Command Set

Decoders are being tested for their extended DCC command set support.

  • pom: programming on main. Read/Write of one CV per command. Can address up to 1024 CV directly.
  • xpom: extended programming on main. Read/Write up to four CVs per command. It can address up to 2^24 CVs directly.
  • sdf: Combines Speed/Direction/Function(0-31) into one multi-command. Increases the DCC downstream bandwidth but has a negative effect on the Railcom upstream bandwidth.
  • DCC-A: DCC-A support
  • DCC-R: firmware update on main
VendorDecoderFWpomxpomsdfDCC-ADCC-R
AppelNEM6510004Y----
D&HD05C030fY----
D&HD10C030fY----
D&HPD05A030eY----
D&HPD12A030eY----
ESULopi V40406YYY--
ESULopi V50507YYY--
ESULopi V5 Fx050aYYY--
KuehnN450023Y----
LenzSILVERmini+000eYYY--
PikoSD 46505000bYYY--
RailboxRB2310000dY--(Y)-
RTBall types0001YYYYY
TAMSLD-G-41000aY--Y-
T-O-MLokommander060bY----
UhlenbrockIntelli 732350020YY---
ZimoMN1600515Y--Y-
ZimoMN1700515Y--Y-
ZimoMN1800515Y--Y-
ZimoMN3000515Y--Y-
ZimoMS5000515Y--Y-
ZimoMX6172816Y----
ZimoMX6211f06Y----
ZimoMX6222816Y----
ViessmannNEM6510004Y----

Railcom Channel 2 - DYN

Decoders are being tested for their support of the Railcom ID7 dynamic variable (DV). This feature allows the decoder to provide real-time status updates to the command station.

  • kmh: reporting loco speed either km/h or mph (ID0/ID1)
  • load: engine load in percent (the spec allow 0..127) but I believe 0..100 makes more sense (ID2)
  • spd: current speed step set, normalized to 126 speed steps (ID2)
  • ver: Railcom version supported by the decoder (ID3)
  • qos: quality of service is a measure how dirty the tracks are (ID7)
  • cont: container 1-12 defined by the standard (ID8-ID19)
  • temp: decoder temperature (ID26)
  • volt: track voltage measured by the decoder (ID46)
  • e/w: east/west orientation information from the decoder (ID27)
  • special encodings
    • ak1/ak2: There are two ACK encodings defined by the standard. Indication of which ACK encoding the decoder uses. (ak1=0x0f, ak2=0xf0)
    • nak: NAK is used to signal an unsupported command by the decoder (nak=0x3c)
    • an: ACK+NAK telling the command station, the to POM command has been recieved but the requested CV does not exist
    • nn: NAK+NAK is another variation of the single nak
VendorDecoderFWverkmhloadspdverqosconttempvolte/wak1ak2nakannn
AppelNEM6510004----------YY---
D&HD05C030f-YYY-Y--Y-Y-YYY
D&HD10C030f-YYY-Y--Y-Y-YYY
D&HPD05A030e-Y---Y----Y-YYY
D&HPD12A030e-Y---Y----Y-YYY
ESULopi V40406-Y--------Y----
ESULopi V50507-Y--------Y----
ESULopi V5 Fx050a----------Y----
KuehnN450023----------Y----
LenzSILVERmini+000e-Y---------Y---
PikoSD 46505000b-Y----1-12--------
RailboxRB2310000d-----------Y---
RTBall types0001YYYYYY1-12YYYYYYYY
TAMSLD-G-41000a-----Y-----Y---
t-O-mLokommander060b-Y---Y-----Y---
UhlenbrockIntelli 732350020---------------
ZimoMN1600515-Y---Y-YYYY----
ZimoMN1700515-Y---Y-YYYY----
ZimoMN1800515-Y---Y-YYYY----
ZimoMN3000515-Y---Y-YYYY----
ZimoMS5000515-Y---Y-YYYY----
ZimoMX6172816-Y---Y----Y----
ZimoMX6211f06-ID3---Y---------
ZimoMX6222816-Y---Y----Y----
ViessmannNEM6510004----------YY---

Railcom Channel 2 - Behavior

For seamless operation of Railcom, particularly when using multiple decoders, it is crucial to meet the RCN-217 specification requirements.

  • jitter:
    • TTS1 must be between 80…97 [us]
    • TTS2 must be between 193…215 [us]
  • errors:
    • misses: decoder failed to respond to an DCC command
    • encoding: invalid 6/8 bit encoding
    • timing: TTS1/TTS2 out of bounds
  • compliant:
    • only if jitter is in specification range and no errors occured
VendorDecoderFWTTS1 jitterTTS2 jittererrorscompliant
AppelNEM6510004200...210ghost;misses-
D&HD05C030f197...203-Y
D&HD10C030f197...203-Y
D&HPD05A030e197...203-Y
D&HPD12A030e197...203-Y
ESULopi V40406193...202-Y
ESULopi V50507195...197-Y
ESULopi V5 Fx050a193...197-Y
KuehnN450023192...209encoding-
LenzSILVERmini+000e191...198timing-
PikoSD 46505000b194...195misses-
RailboxRB2310000d194...246misses;timing-
RTBall types0001196...197-Y
TAMSLD-G-41000a184...223misses; timing-
t-O-mLokommander060b194...198-Y
UhlenbrockIntelli 732350020-misses-
ZimoMN1600515207...212-Y
ZimoMN1700515207...212-Y
ZimoMN1800515207...212-Y
ZimoMN3000515207...212-Y
ZimoMS5000515198...203-Y
ZimoMX6172816191...212timing-
ZimoMX6211f06188...203timing-
ZimoMX6222816193...212-Y
ViessmannNEM6510004201...209ghost;misses-

Decoder Compatibility

Appel (NEM651)

  • Firmware: 0004
  • Railcom timing: Good
    • TTS1 is on the upper limit, TTS2 is perfect.

D&H Decoder

  • Firmware: 030e
  • Railcom timing: Good
    • TTS1 and TTS2 are perfect.

Lenz SILVER+

  • Firmware: 000e
  • Railcom timing: Fair
    • TTS1 is perfect, TTS2 starts to early if Channel-2 is enabled only.

Kuehn N45

  • Firmware: 0023
  • Railcom timing: Good
    • TTS1 and TTS2 show high jitter but within specs.

RTB Decoder

  • Firmware: 0001
  • Railcom timing: Good
    • TTS1 and TTS2 respond flawless

Tams LD-G-41

  • Firmware: 000a
  • Railcom timing: Poor
    • TTS1 and TTS2 are often out of bounds.

Viessmann (NEM651)

  • Firmware: 0004
  • Railcom Timing: Fair
    • Timing for TTS1 is on the upper limit, TTS2 is perfect.

Zimo MX621

  • Firmware: 1f06
  • Railcom Timing: Fair
    • If Channel-2 is enabled alone TTS2 is tentative to low.