OpenDCC - Command Station for DCC - Initialisation of USB

Step 1: Setting up OpenDCC's USB configuration data

    You have to configure the USB chip (only once) in order to make it work with the settings described in the next steps. To configure the device you will need the D2xx driver, you can download it from FTDI. Please unpack that archive.

    Note (20071107): There is a new driver which doesn't need the following reconfigurations. Just install the driver and set the Vendor-ID and Product-ID with mprog. The following description may therefore be obsolete. However it gives useful information how to configure for different operation systems.
    Note (20100119): Instructions about how to do the USB chip configuration under Linux will follow soon.
    1. If you already have installed the VCP driver, remove it. Otherwise, the following steps will not work.
    2. Now connect OpenDCC to your computer. A new device should be detected, but Windows will not have a driver for it.
    3. For this new device, the D2XX driver shall be installed. After this, OpenDCC should appear as a new entry in the USB device list of the Device Manager.
    4. After installing the D2XX driver, install and run 'mprog'
    5. Load the following file into mprog: (EEPROM template: OpenDCC_V1.2.ept).

      All required settings are now prepared. The "lens-button" will search for USB devices and the "lightening-button" will burn the settings into the EEPROM.
    6. Now uninstall the D2XX driver in order to install the VCP driver.

Step 2: Prepare OpenDCC's hardware

    To use the USB port, close the solder jumpers (SJ) on the PCB:
    Jumper for USB Operation
    Layout V1.3Layout V1.4
    SJ2 open JP52-3 closed
    SJ3 closed JP62-3 closed
    SJ5 2-3 closed
    (2-3 is the side towards the USB chip)
    With that, the Atmel is connected to USB and not to RS232.

Step 3: Load the computer's driver

    You need a VirtualComPort (VCP) driver to use OpenDCC's USB port. It emulates a serial interface witch will be accessed by the control software, but in reality all the data is transmitted via USB. You will find the VCP driver (and more information) on the FTDI homepage. OpenDCC uses the FD232RL chip.

    Each device on the USB bus has its own VID and PID (VID: Vendor ID, PID: Product ID). OpenDCC got its own PID in the range of FTDI's VID:
      VID: 0x0403
      PID: 0xBFD8
      Product Description: 'USB-IF OpenDCC V1.2'

    Setup: Unzip the archive into a self-chosen directory. Enter OpenDCC's PID and VID into three files of the driver. Therefore, For this, add the following red, italic lines:
    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
    
    Here you have an zip file containing these edited files.

Step 4: Connect

    When you connect OpenDCC to your computer, it should appear correctly in the Device Manager. Don't be worried: V1.2 applies to all V1.x versions of OpenDCC.