Author Topic: Programming ESU LokSound Select Function Keys and Lighting Effects (UPDATED)  (Read 5802 times)

0 Members and 1 Guest are viewing this topic.

jdcolombo

  • Crew
  • *
  • Posts: 2265
  • Respect: +973
Hi everyone.

I have struggled for three years to figure out exactly how to program ESU LokSound function keys to get what I want (what folks sometimes refer to as "function remapping").  About a week ago, I sat down and started writing a "how to" on doing function key reprogramming, and realized that there are two problems with doing this.  Problem 1 is that the LokSound decoders are almost TOO flexible in what they allow you to do with a function key.  By my count, there are some 2,304 different behaviors that can be assigned to any particular function key.  The second problem is that in order to "remap" a function key, you have to know what the default map is.  ESU doesn't always tell you this; different sound files can configure the function keys differently - for example, the Atlas S-2 comes from the factory with F8 set so that the sound comes ON when F8 is OFF - exactly the opposite of how ESU programs its decoders for the retail channel.  In many modern diesel files, F6 is assigned to turn on the Aux1 and Aux2 outputs, under the assumption that you will wire these to ditch lights; but ditch lights weren't required on locomotives until fairly recently, and if you were modeling, say, the 1970's, your SD40-2's and GP40's probably don't have ditch lights (and of course, earlier diesels, like a GP35, wouldn't, either).

What all this has convinced me of is that it is nearly impossible to correctly program a LokSound decoder without the LokProgrammer.  Even JMRI can't really do it, because JMRI doesn't really know what the default CV map is for every single sound file.

Nevertheless, I thought it might be helpful to write a document that explains at least the theory of how one goes about programming LokSound function keys without a LokProgrammer, using some common programming examples.  So I started this project, and have attached a 10-page PDF that is the result of my efforts.  I know it's a lot to ask people to read a 4500-word document in these days of 120-character tweets, but if there are a few of you out there who are interested in the LokSound programming process and don't own a LokProgrammer, I'd be very appreciative if you would take an hour or so and read my PDF to see if (1) it helps you at all and (2) what additional programming examples might be useful.  If this project isn't helpful, I'll shelve it.  If it IS helpful, then I'll keep working on it, and maybe some day have a more complete document (including how to program lighting effects) that I can post somewhere for everyone in the modeling community.

Here's the document [REPLACED WITH REVISED DOCUMENT - SEE MESSAGE BELOW]:

Thanks in advance.

John C.
« Last Edit: July 28, 2017, 05:04:45 PM by jdcolombo »

Jbub

  • Crew
  • *
  • Posts: 1849
  • Gender: Male
  • HP 9999
  • Respect: +584
Re: Programming ESU LokSound Function Keys
« Reply #1 on: July 20, 2017, 03:01:12 PM »
0
 I'll take a look at it. I've got a few decoders to install and set up without a lokprogrammer, so this should help with that.
Thanks for the write up on this John.

Jason
"Noooooooooooooooooooo!!!!!!"

Darth Vader

carlso

  • Crew
  • *
  • Posts: 1119
  • Gender: Male
  • Respect: +502
Re: Programming ESU LokSound Function Keys
« Reply #2 on: July 20, 2017, 08:23:21 PM »
0
Thanks John, excellent information.

I bit the bullet and purchased the ESU Programmer. I have successfully programed my SD-9 and GP-30. My problem is knowing what sound occupies the sound slots. When I first load the prime mover into the project the sound slots are named and I believe they are different between the 2 decoders, possibly because I used 2 different prime movers ? ? ? I save the project but next time I call it up the sound slots are not named, clear as mud, right. At any rate I am happy with the programmer. I have not read all the manual but I wonder if you can program other brand decoders, at least a limited programming.

Again, thanks for your efforts,
Carl
Carl Sowell
El Paso, Texas

jdcolombo

  • Crew
  • *
  • Posts: 2265
  • Respect: +973
Re: Programming ESU LokSound Function Keys
« Reply #3 on: July 20, 2017, 10:20:39 PM »
0
Thanks John, excellent information.

I bit the bullet and purchased the ESU Programmer. I have successfully programed my SD-9 and GP-30. My problem is knowing what sound occupies the sound slots. When I first load the prime mover into the project the sound slots are named and I believe they are different between the 2 decoders, possibly because I used 2 different prime movers ? ? ? I save the project but next time I call it up the sound slots are not named, clear as mud, right. At any rate I am happy with the programmer. I have not read all the manual but I wonder if you can program other brand decoders, at least a limited programming.

Again, thanks for your efforts,
Carl

Hi Carl.

The newer Full Throttle sound files all have the sound slots labeled, and I don't have any issues with "losing" those labels after programming an engine and saving the file.  Some of the older files, however, don't have labels (these files pre-date Matt Hermann; Matt has been very careful to put labels in the files he does).  What I've done, actually, is take a particular file, like the EMD567C file (not the B/C file, which sounds different) or the Alco 251 12-cylinder file, and set it up as a "template" for all my similar locomotives, then save the "template" with a descriptive title (e.g., "Atlas GP7_9 Old Motor Template"; "Atlas RS3 China Template"; etc.).  Every time I call up the template file, the sound slot labels are still there.

It IS possible to program a LokSound "by hand" - that is, by figuring out what CV's to change, but you really have to understand the LokSound "system" to be able to do this, and you also have to know both the default function map and the default function key assignments to do it.  The LokProgrammer software knows all of this when you load a particular sound file; but getting the information from other sources to program a LokSound without the LokProgrammer (or at least the LokProgrammer software, which you can download and use even without the programmer hardware) is not easy.  I'll tip my hat to Intermountain, which published the full function key map for it's SD40-2 so you can do programming by hand, and even has a "tip sheet" for doing things like changing the behavior of F8, programming alternating ditch lights, and so forth.  But all this is applicable only to the SD40-2 file; if you are working with a different file, there is no guarantee that the function mapping will be the same (in fact, just the opposite; I know for a fact that the function mapping is NOT the same).

I've never tried to use the LokProgrammer to program some other manufacturer's decoders.  I believe you can do so, but with limited functionality.

John

peteski

  • Crew
  • *
  • Posts: 32976
  • Gender: Male
  • Honorary Resident Curmudgeon
  • Respect: +5346
    • Coming (not so) soon...
Re: Programming ESU LokSound Function Keys
« Reply #4 on: July 20, 2017, 11:05:33 PM »
0
Each decoder manufacturer handles sound functionality differently so it doesn't seem feasible to use a decoder programming tools (sound file downloader/CV programmer/dedicated sound software on the PC) to program anything but the same brand decoder.  The only thing you will be able to program universally will be most of the individual CVs (because that part of programming is universal between the decoders as defined by NMRA specs).
. . . 42 . . .

sp org div

  • Crew
  • *
  • Posts: 267
  • Respect: +42
Re: Programming ESU LokSound Function Keys
« Reply #5 on: July 21, 2017, 01:23:54 AM »
0
Good stuff John.
Now is all we need are the narrow boards in stock at our LHS... Oh, and additional listings (map / program) similar to IM provided for each sound file configuration.
Thanks for the contribution.
Jeff

bobthebear

  • Crew
  • *
  • Posts: 90
  • Respect: +3
Re: Programming ESU LokSound Function Keys
« Reply #6 on: July 21, 2017, 02:06:49 PM »
0
Thank you John!

wmcbride

  • Crew
  • *
  • Posts: 503
  • Respect: +81
Re: Programming ESU LokSound Function Keys
« Reply #7 on: July 21, 2017, 10:29:50 PM »
0
Thank you, John!

I appreciate this almost as much as your instruction on adding a Loksound decoder to the FVM GEVOs!

Bill McBride

woodone

  • Crew
  • *
  • Posts: 799
  • Gender: Male
  • Respect: +33
Re: Programming ESU LokSound Function Keys
« Reply #8 on: July 23, 2017, 11:34:42 AM »
0
Great information John. Appreciate your hard work in the research and Documentation.
I have the ESU programmer and use it. The ESU manual is a BIG read.
Thanks for posting this!

Jbub

  • Crew
  • *
  • Posts: 1849
  • Gender: Male
  • HP 9999
  • Respect: +584
Re: Programming ESU LokSound Function Keys
« Reply #9 on: July 24, 2017, 01:11:12 PM »
0
John, I think this is very helpful. It is well written (considering your background, that is no surprise) and the logic is spot on. When I get to programming my decoders this will prove to be the key to a well functioning locomotive.

Jason
"Noooooooooooooooooooo!!!!!!"

Darth Vader

jdcolombo

  • Crew
  • *
  • Posts: 2265
  • Respect: +973
Re: Programming ESU LokSound Function Keys
« Reply #10 on: July 24, 2017, 02:55:20 PM »
0
Hi everyone.

Thanks for the feedback.  There are enough positive comments to make me think that this is a worthwhile project.  So I'll continue - I plan to add a section to this document on programming lighting effects.  Maybe eventually I'll also do a section on programming BEMF values.  Then after I've basically re-written the LokSound manual, maybe they will print it!

John C.

Jbub

  • Crew
  • *
  • Posts: 1849
  • Gender: Male
  • HP 9999
  • Respect: +584
Re: Programming ESU LokSound Function Keys
« Reply #11 on: July 24, 2017, 05:01:49 PM »
0
Hi everyone.

Thanks for the feedback.  There are enough positive comments to make me think that this is a worthwhile project.  So I'll continue - I plan to add a section to this document on programming lighting effects.  Maybe eventually I'll also do a section on programming BEMF values.  Then after I've basically re-written the LokSound manual, maybe they will print it!

John C.
I hope they pay you for all your work  ;)
"Noooooooooooooooooooo!!!!!!"

Darth Vader

Santa Fe Guy

  • Crew
  • *
  • Posts: 1096
  • Respect: +359
Re: Programming ESU LokSound Function Keys
« Reply #12 on: July 24, 2017, 09:07:28 PM »
0
Hi everyone.

Thanks for the feedback.  There are enough positive comments to make me think that this is a worthwhile project.  So I'll continue - I plan to add a section to this document on programming lighting effects.  Maybe eventually I'll also do a section on programming BEMF values.  Then after I've basically re-written the LokSound manual, maybe they will print it!

John C.

Great stuff John.
Maybe you could make contact with Matt from ESU and let him know what you are doing. He just might be he would be interested.
Rod.
Santafesd40.blogspot.com

jdcolombo

  • Crew
  • *
  • Posts: 2265
  • Respect: +973
Hi everyone.

I have finished work (for now) on what I am calling a "tutorial" on how to program the function keys and certain common lighting effects (and assign those effects to function keys).  I have attached a much-revised 20-page PDF that tries to explain how to do all this using several common examples - like how to get the headlight to stay on in both directions; how to program a Mars light or other special light (like a beacon) and map that to a function key, and so forth.

This document also contains several warnings, which I am going to repeat here.

First, programming any LokSound decoder is incredibly complex.  The number of options available and the number of steps required (and number of CV's that must therefore be programmed) can be overwhelming.  That means there is an excellent chance you will make a mistake and cause serious damage to your decoder's behavior.  As a result, I STRONGLY recommend that you undertake reprogramming function keys or lighting effects only with a LokProgrammer or JMRI's Decoder Pro software (although JMRI has some quirks, too, particularly when dealing with Select decoders and when dealing with the function key labels of Select decoders).  If you decide to program raw CV's, understand that you are playing with fire, and be extremely careful about what you are doing.  If you make even a small mistake, you may have to do a factory reset or have someone completely reinstall the sound file with a LokProgrammer (most dealers charge a fee for this).   

Second, the examples in my tutorial are applicable ONLY to LokSound Select decoders and Select files that you download from ESU's web site.  V.4 files and OEM files (for example, Intermountain's SD40-2 file for the N-scale version of this locomotive) do not necessarily follow the "standard" programming for LokSound Select files with respect to their function keys.  The programming theory that I explain in this document is applicable to all ESU LokSound decoders - to apply it, however, you would have to have a copy of the default function programming map for the specific sound file you are using, and ESU rarely provides this (some manufacturers, like Intermountain, DO provide it for their OEM files).

Third, in order to use this document, you will need to read it in conjunction with both the LokSound Select and V.4 manuals, which are available from LokSound's web site.  And you will need to read the Tutorial all the way through.  DO NOT jump to a particular example and try to do the programming in that example without having at least read the previous material or you are asking for very serious problems.

Fourth, while I have tested my examples with my own LokSound decoder and the EMD567C Full Throttle file, I can't be entirely sure that what I've written will work for every Select sound file, particularly ones released in the future that may deviate from what has to this point been a pretty standard way of setting the default programming for function keys and lighting.  If you try something and it doesn't work, please let me know and I'll see what I can do to fix it. 

In short, after writing this document I realized that, honestly, no one in their right mind would really try to do this programming using raw CV's.  But I also realize that some of you are going to try anyway, so this is my best shot at giving you enough background that you at least have a fighting chance of success.  That said, you really, really would be better off using JMRI or a LokProgrammer to do any of this.

John C.
[ Guests cannot view attachments ]






« Last Edit: July 28, 2017, 08:32:11 PM by jdcolombo »

jdcolombo

  • Crew
  • *
  • Posts: 2265
  • Respect: +973
Typo correction:

No matter how many times I proofread this, it seems I still managed some typos.

The description of the programming process in Example 8 had several numeric typos referencing control CV's in paragraph 5.

Here's the correct paragraph 5 description in Example 8 description (and I've updated the PDF in the attachment in the previous message):

"Now we need a separate row of our table to define the behavior for the headlight when it is stopped.  In this case, the conditions need to be F0=ON and locomotive stopped.  Under these conditions, we want to use the alternative configuration for the headlight (Config2) which we have previously set to the dimming level we want.  To do this, we will need to use a “spare” row of our function programming table.  Let’s use Row 25, which is usually an “open” row, not previously assigned to any function key.  We need to program the Conditions CV for F0=On and locomotive stopped; the correct control CV for this from the table on page 52 of the V.4 manual is CV385 (notice this is in the same column, Column A, as CV257).  But note that to program CV385, we must first set CV32=3 (this is different from CV257, which requires CV32=2).  So we set CV32=3; then program CV385=18 (F0 ON=16, plus Locomotive Stopped=2).  We must also program the Physical Outputs to turn on Headlight Configuration 2; the proper CV for this in Row 25 is CV395 (see page 55 of the V.4 manual; we need the second control CV for Physical Output, the one in Column L, which is 395 for Row 25).  Again, we need to set CV32=3, then we can program CV395 with a value of 16 to turn on Headlight Configuration 2."

Like I said before, if you try any of this and something doesn't work, let me know.  Meanwhile, check back here often in case I discover more typos!

John C.