Programming:Electronic Solutions Ulm: LokProgrammer
Summary: A LokProgrammer is a hardware device for programming ESU's Multifunction DCC Decoders.
|See more Misc DCC Items|
|Manufacturer||Electronic Solutions Ulm|
|Compare Prices||Latest Prices|
|Manufacturer Part Number||53452|
|Product URL||Product Link|
|Manual URL||Manual Link|
|Has computer interface||USB, Serial|
|Firmware Upgrade Possible|
|Height||22 mm2.2 cm <br />0.022 m <br />0.866 in <br />0.0722 ft <br />|
|Length||95 mm9.5 cm <br />0.095 m <br />3.74 in <br />0.312 ft <br />|
|Width||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 locos with ESU 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 much faster method of reading and writing to the decoder than using a command station's program outputs.
The LokProgrammer can upgrade decoder software or install new sound files. It also allows the user to set the default values which are used after a reset.
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.
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.1.0. 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 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 reprogram the sound set available, a Lokprogrammer is necessary.
The Select series may not allow individual changes, only complete sound programming may be done.
LokSound decoders allow for extensive remapping of the function buttons. If you have many locomotives equipped with LokSound decoders, a Lokprogrammer is a worthwhile investment, as it allows a lot of parameters to be altered quickly and easily, as well as sound projects. It is faster than JMRI for tasks such as this.
Using the LokProgrammer
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
- 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 the 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 the 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 the 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 be the 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.
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. It also cannot update the firmware.
The LokProgrammer Software also features the ability to create a Bulletin, listing all the details of the locomotive that was programmed.
For more details, see the Lokprogrammer page on ESU's website.
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
- 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?
Search for more LokProgrammer FAQs
Other places that reference here
- 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
Related Electronic Solutions Ulm Other DCC Equipment Items
- ↑ The LokProgrammer can write defaults if the user wishes to do so. This includes the decoder's address.