OpenDCC – Zentrale und Dekoder für DCC – Configuration Variablen
- Sorry, no english page available
Was ist eine CV?
- Ein Lokdecoder oder ein Zubehördecoder (Accessory-Decoder) kann im seinem Reaktionsverhalten auf DCC-Befehle mit Konfiguationsvariablen (=CV) eingestellt werden. Darunter fallen neben der Lokadresse und Zahl der Fahrstufen auch die Einstellungen für Beschleuigung, Bremsen, Lichtansteuerung usw. Insgesamt sind 1024 verschiedene CV’s vorgesehen, ein Großteil davon ist unbenutzt bzw. herstellerspezifisch belegt.
Wie werden diese CV-Variablen geschrieben?
- Es gibt verschiedene Techniken, diese CV’s zu programmieren. Diese sind in RP.9.2.3 der
- Standards definiert.
- Adress-Only
Hier wird einfach die Adresse umgestellt – d.h. CV1 neu programmiert. Das ist ein historischer Befehl. - Register-Programmierung
Diese Art der Programmierung erlaubt den Zugriff auf die 8 wichtigsten CVs:Register Code CV, Bedeutung 1 000 CV1: Adresse 2 001 CV2: Anfahrspannung 3 010 CV3: Beschleunigung 4 011 CV4: Bremsverzögerung 5 100 CV29: Konfiguration 6 101 Page: reserviert 7 110 CV7: Version 8 111 CV8: Herstellerkennung - Paged
Die seitenweise (=paged) Programmierung ist ein Erweiterung der Registerprogrammierung, mit der kompletter Zugriff auf alle CV’s möglich ist. Eine Seite ist als ein Paket von vier aufeinanderfolgenden CV’s definiert, d.h. CV1, CV2, CV3 und CV4 bilden die Seite 0, CV5 bis CV8 die Seite 1, usw. Bei der Programmierung wird in das Register 6 zuvor die Adresse der Zielseite eingeschrieben. Der Decoder blendet daraufhin diese Seite anstatt der Register 1-4 ein. - Direkt Mode
Hierbei wird direkt die Adresse der zu schreibenden oder lesenden CV im DCC-Befehl angegeben. Es gibt sowohl Direkt Mode Befehle für den Bytezugriff als für den bitweisen Zugriff. - POM (=Programming on the main, Programmieren auf dem Hauptgleis)
Die zu schreibende oder lesende CV wird zusammen mit der Lokadresse auf dem normalen Gleis ausgegeben (nicht auf dem Programmiergleis). Der Decoder erkennt die Programmierung an, wenn er zweimal direkt hintereinander den gleichen POM-Befehl empfängt. Normalerweise kann der Empfang nicht bestätigt werden, die Auswirkung der Programmierung sollte sofort kontrolliert werden.
CV-Variablen für Lokomotiven
- Die hier aufgelistetem CV’s sind einheitlich in RP.9.2.2 der
- festgelegt. In der nachfolgenden Tabelle sind Bits entsprechend ihres mathematischen Gewichts benannt – also Bit 0 ist das LSB, Bit 7 ist das MSB. Manche Dekoderdokumentationen bezeichnen die Bits von 1 bis 8.
CV-Variablen für Zubehör Decoder
- Einfache Zubehördekoder werden i.d.R. mit der Tastermethode programmiert, d.h. Taster drücken, die erste nachfolgend empfangene Adresse ist die einzustellende Dekoderadresse.
- Mit mehr Funktionen ausgestattete und damit komplexere Dekoder (wie z.B.
- ) benutzen CVs zum Einstellen der Adresse und der Eigenschaften. Auch hier sind bereits eine Folge von Adressen durch die NMRA vordefiniert, weitere (eigentlich *ziemlich* viele) sind reserviert.
- Ursprünglich waren die CVs für Zubehördekoder beginnend bei CV513 bis 1024 definiert. Der Sinn dieser Festlegung war nicht wirklich offensichtlich – zudem gibt es Zentralen, die nicht in der Lage sind diesen Adressbereich anzusprechen. Dafür sah die Normung aber vor, dass ein Dekoder fallweise die Adressen der CV um 512 nach unten verlegen darf – also aus CV513 wird CV1, aus CV514 wird CV2 usw. Damit lassen sich dann die Dekoder auch mit kleinem Adressbereich ansprechen.
- Mit Erscheinen der 9.2.2 hat die NMRA diese relativ sinnfreie Festlegung aufgegeben – jetzt dürfen Accessory Decoder auch mit CV1 beginnen. Nachfolgend ist die ursprüngliche (alte Adresse) in Klammern angegeben.
CV# | CV-Name | Bereich (default) |
Bedeutung | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 (513) |
Decoder Adresse (low) | 1 … 511 | unterer Teil der Decoderadresse.
|
||||||||||||||||||||||||||||||
2 (514) |
Auxiliary Activation | 0 … 255 | Bitfeld, gibt an ob ein Ausgang auch durch lokale Bedienelemente aktiviert werden darf. | ||||||||||||||||||||||||||||||
3 (515) |
Time on F1 | 0 … 255 | Gibt die Einschaltzeit für Ausgang 1 an. Einheit meist 10ms oder 20ms; 0 bedeutet permanent geschaltet. | ||||||||||||||||||||||||||||||
4 (516) |
Time on F2 | 0 … 255 | Gibt die Einschaltzeit für Ausgang 2 an. | ||||||||||||||||||||||||||||||
5 (517) |
Time on F3 | 0 … 255 | Gibt die Einschaltzeit für Ausgang 3 an. | ||||||||||||||||||||||||||||||
6 (518) |
Time on F4 | 0 … 255 | Gibt die Einschaltzeit für Ausgang 4 an. | ||||||||||||||||||||||||||||||
7 (519) |
Version | 0 … 255 read only |
Versionskennung des Decoders | ||||||||||||||||||||||||||||||
8 (520) |
Vendor ID | 0 … 255 read only |
Herstellerkennung | ||||||||||||||||||||||||||||||
9 (521) |
Decoder Adresse (high) | 0 … 7 | oberen 3 Bits der *Dekoder*Adresse, Berechnung der Ausgangsadresse siehe bei CV513 | ||||||||||||||||||||||||||||||
10-27 (522-539) |
tbd. | 0 … 255 | reserviert | ||||||||||||||||||||||||||||||
28 (540) |
Bi-Di | 0 … 255 | Bi-Directional Communication Config | ||||||||||||||||||||||||||||||
29 (541) |
Config | 0 … 255 | Allgemeine Decoderkonfiguration
Es gilt folgende Zuordnung:
|
||||||||||||||||||||||||||||||
30 | IndexH | 0 … 255 | Index Register High Byte | ||||||||||||||||||||||||||||||
31 | IndexL | 0 … 255 | Index Register Low Byte; mit diesen beiden CV wird ein Index innerhalb des Decoders addressiert: dabei wird in den Bereich CV257 bis CV512 eine Seite eingeblendet, auf die fortan zugegriffen werden kann. Dadurch entstehen 65536 * 256 adressierbare CVs. Aus diesem Bereich sind die ersten 4096 * 256 seitens der NMRA reserviert, der Rest ist herstellerspezifisch. Mit der Einführung von railcom wird die Seite mit CV31=0 und CV32=255 für die railcom-Verwendung reserviert. |
- Wie hängen Decoder-Addressing und Output-Addressing zusammen? Hier hilft folgende Graphik zur Veranschaulichung:
Herstellerkennungen
- Im folgenden sind die in D wichtigsten
- aufgeführt. DCC Vendor-ID, ManufacturerID, MID, VID sind alternative Bezeichnungen. Wenn ein Link fehlt, so hat das meist einen Grund 😉
dez | hex | Hersteller |
---|---|---|
13 | 0x0D | Öffentliche und Selbstbaudekoder |
18 | 0x12 | JMRI |
19 | 0x13 | AMW (Arnold Hübsch) |
20 | 0x14 | t4t technology for trains |
22 | 0x16 | KAM Industries |
24 | 0x18 | MoBaTron.de (Clemens) |
26 | 0x1A | MBTronik (Kurt Harders) |
28 | 0x1C | Heljan |
40 | 0x28 | Kato |
51 | 0x33 | DCC Supplies |
52 | 0x34 | Krois |
53 | 0x35 | Rautenhaus |
61 | 0x3D | Trainmodules, Ungarn |
62 | 0x3E | Tams Elektronik |
85 | 0x55 | Uhlenbrock |
97 | 0x61 | Doehler & Haas |
99 | 0x63 | Lenz |
101 | 0x65 | Bachmann Trains |
109 | 0x6D | Viessmann |
111 | 0x6F | Haber & Koenig Electronics |
113 | 0x71 | QSI |
115 | 0x73 | Dietz Modellbahntechnik |
117 | 0x75 | cT Elektronik |
122 | 0x7A | Berros |
123 | 0x7B | Massoth |
129 | 0x81 | Digitrax |
131 | 0x83 | Trix |
145 | 0x91 | Zimo |
147 | 0x93 | Umelec |
151 | 0x97 | ESU |
155 | 0x9B | Fleischmann |
157 | 0x9D | Kühn |
159 | 0x9F | LGB |
161 | 0xA1 | Roco (Modelleisenbahn GmbH) |
165 | 0xA5 | MERG (DIY in UK) |
186 | 0xBA | Brawa |
- (Herstellerkennung sind fallweise eingetragene Warenzeichen, eine Einzelauflistung spare ich mir, wer mit der Nennung seines Warenzeichens nicht einverstanden ist, kurze Mail, dann streiche ich das aus der Liste)