Programming:Electronic Solutions Ulm: LokProgrammer
Summary: A LokProgrammer is a hardware device for programming ESU's Multifunction DCC Decoders. It works in conjunction with the LokProgrammer software, allowing complete configuration of LokSound decoders quickly and easily,
|See more Misc DCC Items
|Electronic Solutions Ulm
|Manufacturer Part Number
|External Product Link
|Product Manual URL
|External Product Link
|Has computer interface
|Firmware Upgrade Possible
|22 mm2.2 cm <br />0.022 m <br />0.866 in <br />0.0722 ft <br />
|95 mm9.5 cm <br />0.095 m <br />3.74 in <br />0.312 ft <br />
|85 mm8.5 cm <br />0.085 m <br />3.346 in <br />0.279 ft <br />
See the Video.
The LokProgrammer is for use with ESU's multifunction decoders only. Many manufacturers equip their locomotives with ESU OEM decoders at the factory, their locomotive specific programming can be modified using the LokProgrammer. With the ever-increasing number of CVs in an ESU LokSound decoder, the LokProgrammer provides a rapid method of reading and writing to the decoder compared to using a command station's program outputs.
The LokProgrammer can upgrade decoder firmware or install new sound files. It also allows the user to set the default values which are to be used after a reset.
Additionally, it is required to initialise a retail version of an ESU multifunction decoder.
The LokProgrammer is a small external box, connected between a computer and the programming track. To connect requires a serial interface, or the included USB Adapter cable. The software requires MS Windows. Includes a 500mA power supply. A conventional power supply can be used if more power is needed.
The LokProgrammer hardware relies on software installed on a computer with a compatible version of Microsoft Windows.
The software is updated regularly, complete with bug fixes and definitions for newer multifunction decoders. It also features firmware updates, which can be applied to the decoder. These updates are a regular occurrence. Firmware updates can fix issues within the decoder, modify and enhance the operation of the decoder.
ESU released Version 5.0.0 of the LokProgrammer software in January 2019, which supports the LokSound 5 multifunction decoders. See the note below regarding the .Net requirement.
The current version is 5.2.6. See
- Main article: LokProgrammer/Software Revisions for a list of LokProgrammer Software versions released,
There are two versions of the programmer.
The older one is blue in colour. The new Lokprogrammer is black. The black one is much faster than the older blue one.
Determining Version of LokProgrammer Hardware
Using the LokProgrammer software: Select:
- Click on the "Read Device" button.
DCC Settings, including RailCom and 14/28 speed steps
- Change the sound safely on the decoder.
- Setting of all digital parameters of the LokSound decoder such as address of the loco, operation speed, maximum speed, braking deceleration, brightness of bulbs etc.; you can set all options with your computer very easily - no cumbersome entering of CVs (configuration variables) with your command station.
- Edit sounds and transfer it to the LokSound decoder.
- Update decoder firmware
- Set the decoder's defaults
OEM LokSound Select decoders may omit the ability to select multiple prime mover and horn sound effects, compared to the retail version. To change the sound set, a Lokprogrammer is necessary.
The Select series may not allow individual changes, only complete sound programming may be done.
LokSound decoders allow extensive remapping of functions. If one possesses many locomotives equipped with LokSound decoders, a Lokprogrammer is a worthwhile investment, allowing many parameters to be altered quickly, plus editing sound projects. It is much faster than JMRI for tasks such as this.
Using the LokProgrammer
- Main article: LokProgrammer/LokProgrammer Troublshooting
For effective use the of the LokProgrammer:
- Verify the most recent version of the LokProgrammer software is installed. Upgrade if needed before beginning decoder programming.
- Using an older version of the software with a new decoder may result in a 'Decoder Not Found' error, as the LokProgrammer's software is unaware of firmware version used by the decoder.
- Minimize any connections between the programmer and decoder. If the decoder is mounted on a daughter board, use a decoder tester if you have one. If not, reseat the decoder to ensure a solid connection between the decoder and the daughter board.
- Do not attempt to program multiple decoders at once. Additional decoders will cause issues.
- Verify decoder version and its firmware revisions.
- If there are issues writing data to the decoder, there may not be enough resistance for the LokProgrammer to detect the decoder. Adding a resistor in parallel to the decoder by connecting it across the track will help. Any value from 100 to 1000 Ohms, ¼W or larger should suffice.
- Run a firmware update manually. Forcing an update can clear up some issues.
- Ensure the wheels and track are clean. If needed, additional mass placed on top of the locomotive can help overcome contact issues.
- Use a larger power supply. The additional current may help with problematic decoders.
The LokProgrammer has two LEDs mounted on the board by the programming track connections.
- Green LED
- Is lit continuously when power is connected to the LokProgrammer
- Flashes to indicate data received from computer
- Yellow LED
- Rapid flashing when power is applied to program track and data is being transferred.
- Slow flashing when a fault (excessive current) is detected and has disconnected the program track.
USB to Serial Bridge Cable
- Before plugging this cable into the USB port of a computer the FTDI drivers, available on the ESU website, must be installed. Otherwise, the device will not work.
- Windows8.1 or higher may do this installation automatically.
- Do not use another cable. This device works well, other devices may cause communications issues.
- The LokProgrammer software can create a PDF record of the decoder and all the CV settings.
- It is possible to use the software without the hardware to create a file which can then be imported into JMRI's DecoderPro.
- Make all necessary changes, then write them to the decoder in one pass.
- Simple programming changes can be done with your throttle and command station or DecoderPro. Remember to cycle the power to complete the process.
When the LokProgrammer's process has completed allow the locomotive to sit on the track undisturbed for at least five minutes. Otherwise, a scrambled decoder can result.
LokProgrammer System Requirements
Microsoft Windows Only
The LokProgrammer software is only compatible with Microsoft Windows. The webpage states Windows XP. According to ESU their software requires XP, Service Pack 2 or better. It only works with the 32-bit version of XP. Since XP has not been supported since 2014, most installations will be on a higher version of Windows.
Other Windows Versions
ESU does state that LokProgammer is compatible with Windows versions 7, 8 and 10. Requires Microsoft .NET Framework 3.5 SP1, (installed automatically if needed) available from their download page.
Microsoft Windows 11
Security settings interfere with installing an updated driver. The older driver supplied by ESU is no longer supported.
Use the following process:
- Windows Security
- Core Isolation
- Disable and Reboot the computer
- Core Isolation
- Windows Security
The latest drivers are available from FTDI
As Microsoft no longer supports Windows 7, the .NET files are no longer available through the update mechanism. Windows 7 versions are available, use a search engine to locate the Microsoft web page hosting these files.
RS-232 (Serial) to USB Interface (USB Bridge)
As the LokProgrammer uses an RS-232 serial port, an adapter cable is required to connect to newer computers which lack the 9-pin D connector style serial port.
ESU includes a USB to RS-232 bridge cable.
A driver must be installed to create a Virtual Com Port on an IBM compatible computer. Macintosh users also require a driver. See the link below for FTDI (Future Technology Devices International) to download a driver for the cable.
Windows 7 Issue
Cables supplied by ESU prior to 2009 will not work correctly. Contact your ESU dealer to purchase a new cable, part number 51952: Cable USB-A 2.0 FTDI to RS232; 1.80m, for LokProgrammer.
Installation of a new FDTI driver for the cable is also required. It can be downloaded from FTDI directly.
Counterfeit USB Bridge Cables
There are many USB to Serial port adapters on the market. A number of them used a counterfeited FTDI IC. FTDI released a newer driver which bricks those devices a few years ago. Use only a quality USB-Serial bridge, such as the one supplied by ESU. Others may cause issues due to a cheaper design leaving features out to save money.
It is unknown if it is compatible with JMRI. The complexity of some ESU decoders is an issue for the programmers who create the parameter files for JMRI/DecoderPro.
Importing CVs into JMRI
It is possible to export a list of CVs created using the LokProgrammer software, which can then be imported into JMRI.
Under the Tools menu, select the Export CV List, and save that file. In JMRI open that locomotive's entry in the roster, or create a new one. Then, under the File menu, select Import then LokProgrammer CV List File. Select the file previously created and JMRI will parse the file and extract the CV values. Once completed the various tabs will be populated with the values that were set using the LokProgrammer software.
Be aware that this process is much slower than using the LokProgrammer to write the CVs to the decoder. DecoderPro cannot update the decoder's firmware.
The LokProgrammer Software also features the ability to create a Bulletin, listing all the details of the locomotive that was programmed.
Unofficial LokProgrammer Manual
A guide to the LokProgrammer is available in the files section of the LokSound email list on Groups.io:
- LokProgrammer Setup
- Advanced Consisting with LokProgrammer
- Overview of creating a LokSound v5 sound project and loading it using the LokProgrammer.
- LokSound5 Soundslot Design: Creating Templates
- LokSound5 Soundslot Design
- Setting up your ESU Loksound Programmer Part 1
- ESU LokProgrammer Function Mapping
- "Bricked" LokSound Decoder
- "Locking" a LokSound Sound Project
- Additional LokProgrammer Support
- Are LokSound v4 Sound Files compatible with Loksound V5 Multifunction Decoders?
- Increasing Rate of JMRI Read/Write Operations
- NCE USB and Power Pro Command Station
- Rapido Sound Files for LokSound Multifunction Decoders
- What is a LokProgrammer
- What is the Default Address of a Multifunction Decoder?
Articles Referencing this Page
- Checklist for Choosing a Digital Command Control System
- Computer Interface List
- Configuration Variable/Indexed Configuration Variables
- Connecting a Computer to Your DCC System
- DCC Myths
- Decoder Reset
- Decoder Tester
- Default Address
- Videos:ESU LokProgrammer Function Mapping
- Electronic Solutions Ulm
- Electronic Solutions Ulm/Multifunction Decoders
- Function Mapping
- Videos:LokProgrammer Setup
- Videos:LokProgrammer Software Tour
- L.Net Converter (50097)
- Speaker (50321)
- SignalPilot (51840)
- JST Adapter (51954)
- Blind Plug for Adapter PCB, LokSound L (51956)
- 21MTC Adapter Board 3 (51957)
- PluX22 Adapter Board 1 (51958)
- Adapter for LokSound/LokPilot L with pin connectors (51959)
- 21MTC Adapter (51967)
- 21MTC Adapter Board 2 (51968)
- I/O Expansion Board (51970)
- Adapter Board with PIN connector (51971)
- Adapter board Next-18 socket to PluX12 (51997)
- Adapter 21MTC to Next18 (51998)
- Next18 Adapter board 1 (51999)
- ESU Decoder Tester (53900)
- Adapterboard LokSound/LokPilot L (53950)
- E24 Adapter Board (53953)
- LokSound 5FX (58210)
- LokSound 5 FX 21MTC NEM660 (58219)
- LokPilot 5 Fx DCC (59220)
- ECoSLink Terminal
- Retail versions have basic programming, meant for testing purposes only. The retailer installs the correct firmware (and sound projects for sound equipped decoders) at the time of sale, based on the purchaser's preferences. OEM versions are sold exclusively to manufacturers for installation in their products.
- The LokProgrammer is able to write user specific defaults if desired. This includes the decoder's address.