Software

The software that I use for controlling the layout is self created.

It is rather sophisticated and handles the following:

  • Maintenance and editing of all layout data. All soft-coded. Permanent storage is all in editable text files.
  • Fast communication with Intellibox controller using P50b command set.
  • Allow friendly control without the operator having to remember any addresses or sequences.
  • Display of track layout schematic, real-time train locations, event triggers, etc.
  • Booking of tracks and dispatching trains without collisions and deadly embraces.
  • Allows, and picks up, any speed changes, function changes or turnout changes made manually on the Intellibox.
  • Implements ballistic speed control for any locomotive addresses.
  • Ability to prevent goods trains from stopping at passenger station platforms.
  • Ability to control where trains are allowed to stop (so you don't have to see trains stopped on the mainline.)
  • Monitoring of feedback sensors to monitor train movements and button inputs.
  • Prototypical running of trains according to type, power, mass of train, track speed limit, etc.
  • Calibration and management of locomotive speeds.
  • Allows any number of locomotives to be in a train without having to match speed steps of each locomotive to each other.
  • Trains need no modification such as addition of resistors, or magnets for reed switches, etc.
  • Trains can be pulled or pushed by the locomotives allowing true push/pull operations.
  • Maintains an accurate distance odometer for every locomotive.
  • Maintains a service log for every locomotive.
  • No braking sections needed.
  • No train identification system needed. Train locations are tracked, maintained and preserved on disk in real-time.
  • Shorter trains do not have to drive to the end of long station platforms.
  • Routes can cross other tracks that have trains running in the opposite direction.
  • Switching of turnouts, lights and accessories.
  • Automatic switch on of smoke units when suitably equipped locomotives exit tunnels.
  • Automatic switch off of lights, etc. when suitably equipped trains enter hidden areas.
  • Automatic hidden station control.
  • Prototypical signal control including distant signal handling across multiple paths.
  • Allow tracks to be allocated to human use (E.g. shunting) while automatic operations continue.
  • Decoder programming.
  • Support stationary loco decoders. For example, to switch signal lighting.
  • Testing of s88 modules with audio feedback.
  • Testing of k83/k84 type modules.
  • Ability to set all signals to any aspect to check signal operation.
  • Ability to exercise all turnout solenoids to prevent them sticking.
  • Control Märklin slewing crane.
  • Control Märklin mobile crane.
  • Turntable control
  • Control of Hue lights.
  • Play sounds.
  • Display arrival and departure data in real-time on separate computers running RemoteSign.
  • Play sounds via RemoteSign running on remote computers.
  • Supports control desk type station control, on screen, or using a remote physical desk with push buttons.
  • Events can be user defined to perform operations such as dispatching trains, playing sounds, generating speech, displaying RemoteSign scrolling notices, Hue lights and user interface operations. Events can also branch on conditions, repeat and use timers.
  • Generate real-time dynamic arrival and departure announcements in German or English
  • Provide a web service that allows any browser to control trains, dispatch trains, view track views for the current position of the train, view log, initiate events, etc.
  • Schedule generation, taking into account distances between stations, train renumbering, etc. 
  • Generation of prototypical 'Buchfahrplan' documents from train schedules for trains.
  • Generation of timetables for stations.
  • Logging of almost all activities with settings to determine what items should be logged.
  • Logging of data such as all protocols for all locomotive addresses in the Intellibox, all Intellibox special options (with descriptions of settings and values where known), all signals, trains, tracks, etc.
  • Consistency checks check for data inconsistencies (For example, trains having a loco that is not currently on the layout etc.)
It runs on Windows and is written in Visual Basic 6. As of February 2018, there is about 2.7 MB of code! It calls down into Windows for text to speech and permanent storage of data.

Many of the concepts and techniques date from when I first starting writing software for controlling Märklin digital trains in 1989. At that time, I wrote a program using Turbo Pascal that ran on an IBM PC and controlled the Märklin 6050 interface.

Sadly Uhlenbrock have dropped the P50b protocol from their second generation Intellibox and seem to have adopted LocoNet across their product range. I may have to rewrite the interface to use LocoNet.

Sorry, the software is not freely available for others to use. I do not have the time to answer questions and provide support for it. (And I know of some bugs!) The RemoteSign program is however available at http://remotesign.mixmox.com