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.
Sent from my iPad
--
Dave in Australia