<UPDATE>
2026-06-16
The Loksound Engineers have apparently removed programmatic access to the SoundCVs in transition actions. The author will contact ESU support and determine if this is a bug or was done purposely. Until then this article will not work as written. Regardless, a message will be placed here indicating the outcome.
This appeared in firmware v5.2.18 as v5.2.17 does not have this problem.
ESU Tech Support was contacted on 2026-06-17 and has verified this bug. They will forward the info to Germany and, hopefully, this will be fixed and an update released quickly. Watch for 5.2.19 (probably).
Sound Schedules/Slots that were created/modified under v5.2.17 will continue to work properly under v5.2.18.
<UPDATE>
As any DCC and Sound model railroader knows, you program your decoder by changing CVs (configuration variables) to have the sound you want to hear when you press a particular function. That's the way it has been since sound decoders became a thing. If you want to change a particular horn on an engine you have to either reprogram it (change the CV contents) on a programming track or do what is called Program On The Main (POM). On most club layouts POM is often frowned upon.
Enter the LokSound v5 sound decoder. It has the ability to change horns on the fly by repeatedly pressing a user assigned function key. Actually, you can change several different sounds this way but this discussion will demonstrate changing horns. We will use the S0523 sound file for this exercise.
Let's start by changing to the sound pane and then double click on sound slot 2 because it's empty. Under Sound Slot properties name this slot Horn Select (or whatever you want). Next click on State twice and arrange them as shown in Figure 2. Next add four Transitions and arrange them as also shown in figure 2. This is the basic layout. If you haven't completed the exercise mentioned above you won't understand how to or what you're doing here.
Starting PointLet's say we like horn #10 of a 16 horn pack. So you want it to start there when you increase the user1 value. Change the initial transition from user1 = 0 to user1 = 10. However, this will prevent being able to select any of the first 9 horns.
Safety FactorIn the lower transition to the left of state(2) it may be advisable to put a second condition of user1 < x where x is some number greater than 1. As is, double clicks will just continue to increase the value until the user stops clicking. If you go beyond the last horn in the pack, who knows? The x should be 1 less than the maximum value you want because u1+1 will increase the value on exit.
RearrangementYou could rearrange the order of horns in the horn pack but that would be a ton of work.
This is a simplified version of changing horns inspired from an exercise by Apoorva, the Indian Rail Modeler. He has a YouTube video on this here.
The author is sure you can come up with other things to make this better. Most of all have fun!
If you have an idea for a blog post here, let me know. If I can comment on it, I will or I'll see if someone else can and post it





Hi, your soundstates, State and Statr (2) need to be looping, else the flow will give you a logical error.
ReplyDeleteDefinitely my bad. I completely forgot to check that.
Delete