OpenDCC, Zentrale für DCC, Initialisierung USB

Schritt 1: Einspielen der USB-Konfigurationsdaten in OpenDCC

    Damit die weiter unten beschriebenen Einstellungen auch zum Chip in OpenDCC passen, muss dieser vorher (einmalig) entsprechend konfiguriert werden. Das Konfigurieren des Adapters ist nur über die D2xx Treiber möglich, die man von FTDI laden kann. Das Archiv von FTDI wird in ein Verzeichnis entpackt.

    Hinweis 11.07.2007: da gibt es einen neuen Kombitreiber von FTDI, mit dem geht es ohne die Umkonfigurieren. Einfach Treiber einspielen und mit mprog Vendor-ID und Produkt-ID einspielen. Die nachfolgende Beschreibung ist daher vermutlich veraltet. Trotzdem gibt sie wichtige Hinweise, wenn man den FTDI Treiber für andere Betriebssystem anpassen will.
    1. Es dürfen keine VCP-Treiber installiert sein. Sind schon den VCP-Treiber installiert, dann müssen diese zuerst wieder deinstalliert werden.
    2. Jetzt OpenDCC mit dem PC verbinden. Eine neue Hardware wird erkannt, zu der es nun keinen Treiber gibt.
    3. Für diese neue Hardware werden nun die D2XX-Treiber installiert. OpenDCC sollte nun als Eintrag unter den USB-Devices in der Systemsteuerung erscheinen.
    4. Nach dem Installieren de D2XX-Treiber wird 'mprog' installiert und gestartet.
    5. Im In 'mprog' lädt man folgende Datei (EEPROM template: OpenDCC_V1.2.ept).

      Damit sind alle notwendigen Einstellungen bereits vorgenommen. Nun kann man mit der "Lupe" die verfügbaren Devices suchen und durch Drücken auf das Blitzsymbol wird der USB-Chip und das EEPROM konfiguriert.
    6. Jetzt den D2XX Treiber wieder deinstallieren, damit der VCP (siehe unten) installiert werden kann.

Schritt 2: Einstellung in der Hardware von OpenDCC

    Um den USB-Port zu benutzen, müssen die entprechenden Lötbrücken (SJ = Solder Jumper) oder Steckbrücken (JP = Jumper)) auf der Hardware geschlossen werden:
    Jumper für USB Betrieb
    Layout V1.3Layout V1.4
    SJ2 offen JP52-3 geschlossen
    SJ3 geschlossen JP62-3 geschlossen
    SJ5 2-3 geschlossen
    (2-3 ist die Seite zum USB-Chip hin)
    Damit ist der Atmel mit den USB-Chip und nicht mit dem RS232-Chip verbunden.

Schritt 3: Treiber am PC laden

    Zur Nutzung der USB Schnittstelle von OpenDCC ist ein VirtuellerComPort (VCP) Treiber nötig. Dieser emuliert eine serielle Schnittstelle im PC, auf die dann die Steuerungssoftware zugreifen kann. Der tatsächliche Datenverkehr wird aber über die USB-Verbindung hergestellt. Diesen VCP-Treiber (und weitere Informationen) findet man bei FTDI. Der auf OpenDCC eingesetzte USB Chip hat die Bezeichnung FD232RL.

    Am USB-Bus hat jeder Teilnehmer eine VID und PID (VID: Vendor ID, PID: Product ID, ID=Kennzahl). OpenDCC hat eine eigene PID innerhalb der für FTDI vergebenen VID bekommen:
      VID: 0x0403
      PID: 0xBFD8
      Product Description: 'USB-IF OpenDCC V1.2'

    Installation: das ZIP-Archiv von FTDI wird es in ein beliebiges Verzeichnis entpackt. Nun müssen die VID und PID für OpenDCC in drei Dateien dieses Treibers eingetragen werden. Hierzu sind in den Dateien die folgenden kursiven, roten Zeilen zu ergänzen:
    Ftdibus.inf
    [FtdiHw]
    %USB\VID_0403&PID_8372.DeviceDesc%=FtdiBus,USB\VID_0403&PID_8372
    %USB\VID_0403&PID_6001.DeviceDesc%=FtdiBus,USB\VID_0403&PID_6001
    %USB\VID_0403&PID_BFD8.DeviceDesc%=FtdiBus,USB\VID_0403&PID_BFD8
    
    [ControlFlags]
    ExcludeFromSelect=USB\VID_0403&PID_8372
    ExcludeFromSelect=USB\VID_0403&PID_6001
    ExcludeFromSelect=USB\VID_0403&PID_BFD8
    
    [Strings]
    Ftdi="FTDI"
    DriversDisk="FTDI USB Drivers Disk"
    USB\VID_0403&PID_8372.DeviceDesc="USB Serial Converter"
    USB\VID_0403&PID_6001.DeviceDesc="USB High Speed Serial Converter"
    USB\VID_0403&PID_BFD8.DeviceDesc="USB-IF OpenDCC V1.2"
    WINUN="Software\Microsoft\Windows\CurrentVersion\Uninstall"
    FtdiBus.SvcDesc="USB Serial Converter Driver"
    
    Ftdiport.inf
    [FtdiHw]
    %VID_0403&PID_8372.DeviceDesc%=FtdiPort,FTDIBUS\COMPORT&VID_0403&PID_8372
    %VID_0403&PID_6001.DeviceDesc%=FtdiPort232,FTDIBUS\COMPORT&VID_0403&PID_6001
    %VID_0403&PID_BFD8.DeviceDesc%=FtdiPort232,FTDIBUS\COMPORT&VID_0403&PID_BFD8
    
    [Strings]
    FTDI="FTDI"
    DriversDisk="FTDI USB Drivers Disk"
    PortsClassName = "Ports (COM & LPT)"
    VID_0403&PID_8372.DeviceDesc="USB Serial Port"
    VID_0403&PID_6001.DeviceDesc="USB Serial Port"
    VID_0403&PID_BFD8.DeviceDesc="USB-IF OpenDCC V1.2"
    FtdiPort.SvcDesc="USB Serial Port Driver"
    SerEnum.SvcDesc="Serenum Filter Driver"
    
    Uninstaller.INI
    === In File Ftdiunin.ini ===
    
    [Uninstall]
    Device=VID_0403&PID_BFD8
    InfFiles=FTDIBUS,FTDIPORT,FTSERMOU
    Key=FTDICOMM
    
    === In File Ftdiun2k.ini ===
    
    [Uninstall]
    Device=VID_0403&PID_BFD8
    Converter=FTDIBUS
    Serial=FTSER2K
    Key=FTDICOMM
    
    Den Treiber mit den bereits durchgeführten Ergänzungen kann man auch gleich hier laden.

Schritt 4: Verbinden

    Stellt man nun die Verbindung von OpenDCC und PC her, dann sollte OpenDCC korrekt in der Deviceübersicht in der Systemsteuerung erscheinen. Die angezeigte Version 1.2 gilt für alle Versionen 1.x von OpenDCC.