Back in May, we spent our third year providing realtime information at Swanage Railway’s annual Diesel Gala and Beer Festival event. This makes use of the Realtime Preserved Trains technology that has been in development for about 6 years.
Most years, we’ve provided a web portal with the latest running information and running allocations. In 2018, we provided a mainline style departure board at Swanage station. This year, we raised the stakes and developed a new form of departure board complete with animating trains. This was on display at Swanage and Corfe Castle. We were also given permission to provide automatic announcements at Swanage.
Departure Boards
Many rail enthusiasts will be familiar with Worldline’s Tiger system, one of the outputs of their CIS system, and in 2018 we had a similar style display at Swanage station on a small screen. This year, the plan was to be a bit brighter, bolder and, well, different. Much of the concept was inspired by the Dutch mainline rail network, including the website Rijden de Treinen (which translates as ‘Are the trains running?') and the CIS displays found on Dutch railway stations.
As mentioned previously, departure boards were in place at Swanage and Corfe Castle this year. They showed realtime information, including expected times - novel for a preserved line, calling points and train formations. Vector art of the vehicles in operation was also comissioned, Alex Penfold providing an excellent set for the weekend, and these were also displayed for all services with locomotives attached to them1.
Speaking in mainline terms, developing a departure board is not a particularly easy problem to solve - the information should be clear, concise and easy to follow. It is very easy for a technical person like myself to go, by default, to a position of ‘information overload’ or entirely unreadable and some screens on the mainline network certainly manage that. There is also an element of lowering the barrier of entry to the railway, and increasing a passenger’s comfort and familiarity in that they’re doing the right thing. The departure board subsequently developed was aimed to achieve - but there’s still some way to go as further development could likely achieve more.
The end product was a simple solution incorporating a level of animation to alter the page every 10 seconds or so. The departure time, destination and calling points were constantly displayed on the board. Every 10 seconds, the board flipped between the platform number and expected departure time2. The graphical representations of the trains were on an approximately 22 second cycle, animating in, displaying and animating off to avoid screen burn. If the service also had a rear locomotive, then about half way through the train would animate forward in order to show the rear locomotive.
Automatic Announcements
“Automatic announcements on a preserved railway?!", I hear you say. Swanage, amusingly, had them before this event albeit slightly more primitively. It seemed like a challenge to try and get dynamic announcements working for this event through the RTPT system. I’m always quite interested in technical challenges and seeing if it’s possible for a preserved line to do something better than the mainline. It certainly wasn’t a universally popular addition at the gala, but most reaction seemed to be positive.
Announcements were on a pre-determined script, agreed by the railway, which were similar to their pre-existing announcements and generated dynamically putting in the appropriate data for a train. Interestingly, due to what is perhaps a case of pre-conditioning, it became necessary to put in what would otherwise be unnatural pauses in the sentence flow to make the announcements sound ‘right’ to the ear. An announcement without pausing does not sound all that good, but perhaps that is down to the way systems work. Personally, I thought the pauses were too long but overall a reasonable first attempt. I’ve included a video below from one of the days of testing.
Further information about Realtime Preserved Trains is available by sending us an email.
Technical Implementation
The departure boards were a fairly simple web page (I say that now, it took about 4 days to code to get right) that had its content refreshed every few seconds through Javascript. The content was not replaced directly as this affected the service animation, and instead each element was altered on a ‘delta update’ basis. CSS3 animations were used for nearly all dynamic elements on the pages, with the exception of when a new service was to appear or to remove a departed service. This was driven through the normal Realtime Preserved Trains service, which existed then as a separate platform to the mainline RTT, and as part of the location update system on the tracker devices.
At the stations, a Raspberry Pi 3 was connected to displays the railway already had: a new widescreen (or portrait, as it was actually installed) display monitor was acquired by the railway just before the gala and this was its first usage. Swanage normally have a Powerpoint based departure board so the work merely sat on top of what they had.
Automatic announcements were delivered over socket.io and were generated reactively on server by the lifecycle of a vehicle moving. The announcements were text to speech synthesized through Amazon Polly. The Raspberry Pi was connected to the amplifier at the station for this purpose.