DDX Digital Direct eXtra: VERALTET

InhaltMuseumDDX

SEHR WICHTIGER HINWEIS:
Bevor Zeit investiert wird und man viel Frust mit dieser 'Lösung' bekommt,
sollte man sich überlegen, eine alternative Zentrale zu verwenden.
Der Aufbau aller veröffentlichten Elektronik-Schaltungen im Zusammenhang mit DDX
geht auf eigenes Risiko und wird im Rocrail-Forum nicht unterstützt.
Die DDX-Bibliothek wird nicht mehr gewartet, mit Ausnahme der Beseitigung von Fehlern/Abstürzen. → Veraltet


Nur für Linux 2.6 und Windows XP

DDX wird auf folgenden Betriebs-Systemen unterstützt:

  • Linux 2.6 Kernel (RocRail/DDX muss als root gestartet sein :!:)
  • Nur Windows XP, 32 Bit :!:


Merkmale

  • Volle Rocrail-Unterstützung.
  • Unterstützt das NMRA DCC und das Märklin/Motorola (MM) Format.
  • Läuft unter Linux und Windows.
  • Bis zu vier S88-Busse am Parallelport.
  • Kompatibel zu ORD-1
  • Niedrige CPU Anforderungen
  • Kein Extra-Programm notwendig
  • Ohne Protokoll-Zusätze für bessere Reaktionszeit
  • DCC-Funktionen:
    • Unterstützung eines Programmiergleises für Schreiben und Lesen von CV's.
    • Kurze und Lange Adressen
    • 14, 28 oder 127/128 Fahrstufen
    • 12 Funktionen


Nachteile

  • DDX ist nicht in der Lage die Qualität realer Zentralen zu liefern und bei Verwendung können Probleme auftreten.
  • Der UART 1) eines PC ist nicht geeignet, Signale zu erzeugen, die zu 100% dem NMRA-Standard entsprechen.
    Deshalb gibt es einige Dekoder die nur teilweise oder gar nicht damit funktionieren.
  • S88 ist nicht 100% zuverlässig, weil die langen Leitungen zwischen den IC's nicht durch die Spezifikationen der IC-Hersteller abgedeckt sind.
  • Auf die von DDX erzeugten Befehle können Mobil-Dekoder verzögert reagieren.
  • Weder eine weitere Entwicklung noch die Unterstützung durch das Team ist geplant. (Veraltet)


S88 Rückmeldung

Die bis zu vier S88-Busse werden am Parallelport (Drucker) angeschlossen. Alle Busse werden parallel gelesen. Dadurch ergibt sich das schnellst mögliche Einlesen aller Rückmeldungen, wenn die verwendeten Module auf die vier Busse aufgeteilt werden und damit die Zahl der Rückmeldungen je Bus so gering wie möglich ist.

S88 (flat) Adressierung

  • Bus 0 startet mit Rückmelder 0
  • Bus 1 startet mit Rückmelder 496
  • Bus 2 startet mit Rückmelder 992
  • Bus 3 startet mit Rückmelder 1488

Einstellung

Nodes, Attribute und Werte werden hier erklärt: wrapper-en.html#digint Alle Parameter können über Rocview eingestellt werden.

PT aktivieren

Wenn der LPT- / Parallel-Port mit dem ORD-1 verbunden ist, muss vor dem Programmieren PT aktiviert werden. Siehe: PT EIN/AUS.

Lok-Dekoder

Es wird dazu geraten, CV29 des Lok-Dekoders so zu programmieren, dass nur digital gefahren werden kann. Es kann unter manchen Umständen vorkommen, dass eine Spannung ohne Digital-Signal am Gleis anliegt und die Lok losfährt, wenn CV29 in Grundstellung belassen wird.

Wie 128 Fahrstufen bei DCC-Dekodern eingestellt werden

Als erstes muß dem Lok-Dekoder mitgeteilt werden, dass er auf 28 / 128 Fahrstufen hören muss. Dazu muss Bit 2 von CV29 auf “1” gesetzt werden: CV29 = 2. Das soll Rocrail an die Lok senden. Dazu auf die Lok-Tabelle klicken und die gewünschte Lok auswählen. Dann auf das Register Schnittstelle klicken und die folgenden Einstellungen ändern:

1. Protokoll-Version: Die Version wird von 1 auf 2 geändert, weil die Version 1 nur 14 / 28 Dekoderstufen unterstützt. Nur die Version 2 unterstützt 128 Fahrstufen (Dekoderstufen).

2. Dekoderstufen: Hier werden die Fahrstufen eingestellt. Für einen feinstufigen Lokomotiv-Betrieb wird “128” eingegeben.

Einige Lenz-Dekoder erkennen nur 14, 27 oder 127 Stufen. Man sollte sicher sein, dass der Dekoder mit 128 Stufen umgehen kann. Im Zweifelsfall sollte der Händler oder Hersteller befragt werden.

Dies wurde mit SNAPSHOT svn 704 und DDL getestet. Außerdem getestet wurden erddcd-v1.61-svn254 and SRCP V0.7. :!: SRCP 0.8.x sollte nicht verwendet werden, weil die 128 Dekoderstufen davon als Lange Adressen verstanden werden.


Serieller Port

Für die besten Ergebnisse sollte ein “Standard” Port verwendet werden, z.B. ttyS0-4 (Linux) Com1-4 (Windows) mit Adresse 0x3F8, 0x2F8, 0x3E8, 0x2E8.

Wenn die Adresse nicht dem Standard entspricht, kann sie hier von der im Betriebssystem angegebenen Adresse abweichend eingestellt werden, ansonsten bei 0 belassen.

dmesg | grep 'tty'

Das ist der Befehl für Linux-Benutzer, um Informationen über die Einstellung der seriellen Schnittstellen zu erhalten.

serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
00:08: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
0000:02:00.0: ttyS1 at I/O 0xdf00 (irq = 169) is a 16550A
0000:02:00.0: ttyS2 at I/O 0xde00 (irq = 169) is a 16550A


USB-Seriell-Adapter (USB<->RS232)

Einige USB2serial Adapter könnten funktionieren. Um mit dem Märklin/Motorola Protokoll zu funktionieren, muss der USB2serial Adapter 6-bit-Transfer unterstützen und melden, wenn der UART-Sendpuffer leer ist. Unter Windows kann es lange dauern zwischen DCC- und MM-UART-Einstellungen zu wechseln, hierdurch entstehen Pausen im Datenfluss wodurch das Licht flackert (wenn nur DCC oder nur MM verwendet wird tritt dies nicht auf).

Chip Linux 2.6.22 Windows XP Hersteller Treiber
FTDI2232 nur DCC nur DCC 6-Bit-Transfer für MM wird nicht unterstützt
Prolific 2303 nur DCC nur DCC Melden des leeren Sendepuffers für MM
wird vom Treiber nicht unterstützt


S88 / Parallelport



:!: Für LPT muss im BIOS-Setup Plug und Play deaktiviert und die Betriebsart ECP/EPP eingestellt sein.

Im Feld “port” ist die im BIOS angegebene Hardware-Adresse (hex-Schreibweise 0x…) des betreffenen LPT-Ports anzugeben.

Ein Standard-Rückmeldemodul hat 8 Rückmeldungen. 16-fach-Rückmeldemodule zählen doppelt; d.h. für Rocrail sind das zwei Module.

In dem Beispiel oben gibt es nur eine Kette = “Kette 0”, die für zwei 8fach-Module oder ein 16fach-Modul eingestellt ist.

Um den Parallelport unter Unix-Betriebssystemen (auch Linux) verwenden zu können, muss der Rocrail-Server als root gestartet werden.

Um die S88-Funktion komplett abzuschalten, wird die Portadresse auf “0” eingestellt.



Einzelheiten


Kurzschlussüberwachung

Freigeben … Aktiviert die Abschaltung des Digitalsignals an der COM-Schnittelle, wenn ein Kurzschluss gemeldet wird.

DSR invertieren … Setzen, wenn der Booster einen Kurzschluss mit umgekehrter Logik meldet.

Verzögerung … Eine Kurzschlussmeldung muss für die angegebene Zeit (ms) aktiv sein, bevor das Digitalsignal an der COM-Schnittelle abgeschaltet wird.

Optionen

Check TX … Reduziert das Licht-Flackern bei einer klassischen RS232-Schnittstelle.

Fast CV Get … Die Option setzen, um bei einer klassischen RS232-Schnittstelle ein schnelleres Lesen der CV zu erhalten.

Generate

DCC … Aktiviert DCC für Loks und Zubehör

MM … Aktiviert MM für Loks

MMA … Aktiviert MM für Zubehör

MMLP … Aktiviert “MM long packet pause”. Manche Dekoder, z.B. Märklin Kranwagen, reagieren nur wenn bestimmte Pausenzeiten im Digitalsignal sichergestellt sind.

:!: Wird hier mehr als ein Protokoll ausgewählt, muss für jede Lok bei Eigenschaften->Schnittstelle das Protokoll des Dekoders eingestellt werden :!:


DCC MM MMA Betriebsart Info
nur DCC keine MM Ausgabe, sauberes DCC
MM Loks, und nur DCC Zubehör Dekoder, z.B. Opendecoder DCC Leerlaufdaten
Mischbetrieb DCC Leerlaufdaten
DCC + MM Zubehör DCC Datenstrom wird nur von MM-Zubehörpaketen unterbrochen
nur MM keine DCC Pakete


Direkt I/O

Es muss sichergestellt sein, dass der verwendete serielle RS232-Port in der Lage ist, ein korrektes Digitalsignal zu erzeugen; Nicht alle Ports können diese Anforderung erfüllen.

Linux

Damit DDX unter Unix-Betriebssystemen (auch Linux) einwandfrei verwendet werden kann, muss der Rocrail-Server als root gestartet werden.

Windows

Um Rocrail mit DDX unter Windows NT/2000/XP zu nutzen, muss der Treiber GIVEIO.SYS installiert werden. Der Link führt zu einer Beschreibung wie der Treiber installiert wird.

Alternative Downloads:

http://home.snafu.de/mgrafe/Programme/DDW-Treiber.zip

http://sourceforge.net/project/showfiles.php?group_id=46487&package_id=77441&release_id=150767

:!: Unter Windows7 (32bit) muss der Treiber im abgesicherten Modus installiert werden
Es scheint so, dass der Treiber unter Win7 nur für die parallele Schnittstelle (S88) erforderlich ist.

Motorola

Das MM-Format benötigt ein spezielles Timing, welches “busy wait loops” benutzt um eine genaue Zeit zu erreichen. Unter Windows wird der hochauflösende Timer verwendet, unter Linux “nanosleep”. Die benötigten Timing-Funktionen erfordern mindestens einen Pentium Prozessor (486 funktionieren nicht … ).

Refresh

Die Verzögerung für ein einzelnes Kommando ist ca. 0-50ms (es muss evtl. auf den Abschluss eines Refresh-Paketes (25ms) und Idle-Paketes (25ms) warten).

  • nur DCC-Betrieb, eine Lok wird ca. alle 50ms aktualisiert.
  • nur MM, eine Lok wird ca. alle 375ms aktualisiert (dies erfordert 5 Pakete, 1 Geschwindigkeits- und 4 FX-Pakete, 25ms Leerlauf-Daten werden zwischen den Paketen gesendet).
  • DCC + MM, ein DCC-Lok-Paket und 25ms Leerlauf-Daten werden zwischen den MM-Aktualisierungs-Paketen gesendet. Eine komplette Aktualisierung einer MM-Lok dauert ca. 500ms.

Hinweis

Ist nur MM als Protokoll ausgewählt, kann es zu einer hohen CPU-Auslastung oder sogar zum Stillstand des PC kommen.
Es gibt Hinweise mehrerer Anwender, dass das Problem unter Windows bei zusätzlicher Auswahl von DCC nicht besteht.


Empfohlene Hardware

ORD-1 Open Rocrail Driver

Dieses Software-Modul DDX, wie auch SRCPD und DDW, sind Nachfolger von erddcd (Digital Direct for Linux).
Hardware, die mit erddcd, SRCPD oder DDW arbeitet, funktioniert auch mit DDX.
Die Programmiergleis-Steuerung ist nur für ORD-1 ausgelegt.

Die alte S88-Schnittstelle für MrDirect ist nicht kompatibel mit DDX. (Aktuelle Versionen von MrDirect unterstützen aber die DDX-S88-Schnittstelle).

Motorola Protokoll Versionen

Version Adressraum Fahrstufen Funktionen Hinweise
1 255 15 0 Sehr alte Dekoder, keine absolute Fahrtrichtung. Original Märklin Dekoder verstehen nur 80 Adressen.
2 80 15 4 Sichere Einstellung für die meisten MM-kompatiblen Dekoder
3 255 28 4 Neuere Dekoder (MFX+MM) scheinen 28 Fahrstufen zu verstehen. Wird auch für Wikinger-Dekoder benutzt.
4 255 15 4 Erweiterter Adressraum (Uhlenbrock?, Tams?)
5 - 28 - Ermöglicht 28 Fahrstufen durch zweimaliges Senden des Version 2 Paketes mit unterschiedlicher Geschwindigkeit… (Fragt mich nicht welche Dekoder dies verstehen, ich habe bisher keinen Dekoder gesehen der dies Unterstützt.)

NMRA DCC Protokoll Version

  • Beide, sowohl kurze als auch lange Adressierung.
  • 14, 28 und 127/128 Fahrstufen.
  • Bis zu 12 Funktionen.
  • CV-Programmierung und CV-Lesen am Programmiergleis
  • CV-Programmierung am Hauptgleis (POM)

Eignung von Dekodern

Hier ist ein Link zur “Black/Whitelist” der englischen Seite DDX Digital Direct Xtra. Eigene Erfahrungen bitte dort ergänzen.

:!: Die Liste ist von Anwendern erstellt und garantiert NICHT, dass es zu 100% funktioniert. Es gibt keine Unterstützung im Forum. Auf lange Sicht könnten manche Decoder Probleme mit der digitalen Signalqualität haben.

Fehler-Behebung

MM-Zubehör-Dekoder

Wenn der Dekoder nicht auf Befehle reagiert, kann es durch Tauschen der Anschlüsse gelöst werden.
Der Ausgang des ORD-3 unterscheidet sich elektrisch von dem des ORD-1.

Windows 8

Unter Windows 8 kann es mit Boostern Probleme geben, wenn sie die RS232-Handshake-Leitungen DTR u. RTS benötigen.
Der engl. Forumsbeitrag http://forum.rocrail.net/viewtopic.php?t=6623 gibt Hinweise zur Lösung.

1) Schnittellen-IC für COM-Anschlüsse

Personal Tools