page is intended to share my own experiences and thoughts on the CT Elektronik
PC Programmer interface ('SoundProg') and associated software in relation to programming the
SL51-4 sound+motor decoder (also applies to the SL75, SL76, SL82 and GE75 decoders).
What is the CT Programmer?
simply, the CT Programmer is a device which you can attach between your PC
and a CT decoder in order to load your sounds onto that decoder.
You can see a picture of it below, in the form of an open circuit - I've put
mine inside an old hard disk power supply case as I prefer not
to have exposed electronics sitting on my desk.
I will talk specifically about my experiences in programming the SL51-4 decoder
using the CT Programmer, but the information is pretty much identical for the
SL75/SL76 (small versions of SL51-4), the GE75 (sound-only version of SL75),
and the SL82 (large scale version), all of which
are 'revision 4' CT decoders.
The revision number of the decoder is very important
here, as I know through painful (not to mention expensive) experience that the
same setup and software does not work with older revisions.
Let us first list out the various components used in this process:
- SL51-4 (or
SL75/SL76/SL82/GE75) decoder - this may be installed in a loco already (as I normally
do - leaving the programming until the physical install is complete), or may
be done right up-front, which has the benefit of testing the decoder very
early on for potential faults (luckily uncommon these days).
- the CT Programmer documentation is a little confusing on this subject, but
I have found that you DO need a speaker attached to the decoder in
order for the programming to work successfully. During the programming you
also get a series of 'beeps' from the speaker which confirm that the
download of data to the decoder is indeed working ok. More on that later.
- CT Programmer
- this is a small Serial device presented on an exposed circuit board, readily
identifiable by a huge capacitor on the top! I'm not sure why CT don't put
it in a box. Still, it works, and is functional so I guess I should
stop complaining and get on with it!
- Serial cable - sounds obvious, I know, but this little item caused me the biggest
problems of all when originally trying to get the programmer to work. Again,
the documentation from CT is incomplete and inaccurate. I could not get a
simple serial cable to work at all. So, I tried a serial-to-USB cable (a cheap
one from eBay), and that did not work either. Finally I talked to Alan, from
Etched Pixels, who had apparently got this working himself
and found out from him exactly what cable he had used, and so I got the same
model: a Belkin F5U103. Basically it needs to be
a cable which has the flow control line properly implemented, and any cable that
uses the Prolific 2303 chipset should work just fine.
- Power supply
- again, this isn't obvious as to what PSU/adapter to use - the documentation
is somewhat lacking, and there is a general concern by various people that
the programmer is very fussy, and it depends upon the type of decoder being
programmed too. Anyway, I didn't find any of these things an issue - a simple
15V/500mA DC power adapter works absolutely fine (you can get one for around £10...
mine came from DCC Supplies). Perhaps the concerns were with an old version
of the programmer, or older decoders.
- PC -
theoretically any PC will do, as long as it can take the cable you've used. I have used it
with Windows XP, Win 7 and Win 8.1 successfully, but the software is purely DOS-based, which means it
'should' work with any version of Windows, as long as you can find the Command
- another very tricky area, bady documented. Each decoder and revision appears
to need a different level of the low-level software, and if you use the wrong
version it has the potential to fry the decoder! During a trip to DCC Supplies
we programmed an SL51-2 with the SL51-4 software, and this just ended in a
flash of fire and a puff of smoke once we placed the loco on the track. There
are 3 elements to the software: something called FILLFLASH; a Windows front-end
called SoundProg; and a firmware updating program called UPDATEFL. I'll talk about each of
these shortly. Note that YouChoos has developed its own software for creating
sound projects for CT sound decoders now, which you can look at
- obviously if you want to program a decoder, then you need some data to put
onto it! This comprises 3 basic parts: a list of CV settings; a definition
of what sounds to load; the sound files themselves. This is often referred
to as a Sound Project, although I tend to call it a Sound-Set
because of some differences in the way I put the files together. Please refer
to the guide on how to put a Sound-Set together
for more information.
mentioned above, there are essentially 3 software programs available from CT
which can be used for the programming of decoders. If you have experienced the equivalent
LokSound or Zimo software, then you'll probably be appalled at the CT software, as it
is incredibly basic, difficult to use and some of it cannot even be installed
on non-Austrian/German PCs!
is worth appreciating that I myself am a software engineer by profession, so
I don't mind the low-level stuff too much, but CT's software is certainly not
designed for your average Joe! Luckily you can use YouChoos' own software
, which takes most of the pain out of it!
software is theoretically downloadable from the CT web site (www.tran.at), if you can find it,
need to read German, or get Google to translate it for you. I believe that what
is there as I write is all applicable for revision '-4' decoders, but I wouldn't
like to guarantee that of course! I'll try to remember to add in details of
the exact version of each program below so that you can cross-verify if you
try to use a newer or older version. So, let's take a look at the software:
Beware though that CT tend to forget to update their website with the latest software,
so ask the question directly if you want to be sure to be up to date.
- this is a low-level program which communicates directly with the CT Programmer,
sending it the necessary signals to load the requested CV values and sounds into the
decoder. There isn't much to it - it takes 3 parameters from a DOS Command Prompt: name of your CV list
file; PC's COM Port where the Programmer is attached; name of your sound-set
definition file. When it runs it blurbs out lots of text telling you what
it is doing, showing some of the data being processed. It is not at all user-friendly,
but at least you can get some idea that something is happening! FILLFLASH
is the tool that I use, and nothing else in fact. I believe that older versions
of FILLFLASH had a slightly different name - something like FILLFLSH - but
that isn't too relevant now. FillFlash V7 is the latest version that I am aware of and works with
all rev4 CT sound decoders, as long as they have at least version 123 of the firmware.
- this is CT's attempt at a nice GUI/Windows interface where you can build
your CV lists and define your sound-sets - choosing which sound files should
be used for which effect. You can save your work as a Sound Project,
which is the term generally used. I deliberately don't call what I do Projects
because I don't bother with SoundProg - I just execute FILLFLASH directly
with the names of the CV and Sound definition files. I had great difficulty
getting SoundProg to install on my PC at all - the installer just kept complaining
about runtime components. Various web sites indicated
that I needed to temporarily set my PC to German/Austrian settings, do the
install, then switch back to English. However, despite trying all that, I
never got the installer to complete successfully. However, even with an apparently
broken install, it was possible to run the program, which is all in German,
and I could never get it to talk to the CT Programmer anyway, so eventually
gave up and settled for using FILLFLASH directly instead. Apparently underneath,
SoundProg calls FILLFLASH anyway, so technically you are not changing anything
- just getting a GUI interface to configure things. In fact, I've now written my own
YouChoos software with GUI interface to do all this anyway, which you can take a look at
- this little program is another low-level thing which is used for refreshing
the FIRMWARE on the decoder. The FIRMWARE is the software on the decoder itself,
stored on FLASH memory, so if CT releases an update which gives you fixes
or enhancements then it is theoretically possible to update the FIRMWARE
and start using those updates, rather than having to replace the whole decoder,
or send it back to CT. A neat feature in theory.
are various myths surrounding the CT software and programming setup,
voiced on certain web sites and forums, and it is worth squashing a few right
must be on C: drive - certainly not true of FILLFLASH, which works
from any drive. I cannot say for sure about SoundProg, as I only ever
put it on C, and wouldn't touch it with a bargepole anyway.
and data files must use 8.3 format - by this I mean 8 characters for the
name and 3 characters for the file extension e.g. "HELLO.TXT"
has a name of "HELLO" and an extension of "TXT".
This restriction does not appear to be true either - I have had no problems using files in long-named
subdirectories, where the names are much longer than 8 characters, and also
in directories which contain spaces in their name. However, I suspect
this is simply making use of Windows' current directory which means
it looks for the files in a location relative to where you run FILLFLASH.
I run FILLFLASH from the SAME directory as where all the associated
files are held, so that might be why it works for me.
- You must
disconnect the speaker from the decoder during programming - untrue! In
fact I've found exactly the opposite - you need to have the speaker connected
or the programming doesn't actually work at all. It is also useful to have
the speaker connected as it gives you some positive feedback (beeps) that
the process is actually working.
- You can read
data OFF the decoder using the CT Programmer - no, sorry, you cannot.
It is a nice thought, but unfortunately the Programmer is an entirely one-way
device. In fact, the Programmer is so dumb that it does not even know if the
decoder is attached - it just blindly sends data through its outputs and begins
to pray! The only feedback it gets is that it can detect a short circuit.
Let's See It Work Then!
this is beginning to sound a bit negative, and yes, I have many reservations
about the programming side of CT decoders, but what we need to concentrate on
(having solved the programming issues) is what the results are like... and it
is worth the effort...
chat then - if you want to see this in action, or read more detail, then please
take a look at the YouChoos software developed for
this purpose. Full documentation is provided online for you to read too.