Jump to content

Video: timetabled operation

Recommended Posts

I have produced a fully narrated 9 minute video showing timetabled computer automated operation on my under construction N gauge layout, "Oxcott", featuring an IECC emulation control panel allowing either fully automatic or semi-automatic control and timetabled working in real time based on a real British Rail WTT from 1989.


Also featured are:


  1. real TOPS reporting numbers;
  2. automated announcements;
  3. tokenless block working;
  4. a virtual extension to the layout; and
  5. automated carriage lighting.


50048406552_7f11eeaafc_b.jpgTrainController signalling display by James Petts, on Flickr


I have hosted the video on PeerTube, a new distributed video platform that does not have the disadvantages (especially proneness to censorship) of Youtube's closed and centralised platform. The video is available under the Creative Commons Attribution Share-Alike licence, and can be streamed here. Because of the Creative Commons licence, the video can also be downloaded.


Link to video



Edited by jamespetts
Replaced the video link, as the original had errors. | Changed the video link to a more reliable PeerTube instance
  • Like 1
  • Informative/Useful 1
Link to post
Share on other sites

Thanks for posting. I think the automation brings a lot to the “authenticity” of the scene, particularly with announcements (how did you incorporate these?) etc. Looking forward to the next instalment. 

  • Like 1
Link to post
Share on other sites
1 hour ago, Haymarket47 said:

Thanks for posting. I think the automation brings a lot to the “authenticity” of the scene, particularly with announcements (how did you incorporate these?) etc. Looking forward to the next instalment. 


For the announcements, there is an action marker in TrainController as the train approaches the station that triggers the announcement macro.


The announcement macro uses private variables assigned to the train for its calling pattern, direction and booked platform to generate a file name for a sound file to play. For example, an announcement might be named:


~\Station announcements\Oxcott\Platform 5\Up\Arriving\Bicester.wav


This file name is made up as follows


[Fixed text]\[platform number variable]\[direction variable]\[fixed text for each trigger]\[calling pattern variable][delay text variable].wav


In this case, the fixed text is


~\Station announcements\Oxcott\


the platform number variable is


Platform 5


the direction variable is




the fixed text for the trigger in question is




the calling pattern variable is




and the delay variable is blank; if the train were delayed, the delayed variable would be " delayed" (with the leading space).


I then record an announcement for each calling pattern, platform and direction for arriving (with and without delay), standing (with and without delay) and also delay warnings and updates, the latter of which have their own slightly different but similar system. Some trains have unique calling patterns, so the calling pattern variable is blank and the reporting number is used instead. This works because the macro actually tries to play two sound files: one with the calling pattern as above and one with the calling pattern substituted for the reporting number. However, for trains with unique calling patterns, the calling pattern variable is left blank, and I do not record announcements for reporting numbers that are not associated with unique calling patterns, so only one announcement will ever play.


Having typed this message, I realise that there is a whole set of announcements that I had prepared but forgotten to implement, viz. those for the train standing in the station having just arrived. Those will be implemented in the same way, save that they will be triggered by the stop marker in the platform being activated plus a random delay of a number of seconds.


  • Thanks 1
Link to post
Share on other sites

Wow, I can imagine there has been a substantial time investment in this project alone. It’s a long time since I used variables in programming but I’m sure (hope) it will flood back if needed. Thanks for the detailed reply, much appreciated.

  • Like 1
Link to post
Share on other sites

That's fascinating, thanks for taking the trouble to document the system so clearly. None of your projects lack ambition, and it's wonderful to see Oxcott come to life. Plenty of food for thought...


All the best,



  • Like 1
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.