Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| anleitungen:oled:display-steuerung [2025/10/25 17:28] – [Anschluss der Displays] raily74 | anleitungen:oled:display-steuerung [2025/12/07 15:27] (aktuell) – [Erste Übertragung auf den ESP32] fbstr | ||
|---|---|---|---|
| Zeile 3: | Zeile 3: | ||
| Zur alten Anleitung (v2.1): [[display-steuerung_v2.1|zur Vorgängerplatine]] | Zur alten Anleitung (v2.1): [[display-steuerung_v2.1|zur Vorgängerplatine]] | ||
| - | |||
| - | <WRAP round alert 80%> | ||
| - | Hier entsteht die Anleitung zur überarbeiteten Display-Steuerung für Zugzielanzeiger in Version v3.\\ | ||
| - | Die alte Anleitung ist oben verlinkt. \\ | ||
| - | **Die Platine ist in Planung und wird erst nach ausgiebigen Tests veröffentlicht.** | ||
| - | </ | ||
| - | |||
| ==== Aller guten Dinge sind drei ==== | ==== Aller guten Dinge sind drei ==== | ||
| Mit der ZZA Steuerung v3 wird aus den einzelnen Komponenten endlich ein vollständiges System. \\ Basierend auf Ideen von Tobias, [[https:// | Mit der ZZA Steuerung v3 wird aus den einzelnen Komponenten endlich ein vollständiges System. \\ Basierend auf Ideen von Tobias, [[https:// | ||
| Zeile 24: | Zeile 17: | ||
| Neu ist auch die Funktion zur Bildung von Display-Gruppen, | Neu ist auch die Funktion zur Bildung von Display-Gruppen, | ||
| - | ==== Aufbau der Platine ==== | + | Gegenüber dem Vorgänger können nun endlich alle vorhandenen OLED-Adapter verwendet werden. Dazu gehören die Display-Adapter (750) in zwei- und vierfacher Ausführung sowie die Kofferplatine (760). |
| + | |||
| + | ===== Aufbau der Platine | ||
| Zum Aufbau gibt es nicht viel zu sagen. Die Platine ist nahezu komplett vorbestückt. Lediglich 21 Teile müssen gelötet werden und abgesehen von der Richtung kann hier prinzipiell nichts vertauscht werden. \\ | Zum Aufbau gibt es nicht viel zu sagen. Die Platine ist nahezu komplett vorbestückt. Lediglich 21 Teile müssen gelötet werden und abgesehen von der Richtung kann hier prinzipiell nichts vertauscht werden. \\ | ||
| Zeile 35: | Zeile 30: | ||
| Im Anschluss kann direkt der Optokoppler eingesteckt werden. Hier bitte unbedingt auf korrekte Position von Pin 1 achten. Der Punkt auf dem IC zeigt wie im Bild nach unten links. | Im Anschluss kann direkt der Optokoppler eingesteckt werden. Hier bitte unbedingt auf korrekte Position von Pin 1 achten. Der Punkt auf dem IC zeigt wie im Bild nach unten links. | ||
| - | {{: | + | {{: |
| **Schritt 3**\\ | **Schritt 3**\\ | ||
| - | Die Versorgungsspannung (5V) erfolgt über den grünen Stecker mit 3,5 mm Rastermaß. | + | Die Versorgungsspannung (5V) erfolgt über den grünen Stecker mit 3,5 mm Rastermaß.\\ |
| + | <WRAP round important 60%> | ||
| + | **Achtung: | ||
| + | Bei der Vorgängerplatine war die Polarität vertauscht.</ | ||
| {{: | {{: | ||
| Zeile 84: | Zeile 83: | ||
| Bei Zweifach-Displays können die Leitungen SCL, 3V3 und GND mit Y-Verbindungen aufgeteilt werden. \\ | Bei Zweifach-Displays können die Leitungen SCL, 3V3 und GND mit Y-Verbindungen aufgeteilt werden. \\ | ||
| So können je Wannenstecker zwei Zweifach-Displays, | So können je Wannenstecker zwei Zweifach-Displays, | ||
| + | \\ | ||
| === Reihenfolge der Displays === | === Reihenfolge der Displays === | ||
| Zeile 126: | Zeile 126: | ||
| Das TextMessages Tool unterstützt bei der Eingabe der erforderlichen Daten. Dazu gehören in erster Linie die Zugziele, WLAN- und DCC-Einstellungen sowie die Zuordnung der Displays an die jeweiligen Gleise. Nach der Eingabe in die grafische Oberfläche wandelt das Tool die Daten in die benötigte Arduino-Sprache um. | Das TextMessages Tool unterstützt bei der Eingabe der erforderlichen Daten. Dazu gehören in erster Linie die Zugziele, WLAN- und DCC-Einstellungen sowie die Zuordnung der Displays an die jeweiligen Gleise. Nach der Eingabe in die grafische Oberfläche wandelt das Tool die Daten in die benötigte Arduino-Sprache um. | ||
| - | Mit dem Tool können mehrere JSON-Dateien angelegt, bearbeitet und exportiert | + | Mit dem Tool können mehrere JSON-Dateien angelegt, bearbeitet und in den Sketch umgewandelt |
| + | |||
| + | Um das TextMessages Tool nutzen zu können, ist - sofern durch die MobaLedLib noch nicht geschehen - die Installation von Python erforderlich. \\ | ||
| + | => https:// | ||
| **Zugziele**\\ | **Zugziele**\\ | ||
| Zeile 133: | Zeile 136: | ||
| Im Reiter Zugziele werden alle gewünschten Ziele je Zuggarnitur definiert. Es empfiehlt sich, die Ziele an eine bestimmte Lokomotive zu binden, da das Steuerungsprogramm (z. B. iTrain) diese Lok abfragen kann. Um einen Überblick der zugeordneten Ziele zu erhalten, kann zu jedem Ziel der Name der jeweiligen Lok hinzugefügt werden. Nach diesem Namen kann man später auch suchen. Es empfiehlt sich, hier die Baureihe einzutragen. | Im Reiter Zugziele werden alle gewünschten Ziele je Zuggarnitur definiert. Es empfiehlt sich, die Ziele an eine bestimmte Lokomotive zu binden, da das Steuerungsprogramm (z. B. iTrain) diese Lok abfragen kann. Um einen Überblick der zugeordneten Ziele zu erhalten, kann zu jedem Ziel der Name der jeweiligen Lok hinzugefügt werden. Nach diesem Namen kann man später auch suchen. Es empfiehlt sich, hier die Baureihe einzutragen. | ||
| - | Die DCC Adressen werden vom Sketch fortlaufend vergeben. Daher bietet das Tool keine Möglichkeit zur Sortierung der Ziele (z. B. nach Baureihe), da die Neusortierung zu Abweichungen mit der Programmierung im Steuerungsprogramm führen würde. | + | Die DCC Adressen werden vom Sketch fortlaufend vergeben. Daher bietet das Tool keine Möglichkeit zur Sortierung der Ziele (z. B. nach Baureihe), da die Neusortierung zu Abweichungen mit der Programmierung im Steuerungsprogramm führen würde. |
| + | Die hier einzutragende Adresse für das erste Zugziel richtet sich nach der DCC Startadresse (n), die im Reiter „Einstellungen“ eingetragen wird und der Anzahl der angeschlossenen Gleise. Sie dient als Orientierung und hat keinen Einfluss auf das Programm. | ||
| - | **Einstellungen**\\ | + | ^ Gleise ^ DCC erstes Ziel ^ |
| + | | bis zu 2 | n+4 | | ||
| + | | bis zu 4 | n+6 | | ||
| + | | bis zu 6 | n+8 | | ||
| + | | … | | | ||
| + | | bis zu 32 | n+34 | | ||
| + | |||
| + | **Gleis Zuordnung**\\ | ||
| {{: | {{: | ||
| + | |||
| + | Der Reiter „Gleis Zuordnung“ ist so aufgebaut, dass er die Gleisgruppen selbst vorgibt. So ist keine Anpassung der Reihenfolge im Sketch mehr erforderlich. Jede Doppelspalte entspricht einem Gleis. Werden mehr als 16 Displays für ein Gleis benötigt, müssen diese in zwei benachbarten Doppelspalten eingetragen werden, damit sie zur selben Gleisgruppe gehören. Dieser Fall ist äußerst selten, weil für das zweite Gleis weniger als die Hälfte aller Displays übrig blieben. Mit der Ausrichtung [L/R] wird angegeben, ob die Gleisnummer links oder rechts im Display erscheinen soll. | ||
| + | |||
| + | Die SDA Anschlüsse werden entsprechend der vorgenommenen Verdrahtung angegeben (siehe „Reihenfolge der Displays“). Für ein vierfaches Doppeldisplay sind das in der Regel zwei Gleise mit jeweils zwei Ausrichtungen. Dieses vierfache Doppeldisplay belegt jeweils eine Reihe zweier Doppelspalten (z. B. SDA 0 und 2 für Gleis 1 L/R und SDA 3 und 1 für Gleis 2 L/R). Die Gleisseite lässt sich für zwei Doppelspalten auch in der Reihenfolge L/R/R/L eintragen, was von der Logik eher dem Aufbau der Adapterplatine (750) entspricht. | ||
| + | |||
| + | Zum besseren Verständnis hier ein Beispiel für drei Gleise, die am Empfangsgebäude des Bahnhofs liegen. Gleis 1 wird mit einem doppelseitigen Einzeldisplay bedient, Gleis 2 und 3 werden über ein doppelseitiges Zweifachdisplay bedient. Das Einzeldisplay nutzt nur zwei der vier Anschlüsse des ersten Wannensteckers, | ||
| + | |||
| + | {{: | ||
| + | |||
| + | |||
| + | **Einstellungen**\\ | ||
| + | {{: | ||
| Im Reiter Einstellungen werden als erstes die WLAN Zugangsdaten eingegeben, um den Sketch kabellos übertragen zu können. Die erste Übertragung muss selbstverständlich per USB Kabel erfolgen, da die Zugangsdaten noch nicht übermittelt wurden. Da die MobaLedLib nach wie vor die Arduino IDE 1.8.19 voraussetzt, | Im Reiter Einstellungen werden als erstes die WLAN Zugangsdaten eingegeben, um den Sketch kabellos übertragen zu können. Die erste Übertragung muss selbstverständlich per USB Kabel erfolgen, da die Zugangsdaten noch nicht übermittelt wurden. Da die MobaLedLib nach wie vor die Arduino IDE 1.8.19 voraussetzt, | ||
| Zeile 148: | Zeile 171: | ||
| Die Display-Rotation ist standardmäßig aktiviert, weil es zum einen der Ausrichtung auf der Adapterplatine (750) entspricht und zum anderen die schnellste Aktualisierung der Displays gewährleistet. Die Option ist für den Notfall gedacht, wenn das Display versehentlich über Kopf eingebaut wurde. Es wird daher empfohlen, die Ausrichtung der Displays vor dem festen Einbau zu prüfen. | Die Display-Rotation ist standardmäßig aktiviert, weil es zum einen der Ausrichtung auf der Adapterplatine (750) entspricht und zum anderen die schnellste Aktualisierung der Displays gewährleistet. Die Option ist für den Notfall gedacht, wenn das Display versehentlich über Kopf eingebaut wurde. Es wird daher empfohlen, die Ausrichtung der Displays vor dem festen Einbau zu prüfen. | ||
| + | |||
| + | **Umwandeln**\\ | ||
| + | Sind alle Einstellungen korrekt eingetragen, | ||
| + | ===== Download und Installation des ESP Sketches ===== | ||
| - | **Gleis Zuordnung**\\ | + | <WRAP round box> |
| - | {{:bilder:anleitungen:bauanleitungen: | + | [[https:// |
| + | https:// | ||
| + | </ | ||
| - | Der Reiter „Gleis Zuordnung“ ist so aufgebaut, dass er die Gleisgruppen selbst vorgibt. So ist keine Anpassung der Reihenfolge im Sketch mehr erforderlich. Jede Doppelspalte entspricht einem Gleis. Werden mehr als 16 Displays für ein Gleis benötigt, müssen diese in zwei benachbarten Doppelspalten eingetragen werden, damit sie zur selben Gleisgruppe gehören. Dieser Fall ist äußerst selten, weil für das zweite Gleis weniger als die Hälfte aller Displays übrig blieben. Mit der Ausrichtung [L/R] wird angegeben, ob die Gleisnummer links oder rechts im Display erscheinen soll. | + | ==== Erste Übertragung auf den ESP32 ==== |
| - | Die SDA Anschlüsse werden entsprechend der vorgenommenen Verdrahtung angegeben (siehe „Reihenfolge der Displays“). Für ein vierfaches Doppeldisplay sind das in der Regel zwei Gleise | + | Es empfiehlt sich, vor dem ersten Übertragen **mindestens** die WLAN-SSID, |
| + | * SparkFun I2C Mux Arduino Library | ||
| + | * Streaming | ||
| + | * U8g2 | ||
| + | * WiFi | ||
| + | * Arduino_ESP32_OTA | ||
| + | * NmraDcc (wird bei Installation | ||
| - | **Export**\\ | + | Nachdem die Bibliotheken installiert wurden, muss das richtige Board ausgewählt |
| - | Sind alle Einstellungen korrekt eingetragen, wandelt man mit dem Button „Exportieren (.h)“ die Werte in die benötigte „Text_Messages.h“-Datei um und ersetzt diese im Verzeichnis „users/ | + | Das geht über Werkzeuge > Board > ESP32 Arduino > DOIT ESP32 DEVKIT V1 |
| - | ===== Download des ESP Sketches ===== | + | |
| - | <WRAP round box> | + | {{:bilder:anleitungen:bauanleitungen: |
| - | [[https:// | + | |
| - | https:// | + | |
| - | **Platzhalter** | + | Der erste Upload <wrap em>muss</wrap> per USB-Kabel erfolgen, weil der ESP32 die WLAN-Daten noch nicht kennt und sich somit noch nicht im WLAN melden kann. Dazu muss unter " |
| - | </WRAP> | + | |
| + | {{: | ||
| ===== Steuerung per DCC ===== | ===== Steuerung per DCC ===== | ||
| Der größte Clou der Zugzielanzeiger ist die Möglichkeit, | Der größte Clou der Zugzielanzeiger ist die Möglichkeit, | ||
| Zeile 196: | Zeile 230: | ||
| Mit der oben gezeigten Tabelle ist das Erstellen einer Regel ganz einfach. Die Verknüpfung wird hier am Beispiel von iTrain gezeigt. Zur Erstellung einer „Wenn/ | Mit der oben gezeigten Tabelle ist das Erstellen einer Regel ganz einfach. Die Verknüpfung wird hier am Beispiel von iTrain gezeigt. Zur Erstellung einer „Wenn/ | ||
| - | ===Neuen Aspekt* als Zubehör in iTrain definieren=== | + | ===== Verwendung im Steuerungsprogramm ===== |
| + | |||
| + | ==== iTrain ==== | ||
| + | **Neuen Aspekt* als Zubehör in iTrain definieren**\\ | ||
| * Im Zubehöreditor von iTrain (Strg+F8) wird ein neues Zubehör vom Typ " | * Im Zubehöreditor von iTrain (Strg+F8) wird ein neues Zubehör vom Typ " | ||
| * Als Adresse wählt man " | * Als Adresse wählt man " | ||
| Zeile 205: | Zeile 242: | ||
| {{: | {{: | ||
| + | **Aktion mit Bedingungen erstellen**\\ | ||
| In einer Aktion werden nun die Bedingungen und die Ausführung miteinander verknüpft. | In einer Aktion werden nun die Bedingungen und die Ausführung miteinander verknüpft. | ||
| Zeile 229: | Zeile 267: | ||
| Hinweise zur Vorgehensweise dieser Programme bitte gern im Forum posten. | Hinweise zur Vorgehensweise dieser Programme bitte gern im Forum posten. | ||
| </ | </ | ||
| + | |||
| + | |||
| + | ==== WinDigipet ==== | ||
| + | Ich bitte um eure Unterstützung | ||
| + | |||
| + | ==== Train Controller ==== | ||
| + | Ich bitte um eure Unterstützung | ||
| + | |||
| + | ==== RocRail==== | ||
| + | Ich bitte um eure Unterstützung | ||
| ---- | ---- | ||
| Zeile 244: | Zeile 292: | ||
| </ | </ | ||
| + | ===== Schaltplan ===== | ||
| + | {{: | ||