DecoderPro® Comprehensive Programmer
The Speed Table Pane
The Speed Table allows you to fine-tune the throttle response of your locomotive. You might opt to match all of your locomotives so they run at the same speed for the same throttle setting, or you might want to set the table up so that your locomotive runs at the actual scale speed indicated by the throttle. Or maybe you have someone in your operating group that likes to switch the yard at Mach 2.5, and you want to slow them down a bit. There are a lot of ways to use this feature. (This feature may vary by manufacturer and decoder series) Some decoders may only have preset curves that you can select.
You now have the option of using Speed Table (this pane) which if selected and written to the decoder will replace the Basic Speed Control to set your locomotive's speed control mode. Which ever one you select last and write to your decoder will be the method used for speed control. To select the use of speed tables, the Use Table radio button is selected at the top of the pane, and in the case of Soundtraxx and QSI decoders, the drop down selection box must be used. See the discussion at the end of this section for an example.
The default speed table for most decoders is a straight line from zero on the left to maximum on the right. The below the table duplicates that in the table..
Straight Line Speed Curve
As you can see, you have both numbers and sliders to work with. Changing either a number or slider will make the other change to match it. If you are CV inquisitive, you can use the tool tip to advantage. By hovering over any of the sliders, the tool tip will reveal the CV to which you are pointing .
The will also result in a straight-line graph, but you can offset the beginning and end by any amount you wish. The first and last steps are used to set to minimum and maximum values for the straight line. The function will then draw a straight line between those two end points. Below is an example of the result.
Now if you've used DecoderPro in the past, you're probably wondering what those little boxes at the bottom of each slider are used for. Well, they're difficult to explain, but easy to use. They basically allow you to set a slider to control every slider in columns to its left as well as to its right. If you click two of the boxes and then move one of those sliders you'll see that they are linked to the sliders between them. Points to the right never are higher than the slider being moved, and the points to the left are never lower that the slider being moved. This "always increasing left to right" is normally the way the sliders worked, but now the ones in between the check are linked. If the slider is lowered and then raised the straight line is drawn between the column checked to the right and the column that the slider is controlling. It's difficult to describe, but try it and you'll see.
What could that possibly be used for, you ask? Well, many decoders (like the Soundtraxx Tsunami in this example) do not support V-start, V-mid and V-max. So, if you are trying to use the simplified method of speed matching locos, these decoders won't support it. Well now you have a way. Check the left-hand, right-hand and middle columns. Set the left-hand column to V-start, the right-hand to V-max and then slide the middle slider up and down until you get the V-mid that you want. Now all you have to do is write this speed table to the loco and you've accomplished what you wanted to do, but the decoder manufacturer didn't provide for.
Substitute for Quick Speed Matching
If you want to set up a loco for switching you can set a start speed that is the same for the first portion of the throttle revolution and lower the top speed for use in the yard as shown below:
Switcher Speed Curve
if you don't desire a strait-line response curve there are other options available. The Constant ratio curve gives you a response that increases slowly in the low end and rapidly at high throttle. This function will also draw the curve between preset end points.
Constant Ratio Curve
The Log curve reverses this response, giving you a logarithmic response curve with high acceleration at low speeds, but topping out quickly. It will also draw the curve between preset end points.
Logarithmic Speed Curve
The moves the entire speed table to the left one space with each click on the button. The example below shows a linear 0-255 speed table that has been Shifted left three times.
Curve Shifted Left
The move the entire speed table to the right one space with each click on the button. The example below shows a linear 0-255 speed table that has been Shifted right three times.
Curve Shifted Right
Of course, you can enter the numbers individually or move the sliders one at a time to create your own fully customized speed table. To aid you with setting the individual values, the slider value is shown at the top of each slider. Also, by hovering the mouse at a slider column the number of the CV being entered will be revealed.
One very important thing to remember: No matter how pretty your speed table looks, it has absolutely no effect on the locomotive unless you write it to the decoder!
And this point is especially pertinent with the QSI and Soundtraxx Tsunami decoders, because they have a separate drop down box like the QSI box below. They require that you select the user defined speed table entry in this box or your table will not be written to the decoder. Interestingly, Tsunami puts the selection at the bottom of the list making it very easy to miss.
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) a dded 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 (except in some early firmware versions) . 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 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 behaviour in some decoders so both LokProgrammer and JMRI DecoderPro prevent you from doing so.