DCC-Signaler

[HOME]  [HARDWARE]  [CLIENTS]  [DOWNLOAD]  [CVS]  [FORUM] 

DCC-Signaler hardware

The DCC-Signaler hardware is the link to the Booster. It's job is simple: The signal-forms generated by the DCC-Signaler host are brougth on their way to the booster; with exactly timed signals.
Therefore the host transmits the bit-pattern and the type of the signal (e.g. NMRA or Motorola) to the hardware. So it's possible to easily implement new commands or correct wrong implemented commands within the host without the need to program a new firmware. The hardware actually only takes over the job of generating the time-critical conversion of the bit-pattern to electrical signals.
Die DCC-Signaler Hardware stellt die Verbindung zum Booster dar. Hierbei übernimmt sie die Aufgabe, die durch den DCC-Signaler Host generierten Signalformen mit exaktem Timing elektrisch auf ihren Weg zum Booster zu bringen.
Hierzu werden vom Host lediglich das Bitmuster des Signals und die Art des Signals (z.B. NMRA oder Motorola) übertragen. Dadurch können neuen Befehle und auch Korrekturen von falsch generierten Befehlen im Host realisiert werden ohne eine neue Firmware einspielen zu müssen. Die Hardware übernimmt also nur die zeitkritische Umsetzung der Signalgenerierung aus Bitmuster in elektrische Signale.

The hardware is not yet in it's final state. Therefore I suggest that you use a kind of a prototype-technique :)
Following a description of what is needed:

  • Atmel AT90S2313 with a 9,216MHz clock
  • TXD/PD1 and RXD/PD0 via MAX232 converted to RS232 -> Host-Interface
  • PB1 is used to generate the digital-signal, which is meant for the booster. For most boosters it's best to convert that signal to RS232, as well. There is still room within the MAX232 to perform that task.
  • PB.0 is used as an output to signal whether POWER is on or off
  • PD.5 is used as an input for SHORTCUT-detection (internally pulled-up)
  • PD.6 is used as an input for ACK-detection (internally pulled-up)
  • The missing parts as usual. E.g. power-on reset like you prefer it

Testing the modul

Start a terminal-application (e.g. minicom on Linux). The parameters for the serial port are 115200BPS,8N1

After entering "DSv" (without " of course) the modul will answer with it's version-numer (e.g. "V3").
Now start the currenct version of the server (the host-application of the Dcc-signaler project) and you can start with tests on your modell-railroad.

Die Hardware ist noch nicht endgültig fertig. Deshalb empfehle ich noch einen Nachbau in Prototypentechnik :)
Folgend die Eckpunkte, welche die Hardware benötigt. D.h., wer etwas Erfahrung mit Microcontrollern hat, dem sollte es recht leicht fallen, die Hardware bis zum aktuellen Stand nachzubauen !

  • Atmel AT90S2313 mit 9,216MHz getaktet
  • TXD/PD1 und RXD/PD0 mittels MAX232 auf RS232 gebracht -> Host-Interface
  • Auf PB1 wird das Digitalsignal erzeugt, weches zum Booster geht. Für die meisten Booster macht es Sinn, dieses Signal nach RS232 zu konvertieren. Im MAX232 ist ja noch Platz dafür.
  • PB.0 wird als Ausgang genutzt, um POWER an/aus zu signalisieren
  • PD.5 wird als Eingang genutzt zur Kurzschlusserkennung (intern mit Pull-Up)
  • PD.6 wird als Eingang genutzt zur ACK-Detektion (intern mit Pull-Up)
  • Die restliche Beschaltung wie üblich, d.h. Power-On Reset nach belieben

Test des Moduls

Zum Testen ein Terminalprogramm starten (z.B. Minicom unter Linux). Die Parameter der Schnittstelle sind 115200BPS,8N1

Nach der Eingabe von "DSv" (ohne die " natürlich) antwortet das Modul mit seiner Versionsnummer (z.B. "V3").
Jetzt muss nur noch die aktuelle Version des Servers gestartet werden und schon kann es mit Tests auf der Modellbahn los gehen.

Schematic/Schaltplan

Roland Weber made a schematic of his DCC-Signaler hardware: signaler_v1.jpg

Firmware

Go to the download-section to get the current firmware.
Die aktuelle Firmware befindet sich im Download-Bereich.

© Markus Gietzen