Hallo Modellbahnfreunde, ich bin für Verbesserungsvorschläge dankbar.
Start: 1-2026
DCC 4.fach Steppermotor - Decoder
Habe hier beispielhaft zwei 1 X 15 Buchsenleisten eingetragen.
Ist dann einfacher und wird öffters angeboten.
In der Mitte 3 Pinne mit einer Zange rausziehen.
Beispiel für Kabel + Stecker
Beispiel für Kabel + Stecker
Beispiel für Kabel + Stecker
4 fach Anschlüsse 2,54 und 2 mm Raster
Abbildung ohne ESP32 und 4× DRV8833 Modulen
Spannungsversorgung 5V für den ESP32 und eine 0.7V reduzierte Spannung über die Diode zu den Stepper-Treibern.
Optional kann der Steppertreiber auch parallel mit bis zu 9V versorgt werden.
Die Diode blockt die 9V zum 5V Kreis ab.
Achtung maximal 10V !!
Das ist nur ein erster Entwurf. Ich werde die Platine zum Testen verwenden.
Ich rechne mit ca. 2 Monaten bis die Teile habe und das alles Funktioniert.
Bauteile:
1 Stück Platine Eigenbau
1 Stück ESP32 WROOM 38 Pin
2 Stück Buchsenleisten 20/19 Pin Raster 2,54mm
4 Stück H Brücken DRV8833 maximal 10 Volt !!!
2 Stück Buchsenleisten 15 Pin Raster 2,54 mm oder 4X 6 Pin
4-5 Stücl Kondensator ca. 20 .. 45 uF Raster 3 mm
1 Stück Optokoppler PC817C DIP-4
1 Stück Widerstand 2K2 Ohm
1 Stück Widerstand 4K7 Ohm
1 Stück LED 3mm
2 Stück Schraubklemmen 5,08 mm Raster
4 Stück Stecker Raster 2,54 mm Raster
1 Stück 3mm LED
1 Stück Widerstand 470 bis 1K Ohm je nach LED.
1 Stück Taster DCC Adr.
1 Stück ca. 10 K Ohm Widerstand
Optiomal:
1 Stück Diode 1N4001 1A 50V oder größer
Diode: (Silizium)
a. Ohne Diode Lötjumper brücken Stepper Motor dann 5V
b. Mit Diode Jumper offen Stepper Motor dann 4,3V = Standard Reduziert den Verschleiß
C. Mit Diode Jumper offen externe Spannung max. 9 V für Steppermotor
.... Der ESP32 Braucht dann eine eigene 5 V Versorgung ...
Zubehör:
5 Volt 3A Spannungsquelle (Für mehre Decoder)
4 Kabel mit 4 Stecker 2,54mm Pinabstand
5V Steppermotor z, B.
Motortyp: 2-Phasen-4-Draht-Schrittmotor
Motordurchmesser: 5 mm
Motorphasenwiderstand: 14,3 Ohm
5.5V Kurzschlussstrom: 300mA
Schieberhub: 8 mm
3D Druck
Ich werde zum Schluss noch eine 3D Drucker STL als Halter machen.
Ich habe die Steppermotoren zum Testen bestellt
Habe leider die falschen H Brücken bestellt (Wartezeit)
Richtigen DRV8833 nur als Beispiel
oder Amazone
Anschlussbelegung DRV8833 mit 12 Anschlüssen:
Achtung Rückseitenansicht !!
IN4 ....... EEP
IN3 ---.... OUT1
GND ..... OUT2
VCC ..... OUT3
IN2 ....... OUT4
IN1 ........ ULT
Aktuell:
Platinen bestellt.
Motorhalter für 3D Druck gemacht.
Erste Programmierversuche gemacht.
Empfohlene Kabelfarben
Spule A
A Rot
a Blau
Spule B
B Grün
b Schwarz
Stepper-Motor
Der Decoder kann vier 2 Phasen 4 Draht‑Schrittmotoren über zwei DCC-Zubehöradressen in jeweils zwei Positionen ansteuern.
Standardmäßig ist der Betrieb mit einer gemeinsamen 5 Volt Gleichspannung vorgesehen.
Dadurch genügt eine einfache 5 V Versorgung mit 1 A bis 3 Ampere, was ideal für kleine Schrittmotoren mit einem Motorphasenwiderstand von etwa 10 -- 14 Ohm ist.
Optional lassen sich die Motoren auch mit einer externen Versorgungsspannung von bis zu 9 Volt betreiben. Für diesen Zweck steht ein zusätzlicher Anschluss zur Verfügung.
Über mein Konfigurationsprogramm kann jeder angeschlossene Schrittmotor individuell angepasst werden.
Typische Einsatzbereiche sind Weichenantriebe, Formsignale, Schranken und Tore, .
DRV8833 Modul
Achte auf die Pinbelegung!
Gleitstück für den Stelldraht
4 mm
Stepper-Motor
Stepper-Motorhalter + Schieber
für Stelldraht
Den Motor habe ich mit ca. 1,5 mm Gleisschrauben auf dem Halter befestigt.
Ich hatte noch welche von Piko, die sind aber zu lang.
Der erste Motorhalter aus dem 3D Drucker
Erster Test 27.01.26
Motor 1 erfolgreich angesteuert.
Ich habe die erste Platine bestückt und M1 (Bild M4) angeschlossen.
Jetzt kann ich die Platine Testen, und Software entwickeln.
M1
M2
M3
M4
CV Werte über die DCC Zentrale ändern, ist nur für kleine Korrekturen gedacht.
Grundeinstellungen können aus dem Programm Blinken komfortabler über USB gemacht werden.
DCC Zubehöradressen M1 , M2, M3, M4
CV 160 Power M1 Wird micht verwendet 0 bis 255 255 = Voll Power
VC 164 Geschwindigkeit Wert 1 bis 255 Standard = 3 bis 8
CV Wert Spindelweg nicht ober die Zentrale
CV 161 | 162 Spindelweg M1 Je nach Steppermotor z. B. 1500 ist nur als Information
CV 171 | 172 Spindelweg M2
CV 181 | 182 Spindelweg M3
CV 191 | 192 Spindelweg M4
VC 163 | 164 Offset A M1 Wert Schritte von Kalibrierpunkt bis A Grün Weiche Grade
VC 173 | 174 Offset A M1 Wert
VC 183 | 184 Offset A M1 Wert
VC 193 | 194 Offset A M1 Wert 0
VC 165 | 166 Offset B M1 Schritte von Kalibrierpunkt bis B Rot Weiche Abzweigen
VC 175 | 176 Offset B M1
VC 185 | 186 Offset B M1
VC 195 | 196 Offset B M1
Beachte: Mit DCC können nur 8 Bit Werte bis 255 gesendet werden. Daher sind zwei CV Adressen nötig.
Beispieladresse Wert 20 Offset A
CV 163 Wert 0 und CV 164 Wert 20
Beispieladresse Wert 300 Offset A
CV 163 = 1 (300/256) und CV 164 = 44 (300 - 256)
DCC Adressen können über dem Taster als Gruppe geendert werden, oder ober Blinken
für jedem Motor induwiduell.
Eine extra DCC Adresse kann die Automaische Kalibrierung starten. Die kann nur in Blinken bestimmt werden,
Bitte auf Adresse 0 Stellen falls nicht verwendet.
Schematische Darstellung vom Stepper-Motor mit Spindelantrieb
Wert A bei automatischer Kalibrierung kleiner 30 einstellen.
Bei starren Stellmechanik Wert 3 bis 10.
Beim Kalibrieren fährt die Stellschraube gegen den rechten Anschlag.
Bei einer Weiche Motor auf A schalten und den Antrieb so einbauen das die Weichenezunge in A Stellung leicht federnd anliegt.
Set Sendet die Werte aus dem Textfeldern
L oder R fährt die Anzahl Schritte in der jeweiligen Richtung wie im Feld Kalibrier-Stepp eingetragen ist.
Das grüne oder rote Feld bestimmen zu welchem Offset sich die Spindelmutter bewegen soll.
Stellweg komplett, ist je nach Steppermotor-Module einzutragen. Ein zu kleiner Wert schränkt den Stellweg ein und zu großer kann eine Kollision am Endanschlag nicht verhindern.
Position-Info zeigt die aktuelle Position nach " Alles Auslesen".
Durch ein Doppelklick auf die grünen oder roten Wert wird unten die DCC Decoder-Adresse zum Schalten eingetragen.
Power: habe ich noch nicht Programmiert!
Kann ein Wert von 1 bis 255 haben.
Je kleiner der Wert, desto weniger Kraft hat der Motor.
Zu kleine Werte können zu Schrittverlusten führen.
Der Steppermotor muss dann neu kalibriert werden.
Verwenden sie Werte kleine 240 nur wenn der Motor zu heiß wird.
Geschwindigkeit:
beeinflusst die Stellgeschwindigkeit.
Hohe Werte verlangsamen den Stellvorgang.
Zu kleine Werte, können zu Schrittverlusten führen.
Der Steppermotor muss dann neu kalibriert werden.
Kalibrier.Stepps:
Bestimmt die Anzahl der Schritte wen auf L oder R geklickt wird.
Kleine Werte bewegen die Stellmutter nur minimal.
Große Werte überfahren eventuell die Endanschläge.
Das überfahren ist kurzzeitig kein Problem und sichert den Referenzpunkt.
Zu langes Überfahren sollte möglichst vermieden werden.
Alles Auslesen:
Liest alle Feder aus dem ESP32 aus.
Set:
Sendet dem Wert auf dem ESP32
Kalibrier Stepps:
Bestimmt die Schritte die der Motor mit R oder L machen soll.
Anleitung DCC Stepperdecoder:
Stepper-Motor einrichten:
Der ESP32 wurde geflasht und der ESP32 ist mit dem USB verbunden.
Prüfe am Anfang bei den Einstellarbeiten die Motortemperatur.
Falls der Motor heiß wird, sofort die Versorgungsspannung ausschalten und die Ursache beseitigen.
Bei der ersten Installation muss der Steppermotor auf den Referenzpunkt eingerichtet werden.
Starte das Programm „Blinken“ aus der Modellbahnverwaltung und öffne das Fenster „DCC Stepper Motor“.
Wähle den COM: X
Für jeden Motor ist ein Paneel für die Einstellungen
Stellweg ausmessen:
Fahr mit – bis zum Anschlag.
Danach mit + zur Gegenseite.
Rechts im Feld „Kalibrier-Stepps“ kann der Weg pro Klick auf “ eingestellt werden.
Zähle die Anzahl Klicks, bis die Gegenseite erreicht ist. Klick mal Wert im Kalibrierstepp, ist dann der gesamte Stellweg.
z. B. 10 Klicks mal 100 = 1000
Trage den Wert im Feld Stellweg kpl. ein und klick auf Set.
Referenzpunkt kalibrieren:
Klick unter Set-Position auf – bis der Anschlag erreicht ist.
Dann auf Set-Position.
Damit ist der Referenzpunkt gesetzt.
Achtung: Danach nicht mehr die Buttons „+“ und „–“ verwenden, sonst ist die Stellschraube nicht mehr kalibriert.
Stellpositionen für A und B einstellen:
In den grünen und roten Feldern wird der Stellpunkt für A und B eingestellt.
Mit Set wird der Punkt angefahren. Bei Weichen einen Federdraht als Steller verwenden
und den Weg so einstellen, dass die Weichenzungen leicht federnd anliegen. Wichtig ist nur,
dass die Stellschraube nicht blockiert wird. Ab einem bestimmten Widerstand werden Motorschritte
übersprungen und danach stimmt die Kalibrierung nicht mehr.
Stellgeschwindigkeit für alle 4 Motoren:
Im Feld „Geschwindigkeit“ ist eine Auswahl von
1 Schnell kann zu Kalibrierverlust führen. Nur bei sehr geringer Stellkraft verwenden.
2
3 Normal ist für Weichen aber laut
4
5
6 langsam, Für Weichen nicht so laut
..
12
Am besten Testen wenn alles Konfiguriert ist.
DCC-Zubehöradresse:
Jeder Motor kann mit einer eigenen DCC-Adresse geschaltet werden.
Trage die gewünschte Adresse 1 bis 2000 ein.
Alle 4 Adressen gemeinsam können auch über dem Adr.-Taster im DCC-Betrieb bestimmt werden.
Dann nur als Decoderadresse die dann 4 Zubehöradressen aktiviert.
Decoderadresse = Zubehöradresse
1 = 1, 2, 3, 4,
2 = 5, 6, 7, 8,
3 = 9 … usw.
Wird z. B. die Weichenadr. 7 gesendet werden alle aus den Block 5, 6, 7, 8 gältig!
Nache m drücken der Taste leuchte die LED und geht aus wenn die Adresse erkannt wird.:
Beachte das geht nur wenn die Gleisspannung an ist!
Testen:
Weichen schalten
Mit einem Doppelklick auf das grüne oder rote Feld wird die DCC-Zubehöradresse unten im schwarzen Feld eingetragen.
Zusätzlich der Port und A/B.
Mit einem Klick wird der DCC-Befehl direkt über dem USB an den ESP32 gesendet.
Inbetriebnahme:
Der Decoder braucht eine 5-Volt- (ca. 1 A) Spannungsquelle (+5 V : GND) und muss an DCC-Gleis angeschlossen werden.
Achtung: Nur 5 V Gleichstrom verwenden!
Wenn die LED beim DCC-Eingang leuchtet, ist die Gleisspannung an und der Decoder betriebsbereit.
Kleine Korrekturen mit der DCC-Zentrale:
In der CV-Liste sind die CV-Adressen ersichtlich, die im POM-Modus bearbeitet werden können.
Automatische Kalibrierung bei Betriebsbeginn:
Kann ich auch abschaltbar machen
Automatische Kalibrieren beim Betriebsbeginn, Versorgungsspannung an.
Steppermotoren brauchen ein Referenzpunkt, um von dort bestimmte Positionen anzufahren.
Der kann einmal beim Einrichten festgelegt werden. Falls aber mal die Schrittzählung gestört wird.
Ursachen:
Spannungsverlust während eines nicht abgeschlossenen Stellvorgangs.
Mechanische Blockade.
Immer dann sind die Schaltwege nicht mehr kalibriert. Du musst dann den Referenzpunkt wieder neu einstellen.
Um das zu vermeiden, habe ich eine automatischen Kalibriervorgang beim Neustart vorgesehen.
Der Motor bewegt die Stellmutter bis zum Kalibrierpunkt am Ende der Spindel. Setzt dort den Referenzpunkt.
Danach wird der letzte Schaltpunkt vor dem Ausschalten angefahren.
Der gesamte Vorgang kann bis zu 16 Sekunden für die 4 Motoren dauern. Solange der Vorgang dauert leuchte eine LED auf dem Decoder
Wichtig:
Damit das gut funktioniert, sollte der Schaltpunkt A naher kleiner 30 am Referenzpunkt sein.
Die Stellmechanik muss so flexibel sein das der Weg 0 bis z. B. 30 Stepps ohne großen Widerstand überwunden werden kann.
Bei sehr starren Stellmechanik A auf 2 bis 4 Stellen. Und nur mit B den benötigten Weg einstellen.
Wenn die beste Einstellung für eine Weiche gefunden sind, können die für alle Weichen übernommen werden.
Die Motorhalterung am besten so gestalten das die in Längsrichtung verstellbar angeschraubt werden kann. Zum Beispiel mit Längslöchern.
Für den von mir verwendeten Stepper-Motor werde ich Ein Halter als ein 3D Modell machen.
10 falls
Automatik
Schaltweg
hier einstellen
Voreinstellung nach dem Flashen:
Alle 4 Motoren
Automatsch kalibrieren
Wert A 10
Wert B 500
Schaltweg = 500 - 10
DCC Zubehör-Adressen 77, 78, 79, 80
Anschluss:
ESP32 USB zum konfigurieren mit Blinken.
+ 5 Volt GND
9V GND für 7 bis 9 Volt Motoren Jumper muss dann getrennt sein!!!
DCC Gleisspannungsanschluss für DCC Befehle
4 X Motor-Anschöüsse A+ , A- , B+ , B- Nicht vertauschen!
Motorenspannung 4,3 Volt bei 5 Volt gemeinsamer Einspeisespannung
Stromverbrauch beim Stellvorgang ca. 0,5Ampere
LED Rot Anzeige für DCC AN
LED Blau Motor wird bestromt oder Taste für DCC Adresse wurde gedrückt.
05.02.2026
Erster Test aus Blinken war erfolgreich.
Komfiguration laden i. O.
Einsstellungen funktionieren
Automatsch Kalibrierengeht und kann auch ausgeschaltet werden
DCC Adressen über dem USB geht.
Nachster Schritt, mit DCC Zentrale testen.
07.02.2025 Habe mit DCC Zentrale erfolgreich getestet,
Ein verbesserten Motorhalter für 3D Druck machen.
Ich denke das ich bis zum nächsten MOBA-Verw. Update
die Datei zum Flashen bereitstellen kann.
3D Druck Modelle
Für diesen Steppermotor
Langsschlitz zum ausrichten
Platine V2
Erster Testhalter
Konfigurieren mit der Modellbahnverwaltung
-Blinken > Fenster SCC Steppermotor
Automatisch kalibrieren EIN/AUS, ein startet die Kalibrierung bei jedem Neustart,
DCC-Adresse Kalibrieradresse: Damit kann das automatische Kalibrieren ausgelöst werden.
Rampe: Startet Stopp den Motor etwas sanfter.
Set: Speichert die Daten auf dem ESP32.
Beacht bitte ich schreibe die Anleitung bzw ergänze die wärend ich Programmiere.
Achte auf eine ausreichnnde 5V Stromversorgung. Wenn beim neustart alle Decoder neu Kalibrieren, rechne mit 500mA pro Decoder.
3 Ampere sollten so für 6 Decoder reichen.
ESP32 WROOM Flashen
Verbinde den ESP32 mit dem USB
Starte Blinken aus der Modellbahnverwaltung:
Klick auf das Button Blinken:
und öffne den Fensterreiter ESP32 Flahen
Wähle den COM: aus
klick auf | Flash Auswahl kpl.
wähle dort die Datei DCC_StepperDecoder_KPL.bin aus.
Der Flashvorgang wird dann sofort gestartet.
Das Flash-Fenster schließt automatisch!
Der hat leider ein unvorteilhate
Befestigung für den Stelldraht!
Muss ich noch Drucken und Testen!
Fall das jemand mal verwendet, kann ich das auch mit einer Abdeckung machen.
Ich kann noch Halter für ander Motoren machem. Brauche dafür genaue Abmessungen.
Verfügbar ab ende Februar 2026 nach MOBA Verwaltung-Update
Ich habe versucht das kostengünstig zu realisieren. Nur eine 5V Stromquelle und
einfache DRV8833 Treibe, weil der ab ca. 3 Volt arbeitet.
Der DRV8833 arbeite teilweise mit bestimmten Schrittgeschwindigkeiten etwas laut.
Der Decoder ist hauptsächlich für einfach Aufgaben gedacht.
Ich werde später noch ein Decoder mit moderneren Treiber machen. Der soll dann auch für Drehscheiben tauglich sein.
Die modernen kostengünstigen Treiber brauchen mehr als 5 Volt, daher sind dann zwei
Spannungsquellen erforderlich. Zwei externe Stromquellen oder eine ab 8 V und ein
5V Spannungswandler.
ESP32 Flashen
Anleitung
Steppermotoren konfigurieren
3D Druck
Nur den richtiger USB-COM: auswählen! Nicht Verbinden
DCC_StepperDecoder_KPL.bin
Habe ich nicht getestet!
Motor mit Halter für den Stelldraht
Kompaktbauweise
Für größere Objekte
Für geringe Last