Talking to the @transitous people at #OpenTransport2025
One headache: data on international trains that is missing the other side of the border
My EN Dacia Hegyeshalom 🇭🇺 - Sighisoara 🇷🇴 is 1 train but shows as 2 on Transitous
@jon context for anyone who didn't hear me tell the story: this was the title of the newspaper article that embarrased Slovenian Railways into finally publishing "locations" of their trains after years of saying it's "impossible"
#OpenedData through public shaming works incredibly well!
@jon We have this very old map in Denmark for that as well https://www.rejseplanen.dk/bin/help.exe/mn?L=vs_livemap&tpl=fullscreenmap&view=dsb&responsive=1&custom=denmark
I'm surprised it still tracks Swedish regional trains in Sweden after DSB sold them off
@jon The regional transit authority in Zurich offers a similar service, I've already seen some larger companies have a display in the entrance to their offices. It's pretty neat, as you can filter for specific lines and directions.
https://www.zvv.ch/de/service/diverse-services/individuelle-fahrgastinfo/individuelle-abfahrtsanzeige.html (only available in German)
@elba013 @gommehammer @jon i think those little 3D stations are cute as well 😁 https://www.thingiverse.com/thing:6166463/files
But it adds more e-waste into the world, otherwise I would install one in my flat
Wiener Linien ESP32-S3 Public Transport Departure MonitorBrief description: The ESP32-S3 Public Transport Departure Monitor project is a small device based on the ESP32-S3 platform. It allows you to track public transport departures in real time and receive a countdown to the next departures. The project is based on the use of data from Wiener Linien, a public transport network in Vienna.Project components:1x LILYGO T-Display-S3 ESP32-S3 1.9-inch board.1x USB cable with magnetic connector.1x M2.5 nut 1x M2.5x18 bolt.Glue.Details printed on a 3D printer.Sketch for Arduino IDE.InstallationClone or download this repository.Open the Arduino IDE and install the required libraries (TFT_eSPI, ArduinoJson, HttpClient, WiFi).Connect your ESP32 device to your computer.Change the ssid and password variables in the code to match your Wi-Fi credentials.Important: Update the URL variable in the code to select your specific RBL (reference bus stop). You can find your RBL here.Flash the code to your ESP32.Opportunities:Displaying the countdown to the next public transport departures.Updating information every 30 seconds, ensuring that the data is up to date.Automatic startup when booting the ESP32-S3 device.Authentic color design, providing ease of use.Based on the open data of the City of Vienna provided by Wiener Linien.Description:The ESP32-S3 Public Transport Departure Monitor project is a homemade device designed to effectively track and manage the time of public transport departures. Inspired by the needs of citizens tired of endless waiting at bus stops, the project provides accurate data on the time of the next departures on selected routes.The main goal of the project is to reduce the waiting time at bus, tram and metro stops, allowing users to know when they need to leave home to arrive at the time of departure of transport. The project is equipped with a user-friendly interface and is automatically updated every 30 seconds to provide up-to-date information about the departure time.Future plans:[ ] Add support for multiple urban transport lines to track different routes and flexible travel planning.[ ] Allow users to set preferences and favorite routes.
@jon Public APIs allow wonderful ideas to become possible.
I love my¹ HVV integration into Homeassistant, made possible by API access (open to anyone asking nicely) for I believe more than a decade now. 😃
-> https://www.hvv.de/de/fahrplaene/abruf-fahrplaninfos/datenabruf
¹ (Before this causes any misunderstandings: The integration is not by me; I was referring to the implementation in my personal Home Assistant setup. See https://github.com/nilstgmd/hvv-card and https://www.home-assistant.io/integrations/hvv_departures)
@jon I've made a @projetslibres_podcast episode about it with Loïc Hamelin in january : https://www.projets-libres.org/en/podcast-en/transports-create-a-railway-business-software-and-federate-players-in-europe-osrd-and-the-openrailsncf-reseau-association/ 😀
you should come to #fosdem in Brussels , there's a Railway and Open Transport track. Last year schedule and videos: https://archive.fosdem.org/2025/schedule/track/railways/ (it's really cool)
@jon @transitous Alternatively you get multiple instances of the same station from different operators.
(I suspect Motis can pave over this, my thing cannot yet.)
@jon @transitous This can also be due to the EN actually technically being a coach group (kurswagen), or train that turns into a coach group. Often the carriers on either side don’t even have data on what happens outside their own country.
This is solved in MERITS with a lot of manual links in the form of ”at border station X, train number Y is to be linked with train number Z”
Even with perfect open data in each country (lol), any aggregation of international data needs this integration layer
@stefanlindbohm @jon @transitous but (presumably?) one can buy a single ticket for the whole night train journey, and if so that ticket would (very likely) be purchaseable directly at one (or both) of the operators. Meaning the operators must know about each other's data to some extent, no?
(Maybe only the ticketing department has access not the timetable department, maybe only ticket counters have access not the website, but that's all a question of data management *within* an operator, no?)
@partim Yep. NeTEx is hell to work with, but it does support A LOT richer data. Like for example marking a scheduled point as a non-passenger border crossing.
@cycling_on_rails Well, it kinda depends. Each operator’s sales systems might have data about the other country because that system use Merits data (after integration with the other countries). I don’t know exact details here though. But I do know that in practice some operators don’t export outside their own borders.
Not sure if this is the hill to die on anyway, because even if all data was published continuous, now you have deduplication to do as the integration instead
@transitous @jon Doesn’t need to be that crazy. Date and train number (or linked number) is what it’s designed to be matched on.
But I don’t believe a journey planner project should do this at import. It should be a separate project that sorts out the aggregation/integration and outputs clean files that can be used by journey planning projects. I would be happy to advise (not develop - time constrains) such a project. I know others I can ask too (they haven’t spoken publicly on this yet).
@jon @VolkerKrause Happy to do it!
@jon @transitous The question is who should do this integration work. If it is to be mandated, it needs to happen at a level higher than current legislation mandates. NAPCORE maybe? But they don’t have any data publishing of their own as of currently.
I tend to think there is an opportunity for someone either commercially or community driven to run this integration and sell it to whoever uses it for commercial purposes. Not sure how well anything else would work in reality.