JMRI software

There is a freeware software package called JMRI that is quite a boon to DCC users.

(Java Model Railroad Interface - Java is a programming language)

The main program runs on Windows, Linux, or Mac (which is Unix).

It has a lot of functions:

  • it can program CVs, in both POM (program on the main) and Service Mode (programming track)
  • It has a database for your cars and locos
  • It can run "throttles" in windows on your computer screen, with speed and function buttons
  • it also includes a "server" that allows wireless control

The software supports many command stations, usually via serial or USB.


This is menu driven, with many pre-made templates for hundreds of decoders. The menus are organized by function, such that you really don't need to know the CV number.

Also, you can write one CV, or a group, or all for the decoder.

You can save your CV settings to a file to be able to restore them later

This is quite a boon, especially for high function decoders that have hundreds of CV's


I have not explored this a lot, but lots of functionality to store notes and other things about your rolling stock, and of course tie in your CV settings

Local Throttles:

You can control your command station in either Service Mode, or in POM mode. When you have the main power on, you can create windows that are throttles with speed, direction, and function control.

Nice for testing out locos, without changing setup.

Wireless server:

The wireless control consists servers that support a "web" interface that can be used from most computers with an Internet browser (but not really good on phones), and a server that supports apps on a smartphone, specifically Android and iPhone.

These apps are available separately, the Android one is free, the iPhone one has a free limited one, and a $$ one with more features. (go android).

Usage Tips:

With TCS decoders, go to Preferences->Roster->Programmer and turn off Index CV Caching and Confirm Writes with a Read. These aren't compatible with TCS WOW decoders.

note to self: investigate index CV caching... probably does not issue index cv every time, but need to understand