DCC232

ContentCommand StationsDCC232


Introduction

All personal computers now days have plenty of power free for doing much more then only show and control a model train layout. Generating a digital signal for mobile and stationary decoders is one possibility to use this potential.

The DCC232 library is a lightweight DCC only generator for boosters like the ORD-3.
DCC signal is generated using a serial device.
Legacy RS232 devices and many USB-RS232 converters are supported.


Advantages

  • very low CPU load
  • no command station needed (third party firmware)
  • complete control of the process
  • only modem privilege is needed for accessing the serial device¹
  • runs under Windows and Linux


¹) No special device driver(Windows), or super user privilege(Linux), is needed for accessing the serial port. This in contrary to DDX.

Disadvantages

  • The generated DCC signal does not fully conform to the NMRA standards; Some decoders will not operate or only partial, see Black/White List.
  • No direct support for occupancy detection; A separate interface, like the GCA85/GCA101, is needed for getting events.
    This is not really a disadvantage because best practices dictate that a separate system for occupancy detection and stationary decoders be used.
  • No service mode programming. (PT)


Features

  • 128 loco slots
  • auto purging
  • 14, 28 and 128 speed steps
  • short and long loco addressing
  • 28 mobile decoder functions
  • Operations Mode Programming (Ops, POM)
    • Write
    • Read; needs a RailCOM cutout booster and detector
  • stationary DCC decoders
  • short circuit checking
  • ORD-3 support


Tests

Ubuntu 10.10

PC Device Chip Result CPU %
Intel Pentium Dual Core 1.73GHz 1GB /dev/ttyUSB0 PL2303 OK 0…2
Intel Pentium Dual Core 1.73GHz 1GB /dev/ttyUSB0 FTDI OK 0…2
Intel Pentium Dual Core 1.73GHz 1GB /dev/ttyUSB0 DELOCK Serial HUB UNSTABLE 0…2
Intel Atom 1.6GHz 1GB /dev/ttyS1 Legacy UNSTABLE; super user only 0…2

Raspbian

PC Device Chip Result CPU %
Raspberry Pi Rev. B /dev/ttyUSB0 PL2303 OK 1…4
Raspberry Pi Rev. B /dev/ttyUSB0 FTDI OK 1…4

Windows XP

PC Device Chip Result CPU %
Intel Celeron 300MHz 256MB com1 Legacy OK 0…3

Mac OS X 10.6

PC Device Chip Result CPU %
Intel Core 2 Duo 2.26GHz 8GB /dev/tty.usbserial-ftEHGJCX FTDI Slow reaction.(4 sec.) 2…3
Intel Core 2 Duo 2.26GHz 8GB /dev/tty.PL2303-00001004 PL2303 No valid DCC signal 2…3
Intel Core 2 Duo 2.26GHz 8GB /dev/tty.MCS78XX_Port0.0 DELOCK Serial HUB No valid DCC signal 2…3


Setup

dcc232-ord3.jpg Only the IID and the serial port has to be set, the rest is optional.


Device

Port

The device name of the serial port to use with DCC232.
Commonly used devices:

OS Legacy RS232 USB
Linux /dev/ttyS0, /dev/ttyS1 /dev/ttyUSB0
Mac OS X - /dev/tty.*¹
Windows com1, com2 com7
RasPi /dev/ttyAMA0 /dev/ttyUSB0

¹) Manufacturer dependent.


Slot management

Purge

Remove idle mobile decoders, using the purge time, from the slot after the velocity is zero.
No DCC refresh packets are generated for this address after purge.

Purge time

The number of seconds a mobile decoder must be idle before it is purged.
Idle = stalled.


Short circuit checking

Active

Activate the short circuit checking on the DSR line in a separate watchdog thread.

Invert DSR

Invert the short circuit signal connected to the DSR line of the RS232 interface.
This option must be set in case the ORD-3 is used as booster.

Delay

The time in milliseconds the short circuit must resist before the Rocrail server is informed of a short circuit.


Links


Personal Tools