OpenDCC GBM16, Gleisbesetztmelder, Konfiguration und Integration

    Auf dieser Seite wird die Bedienung und das Einbinden des Besetztmelders näher erläutert. Die Voreinstellung ist so, dass der Besetztmelder einfach ohne weiter Aktionen in Betrieb genommen werden kann.
    Wenn man jedoch bestimmte Eigenschaften verändern will, so sind Einstellarbeiten erforderlich. Des weiteren ist je nach verwendeten Rückmeldeprotokoll eine Adressvergabe erforderlich.

Adresszuordnung der Meldeabschnitte

    Der GBM16 kann parallel verschiedene Wege zum Absenden der Rückmeldung verwenden, dadurch unterscheidet sich je nach Rückmeldeweg auch die Adresszuordnung:
  • S88:
    Innerhalb des S88-Protokolls erfolgt die Adresszuordnung einfach durch die physikalische Position innerhalb der Rückmelderkette, es ist keine Einstellung erforderlich.
  • Xpressnet:
    Jeder Gleisprozessor liefert an seinen Controlprozessor die einprogrammierte DID (Detektor-ID), also die gewünschte Basisadresse. Der Controlprozessor sortiert nun die von diesem Gleisprozessor eingehenden Nachrichten entsprechend in den Rückmelderadressraum ein.
  • Hostschnittstelle:
    Hier sind verschiedene Protokollemulationen möglich, bei allen Emulationen bisheriger Protokolle gilt das unter Xpressnet gesagte: Die Meldungen des Gleisprozessors werden entsprechend der DID einsortiert.
    Bei Verwendung des neuen BiDiB-Protokolls sind keine Adresszuordnungen erforderlich, das BiDiB vergibt diese automatisch.

Adresseinstellung und Rückmelderidentifikation

    Der GBM16T enthält neben dem Rückmeldeteil auch einen DCC-Zubehördekoder. Dieser ist für die Funktion nicht erforderlich, ermöglicht aber durch die dann vorhandenen CV-Variablen einen Zugang zur Konfiguration. Es gibt also zwei einzustellende Adressen:
  • DCC-Adresse: Die 'Weichen'adresse des eingebauten DCC-Dekoders.
  • Rückmelder-Adresse: Die Adresse, unter welcher dann die Rückmeldungen an die Zentrale oder PC gemeldet werden. Hinweis: bei neuen Rückmeldeprotokoll BiDiB wird die Rückmelderadresse automatisch vergeben.
  • Diese beiden Adressen werden mit der 'Tastermethode' gelernt: Man bringt den GBM16T in den Programmiermode und sendet anschließend an der Zentrale die gewünschte Adresse als Weichenbefehl ab.
  • Identifikationsmode:
    hier zu den Taster kurz drücken. Der GBM geht in den Identifikationsmode, dabei werden alle Belegtmelder auf blinkend geschaltet, die normale Belegtmeldung ist in dieser Zeit unterdrückt. Man kann dann am PC oder in der Zentrale die entsprechenden Melderbits leicht finden und zuordnen bzw. die vorgenommene Einstellung überprüfen.
    Mit einem weiteren kurzen Tastendruck wird der Identifikationsmode wieder verlassen.
  • Programmiermode:
    hierzu den Taster lang drücken. Der GBM geht zuerst in den Identifikationsmode (die Gleis-LEDs blinken), dann weiter in den Programmiermode, es blinkt (hektisch) zusätzlich die PROG LED. Zuerst ist der Mode für DCC Adresse lernen aktiv, es blinkt die DCC LED. Wenn nun eine Zubehöradresse empfangen wird, so leuchtet die DCC LED permanent und die Adresse-1 4 wird als Basisadresse des Decoders verwendet. (siehe hierzu auch die Erläuterungen beim OpenDecoder)
    kurzer Tastendruck: Der GBM verbleibt im Programmiermode, wechselt aber zu Rückmelderadresse lernen, es blinkt die Power LED. Wenn nun eine Zubehöradresse empfangen wird, so leuchtet die Power LED permanent und die Adresse mod 8 wird als Rückmelderadresse des Decoders verwendet.
    kurzer Tastendruck: Der GBM verbleibt im Programmiermode, wechselt aber wieder zum DCC lernen.
    Mit einem weiteren langen Tastendruck wird der Programmiermode wieder verlassen.

Einstellungen am Track-Prozessors GBM16T

    Der GBM16T kann auf drei verschiedene Arten konfiguriert werden:
  • DCC: Der GBM16T kann als normaler Zubehördekoder programmiert werden: Adresse lernen funktioniert mit der üblichen Tastermethode (siehe OpenDecoder), intere Variablen sind im Programmiermodus oder per PoM zugänglich.
  • GBM16C: Über die normale USB-Schnittstelle des gesamten Rückmeldersystems lassen sich einzelne GBM16T gezielt ansprechen und Einstellungen vornehmen.
  • FTDI-RS232: Der GBM16T verfügt optional über eine Debugschnittstelle, hier können neben Einstellung auch Testausgaben erfolgen. Die Debugschnittstelle ist am unteren Rand über eine 6-polige Stiftleiste zugänglich. Die Pinbelegung der Stiftleiste ist für das FTDI USB-RS232 ausgelegt (3V3 oder 5V, beides geht). Die Schnittstelle wird mit 115200 Baud, 8N1 betrieben. Eine Kommandoübersicht erhält man nach Eingabe von ?<cr> .

CVs des Track-Prozessors GBM16T

    Das Verhalten des Gleisprozessor kann mit Konfigurationsvariablen (wie man sie auch von Lokomotiven kennt) eingestellt werden. Im Regelfall werden die Voreinstellungen passen, nur die Adresse muß auf die jeweilige Anlage eingestellt werden. Die Empfindlichkeit der Eingänge und das zeitliche Verhalten des Gleisprozessors ist mittels CVs einstellbar.
    Diese Einstellung geht am leichtesten mit den BiDiB-Tools wie z.B. dem BiDiB-Monitor.

    Screenshot CV-Einstellung im Monitor
  • CV33: Decoder Mode
    Der Rückmelder kann mit einer optionalen Kehrschleifenautomatik ausgestattet werden. Diese kann auch per DCC-Befehl umgeschaltet werden: dafür gibt es die Dekoderadresse (siehe Opendecoder) und den passenden Decoder Mode. Voreinstellung 200.
    WertBedeutung
    200Ansteuerung einer Kehrschleifenautomatik mit Weichenbefehl auf die gelernte Adresse
    201Direkte Ansteuerung der Leitungen zum Kehrschleifenmodul (nur für Testzwecke)
  • CV34: Operation Mode
    Hier wird die Betriebsart des Rückmelders eingestellt. Voreinstellung 0.
    WertBedeutung
    0Belegtmelder, optimiert für DCC
  • CV35: Jumper
    In dieser CV werden die Positionen der Konfigurationssteckbrücken angezeigt. (nur lesen möglich).
    BitBedeutung
    0Jumper 1, Unten, Bootloader
    1Jumper 2, Mitte, (reserviert)
    2Jumper 3, Oben, (reserviert)
  • CV36: Stromquelle
    In dieser CV wird eingestellt, ob eine ev. vorhandene Stromquelle bei Boosterausfall als Ersatzspeisung verwendet werden soll.
    WertBedeutung
    0Keine Ersatzstromquelle verwenden
    1Ersatzspeisung mit Stromquelle 10mA bei Boosterausfall
    Hinweis: Wenn die Stromquelle verwendet werden soll, dann müssen folgende Vorraussetzungen erfüllt sein:
    • Die Ersatzstromquelle muß bestückt sein und Jumper R27 (SJ) muß geschlossen sein.
    • Es muß eine separate Stromversorgung des GBM16T verhanden sein.
    • Der Analogmode in den Dekodern auf der Anlage sollte abgeschaltet sein, um fälschliche Analogerkennung zu vermeiden.
    • Bei extrem fein ansprechenden Motoren (Faulhaber) kann es zu Kriechen der Fahrzeuge kommen.
  • CV38: Channel 1 Filter
    In dieser CV wird eingestellt, wie oft eine Adressnachricht in Channel 1 fehlerfrei empfangen werden muß, bis eine gültige Adresse erkannt wird.
    WertBedeutung
    2..20Anzhal der Nachrichten-Paare aus ADDR-Low und ADDR-High
    Hinweis: Wenn zwei Loks zugleich auf Channel 1 senden, dann überlagern sich die Nachrichten (verodern der 0-Bits des Telegramms). Das Ergebnis kann zufällig eine gültige Adresse werden - diese ist aber nicht am Gleis.
    Der GBM16T filtert daher Adressnachrichten im Kanal 1, erst wenn die definierte Folge an Adressnachrichten fehlerfrei empfangen wurde, wird diese als gültig angenommen.
    Es wird dringend empfohlen, Channel 2 zu verwenden (CV28 im Lokdekoder auf 2 stellen), dort geht die Erkennung schneller und sicherer.
  • CV40: Detektor-ID low
    In dieser CV (zusammen mit CV41) wird die Basisadresse dieses Rückmelders eingestellt. Diese Einstellung wird verwendet, um den Rückmelder bei adressierfähigen Bussystemen in seiner Adresse festzulegen. Abgelegt wird hier die echte Bitadresse. Zulässig sind nur Werte, die durch 8 teilbar sind. (also 0, 8, 16, usw.)
    Bei BiDiB ist diese Einstellung nicht erforderlich.
  • CV41: Detektor-ID high
    In dieser CV (zusammen mit CV40) wird die Basisadresse dieses Rückmelders eingestellt.
  • CV42: Ansprechverzögerung, Activate Delay
    In dieser CV wird festgelegt, wie oft hintereinander das Meßsystem eine Überschreitung des Schwellwertes detektieren muß, bis der zugehörige Melder auf 'belegt' umgeschaltet wird. Damit lassen sich einzelne Ausreißer wegfiltern, die durch andere Einflüße entstanden sind. (wie z.B. durch das Einschalten einer Leuchtstoffröhre im Raum).
    Das Meßsystem nimmt dabei synchron zum Gleissignal etwa alle 100µs einen Sample, diese werden mit einen Tiefpass der Länge 8 geglättet. Der Ausgang des Tiefpasses wird alle 1ms abgetastet.
    Einheit: 1ms
    Voreinstellung: 5
    Wertebereich: 1 ... 200
  • CV43: Haltezeit, Hold Time
    In dieser CV wird festgelegt, wie lange eine erkannte Belegung gehalten wird. Damit läßt sich Meldungsflackern z.B. bei schlechter Stromaufnahme vermeiden.
    Einheit: 100ms
    Voreinstellung: 15 (=1,5 Sekunden)
    Wertebereich: 1 ... 100
  • CV44: Ansprechschwelle bei aktivem Eingangssignal
    In dieser CV wird die Schwelle festgelegt, ab der bei aktivem Eingangssignal eine Belegung erkannt wird.
    Einheit: ca. 0.5mV
    Voreinstellung: 12
    Hinweis zur Empfindlichkeit: Bei einem Meßwiderstand von 22R bewirkt ein Strom von 22uA eine Meßspannung von 0,5mV. Die Voreinstellung von 10 entspricht also einem Strom von 220uA; Nimmt man die DCC Spannung zu 12V an, so ergibt sich bei einer Belegtmeldung über Widerstandsachse von 50k dieser Strom.
    Sollte Fehlmeldungen auftreten (z.B. durch Leckstrom wegen feuchtem Schotter im Gleis), so ist der Wert zu erhöhen.
  • CV45: Ansprechschwelle bei inaktivem Eingangssignal
    Wahlweise kann der Belegtmelder bei inaktivem Eingang die Gleisausgänge mit einer Ersatzstromquelle versorgen. Diese speist konstant 10mA Strom in alle Gleisausgänge parallel ein. In dieser CV wird die Schwelle festgelegt, ab der bei inaktivem Eingangssignal eine Belegung erkannt wird.
    Einheit: ca. 0.5mV
    Voreinstellung: 6
  • CV46: Kehrschleifenmode
    In dieser CV wird festgelegt, wie die Ausgänge der Kehrschleife beschaltet sind.
    BitBedeutung
    00: keine Kontrolle per DCC
    1: Kehrschleifenstellung wird per DCC-Weichenbefehl geschaltet. (CV33 muß hierzu auch auf 200 stehen, damit der DCC-Befehl auch entsprechend interpretiert wird)
    10: keine Kontrolle mittels Belegtmeldung
    1: Kehrschleifenstellung über Belegtmeldung geschaltet. Die auslösenden Belegtmelder werden mit den folgenden CVs ausgewählt.

    Voreinstellung: 3 (beide Bits an)
  • CV47: Kehrschleife, Triggerbedingung Aktivieren, Low
    In dieser CV wird festgelegt, welche Belegungen die Kehrschleife einschalten. Hier Anschluß 0 ... 7; Bit 0 entspricht Melder 0, Bit 1 enspricht Melder 1, usw. Ein gesetztes Bit bedeutet, dass eine Belegung des korrespondierenden Melders die Kehrschleifeumschaltung aktiviert.
    Voreinstellung: 0
  • CV48: Kehrschleife, Triggerbedingung Aktivieren, High
    In dieser CV wird festgelegt, welche Belegungen die Kehrschleife einschalten. Hier Anschluß 8 ... 15.
    Voreinstellung: 0
  • CV49: Kehrschleife, Triggerbedingung Deaktivieren, Low
    In dieser CV wird festgelegt, welche Belegungen die Kehrschleife ausschalten. Hier Anschluß 0 ... 7.
    Voreinstellung: 0
  • CV50: Kehrschleife, Triggerbedingung Deativieren, High
    In dieser CV wird festgelegt, welche Belegungen die Kehrschleife ausschalten. Hier Anschluß 8 ... 15.
    Voreinstellung: 0
  • CV51: Kehrschleifenposition
    In dieser CV wird hinterlegt, welche Position die Kehrschleife aktuell hat. Diese CV kann nur gelesen werden.
    Voreinstellung: 0
  • CV52: Maßstab
    In dieser CV wird hinterlegt, welcher Maßstab bei Geschwindigkeitsmessungen zu Grunde liegt. Z.B. für H0 (=1/87) wird 87 eingetragen, N:160, TT:120
    Voreinstellung: 87
  • CV53: Messstrecke, Länge, Lowbyte
    Mit den CV53 und CV54 wird hinterlegt, wie lange der Meßabschnitt ist. Länge = CV54 * 256 + CV53. Einheit mm.
    Voreinstellung: 232 (=1000mm%256)
  • CV54: Messstrecke, Länge, Highbyte
    Siehe CV53
    Voreinstellung: 3 (=1000mm/256)
  • CV55: Start der Messung, low
    In dieser CV wird festgelegt, welche Belegungen die Messung starten. Hier Anschluß 0 ... 7; Bit 0 entspricht Melder 0, Bit 1 enspricht Melder 1, usw. Ein gesetztes Bit bedeutet, dass eine Belegung des korrespondierenden Melders die Zeitnahme startet.
    Voreinstellung: 2
  • CV56: Start der Messung, high
    In dieser CV wird festgelegt, welche Belegungen die Messung starten. Hier Anschluß 8 ... 15; Bit 0 entspricht Melder 8, Bit 1 enspricht Melder 9, usw. Ein gesetztes Bit bedeutet, dass eine Belegung des korrespondierenden Melders die Zeitnahme startet.
    Voreinstellung: 0
  • CV57: Stop der Messung, low
    In dieser CV wird festgelegt, welche Belegungen die Messung beendet und die Auswertung anzeigt. Hier Anschluß 0 ... 7; Bit 0 entspricht Melder 0, Bit 1 enspricht Melder 1, usw. Ein gesetztes Bit bedeutet, dass eine Belegung des korrespondierenden Melders die Messung beendet.
    Voreinstellung: 4
  • CV58: Stop der Messung, high
    In dieser CV wird festgelegt, welche Belegungen die Messung beendet und die Auswertung anzeigt. Hier Anschluß 8 ... 15; Bit 0 entspricht Melder 8, Bit 1 enspricht Melder 9, usw. Ein gesetztes Bit bedeutet, dass eine Belegung des korrespondierenden Melders die Messung beendet.
    Voreinstellung: 0

Beispiel für Kehrschleife

    Kehrschleifenprinzip
    Das Beispiel zeigt eine Strecke, bestehend aus 5 Abschnitten: A sei 'rechts' gepolt, B, C, D bilden den umschaltbaren Abschnitt, Abschnitt E ist 'links' gepolt. Die Abschnitte A und B bilden die Sensorgleise für das 'Rechts'-Schalten der Kehrschleife, D und E entsprechend die Abschnitte für das 'Links'-Schalten.

    Fährt nun ein Zug in A ein, so werden die Abschnitte B, C, D nach 'rechts' geschaltet und der Zug kann problemlos einfahren. Erreicht der Zug den Abschnitt D, werden die Abschnitte B, C, D nach 'links' geschaltet und der Zug kann ausfahren. In Gegenrichtung löst E das 'Links'-Schalten aus und B dann die Schaltung nach 'rechts'.

    Verdrahtung: Die mittleren Abschnitte werden über die Relaisplatine geführt, diese macht die Umpolung. Alle Abschnitte werden dann auf den GBM16 verdrahtet, dabei ist es egal, wohin welcher Abschnitt verdrahtet wird. Im Beispiel ist A auf 2, B auf 5, C auf 11, D auf 7 und E auf 13 angeschlossen.

    CV-Einstellung: Die Melder A und B (also 2 und 5) sollen das Einschalten der Kehrschleife auslösen, damit ergibt sich folgendes Bitmuster für CV47 und CV48 (Bits und Melder werden je beginnend bei 0 gezählt):
    CV48 (On, Highbyte)CV47 (On, Lowbyte)
    151413121110 9 8  7 6 5 4 3 2 1 0
    00000000 00100100
    Wert: 0Wert: 36
    Die Melder D und E (also 7 und 13) sollen das Ausschalten der Kehrschleife auslösen, damit ergibt sich folgendes Bitmuster für CV49 und CV50 (Bits und Melder werden je beginnend bei 0 gezählt):
    CV50 (On, Highbyte)CV49 (On, Lowbyte)
    151413121110 9 8  7 6 5 4 3 2 1 0
    00100000 10000000
    Wert: 32Wert: 128
    Wichtig: Der eigentliche Kehrschleifenabschnitt C muß länger als der Zug sein, die Sensorabschnitte B und D dürfen nicht gleichzeitig ausgelöst werden.

    Info: Sollte gewünscht sein, dass der Kehrschleifenabschnitt C aus mehr als einem Meldeabschnitt besteht (z.B. weil man das in der Zugfahrtsüberwachung so braucht), dann kann man mittels eines weiteren Relaismodul auch mehr als drei Meldabschnitte schalten lassen. Auf die Funktion hat das keinen Einfluß. Es ist wichtig, dass alle Triggermelder auf dem gleichen GBM angeschlossen sind.

    Tipps:
    • Mit dem DCC Polaritätsmesser kann man sich sehr schnell einen Überblick verschaffen, ob alles richtig angeschlossen und eingestellt ist. Das ist ein Hilfmittel, welches mir bei der Installation sehr viel geholfen hat.
    • Im Debuginterface des Trackproc kann man sich auf dem Ausgabefenster mit dem Befehl R die Zuordnung der Triggerkanäle des Reversers und die aktuelle Belegung anzeigen lassen. Das Zeichen # am Ende der Zeile zeigt die aktuelle Position der Kehrschleife an. Und mit den Befehlen RA (=hinzufügen) bzw. RM (=entfernen) kann man einzelne Belegtabschnitte aus der Triggerbedingung entfernen. Damit spart man sich da umrechnen auf CV-Werte.

Geschwindigkeitsmessung

    Der GBM16T verfügt über eine genaue Zeitbasis und ein schnelles Erfassungssystem. Es war also naheliegend, hier auch gleich eine Geschwindigkeitmessung zu integrieren. Damit kann man dann direkt die gemeldete Geschwindigkeit von entsprechenden Railcom-Dekoder kontrollieren und die zugehörigen CVs im Lokdekoder korrekt einstellen. (enthalten ab GBM16T-Version 1.3)

    Geschwindigkeit ist v = l / t (also zurückgelegte Länge durch Zeit), wobei auf der Modellbahn l noch mit dem Maßstab s skaliert wird. Folgende Eingaben sind also erforderlich:
  • Dem GBM16T muß die Länge der Meßstrecke bekannt gemacht werden: CV53 und CV54 bilden zusammen hier eine 16-bit Zahl, in welche die Länge in der Einheit mm eingetragen wird. Länge = CV54 * 256mm + CV53.
  • Damit die Umrechnung in Vorbildgeschwindigkeit korrekt erfolgt, muß der Maßstab in CV52 eingetragen werden. Die Voreinstellung 87 entspricht H0.
  • Dann müssen die Zeitnahmepositionen definiert werden: Wann die Lok die Meßstrecke betritt und wann die Meßstrecke durchfahren ist. Angenommen, die Lok stehe in Abschnitt 0, die Meßstrecke sei der Abschnitt 1 und die Lok fahre nach der Meßstrecke in den Abschnitt 2 ein. Dann ist das Betreten von Abschnitt 1 (also der Meßstrecke selbst) der Startzeitpunkt, das Betreten des Abschnittes 2 markiert das Ende der Messung. Die jeweils notwendigen Melder für Start und Ende werden in den CV55/CV56 und CV57/CV58 markiert.
  • Und dann muß das Debug-IF noch überzeugt werden, die Messung auch anzuzeigen: Kommando V schaltet das frei.

Integration des Meldersystems

    Die Meldungen der Trackproc (GBM16T) werden am Controlproc (GBM16C) gesammelt und an die jeweilige Hostschnittstelle weitergereicht. Diese sind:
  • USB
  • Xpressnet
  • BiDiB
  • S88
  • Was über welche Schnittstelle wie weitergereicht wird, kann in den Konfigurationseinstellungen des GBM16C definiert werden.

Controlproc - USB-Schnittstelle

    Der Controlproc verfügt über eine USB-Hostschnittstelle für die Meldungen, für Firmwareupdate und für eine vereinfachte Konfiguration. Die USB-Schnittstelle kommuniziert über einen virtuellen COM-Port.

Firmware-Update

    Wenn beim Einschalten des Dekoders der Bootjumper gesteckt ist, dann wird der Bootloader aktiv und es kann ein Firmware-Update durchgeführt werden. Die LED leuchtet zu Beginn permanent und blinkt da bei jedem Byte kurz auf. Der Bootloader kommuniziert im standard-AVROSP Protokoll mit 19200 Baud, 8N1. Nähere Informationen finden sich in der Bauanleitung zum Regler.

Konfigurationsschnittstelle

    Im regulärem Betrieb ist auf dem USB-Port ein Kommando-Interface (API) implementiert, mit dem man Befehle an den Dekoder absenden kann. Hierzu kann z.B. das Terminalprogramm hterm.exe verwendet werden.

    Die API arbeiten mit einem seriellen Protokoll, eingestellt sind 115200 Baud, 8 Bit, keine Parity, 1 Stopbit (8N1). Übertragen werden 8-Bit ASCII, die API unterscheidet bei Befehlen nicht nach Groß-Kleinschreibung. Gesendete Befehle werden mit <cr> oder <cr-lf> terminiert, die Antwort enthält <cr-lf> als Endemarkierung.
    Unbekannte Befehl werden mit 'unknown command' beantwortet.

API Befehle

  • Help
    Parameter: keine
    Antwort: ein Hilfetext, der die API-Befehle kurz erläutert.
  • Info
    Parameter: keine
    Antwort: "OpenDCC_BiDiGBM hw 1.0, sw 02, api 01" (Beipiel)
    Die Antwort besteht aus einem String, beginnend mit dem Hardware Identifier ("OpenDCC_BiDiGBM) und Versionnummern. Es folgen weitere Schlüsselworte, jeweils gefolgt von einem Zahlenwert.
    hwHardware-Version
    sw Software-Version
    api Dies ist die Versionnummer des Parsers, anhand dieser kann unterschieden werden, welcher Befehlsvorrat unterstützt wird.
  • EH
    Parameter: keine
    Antwort: running HSI88 Emulation
    Der GBM schaltet aus dem Debugmode in die HSI88-Emulation um, diese Unschaltung erfolgt permanent. Der HSI88-Mode kann mit dem Befehl 'X' (groß geschrieben) wieder verlassen werden. Achtung: z.Z. wird die Baudrate beim Umschalten in den HSI88 Modus nicht verändert, dieser läuft dann auch mit 115200 Baud. (und nicht mit 9600 wie das Original-HSI88). Fallweise muß man das Hostprogramm entsprechend konfigurieren, z.B. bei TC mit UseCommDefaults.
  • EB
    Parameter: keine
    Antwort: running BiDiB Emulation
    Der GBM schaltet aus dem Debugmode in die BiDiB-Emulation um, diese Unschaltung erfolgt permanent.
  • REBOOT
    Parameter: keine
    Antwort: keine
    Der Decoder führt einen Neustart aus (notwendig z.B. nach Umstellen von Betriebarten-CVs
    • !!! hier fehlt text !!!
    Die folgenden Befehle sind nur für Debugzwecke gedacht, es erfolgt keine Parameterprüfung - bitte vorsichtig benutzen :-)
  • XER ADDR
    Lese von der EEPROM Adresse (z.B. XER 0x34)
  • XEW ADDR DATA
    Schreibe auf EEPROM Adresse (z.B. XEW 0x34 0x45)

Befehle bei HSI88-Emulation

    Der OpenDCC GBM kann auf der Hostschnittstelle das HSI88 von Littfinksi (LDT) emulieren. Die HSI88-Ansteuerung kennt zwei Betriebsarten: binary und ascii. In der Betriebsart binary werden Adressen und Daten als unsigned int8 übergeben, in der Betriebsart ascii werden diese 8-Bit Daten als Hex, bestehend aus 2 Zeichen ohne weiteres Präfix übertragen. LDT bezeichnet die Betriebsarten mit Terminalmode.

    Ein Kommando oder eine Antwort wird immer mit einfachen <cr> (ohne <lf>) abgeschlossen. Es gibt folgende Kommandos:
  • v <cr>
    Antwort: Ver. 0.01 / 14.10.10 / HSI-88 / OpenDCC <cr>
    Versionsabfrage, bis auf den 'Kernstring' HSI-88 können sich alle Bestandteile des Strings ändern, auch die Länge.
  • t <cr>
    Antwort: t[MODE]<cr>
    Umschalten der Betriebsart (Terminalmode). Die Betriebsart wird bei jeden Befehl umgeschaltet, default nach dem Start der Emulation ist binary. MODE = '0' bedeutet binary, MODE = '1' bedeutet ascii.
  • s [LINKS][MITTE]RECHTS]<cr>
    Antwort (Teil 1): s[SIZE]<cr>
    Mit diesem Befehl wird die Größe (Size) der jeweiligen Teilketten (angegeben in Modulen zu je 16 Bit) eingestellt. Für den OpenDCC GBM ist die Aufteilung in Teilketten ohne Belang, beachtet wird nur die Summe aus LINKS, MITTE und RECHTS, diese wird in der Antwort als SIZE auch zurückgemeldet.
    Je nach Betriebsart erfolgt sowohl die Übergabe der Parameter für s als auch die Antwort entweder binary oder ascii.
    Als zweiter Teil der Antwort folgt eine Initialmeldung (siehe unten), wobei alle Module gemeldet werden.
    Dieser Befehl ist nach dem Start einmal auszuführen, erst dann können Initialmeldungen geänderter Rückmelder erfolgen.
  • m <cr>
    Antwort: Bytefolge mit folgenden Aufbau:
    m [SIZE] [ [MODUL] [DATA_HIGH] [DATA_LOW] ] <cr>
    SIZEAnzahl der Module, die gemeldet werden.
    MODULNummer des Moduls. Ein Modul umfaßt 16 Rückmelderbits.
    DATA_HIGHDie oberen 8 Rückmelderbits dieses Moduls
    DATA_LOWDie unteren 8 Rückmelderbits dieses Moduls
    Mit dem Befehl m werden alle angeschlossenen Rückmeldemodule abgefragt. Je nach Betriebsart ist die Länge der Antwort unterschiedlich: binary: 3+SIZE*3, ascii: 4+SIZE*6
  • X <cr>
    Antwort: X <cr>
    X (groß geschrieben) beendet die HSI88 Emulation und kehrt zum Konfiguration-Interface zurück. Dieses Kommando ist am Orginal HSI88 nicht vorhanden.
  • Initialmeldung
    Bytefolge mit folgenden Aufbau:
    i [SIZE] [ [MODUL] [DATA_HIGH] [DATA_LOW] ] <cr>
    SIZEAnzahl der Module, die gemeldet werden.
    MODULNummer des Moduls. Ein Modul umfaßt 16 Rückmelderbits.
    DATA_HIGHDie oberen 8 Rückmelderbits dieses Moduls
    DATA_LOWDie unteren 8 Rückmelderbits dieses Moduls
    Diese Initialmeldungen erfolgt spontan und liefert nur die geänderten Rückmeldemodule. Je nach Betriebsart ist die Länge der Antwort unterschiedlich: binary: 3+SIZE*3, ascii: 4+SIZE*6

Befehle bei RC-Talk-Emulation

    !!! hier fehlt text !!!