Train Position FAQ/Notes

Updated on 07/21/2016

Train Position Questions

  • Can the TrainId be linked to PIDS predictions?

    No, not yet. This will be addressed when the PIDS system is rewritten.

  • During single tracking do trains retain their appropriate destination codes?


  • When a train turns around at a terminal does it keep the same TrainId?

    Generally speaking, yes.

  • Does the same physical train keep its TrainId over multiple days or longer?

    No. A TrainId is generated when a train is brought into service. Once a train goes out of service, the TrainId may be reused by a new train.

  • Does a train keep the same TrainId through the course of a day?

    Usually. However, a train's identifier will sometimes be reset for various reasons.

  • Is the TrainId the same one sometimes discussed over the radio?

    No. TrainId is a unique identifier for a single train. Other train designations may not necessarily be unique.

  • When a train is clearly waiting at a terminal station, why does the Train Positions method show it as sitting on the circuit just past the station?

    The system which detects which circuit a train is occupying will sometimes place it on the adjacent circuit (past the station). Most notably, trains located at the front edge of a platform trigger occupancy on the next circuit.

Circuit Questions

  • What is the length of the individual track circuits/how long does a train take to traverse a circuit?

    The length of a track circuit does not correlate directly to traversal time. The latter varies greatly due to speed restrictions, congestion, and other factors. Additionally, trains sometimes travel slower on shorter circuits than on longer ones. That being said, we are working on getting the circuit lengths (and again, it won't be perfect) and hopefully we will be able to release it soon.

  • What about lat/lon positions for the circuits?

    The idea of the train position API is to locate trains in relations to stations. For rendering trains on a map, one possibility is to determine the distance between stations (based on our existing APIs), and place the circuits between these stations at equidistant points.

  • Does the CircuitId have any relationship to chain markers?

    No. CircuitId is a unique identifier assigned to a track circuit. It is localized only to the API and is not related in any way to an actual circuit's position, feet from a centralized location, etc.

  • What are tracks 0 and 3?

    Track 0 is a crossover track which connects different tracks. If you were to draw track 0, it would be diagonal.
    Track 3 is a pocket track. This can be drawn as horizontal, similar to tracks 1 and 2 (the main revenue tracks).

  • What are left and right neighbors for a track circuit? How can you have two neighbors in the same direction?

    The majority of main line (tracks 1 or 2) circuits have a single left neighbor, and a single right neighbor for the same track. Another way to think of left and right are before and after.
    Circuits at the edge of a track leading into a yard have no neighbor in the direction of the yard. In reality, they have neighbors on both left and right, but the API does not expose yard track circuits.
    In case of a switch (where a train can continue on its track or veer off towards another track), a circuit will have TWO neighbors in the SAME direction.
    In the example below:

    - Circuit 1 has two right neighbors, Circuits 2 and 4.
    - Circuits 1 and 6 have ZERO left neighbors, meaning they are at the edge of a revenue track. The actual left neighbor for both circuits is a non-revenue yard track circuit.
    - Circuit 8 has two left neighbors, Circuits 7 and 5.

    background Layer 1 1 6 2 7 3 8 4 5