DCC Speed Matching

This page is under construction...

 

First explain NMRA standard...

CV2, Vstart, is required

Most decoders have CV5, Vmax...

Many have CV6, Vmid...

Then there are "trim"

Then some have custom curves

Finally the most capable is the custom speed table

Also link to show particular exceptions (always read the manual but it might not be there).

Excellent explanation of some of the exceptions: 

 

From ESU LokSound Yahoo Group, Sun Jan 15, 2017

Posted by: Dave Heap 

 


There are some "gotchas" with programming speed curves in various decoders:

- The NMRA S9.2.2 specifies that all decoders must provide CV2 (Vstart). The provision of CV6 (Vhigh) and CV5 (Vhigh) is optional. These three CVs are to be active only when Bit 4 of CV29 is 0. Speed tables are optional and use CVs 66 (Fwd Trim) 67-94 (the actual speed curve) and 95 (Rev Trim).These thirty CVs are to be active only when Bit 4 of CV29 is 1. The disadvantage of this speed table specification is that any tweaking of starting or maximum speeds requires reshaping of the entire speed curve.

- SoundTraxx Tsunami decoders differ from the standard. When the speed table is active (Bit 4 of CV29 is 1), the value in CV2 is not ignored but is effectively (in the decoder) added to CVs 67-94 in the speed table, pushing it upwards. The advantage of this variation from the NMRA standard is that you can tweak the starting speed without reshaping the whole curve, but the disadvantage is that you can effectively flatten the top end of the speed table it the maximum speed was already high.

- QSI decoders differ from the standard. When the speed table is active (Bit 4 of CV29 is 1), the values in CVs 2 and 5 are not ignored. If either of CVs 2 or 5 are non-zero, these become the actual Vstart and/or Vhigh and the effective values in CVs 67-94 are compressed or expanded (scaled) in the decoder so the actual curve starts and/or ends on any non-zero value in Vstart and/or Vhigh. The advantage of this variation from the NMRA standard is that you can tweak both starting and maximum speeds without reshaping the whole curve, but the disadvantage is that if your speed table already covered a restricted range, the curve will be expanded, with possible integer multiplication errors producing glitches in the speed table.

- ESU V4 and Select decoders differ from the standard. When the speed table is active (Bit 4 of CV29 is 1), the values in CVs 2 and 5 are not ignored, but ALWAYS specify the actual Vstart and Vhigh of the loco. In addition the value of CV67 is fixed (read only) at 1 and the value of CV94 is fixed (read only) at 255. You therefore need to fit your speed table curve shape between these fixed end points. The effective values in CVs 67-94 are compressed (in the decoder) so the actual curve always starts and ends on the values in Vstart and Vhigh. The advantage of this variation from the NMRA standard is that you can tweak both starting and maximum speeds without reshaping the whole curve and without the possible multiplicative errors in the QSI approach. The LokProgrammer and JMRI DecoderPro software both enforce the restrictions on CVs 67 and 94 so you know what your speed table will actually look like. Also, the minimum value for CV2 is 1, so you cannot set the loco to be stationary at step 1.

The important thing to make very clear is that ALL FOUR DIFFERENT APPROACHES ALLOW FULL CONTROL OF SETTING THE ENTIRE SPEED RANGE OF THE LOCO. There is no limitation on setting of starting or maximum speed. But you MUST be aware of the different ways of setting up different decoders. The other important point is that THIS DOES NOT PREVENT SPEED MATCHING of different brands, you just have to be aware of the different ways of setting up each brand.

The best way of avoiding problems is with any brand or mix thereof is to match speed steps in this order 1,28,14,7,21, ... This will avoid any problems with any brand.

Footnote: Speed tables must always increase monotonically (i.e. no speed step can have a value lower than the previous speed step). Failure to do observe this restriction can cause strange behavior in some decoders so both LokProgrammer and JMRI DecoderPro prevent you from doing so.

 

 

explain 28 CVs, how they map to 128 ss

explain my technique.