BiDiB-Monitor

    von Andreas Tillner

Anwendungsbereich

    BiDiB-Monitor ist eine leistungsfähige Software, welche einen schnellen Überblick über ein unbekanntes BiDiB-System gibt. Es werden alle Knoten ausgelesen und die vorhandenen Features und Softwarestände angezeigt. Features lassen sich verändern und zurückschreiben. Knoten werden mit ihrem Namen und Seriennummer dargestellt, auch eine individuelle Namensvergabe je Knoten ist möglich. Ein Firmware-Update kann durchgeführt werden.
    Loks können mit Hilfe eines Lokführerstandes gefahren werden und CV programmiert werden, Accessory können getestet und geschalten werden. Für Lokdekoder gibt es eine CV-Menuführung.
    Konfiguration im BiDiB-Knoten können über erläuternde Menus durchgeführt werden.

    Der BiDiB-Monitor ist damit ein wertvolles Hilfsmittel bei der Einrichtung eines BiDiB-Systems.

Download

    Die aktuelle Version findet man hier: opendcc.de/wiki
      Neuerungen:
    1. Lokdecoderverwaltung mit POM und PT Funktion zum lesen und setzen von CV's in Lokdecodern. Zusammen mit dem BiDiB-System ist das richtig flott: z.B. alle 160 CVs eines Zimo-Dekoder sind in 8s ausgelesen.
    2. Neues Eingabefenster zum direkten Setzen von Accessories
    3. Neue vereinfachter Firmwareupdate von BiDiB-Baugruppen, auch Multiupdate mehrerer Baugruppen möglich

    Lizenz: das Programm wird kostenfrei als 'freeware' angeboten, es gibt weder implizite noch explizite Garantie auf Funktion oder gar Schadenersatz bei ev. Programmmängeln.

Screenshots

    Nachfolgend beispielhaft ein paar Screenshots:

    Hauptfenster des Monitors


    Schalten von Zubehör


    Anzeige von Belegtmeldungen


    Featureanzeige (Feature sind gemeldete Eigenschaften von BiDiB-Knoten)


    Lokdekoderprogrammierung


    Einstellfenster für Kehrschleife

Support

    Eine Anleitung zum Programm ist im Download als pdf-Datei enthalten.

    Das Programm stützt die Erkennung von Baugruppen und deren Zuordnung zu Namen auf XML-Dateien ab. Diese Dateien müssen im Verzeichnis des Programmes liegen und können vom Anwender erweitert werden. Wenn hier eine Erweiterung stattfindet (z.B. neue BiDiB-IDs), dann sollten diese Erweiterungen zurück an den Autor und auch an den Arbeitskreis BiDiB gemeldet werden.

    Hilfe zum Programm können Sie im OpenDCC-Forum erhalten. Über das Forum können Sie auch den Autor des Programmes (welches in C# geschrieben ist) erreichen.

Anwendung in eigenen Projekten

    Ab Version 0.3.0.0 sind die wichtigsten Funktionen zur Kommunikation mit dem BiDiB-Interface in eine Library ausgelagert: BiDiBLib.dll Diese leistet:
  • Initialisieren der seriellen Schnittstelle zum BiDiB-Interface.
  • Abbildung der untersten Protokollschicht, d.h. erstellen der Messages (CRC-Berechnung, und maskieren von 0xFE und 0xFD).
  • Senden einer Messages an das Interface:
    Dabei muss nur die Knotenadresse, der Name der Message und die evtl. notwendigen Parameter übergeben werden.
  • Empfangen der Messages vom Interface:
    Die empfangenen Messages werden aus dem Datenstrom gefiltert und einzeln, nach CRC-Check, in einen FiFo (MsgFiFo) geschrieben. In der Variablen ProceedMSG muß eine Funktion hinterlegt werden, welche die Weiterverarbeitung der Messages aus dem MsgFiFo übernimmt.
  • Der Quellcode dieser Library und eine kleine C#-Beispielanwendung (mit unkommentiertem Code) sind im ZIP-Archiv im Verzeichnis Sources enthalten. Die Software basiert auf NET 4.0

Tipps und Tricks zum Monitor

  • Watchdog Nachrichten unterdrücken:
    Entweder Watchdogfeature in der Gleisausgabe abschalten, oder den Watchdog-Dienst in 'System'-<'Konfigusration'->'Benutzer Einstellungen' deaktivieren: Hier den Haken bei Watchdog rausnehmen.
  • Logdatei in Editor:
    Wenn man die Log-Datei mit Notepad++ öffnet, dann kann der Monitor simultan hineinschreiben.
  • CV-Programmierung: Hierfür gibt es XML-Dateien, mit denen die Darstellung gesteuert werden kann. Hier wird ein <type></type> in der XML angelegt. Es sind folgende Typen möglich:
    • Int Es muss ein Pärchen von <high></high> und <low></low> gebildet werden
    • Bit Unten rechts erscheint eine Reihe von CheckBoxen zur Bit-Eingabe.
    • Byte Es öffnet sich eine Listbox
    • DCC_ADDR_RG Spezialtyp, es muss ein Pärchen von <high></high> und <low></low> gebildet werden; es öffnet sich eine Öberfläche, in der man Weichenadresse und Schaltung (Rot/Grün) eintragen kann. Das entspricht einer einzelnen DCC-Adresse.
    • GBM16TReverser Spezialtyp, welcher eine Oberfläche zur Einstellung der Kehrschleife öffnet.
    Sich wiederholende Strukturen (z.B. mehrere Servos mit identischer CV-Anordnung) kann man vorab mittels eines <template> definieren und dann mehrfach mit Offsets in der XML einbauen. Ein Beispiel findet sich in der XML der LightControl bzw. auch des GBMBoost (dort mehrere GBM16T).

History

  • BiDiB-Monitor_V0.4.6.2
    1. neue XML-Struktur
    2. Bilder für Knoten
    3. Meldungsfenster für Debugmode
  • BiDiB-Monitor V0.4.3.6.zip
    1. Lokdekoderverwaltung
    2. Unterstützung Watchdog
    3. CV-Programmierung von BiDiB-Knoten, mittels erweiterter Datentypen (Int, Byte, Bit) und Templates
    4. Programmierung der Kehrschleifeeinstellung über BiDiB
    5. Datenbasis des Programm auf xml-Dateien basierend
    6. Monitoring verzweigter BiDiB-Strukturen mit Unternetzen
  • BiDiB-Monitor V 0.2.2.9.zip
    1. Auswertung Temperatur, Spannung, Strom
    2. POM Read: dargestellt als Hex, Dez, binär
    3. Bugfix bei Kommunikation
    4. Lokbedienung
    5. Boosterkontrolle und Stromanzeige
    6. erweiterte Featuredarstellung
  • BiDiB-Monitor V 0.1.0.2.zip
    1. Übersichtliche Auswertung von Lokadressen und Richtung, auch bei mehreren Lok auf einem Abschnitt
    2. Schnittstelle unterstützt jetzt auch Hardware-Handshake
    3. Modelbahnuhr mit einstellbarer Geschwindigkeit / Anfangs- u. Endzeit / Wiederholung.
    4. Den Knoten können beliebige Beschreibungen gegeben werden z.B. "Melder Sbf 2 - Gleis 1-4".
    5. Zwischen der technischen und beschreibenden Darstellung kann per >F4> hin und her geschaltet werden.
    6. Logdatei verbessert
    7. Firmware-Update Funktion hinzugefügt.
  • BiDiB Monitor Version 0.0.2.2
    1. Die Features der Knoten können verändert werden (siehe Handbuch)
    2. Im Kontextmenu eines Knoten (wenn es ein Melder ist) kann MSG_BM_GET_RANGE ausgelöst werden.
    3. Jeder UID kann eine freie Bezeichnung gegeben werden (siehe Handbuch).
      Über Abschalten der "Technischen Ansicht" wird dann diese Bezeichnung, anstelle der Hardware-Bezeichnung, angezeigt. Z.B. "Melder Sbf 2 - Gleis 1-4".
  • BiDiB Monitor Version 0.0.1.1
    1. Schreiben einer LOG-Datei (abschaltbar)
    2. Löschen der Knotenliste bei DISCONNECT und RESET (abschaltbar)
    3. Statusanzeige der Belegtmelder eines Knotens
    4. Statusanzeige der Switche/Eingänge eines Knoten (MSG_LC_KEY). Je nach Features sind die Statusanzeigen flexibel und werden automatisch angepasst.
    5. Wenn das Feature 2 (Quittung verfügbar) gesetzt ist, werden Belegtmeldungen (also MSG_BM_OCC, MSG_BM_FREE und MSG_BM_MULTIPLE) mit den entsprechenden MIRROR Messages bestätigt.
  • BiDiB Monitor Version 0.0.0.5 Erste freigegebene Version