Release Notes for JMRI 3.1.1 release

Date: August 19, 2012

From: Bob Jacobsen

Subject: Test version 3.1.1 of JMRI/DecoderPro is available for download.


This is a test release. Please post a note if you encounter any new or old bugs! And please back up your JMRI files before installing this, in case you want to go back to an earlier version.

This is the next in a series of test versions. We expect this series to end in a JMRI 3.2 production release.

Some of the changes involved are quite extensive. They may require a certain amount of experience before they are working well. Therefore, this test version should be considered experimental.

JMRI is now only available under the GNU General Public License. For more information, please see our copyright and licensing page.

New warnings for this version:


Older warnings

This release, and all other releases in this cycle, require Java 1.6.

Known problems with this release

The following problems are fixed in JMRI 3.1.2, which you should use instead of this release.

Digitrax PR3 Standalone mode is missing from the connection details.

Certain existing preference files won't be found, requiring you to re-enter your preferences.

Download links:

Please use these links for downloading:

Mac OS X:



Changes since production release 3.0

Kevin Dickerson made the following changes
  • Added in initial support for the Marklin Command Station 2 System with help from Jean-Francois - please note that this is still in development.
  • Provide support for systems that can handle multi-protocols for throttle control and extend this to cover decoders and roster entries. Additional supported protocols now include
    • Motorola
    • Selectrix
    • MFX
    The change is only seen if the system that controls the throttle supports multiple protocols.
  • Editors - Provided a method for external code to add menu items to the popmenus of icons on the panel
  • Tables - User set column widths, order, sorting etc is now saved between sessions
  • Tables - Added a "Copy User Name" item to the mouse popup menu
  • Throttles - Provide a method to create a throttle by passing the Roster Entry rather than the DCC Address
  • Throttles/Roster Enties - Records the duration that the loco has been operating for, along with the last time last was used, the information is stored as an attribute against the roster entry and can be viewed in the media pane.
  • When setting a sensor in a block, if that sensor has a reporter associated against it the user is asked if they wish to use the reporter on that block.
  • Updated the backend of the Connection Configuration to remove some limitations on the numbers of settings per connection
  • Tweaked some of the GUI settings relating to the connection details
  • ESU ECoS - Only update the throttle speed on the reply of the last throttle message which has been sent and ignore the event messages until all set speed messages have been processed, otherwise the throttle speed value jumps up and down like a yoyo until the last message is proceed.
  • ESU ECoS - Update the loco import to blank out disabled functions and set non-descript function labels to be Fx.
  • Programming - Fix an issue whereby the code doesn't wait for a reply to a programming command and other messages are sent/processed. This happens if no message is required to put the command station into programming mode.

Dan Boudreau made the following changes to operations:

  • Improved how cars are forwarded to alternate tracks. Now if the alternate track's spur becomes available during the build, cars originally sent to the alternate are now redirected to the spur.
  • Made some minor improvements to the train build reports when a train departs or enters staging.
  • Improved how the csv manifest counts empty cars with custom loads.
  • New operations feature, you can now control if arrival or departure times are shown on your train manifests. See under "Edit Train"->Tools->Options
  • You can now open a csv manifest directly from the trains window.

Gregory Madsen made the following changes to operations:

  • Improvements to the Backup capabilities, including separate stores for "automatic" and "default" backups, dialog to select between automatic and regular backups when restoring, and a dialog to allow deleting automatic backups.

Robin Becker added xxx-blink-web.gif icons with correct frame delays and dimensions for web and panel use.

Steve Todd made the following changes:

  • added a new JmriFaceless app for linux installs, and modified WiThrottle server and Loconet simulator to not show a window when JMRI is running in headless mode.
  • added the binaries needed by the Raspbian hard-float distro (for the Raspberry Pi).

Stephen Lowens:

  • updated decoder definitions for Digitrax sound/motor decoders. This version adds CV144 (Dynamic brake volume) and moves Con-cor Zephyr definitions to new file
  • provided decoder definitions for Con-cor MP54 and Zephyr models. These use Digitrax SDH164D and/or SDN144PS with unique programming and/or sound projects.

D Heap:

LokSound V4.0 Decoder CV249 (Min Steam Chuff Distance) was inadvertently assigned to CV248 instead of CV249. Also some others I wanted were missing, so I added CVs 47,48,51,122,123,129,130,133,250,255, which were the ones missing but present in LokProgrammer 4.3.3 and present in LokSound V4.0 Instruction manual 4. Edition, May 2012 from firmware 4.6. CV131 appears to be obsolete but I did not remove it. Had to move a few option numbers up and down to fit all on to existing panes.

Clint Taylor added code to allow function buttons to work within the Loconet Slot Monitor.

John Crellin updated several MRC decoders and provided a new definition for the MRC 1905.