S Class data for Q3 Describer

127 views
Skip to first unread message

Louis Park

unread,
Aug 4, 2025, 5:02:02 AMAug 4
to A gathering place for the Open Rail Data community
Hi, 

I understand that the data for the Q3 describer covering the West Anglian Main Line has not been posted by Network Rail, which seems to be a common thing over the past couple of years.

Is there any public attempts at deciphering the feed? I'm only really looking to see the status of the level crossings along the line between Tottenham Hale and Broxbourne, and after spending an hour staring at the feed I still can't quite figure out what bits correpsond to the crossings.

If anyone has an idea, please do let me know

Kindest Regards, 
Louis

Peter Hicks

unread,
Aug 4, 2025, 5:11:31 AMAug 4
to openrail...@googlegroups.com
Hi Louis

On Monday, 4 August 2025 at 10:02, Louis Park <louis...@gmail.com> wrote:

I understand that the data for the Q3 describer covering the West Anglian Main Line has not been posted by Network Rail, which seems to be a common thing over the past couple of years.

Apart from the FOI requests some time ago, Network Rail have never openly published any train describer reference data.

Is there any public attempts at deciphering the feed? I'm only really looking to see the status of the level crossings along the line between Tottenham Hale and Broxbourne, and after spending an hour staring at the feed I still can't quite figure out what bits correpsond to the crossings.

Your best bet is to work out which berths are immediately prior to the crossings, and then look at which status bits are set when a train steps in the up direction, and in the down direction.  Be aware that some crossings may only have limited indications:

  • An MCB with CCTV may have an 'up' and a 'down' indication showing when then barriers are detected 'up' or 'down'
  • An AHBC will likely only have an 'up' indication
  • Crossings with obstacle detection (-OD) may have multiple indications for various functions
  • None, some or all of them may have 'healthy' indications


Peter

Louis Park

unread,
Aug 4, 2025, 5:32:43 AMAug 4
to A gathering place for the Open Rail Data community
Ah okay, 

I appreciate the timely response.

Are S and C class messages sent at the exact same time if they correspond to the same berths, or are they sent with a certain delay between messages?

I will write a little script to try and associate berths changing to S Class messages.

Kindest Regards,
Louis 

Peter Hicks

unread,
Aug 4, 2025, 5:46:59 AMAug 4
to openrail...@googlegroups.com
Hi Louis

On Monday, 4 August 2025 at 10:32, Louis Park <louis...@gmail.com> wrote:

Are S and C class messages sent at the exact same time if they correspond to the same berths, or are they sent with a certain delay between messages?

S-Class messages refer to individual status bits on a train describer, and are a subset of (or the same as) the inputs to the train describer.  C-Class messages, particularly step messages, are generated based on the content of berths and a state transition on an individual input to the train describer.

For example, if the track section between 1069 and 1071 signals south of Broxbourne transitions from 'clear' to 'occupied', and signal 1067 is showing a proceed aspect, then the TD will send a CA (step) message from 1067 to 1079 berth.  When 1069 signal then changes to a danger aspect, another S-Class message will be sent out.

If the track section is configured on the TD to be output, an S-Class messages will be sent, which will usually be before the C-Class message is sent, but could be after (I'm looking at you, Havant ASC TD where the signal changes to a danger aspect and then the trains step) but likely only by a matter of seconds, if that.  It depends on the software running on the TD, and there is no standard that exists which says that messages must be sent in a particular order.

Suppose there is an additional track section between 1067 and 1069 signal which has its own indication - you will get an S-Class message showing the second track section occupied but with no corresponding C-Class message.  The TD covering Welwyn North is actually configured with a signal berth and two or three berths relating to the occupation of track sections behind it.

This is very low-level data you're working with, hence it's complex.  It's a bit like writing assembler code and rather than writing "5 + 10", you have to load register 'A' with the value '5', the register 'B', then call the 'ADD' function, then copy the result of register 'A' back to where you want the result.  Do that in Python and it's "c = a + b".


Peter

Christoper Stafford

unread,
Aug 7, 2025, 3:06:55 PMAug 7
to A gathering place for the Open Rail Data community
Havant, which as a signalling area is terrible for various regions, is the only area I've seen where the signals consistently change before the step, and infuriatingly the route clears at the same time as the signal. It does happen occasionally on other describers as well though, and in the other direction there are describers where it can be nearly a minute before the signal is marked as returning to danger. 

I've had quite a lot of success recently by recording a window of state transitions between about 5 seconds before each berth move and a minute afterwards, and comparing it with the states at the end of the window. It takes around a week of data to draw any firm conclusions sometimes though, and even then I'm guessing a small proportion of the signals and a large proportion of the routes based on the fact that they are usually in roughly numerical order. I've also only figured out signals, routes and sometimes TRTS indicators - level crossing indicators I've had no luck with at all.

If I hadn't been hammering at this feed on and off for years then I doubt I'd have made any progress. 

Chris

Mark Rawlinson

unread,
Aug 8, 2025, 7:23:25 PMAug 8
to A gathering place for the Open Rail Data community
On Thursday, August 7, 2025 at 8:06:55 PM UTC+1 Christoper Stafford wrote:
I've had quite a lot of success recently by recording a window of state transitions between about 5 seconds before each berth move and a minute afterwards, and comparing it with the states at the end of the window. It takes around a week of data to draw any firm conclusions sometimes though, and even then I'm guessing a small proportion of the signals and a large proportion of the routes based on the fact that they are usually in roughly numerical order.

That's basically what I do too for the Railcam/Freightmaster maps - it's extremely time consuming and labour intensive, 
especially when it comes to sidings and loops which are only used a few times a week on those Train Describers where
the S-class data is not in "roughly numerical order" :-(

 

If I hadn't been hammering at this feed on and off for years then I doubt I'd have made any progress. 

I think that's why people (myself included!) are somewhat reluctant to share the data they have worked out,
even though it goes against the spirit of 'open' data, but I'm always happy to help with specific berths if people
are completely stuck, although please note that I only keep a record of signal data, no routes etc, I'm afraid...



MARK
Reply all
Reply to author
Forward
0 new messages