Hallo Modellbahnfreunde, ich bin für Verbesserungsvorschläge dankbar.
DCC LED Decoder ESP32 Version. Tabellen verwalten.
Begonnen 25.08.2025
Bitte beachten, meine Zeit ist begrenzt, da ich auch noch viele andere Sachen für mein DCC Projekt in Arbeit habe.
Falls ich was unverständlich beschrieben habe, einfach per E Mail oder Forum nachfragen.
8
9
10
5 7
3
2
4
1
1 Com-Portauswahl
2 Kanalauswahl K1 Signal mit Led-Fade K2 wie K1 ohne LED Fade, K3 LD Flacker und wie K2.
3 Tabelle Je nach Kanal aus dem ESp32 lesen
4 Tabell je nach Kanal auf dem ESP32 speichern
5 Tabelle als Datei mit beliebigen Namen speichern.
7 Tabelle aus Datei einlesen.
8 Tabelleninhald löschen
9 Tabellenfarbben als WS2811 oder 12 darstellen.
10 Signal-Eingabehilfe
Reiter | ESP32 Flashen |
Flashen
Trage links den COM: (USB Port) ein.
Zum Flashen gibt es zwei Optionen.
Für die erste Installation und zum Updaten.
Beim Updaten bleiben die gespeicherten Tabellen auf dem ESP32 erhalten.
Verwende beim ersten Flashen nicht Update.
In der Tabelle können beliebige DCC-Adressen und LED-Nummern 1 bis 168 eingetragen werden.
Die Reihenfolge der LED-Nummern ist beliebig, so dass die mit der DCC-Adresse beliebig geschaltet werden.
Die Sonderfunktionen „Blinken“ für K1 bis K3 und „Flackern“ mit K1 , können nur für die LED-Nummer in der blauen Spalte aktiviert werden.
Verwende die nächste Zeile mit der gleichen DCC-Adresse, wenn mehrere LEDs mit der DCC-Adresse blinken/flackern sollen.
Kanal 1 hat eine leichte Fade-Funktion, so dass die LEDs weich ein-/ausgeschaltet werden. Blinken und Flackern können von mir Später optimiert werden
Kanal 3 kann LEDs flackern lassen. Mit zusätzlichem Blinken kann das möglicherweise etwas beeinfussen.
Die LED-Nummern sind fest vergeben. Die ersten 3 Nummern 1, 2, 3 sind von der RGB-LED auf der Platine belegt, falls die RGB-LED verwendet wird,
Anderenfalls muss als Ersatz ein ca. 450 Ohm-Widerstand verbaut sein. Nummer 1, 2, 3 ist dann der erste Knoten (WS2812).
Die LED-Nummern setzen sich dann pro Knoten so fort. Knoten 1 = 1, 2, 3, Knoten 2 = 4, 5, 6, Knoten 3 = 7, 8, 9, usw. bis Knoten 56 = 166, 167, 168.
Das wiederholt sich für jeden Kanal. Daher IST LED Nummer 5 vom Kanal 1 unabhängig von Kanal 2 oder 3. Die DCC-Adressen werden gemeinsam verwendet.
Es ist daher möglich, mit einer DCC-Adresse alle 3 Kanäle gemeinsam zu schalten.
Da die Adressierung der LEDs für die jeweilige DCC-Adresse beliebig ist, kann jeder Signalbegriff geschaltet werden.
Um ein Ausfahrsignal mit 6 LEDs zu schalten, müssen für jeden Signalbegriff, immer alle 6 LEDs in die Tabelle eingetragen werden. Das stellt sicher, dass nur die jeweils gewünschten LEDs angehen. Der Rest wird auf Leuchtkraft 0 geschaltet.
Um das Konfigurieren zu erleichtern, habe ich eine Eingabehilfe für 4 gängige Signale programmiert.
Signal Eingabehilfe für Signale mit LEDs:
Wähle das Signal.
Signalsymbole:
Die Farben der Eingabe sollen die Signalfarben repräsentieren.
Dort kann die gewünschte Leuchtkraft von 0 bis 255 für die LED eingetragen werden.
Das Profil kann für alle Vorlagen als Datei gespeichert und geladen werden.
Unten links:
Trage die gewünschte DCC-Startadresse ein,
Ab welcher Tabellenzeile eingetragen werden soll.
Die Start-LED-Nummer.
Klick auf „In die Tabelle einfügen“.
Das Programm generiert daraus die fortlaufenden DCC-Adressen A/B und die LED-Nummern.
Die LED-Nummern richten sich nach meinen HO-Signalen.
Reihenfolge ist immer.
Ausfahrsignal mit 6 LEDs und 2 WS2811-Knoten, zwei DCC-Adressen mit jeweils A/B
Grün Nr. 1 Grün ist immer die Start-LED wenn vorhanden
Rot Nr. 2
Rot Nr. 3
Gelb Nr. 4, nächster Knoten
Weiß Nr. 5 oder 0, falls ohne LED
Weiß Nr. 6 oder 0, falls ohne LED
Einfahrsignal mit 3 LEDs = 1 Knoten, zwei DCC-Adressen mit A/B + A
Grüm Nr. 1
Rot Nr. 2
Gelb Nr. 3
Blocksignal mit 2 LEDs, 1 Knoten, eine DCC-Adresse mit A/B
Grün Nr. 1
Rot Nr. 2
Dummy Nr. 3: Dummy ist, um die Reihenfolge pro Knoten zu den Signalen einzuhalten.
Nr. 3 kann mit einer beliebigen DCC-Adresse für andere Aufgaben belegt werden.
Vorsignal mit 4 LEDs, 2 Knoten, zwei DCC-Adressen A/B + A
Grün LED Nr. 1
Grün LED Nr. 2
Rot LED Nr. 3
Rot LED Nr. 4 nächster Knoten
Dummy-LED Nr. 5
Dummy-LED Nr. 6
Passe das gegebenenfalls nach deinen Wünschen in der Tabelle an.
In jeder Zeile bei der dritten LED Spalte, kann eine LED auf Blinken gestellt werden.
Beachtem das die geraden und ungeraden LED Nummern gegenläufig blinken, so ist ein wechselblinken möglich.
Falls nicht abgewählt werden die logischen nächsten Startwerte für das nächste Signal vorgegeben.
Tabelle:
Jder Kanal hat seine eigen Tabelle. Daher das unbedigt vorher auswahlen 1 bis 3
Später werde ich noch wie bei der NANO-Tabelle das Einfügen, Löschen und LED-Nummern verschieben programmieren.
Das ist dann auch abhängig davon, wie oft das gewünscht wird.
DCC-Adressen:
Beachte es werden DCC Zubehör (Weichenadressen) verwendet.
Ich kenne nur Rocrail. Ein Anleitung für ander MOBA Programme kann ich hier gerne vorstellen.
Dort bitte ab 3 Signalbegriffen, in Rocrail so auswählen:
Schnittstelle: >
Oben nur die Start DCC Adrese aus der Tabelle eintragen. Beachte das mache Zentrale Decoderadressen verlangen
Dann Decoderadresse und Port eintragen
Linear X
Zubehör X
Weiche X
Einzelheiten:
Signaltyp X Auswahl
Begriffe Anzahl z, B, Ausfahrsignal 6 je nach Tabelleneintrag.
Lichtsignal X
Aspects 1 15 (Auswahl)
je nach Anzahl der Signalbegriffen
Pro Begriff eine Zahl 0 bis Anzahl der Begriffe. Bei 6 Begriffen 0,1,2,3,4,5,
Falls die Signale später die Begriffe vertauscht anzeigen, kann die Reihenfolge hier geändrt werden. z. B. 0 und 1 vertauschen.
Achte beim Tabelle Speichern oder Laden, unbedingt auf die gewünschte Kanalauswahl.
Der Decoder ist noch nicht gründlich getestet worden, daher können Probleme nicht ausgeschlossen werden.
Aktuell funktioniert gelegentlich das auslesen der Tabelle vom ESP32 nicht sofort. Die Tabelle enthält dann am Tabellen-Anfang unplausibel Daten.
daher muss das dann wiederholt versucht werden.
Zur Decoder Hauptseite
Hier kann die Leuchtkraft als Datei gespeichert werden