Skip to content

Releases: Fluddel94/MVG_Abfahrtsdisplay_E290

2.4.0

Choose a tag to compare

@Fluddel94 Fluddel94 released this 07 Oct 16:11

Stabileres WLAN und flexiblere Tasten.

Update: Im Einstellportal unter „Firmware“ die angehängte firmware.bin hochladen – oder per Web-Installer (https://fluddel94.github.io/MVG_Abfahrtsdisplay_E290/) neu installieren. Die Einstellungen bleiben erhalten.

Neu

  • Häkchen „Tasten-Ansicht nach 30 s beenden“ im Portal unter „Tasten“ (Standard: an). Ohne Häkchen bleiben Station 2, die andere Richtung oder Seite 2 stehen, bis eine Taste gedrückt wird.
  • WLAN-Protokoll im seriellen Monitor (mit DEBUG_LOG 1): Abbrüche mit Reason-Code, Zugangspunkt, Kanal und Signal.

Geändert

  • WLAN stabiler: Verbindung mit dem stärksten Zugangspunkt (Mesh/Repeater), neue Verbindungsversuche erst nach Ende des laufenden, mit wachsenden Pausen; nach sechs Fehlschlägen kurzer Neustart des WLAN-Moduls.
  • Der WLAN-Fehlerbildschirm zeigt keine selbst verursachte Abmeldung mehr als Ursache.
  • Tasten: Die andere Taste zeigt direkt ihre Ansicht, dieselbe Taste nochmal führt zurück zur Standardansicht.
  • Portal: Dritte Antwort bei „Welche Richtung fährt ins Zentrum?“ heißt jetzt „Keine oder gemischt“.
  • README: ungetestete Router-Tipps entfernt, Portal-Bilder aktualisiert.

Alle Details: https://github.com/Fluddel94/MVG_Abfahrtsdisplay_E290/blob/main/CHANGELOG.md

2.3.0

Choose a tag to compare

@Fluddel94 Fluddel94 released this 05 Oct 15:43

Richtung je Station mit „→ Zentrum“/„→ Auswärts“ im Kopf, zwei frei belegbare Tasten, Abfahrtszeit wahlweise in Minuten und ein komplett überarbeitetes Einstellungsportal.

Update: Im Web-Installer Update MVG Abfahrtsdisplay wählen (Erase device nicht anhaken) – oder firmware.bin unten herunterladen und im Einstellungsportal unter Firmware aktualisieren hochladen. Alle Einstellungen bleiben erhalten; Anzeige und Tasten verhalten sich nach dem Update wie bisher, bis du im Portal etwas änderst.

Anleitung: README · English

Neu

  • Richtung je Station mit Bezeichnung: Station 1 und 2 zeigen bei „nur Richtung H/R“ und bei umschaltbarer Richtung im Kopf „Station → Zentrum“ bzw. „→ Auswärts“, je nachdem, welche Kennung (H oder R) Richtung Zentrum fährt. Ohne Zuordnung („Keine“) steht bei umschaltbarer Richtung „→ H“/„→ R“, sonst nur der Stationsname. Die umschaltbare Richtung (bisher „getrennt“) geht jetzt auch mit zwei Stationen (nur Station 1).
  • Tastenbelegung: Linke und mittlere Taste haben je eine Funktion: Richtung wechseln, Station 2, weitere Abfahrten (Seite 2) oder keine; die mittlere Taste alternativ den WLAN-QR-Code. Ein Druck zeigt die Ansicht der Taste; ein weiterer Druck (auf eine der beiden Tasten) oder 30 s später geht es zurück zur Standardansicht. Seite 2 gibt es damit auch mit zwei Stationen und bei umschaltbarer Richtung. Mittlere Taste lang drücken: wie bisher Systeminfo und Einstellungsportal.
  • Abfahrtszeit in Minuten („4 min“, „jetzt“; ab 60 Minuten Uhrzeit) als Alternative zur Uhrzeit, Verspätung eingerechnet.

Geändert

  • Einstellungsportal neu aufgebaut: jede Station in vier Schritten (Station, Verkehrsmittel, Richtungsanzeige, Linien), beide Stationen gleich einzustellen. Die gewählte Station steht als Karte mit „Ändern“, die Station-ID unter „Station-ID manuell eingeben“. Verkehrsmittel als farbige Schalter; was an der Station nicht fährt, ist gestrichelt. „Richtungsanzeige“: alle Richtungen gemischt, umschaltbar per Taste (H/R), nur H, nur R oder je Linie. Bei umschaltbar/nur H/nur R fragt das Portal „Welche Richtung fährt ins Zentrum?“ und zeigt dazu Beispielziele aus den aktuellen Abfahrten. Unter jeder Einstellung steht, was das Display zeigt.
  • Neue Bereiche „Anzeige“ (Uhrzeit oder Minuten) und „Tasten“ (Standardansicht, Belegung links/Mitte mit Vorschau, WLAN-QR-Code bei der mittleren Taste). Eine neue Funktion (Station 2, umschaltbare Richtung) wird automatisch einer freien Taste zugeordnet, sonst erscheint ein Hinweis.
  • „Speichern“ steht in einer Leiste am unteren Rand und zeigt ungespeicherte Änderungen. Gespeichert wird ohne Seitenwechsel; fehlende Angaben werden direkt am Feld gemeldet.
  • Während ein WLAN-Ausfall überbrückt wird (bis 60 s), reagieren die Tasten weiter.
  • Die Stationsnamen werden im Gerät gespeichert: Das Portal zeigt sie sofort, das Display braucht beim Start keine Abfrage dafür.
  • Station 2 wird nur abgerufen, wenn sie einer Taste zugeordnet ist.
  • Update von 2.2.0 und älter: Die Einstellungen werden so übernommen, dass Anzeige und Tasten gleich bleiben. Ein Zurückspielen von 2.2.0 funktioniert weiterhin.
  • README und README_TECHNIK (deutsch/englisch) überarbeitet: Bedienung, Einstellungsportal mit neuen Bildern, Hilfe bei WLAN-Abbrüchen.

Korrigiert

  • WLAN-Stromsparmodus abgeschaltet: Bei manchen Routern führte er zu wiederholten

2.2.0

Choose a tag to compare

@Fluddel94 Fluddel94 released this 03 Oct 16:04

Neu

  • Linienauswahl je Haltestelle: Im Einstellungsportal listet „Linien auswählen“ alle Linien der angehakten Verkehrsmittel mit Beispielzielen je Richtung. Je Linie beide Richtungen, nur H oder nur R – bis zu 16 Linien. Ohne Auswahl zeigt das Display wie bisher alle Linien.
  • Zweite Haltestelle: optional mit eigenen Verkehrsmitteln, Richtung und Linien. Die linke Taste (BOOT) schaltet um, nach 30 s und nach einem Neustart gilt wieder Haltestelle 1. Die Nummer steht im Kopf vor dem Namen. Beide Haltestellen werden jede Minute abgerufen – das Umschalten geht ohne Wartezeit.
  • Richtung je Haltestelle: alle Richtungen, nur Richtung H oder nur Richtung R. Bei einer Haltestelle zusätzlich wie bisher getrennt nach Zentrum/Auswärts.
  • Stationsname im Portal: Die Überschrift zeigt den Namen der eingestellten Haltestelle, eine unbekannte ID wird gemeldet.

Geändert

  • Kurze Störungen bleiben unsichtbar: Fällt die MVG-Schnittstelle oder das WLAN kurz aus, bleiben die Abfahrten bis zu 60 s stehen (Uhrzeit läuft weiter), erst dann erscheint der Fehlerbildschirm.
  • Schienenersatzverkehr erscheint als „SEV“.
  • Gekoppelte Regionalzüge mit verschiedenen Liniennummern (z.B. BRB RB 55/56/57, RE 80/89) erscheinen als eine Zeile.
  • Bei geteilten Zügen wird die kleinste statt der größten Verspätung angezeigt.
  • Weniger Arbeitsspeicher: Die Antworten der MVG werden direkt beim Empfang ausgewertet.

Dokumentation

Update

Haltestelle, WLAN und Einstellungen bleiben erhalten und gelten als Haltestelle 1.

  • Mit Kabel: Web-Installer → Installieren → Update MVG Abfahrtsdisplay (Erase device nicht anhaken).
  • Ohne Kabel: firmware.bin unten herunterladen und im Einstellungsportal unter Firmware aktualisieren hochladen.

Alle Details: CHANGELOG.md


English: line selection per stop, optional second stop (switched with the BOOT button), direction per stop, short MVG/Wi-Fi outages bridged for up to 60 s, rail replacement shown as "SEV", coupled regional trains merged. Settings are kept on update. Details: README_EN.md

2.1.0

Choose a tag to compare

@Fluddel94 Fluddel94 released this 01 Oct 09:32

[2.1.0] – 01.10.2026

Behoben

  • Zu wenige Abfahrten an großen Stationen, wenn nur ein Verkehrsmittel
    gewählt ist (z.B. Moosach, nur S-Bahn, eine Richtung: nur 2 Zeilen).
    Die MVG zählt das Abfragelimit über alle Verkehrsmittel der Station.
    Das Display fragt jetzt 60 statt 20 Abfahrten ab und liest davon nur die
    benötigten Angaben ein (weniger Speicherbedarf).

Geändert

  • Misslingt ein Abruf der Abfahrten, versucht das Display es nach 2 s
    still ein zweites Mal. Erst wenn auch das scheitert, erscheint der
    Fehlerbildschirm und der Abruf zählt als API-Störung – einzelne
    Aussetzer (z.B. Zeitüberschreitung) bleiben unsichtbar.

Intern

  • Kommentare und technische Dokumentation überarbeitet.

2.0.0

Choose a tag to compare

@Fluddel94 Fluddel94 released this 30 Sep 21:10

[2.0.0] – 30.09.2026

Einrichtung ohne Arduino IDE: Firmware über den Web-Installer im Browser
aufspielen, WLAN per USB eintragen, alles Weitere im Einstellungsportal.

Umstieg von 1.x

  • Die Einstellungen liegen jetzt im Gerät (Einstellungsspeicher) und
    bleiben bei Updates erhalten. config.h und secrets.h liefern nur
    noch Standardwerte für ein Gerät ohne gespeicherte Einstellungen.
  • Umstieg am einfachsten über den Web-Installer: einmal mit „Erase device“
    installieren und neu einrichten (WLAN, Station im Portal).
  • Wer weiter per Arduino IDE aufspielt: Boardpaket esp32 3.3.12, Anleitung
    in README_TECHNIK.md. Arduino-OTA gibt es nicht mehr – Updates über
    den Web-Installer oder den Firmware-Upload im Portal.

Neu

  • Web-Installer (docs/, über GitHub Pages): Firmware ohne Arduino IDE
    per USB aus Chrome, Edge oder Firefox (ab 151) aufspielen (ESP Web
    Tools), danach WLAN verbinden und die Einstellungen öffnen. Ein Update
    über den Installer behält alle Einstellungen (Firmware in vier Teilen
    statt merged .bin).
  • Firmware-Update im Einstellungsportal: Firmware-Datei (.bin) auswählen
    und hochladen, mit Fortschrittsanzeige. Das Display zeigt „Firmware-Update
    läuft“ und startet danach neu, alle Einstellungen bleiben erhalten.
    Geprüft wird vorher, ob die Datei eine Firmware für dieses Display
    (ESP32-S3, Kennung des Projekts) ist; bei Fehler oder Abbruch läuft die
    bisherige Firmware weiter.
  • Einstellungsportal: Webseite im Heimnetz zum Ändern aller Einstellungen
    (Station, Anzeige, Verkehrsmittel, WLAN-QR, Werkseinstellungen), ohne
    Neustart wirksam. Öffnet zusammen mit dem System-Log für 30 Minuten
    (erneutes Öffnen startet die Zeit neu), nach „WLAN verbinden“ im
    Web-Installer und – solange keine Station gespeichert ist – dauerhaft mit
    einem Einrichtungs-Screen (QR-Code und Adresse).
  • Stationssuche per Name im Portal (über die inoffizielle MVG-API): bis zu
    15 Treffer mit Ort, Tarifzone, Verkehrsmitteln, ID und Link auf die
    Karte, damit gleichnamige Haltestellen unterscheidbar sind. Die
    Station-ID bleibt als Rückfall eintragbar.
  • „Richtungen anzeigen“ im Portal: listet Linien und Ziele je
    Richtungskennung (H/R) – damit lässt sich „Richtung Zentrum“ ohne Blick
    in die API-Antwort festlegen.
  • WLAN-Einrichtung per USB aus dem Browser (Improv Serial): WLAN-Name und
    Passwort lassen sich ohne Arduino IDE setzen und ändern, das Gerät meldet
    Name und Version und liefert eine Liste der sichtbaren Netze. Neue Daten
    werden erst gespeichert, wenn die Verbindung klappt – sonst bleibt das
    bisherige WLAN. Funktioniert auch, während der WLAN-Fehlerbildschirm
    angezeigt wird.

Behoben

  • Hängt das Board am PC, ohne dass der serielle Monitor offen ist, waren
    Start, Tasten und Übernahme von Einstellungen sehr träge (jede
    Ausgabe über USB wartete bis zu 2 s). Ausgaben warten jetzt nicht mehr.

Geändert

  • Einstellungsportal: Der Hilfe-Link führt direkt zum Abschnitt
    „Einstellungsportal“ der README, der Hinweis zum WLAN-Wechsel nennt den
    Knopf des Web-Installers („Change Wi-Fi“).
  • README aufgeteilt: README.md ist jetzt eine einfache Anleitung für
    Nutzer (Einrichtung per Web-Installer, Bedienung, Einstellungsportal,
    Update, WLAN ändern, „Hilfe bei Problemen“ inkl. Notlösung per
    BOOT-Taste). Neu README_TECHNIK.md für Technikinteressierte: Selbst
    kompilieren (Boardpaket esp32 3.3.12), Firmware für den Web-Installer
    bauen, Station-ID und Richtungen von Hand, Einschränkungen im Detail,
    Dateien und technische Hinweise.
  • Web-Installer-Seite: Hinweise zu leerem Board (PC piept im
    Sekundentakt), Neustart nach der BOOT-Notlösung, fehlendem WLAN in der
    Liste und zum Häkchen „Erase device“ bei Updates.
  • System-Log: neue Zeilen mit der Portal-Adresse und bis wann es erreichbar
    ist; die WLAN-Laufzeit entfällt, WLAN-Abbrüche und API-Störungen stehen
    in einer Zeile.
  • STATION_GLOBAL_ID in config.h ist standardmäßig leer: Neue Geräte
    starten mit dem Einrichtungs-Screen.
  • WLAN-Fehlerbildschirm: Hinweis „Passwort prüfen (Web-Installer)“ statt
    „secrets.h prüfen“. Ohne WLAN-Daten erscheint „Keine WLAN-Daten –
    Einrichten per Web-Installer“.
  • Die Geräte-Einstellungen (WLAN, Station, Anzeige, Verkehrsmittel,
    WLAN-QR) werden beim Start aus dem Gerätespeicher (NVS) gelesen. Solange
    dort nichts gespeichert ist, gelten wie bisher die Werte aus config.h
    und secrets.h. Grundlage für die Einrichtung ohne Arduino IDE.
  • secrets.h ist nur noch optional (Vorbelegung für WLAN und WLAN-QR).
  • QR_SCREEN_TITLE in config.h wird jetzt als normaler Text geschrieben,
    Umlaute direkt (bisher als Latin-1-Escape).
  • Das Partitionsschema liegt als partitions.csv im Sketch-Ordner
    (identisch mit dem bisherigen Standard default_8MB), damit gespeicherte
    Einstellungen auch künftige Updates überstehen.

Entfernt

  • Firmware-Update per WLAN über die Arduino IDE (FEATURE_OTA,
    OTA_HOSTNAME, otaPassword in secrets.h). Ersatz: Firmware-Upload
    im Einstellungsportal.

Intern

  • werkzeuge/firmware_fuer_installer.ps1: übernimmt den IDE-Export nach
    docs/firmware/, setzt die Version im Manifest und bricht ab, wenn die
    Firmware mit secrets.h gebaut wurde. .gitignore: secrets.h* (auch
    umbenannte Zugangsdaten), Ausnahme für docs/firmware/*.bin.
  • Neue Andockstelle extrasWifiChanged() in src/extras.h (neue WLAN-Daten
    gespeichert).
  • Quelltext: Blockmarker und #pragma region in der .ino entfernt, die
    Abschnitte haben jetzt normale Überschriften (keine Funktionsänderung).

1.2.0

Choose a tag to compare

@Fluddel94 Fluddel94 released this 30 Sep 12:55

Neu

  • Startbildschirm: Nach dem Einschalten erscheinen etwa 5 Sekunden lang
    Projektname und Firmware-Version. WLAN, Uhrzeit und erster Abruf laufen
    im Hintergrund weiter, danach folgen direkt die Abfahrten bzw. ein
    Fehlerbildschirm. Dauer über SPLASH_DURATION_MS in config.h.

Behoben

  • Fahrten mit „Fährt nur bis …“, die diese Haltestelle gar nicht mehr
    erreichen (in der API an dieser Station als ausgefallen markiert), wurden
    als normale Abfahrt zum neuen Endhalt angezeigt (z.B. „Ostbahnhof ⚠“ in
    Karlsfeld bei einer Stammstrecken-Störung). Sie erscheinen jetzt als
    Ausfall mit ursprünglichem Ziel. Hält der Zug noch hier und endet nur
    früher, wird wie bisher das tatsächliche Ziel angezeigt. Neue
    Diagnose-Ausgabe im seriellen Monitor für Fahrten mit vorzeitigem Ende.
  • Doppelte Zeilen bei Störungen: Wurden die Zugteile eines Flügelzugs nicht
    vereinigt, erschien dieselbe Fahrt zweimal (z.B. zweimal „S1
    Leuchtenbergring“). Gleiche Fahrten werden jetzt zu einer Zeile
    zusammengefasst. Flügelzüge werden auch bei vorzeitigem Fahrtende
    zusammengefasst (z.B. „Flugh./Freising“ durchgestrichen, wenn beide
    Zugteile ausfallen); fällt nur ein Zugteil aus, bleibt er als eigene Zeile
    sichtbar.
  • Haltestellenliste wurde auf GitHub nicht als durchsuchbare Tabelle
    angezeigt (Datei zu groß, Semikolon als Trennzeichen). Neu:
    haltestellen/Haltestellen_Suche_s26.csv mit Name, Ort und Globaler ID,
    nach Name sortiert, durch Komma getrennt (466 KB). Die Originaldatei des
    MVV bleibt für Excel erhalten. Der Hinweis in config.h (Schritt 1)
    verweist jetzt auf die Suchliste.

1.1.0

Choose a tag to compare

@Fluddel94 Fluddel94 released this 29 Sep 18:29

Neu

  • Haltestellenliste des MVV (haltestellen/, CC BY 4.0) mit den globalen IDs aller rund 11.000 Haltestellen in München und Umland. „Station finden“ im README und der Hinweis in config.h verweisen jetzt darauf.

Behoben

  • Tastendrücke gingen verloren, wenn sie in ein Display-Update oder einen API-Abruf fielen. Die Tasten werden jetzt per Interrupt erfasst. Gedrückt halten der BOOT-Taste löst nicht mehr wiederholt aus.
  • README: Hinweis zu den Meldungstypen präzisiert – nur INCIDENT und EARLY_TERMINATION lösen ein Warndreieck aus, INFO nicht.