Computer Automated Traffic System

This is the home page for the Computer Automated Traffic System (CATS), a suite of open source programs that provide signal logic on a model railroad. To download the software, scroll down on this page to the Code section. Click on the software link and read the license. Then scroll to the bottom of that page for links to the software, collected into zip files. The release zip file should be placed in the same folder as JMRI. It contains user documentation.

The impetus for this software was to implement CTC signaling on Pat Lana's Cedar River and Iowa Central Railway (not affiliated with the Cedar Rapids and Iowa City Railway in any way). Pat's Crandic is an N scale model railroad, a bridge route between Kansas City and the mythical town of Pammelia, Iowa, with connections to Minneapolis/St. Paul and Chicago. Though the date is August, 1968, the railroad mangement has invested in a futuristic computer system using CRTs for dispatching traffic on the railroad. This program is the result of that investment.

Video of the Cedar River and Iowa Central, its CEO, and crew can be found at
Dan's video page. A high speed Internet connection is needed because some of these are large. They are viewed through Quicktime, a free plugin from Apple Computer.

What is CATS?

CATS is open source software, written in Java and built on the work of the JMRI programmers (JMRI home page). CATS is a JMRI application and not part of the JMRI toolset, so JMRI (and a Java Runtime Environment) are needed to run CATS.

The following screen capture is from the program used to create a dispatcher panel.
The next screen capture is the Crandic dispatcher panel in operation.
One more screen capture shows the train lineup pulldown.

Train Status Client

A third member in the CATS suite of programs for supporting operations is a Train Status Client (TrainStat). It summarizes the information on the operating session trains in a tabular form, for use by yard masters or traffic managers. It is a separate Java application, run on the computer running CATS or networked computers.
TrainStat screen shot


Quick Start

To get started using CATS, download the release zip file into a folder containing JMRI and unzip it. The distribution contains Word documents on how to install and use CATS.


Each of the programs has a user manual/guide. The manuals for designer and CATS are included the release20xx zip file. The manual for TrainStat is included in the TrainStat zip file.

In addition, I have posted links to the PowerPoint presentations I gave at the 2010, and 2011 NMRA National conventions and the 2013 NMRA RMR convention: wiring clinic, panel building clinic, magnet board example, and CTC example, RMR 2013 clinic.

Release Notes

Download the latest release notes. release notes.

Important Note to Current Users: CATS 2.15 (Release2007) is compatible with JMRI versions 2.0-2.5.3. It is not compatible with older versions of JMRI or with version 2.5.4 or later.  CATS 2.21 (Release2013) is compatible with JMRI versions 2.5.4 and up to 2.8. CATS 2.31 (Release2022) is compatible with JMRI 2.10 to 2.12. CATS 2.32 (Release2035) is compatible with JMRI 2.12 and up to 2.14.1. CATS 2.33 (Release2036) is compatible with JMRI 3.0. CATS 2.34 (Release2037) is compatible with JMRI 3.3.1. I have received reports that CATS under MacOS Snow Leopard does not launch from the desktop, but does from a command window. This problem is under investigation (but I do not have access to a system running Snow Leopard).

The focus of this release is on CATS. The highlights of the changes for Release2037 are:


Latest versions:
Layout files generated by previous releases are compatible with this release.

To download the latest software, you will need to scroll to the bottom of the license to find the links to the software. license and software. The Train Status Application was developed under GPL2 and can be found at the end of the GPL 2 license.

Coming Soon

I have some complementary programs written, which will be posted here when I get them polished some more: Under development


are - r
oh - o
dee - d
in - n
ee - e
wye - y
bee - b
el - l
eh - a
see - c
kay - k
two - 2
zero - 0
zero - 0
zero - 0
at - @
wye - y
eh - a
ach - h
oh - o
oh - o
dot - .
see - c
oh - o
em - m


CATS uses the artistic license that JMRI was released under (JMRI License). TrainStat was developed under Gnu Public License, version 2.


I am sharing these programs for the enjoyment of the model railroading community. If you find them useful, then great. However, I know they are not perfect - there are over 30,000 lines of Java code in each. There are more things I would like them to do, as well. But, I am the only person supporting the programs, the documents, and this web site and this is not my day job. So, I welcome bug reports and enhancement suggestions, but will get to them when time permits.


I have to thank Pat Lana for being the test bed for this code. His Cedar River and Iowa Central is large enough and has enough variety to give this a good workout. I also thank my core beta testers - Bruce Faulkner's CSXT Shenandoah Division, and John Parker's BNSF Fall River Division , for their suggestions and patience working through the "features". Bob Jacobson, Paul Bender, Dick Bronson, and the rest of the JMRI developers merit special recognition because they provide the glue between the dispatcher panel and the layout. The phrase "JMRI" belongs to the JMRI development organization. "Java" is a registered trademark of Sun Microsystems (now Oracle).

This page was last updated October 9, 2013.