Release Notes for JMRI 2.7.5 release

Date: September 7, 2009

From: Bob Jacobsen

Subject: Test version 2.7.5 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 fifth in a series of test versions. We expect this series to end in a JMRI 2.8 production release in December 2009.

It contains many new features, including:

along with lots of other changes. See the complete list below.

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:

The new audio support in JMRI 2.7.5 requires some new libraries. Those libraries are included in the JMRI downloads. They, in turn, require that the startup scripts include the new libraries, so these have also been modified. The 2.7.4 and earlier scripts will not work with 2.7.5 and later. In particular, if you've created your own copies of startup scripts, you'll have to update those:

If your roster contains locomotives with Soundtraxx Steam Tsunami decoders, you should migrate those roster entries to the new decoder definition names. We've created a tool to make that easier. For information on how to use that tool, please see the separate note.

Warnings from older versions:

JMRI 2.7.4 changes the way filenames for icons, etc, are stored in XML files by JMRI. The advantage is that this new method will make it much easier to move panel files from one computer to another, even of a different type. So long as you keep all your files in the JMRI preferences directory on both machines, the files should just move over without trouble. The warning is that files written in this format will not be properly read by JMRI versions before 2.7.4. This includes files from earlier versions that are read by JMRI 2.7.4 or later and then written out again, as the program will update them to the new format upon storing them.

Download links:

Please use these links for downloading:

Mac OS X:



Changes since test version 2.7.4

Pete Cressman fixed a problem storing and loading the new Memory Spinner Icon, improved some labeling in the icon selector, and added more controls to the memory icon popup menu.

When storing references to files, e.g. custom icons in panel files if the file is stored in your home directory, JMRI will store a relative "home:" reference, in addition to the already-present detection for files in the JMRI program and preferences directory. This makes it easier to move panel files from computer to computer; just make sure you have the icons, etc, in the same relative place on the two machines.

Ken Cameron added sensor support for X10 Powerline devices. Once you have manually created a sensor using the Sensor Table, changed heard on the Powerline will adjust the corresponding sensor's state.

Pete Cressman made some improvement to Panel Editor icon handling.

Pete Cressman added group icon capture and move in the Panel Editor. When a panel in put in "repositioned" mode, a click and drag that begins in an open area will draw a red rectangle. All the non-fixed icons captured within this "fence" can be moved as a group by dragging any one of the captured icons. "Non-fixed" means the icons that do not have their "fixed" or "locked" items checked in their popup menus. A group of icons captured by the "red fence" can be aligned by their upper left corners horizontally or vertically by selecting the "Align Vertically", or "Align Horizontally" items in one of the captured icon's popup menu. These items appear only when the icon is captured. This alignment will only occur to the unfixed and unlocked icons.

Paul Bender fixed a problem with XPressNet throttle setup that was particularly problematic for Hornby users.

Ken Cameron improved his RobotThrottle script.

Dan Boudreau added status information to the operations route table.

Kevin Dickerson improved the way we check for duplicate roster IDs to catch some additional cases.

Paul Bender corrected a bug in XPressNet LI100 programmer which made it difficult to read multiple values from a decoder (single reads were ok).

Kevin Dickerson added a capability to connect locomotive information in the ECoS command station to JMRI.

Ken Cameron added a horn button to the RobotThrottle.

Paul Bender added some additional error messages to the DCC programmer.

Sakae Akanuma added a Japanese translation.

Dan Boudreau improved the NCE Show Cab feature.

Pete Cressman fixed a bug in the memory compare in Logix

Dan Boudreau fixed a bug with rotating square icons.

Ken Cameron updated his RobotThrottle2 and DebounceSensor scripts.

Pete Cressman improved rotations of icons to the panel editor, and added scaling and repositioning. A new "Rotate (degrees)" item was added to the popup menu. The former "Rotation" item is now labeled "Rotate (Orthogonal)". "Rotate (degrees)" will rotate an icon an arbitrary number of degrees. Each "Rotation" item resets the other. The "Scale (percentage)" popup item enlarges or shrinks the icon by the percentage input. To scale and rotate, use "Rotate (degrees)". A "Shift-Drag" feature allows repositioning of the icons in a layer beneath an icon, while holding the top icon in place.

Ken Cameron fixed the problem that would cause startup errors if you configure a clock (analog, digital or Nixie) to open at startup.

Matt Harris fixed the way the preferences store the GUI selection to avoid occasional problems.

Matt Harris added great new Audio support, including a demo script that shows off many of the features.

Peter Ulvestad added a definition for the DN163K1D decoder and updated 'maxMotorCurrents' on the DN163K1A,B,C.

Jack Shall reworked the Soundtraxx Bachmann OEM decoder definition.

Mike Mosher updated the ESU XL V3.5 decoder definition to fix acc/dec on motor tab and incorporate latest changes from LS V3.5 file.

Mike Mosher updated the QSI Gas Turbine decoder definition to add "Code Horn for Gas Turbine Startup".

Jack Shall and Mike Mosher updated the SoundTraxx Tsunami Diesel definition to add CVs, correct a couple bugs, and add tooltips.

Peter Ulvestad updated the Bachmann EZDCC 4fn definition to add a max value for CV2, changed the Lenz tab name to Bachmann, updated dimensions and default values as per decoder manual and added factory reset menu items.

Dan Boudreau fixed a minor bug when building trains from staging tracks without engines. Builds would sometimes fail if the staging tracks didn't have engines. Fix now allows trains to be build from staging without requiring engines.

Kevin Dickerson added a new "failedThrottleRequest" function to the core Throttle support, so that if System-specific throttles are unable to create a throttle, then the address is removed from the throttleListeners Hashmap, and hence prevents the DCC address being locked out.

Andrew Crosland added support for CBUS CV programmers.

Dan Boudreau fixed a minor operations bug to allow terminating a train into staging without an engine.

Paul Bender fixed an error when parsing an "unsupported command" XPressNet response message.

Paul Bender changed the XPressNet code: instead of sending emergency stop to a MultiMaus (which doesn't support the emergency stop command?) send speed 0.

Peter Ulvestad updated the Bachmann EZ DCC, and EZ DCC 1 function decoder definitions to change the model name, added decoder dimensions, update defaults and cleaned up the formatting.

Peter Ulvestad updated the ESU Bachmann 3 function to add CV17 - Extended address, corrected CV4 max value and CV5 default value.

Paul Fraker contributed a decoder definition for the MRC diesel 1829 decoder.

Jack Shall updated and combined the SoundTraxx Tsunami Steam decoder definitions.

Paul Fraker contributed a decoder definition for the MRC Athearn Genesis SD45-2.

Peter Ulvestad created a definition for the MRC 1820 Athearn RS3 Dropin Decoder.

Peter Ulvestad updated the definition for the MRC 1806 decoder to correct CV67-94 (speed table), moved consist info to consist tab

Michael Mosher updated the QSI Version 7 decoder definitions to add new models and CV 55.21.0,CV53.15.0 thru CV53.30.0, CV55.154.SI CV56.9 CV55.3.5 CV55.84.SI CV55.70.12 CV55.76.6,11,12,13 CV51.2

Nigel Cliffe provided a new decoder definition for the ZTC 471 sound decoder.

Nigel Cliffe provided a new decoder definition for the CT ElektroniK SL series (post v40) sound decoders. He also improved the CT Elektronik DCX decoder definitions.

Ilidio Serra provided a decoder definition for the Rapido TurboTrain.