TD
Train Describer (TD) Feed
Topics
Train Describer (TD) data is available only in geographical feeds, as well as a country-wide feed. Topic name are as follows:
Topic | Description |
---|---|
TD_ALL_SIG_AREA | All signalling areas |
TD_SE_SIG_AREA | Scotland - East |
TD_SW_SIG_AREA | Scotland - West |
TD_LNE_NE_SIG_AREA | London North Eastern - North East |
TD_MC_EM_SIG_AREA | Midlands & Continental - East Midlands |
TD_LNE_GN_SIG_AREA | London North Eastern - Great Northern |
TD_LNW_LC_SIG_AREA | London North Western - Lancashire and Cumbria |
TD_LNW_C_SIG_AREA | London North Western - Central |
TD_WCS_SIG_AREA | West Coast - South |
TD_ANG_SIG_AREA | Anglia |
TD_KENT_MCC_SIG_AREA | Kent and Midlands & Continental |
TD_SUSS_SIG_AREA | Sussex |
TD_WESS_SIG_AREA | Wessex |
TD_WTV_SIG_AREA | Western - Thames Valley |
TD_WWC_SIG_AREA | Western - West Country |
TD_WWM_SIG_AREA | Western Wales and Marches |
Overview
The Train Describer feed provides low-level detail about the position of trains and their train reporting number through a network of berths. Usually, but not always, a berth is associated with a signal - but there are locations (such as terminal platforms at stations) where there may be more than one berth.
From each berth, there are zero or more other berths which a train description may move, or 'step' in to. Some of these may be one-way, some may be two-way.
Message types
The Train Describer feed has seven message types:
- CA - Berth Step, where a description moves 'from' a berth, 'to' another berth
- CB - Berth Cancel, where a description is removed from a berth
- CC - Berth Interpose, where a description is interposed (placed in to) a berth
- CT - Heartbeat
- SF - Signalling data update
- SG - Signalling data refresh
- SH - Signalling data refresh finished
The CA, CB and CC messages include a four-character train description. At present, only class 1, 2 and 9 trains are included in the feed.
NOTE: The S* message types are not yet available, but have been documented in the anticipation they will be included in the feeds in due course.
Format
Messages are sent in JSON format, as follows:
- {"CA_MSG"=>{"time"=>"1349696911000", "area_id"=>"SK", "msg_type"=>"CA", "from"=>"3647", "to"=>"3649", "descr"=>"1F42"}}
- {"CB_MSG"=>{"time"=>"1349696911000", "area_id"=>"G1", "msg_type"=>"CB", "from"=>"G669", "descr"=>"2J01"}}
- {"CC_MSG"=>{"time"=>"1349696911000", "area_id"=>"G1", "msg_type"=>"CC", "descr"=>"2J01", "to"=>"G669"}}
- {"CT_MSG"=>{"time"=>"1349696911000", "area_id"=>"SA", "msg_type"=>"CT", "report_time"=>"1249"}}
- {"SF_MSG"=>{"time"=>"1349696911000", "area_id"=>"WJ", "msg_type=>"SF", "address"=>"3E", "data"=>"18", "report_time"=>"073814"}}
- {"SG_MSG"=>{"time"=>"1349696911000", "area_id"=>"WJ", "msg_type=>"SG", "address"=>"30", "data"=>"900000C0", "report_time"=>"073814"}}
- {"SH_MSG"=>{"time"=>"1349696911000", "area_id"=>"WJ", "msg_type=>"SH", "address"=>"30", "data"=>"900000C0", "report_time"=>"073814"}}
S* messages
NOTE: The S* message types are not yet available, but have been documented in the anticipation they will be included in the feeds in due course.
The SF, SG and SG messages are called S-Class messages, and they show the status of particular signalling elements:
- Signal aspects - whether the signal is displaying its most restrictive aspect or not
- Points - whether the points are set normal or reverse
- Route set - the route set from a signal to another signal or bay platform
- TRTS buttons - the status of a Train Ready to Start button, used by train dispatch staff to indicate to the signaller that platform duties are complete
- Level crossings - whether they are lowered or raised
- Track circuits - whether a particular track circuit is occupied or not
Not all train describers provide S-Class data, and those that do can may a subset of the available types of signalling elements. Wembley (WY) TD does not provide any S-Class data, whereas Rugby (R1 and T2) TDs provide all types of S-Class data except for level crossings.
S-Class data is held in train describers as a set of 2,048 locations, grouped in sets of 8 from 0x00 to 0xFF, which can hold either a '1' or a '0' depending on the status of a particular signalling element. Each time an element changes state, an SF message is sent with the address of the group - from 0x00 to 0xFF, and the status of all locations in that group - from 0x00 to 0xFF. It is entirely possible to receive an SF message which changes only one byte in an address.
Every few hours, the state of all registers is sent in a series of SG messages with addresses incrementing in groups of 0x04, and data of eight bytes (an octet). The end of the message set is indicated by an SH message.
Interpretation
To decode the set of addresses and bits in to signalling elements, several other sets of data are required:
- The signalling outputs (SOP) table for the train describer
- A diagram containing signal numbers and permissible routes, point numbers, TRTS plungers, level crossings and track circuits
If S-Class data is released, it is anticipated that the SOP tables will be provided here in JSON format.