Today and tomorrow I’m at #OpenTransport2025 in Wien. Friends and fellow regular rail travellers @moof @bovine3dom @maartje are also here. I’ll post as and when I can!
#OpenTransport2025 Yes ideas can happen in unlikely places. But to the person just scrolling on their phone while pissing at the urinal: that’s grim. Did you wash your phone too? 🤔

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

We have Norwegian chocolate made in Lithuania at #OpenTransport2025
Learning about Open Rail Association at #OpenTransport2025 https://openrailassociation.org
OpenRail Association

The OpenRail Association provides a neutral space for collaborative development of Open Source software in the railway sector. It is incorporated as a non-profit organisation according to Belgian law as AISBL.

Entur in Norway has a free system called Tavla where you can build a departure screen for your local stop. https://tavla.entur.no/demo #OpenTransport2025
🤔 https://map.vlak.si at #OpenTransport2025 shows live positioning of trains in Republika Srpska. HOW?
Ha. Line of #OpenTransport2025 "Why do I know where my pizza is, and not where my train is?" (related to Slovenia)

@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!

src: https://www.finance.si/transport-in-logistika/zakaj-lahko-spremljamo-kje-se-vozi-nasa-pica-ne-vemo-pa-kje-je-nas-avtobus-ali-vlak/a/9012213

Zakaj lahko spremljamo, kje se vozi naša pica, ne vemo pa, kje je naš avtobus ali vlak?

V času, ko imajo vsi polna usta digitalizacije, potniki nimajo dostopa do osnovnih informacij o prevozih

Časnik Finance - poslovni dnevnik, novice, dogodki

@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

Landets Puls

@jon Extrapolation from timetables?
@HaTetsu it’s in Serbia live updated at least.
@jon @HaTetsu author here, it's purely based on linear interpolation, the "live" data just applies an offset. Now it's built as a MOTIS UI, since the original app broke beyond repair.
@jon The Öffi app for android has this as standard. It's primarily a route planner for all public transport. It's free and the source code is available for download.
@RonInDortmund Yes. But that’s not the point. This is about how to display, not the data per se. It allows you to make a custom board you’d - for example - show on a screen in a hotel reception or café

@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)

ZVV-Abfahrtsanzeige individuell anpassen

Erstellen Sie Haltestellen-spezifische Abfahrtszeiten – ideal für Unternehmen, Schulen oder Organisationen.

Abfahrt – München Hbf

Live-Abfahrtszeiten des Regional- und Fernverkehrs sowie der S-Bahn mit Informationen zu Gleisen und Unterwegshalten sowie Meldungen zur Fahrt und aktuellen Störungen

@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 Monitor by coppermilk

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.

Thingiverse
@gommehammer @jon Climbing Centre Kassel does this too. Though not using NVV or KSG infrastructure. They just use RMV's webview. 🙏

@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)

Fahrplandaten für Entwickler mit individuellen Projekten

Informationen für Entwickler, die unsere Fahrplandaten verwenden möchten.

Hamburger Verkehrsverbund
@patrick anecdotally but local Verkehrsverbunde seem better able to do this than larger railways!
@jon I have no doubt about that after all the bits of information I've picked up over the years from @marudor
Fahrplan für Entwickler | VVO-Navigator - Ihr Mobilitätsportal für Dresden und die Region

Verkehrsverbund Oberelbe. Ein Ticket. Alles fahren. Tickets, Tarif, Fahrplan, Serviceangebote und Freizeittipps. Mit Bus und Bahn in Dresden und die Region. InfoHotline 0351 852 65 55

@jon are they doing interesting things and if so, do you think I should join?
@wnd ask Brede at Entur.
@jon they’re also on mastodon!
@openrail

@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)

[Transports] S3E10 - Railway and Free Software: OSRD and OpenRail Association

Create the OSRD business software within SNCF Réseau, and transfer its governance to the international railway association OpenRail, created for the occasion.

Podcast Projets Libres !
@jon The taste of Easter holidays! (while skiing in Norway...)
@jon They also make all the Swedish crispbread in a specific set of dimensions (the long, narrow pieces that come in boxes of that shape) for Swedish supermarkets and (at least at once) IKEA
@jon Freia and it’s Swedish sibling Marabou are brands of Mondelēz International, a company that refuse to take it’s business out of Russia. Buying Freia or Marabou indirectly supports Putin and his illegal and unjustified war against Ukraine.
#SlavaUkraini #BoycottFreia #BoycottMarabou
@denspier note: I didn’t buy it. I’d not touch this!
@denspier @jon That's a shame to here, and good to know! The Mondelez factory is fairly central in Kaunas - not the only Lithuania business that is regrettably not fully withdrawn from the Russian market.

@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 Yes, but having spoken to the @transitous people here, there are cases where *even with the same train number* the data is snipped at the border. Hungary and Romania are apparently notable for this.
@jon @transitous Yeah, because each country have only its own data. That’s where the integration needs to happen. The manual case is maybe not the main one, but the point of integration processes still stands.
@jon @transitous The crucial thing to regulate is that the open data needs to include the border point in the schedules from both sides (not for example the last passenger station before). Then integration will be possible.
@stefanlindbohm so @transitous would that work? Could train number & station (gr.) be used as means to combine?

@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?)

@cycling_on_rails @stefanlindbohm @transitous the operators have it. But the GTFS files are incomplete. Merits has it, correctly, too.
@jon @stefanlindbohm @transitous So "each country has only its own data" means each country *publishes* only its own data in GTFS, right?
@jon @cycling_on_rails @transitous Merits has it because of the integration process that is run on input data from each country. The input data is in this regard similar to what NAP’s give for each country.
@stefanlindbohm @jon @cycling_on_rails @transitous I imagine the NeTEx data might be better in this regard and more suitable for integration work?

@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.

@jon @cycling_on_rails @transitous

@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

@jon @transitous

@jon @stefanlindbohm This is potentially something we can match based on the time and train number, but this would of course be highly heuristic (and therefore not 100%) correct.
It's significantly easier if cross border trains are just in the data twice.

@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).

@stefanlindbohm I think a conversation between you and @VolkerKrause of @transitous would be useful 😀
@stefanlindbohm @jon @transitous Great, let's find a time next week maybe if that works for you? I'm still on the road all of this week for another conference.

@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.

@jon I checked and my onward journeys on Monday (to Germany) are on @transitous