Release Notes for JMRI 4.3.5 release

Date: April 25, 2016

From: Bob Jacobsen

Subject: Test version 4.3.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 next in a series of test versions. We expect this series to end in the next JMRI production release around the middle of 2016. (See the tentative release schedule)

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.

Known problems with this release

The following new issue has been discovered since release time: If this issue affects you, please either wait for JMRI 4.3.6, due out in early May, or pick up a development build installer from Jenkins.

New warnings for this version:

Older warnings

See the JMRI 4.2 release note for warnings predating the 4.3 development series. These may be relevant to you if you're updating from an earlier version.

You can now set the order of your startup items: If you're opening panel files, running scripts, etc as the program starts up, there's a preferences pane that lets you easily set the order in which those happen. If you've set the order manually (e.g. by editing configuration files) in the past, please check this preference to make sure it's set the way you want.

The DispatcherPro, JMRI Demo, and SignalPro applications are no longer shipped in distributions. Use PanelPro in lieu of these applications.

The internals of the Layout Editor have been reworked a bit. Please keep an eye out for any changed behaviors.

The code for handling Panel Editor / Control Panel Editor icons has changed to better deal with rotating icons. This has changed how opaque vs transparent icon backgrounds are handled. Please check your panels to make sure we haven't inadvertently caused a problem, particularly if you've got rotated icons and/or use have custom icons with transparent backgrounds. If there are any problems, please send in a copy of your panel file so we can recreate the problem and fix it.

The configuration is now stored in multiple files within a directory named profile inside a Configuration Profile instead of within the file ProfileConfig.xml. PanelPro and DecoderPro both should migrate from the old configuration to the new configuration seamlessly. See JMRI Issue #69 for more details. Please report any issues at our GitHub project.

The XML schema for decoder files has been made more precise. This shouldn't effect people who just use the JMRI decoder definitions as distributed, because they all work with this more precise version. But if you have decoder definitions of your own, you may have to update them. Ask for help on JMRI users if you have trouble. Specifically, the decoder file verification will now reject a few things that it didn't catch before, even though they didn't really work:

As a side effect of checking this, the qualifier elements inside a variable now have to be at the front of the contents, and the label, comment and tooltip elements have to be at the back. You can't just sprinkle them around and hope the code finds them (because sometimes in the past the program would miss one; now we require an order we're sure the code will understand).

Mac OS X 10.11 El Capitan requires signed drivers for USB adapters. If you've upgraded from an earlier version, your drivers may not work. That will cause JMRI to throw errors when it doesn't find communications links. To fix this, go to the web site for your adapter manufacturer, find the drivers that are listed to work with Mac OS X 10.9 or later, download, and install, then retry JMRI again.

Jython has been upgraded to version 2.7.0 with the following potentially breaking changes:

Decoder definitions that use the "ivariable" form are now deprecated. Definitions included with this release have been converted to the new form. If you have decoder definitions with the older "ivariable" form, they will no longer validate, but can still be used for the first couple of test releases in this series. Please ask on the JMRI users Yahoo group for help converting them, or just drop them and use the current definitions.

The OpenLCB 0.6.4 library in this version has a bug in its alias calculations which prevents JMRI from communicating occasionally. A patch has been submitted to the OpenLCB group, but as they seem no longer interested in maintaining that code, it's not known when this will be fixed. In the meantime, the workaround is to restart JMRI and/or the hardware node(s) and try again; that might allocate different alias values.

Download links:

Please use these links for downloading:

Mac OS X:
sha256: 912ba7e06eb99156cb21d9f65250c492eaffa997f3ca59264eb7998438a445a2

sha256: 86c49dda2a9023d9b4124ef4e212b9331a9bfe19b04498f347d70a4aab9af27c

sha256: 3794b2a934f6bd53dcf29a590454a73bbd725fcaa398026efe2362976353be27

Changes since test release 4.3.4:

The list of included commits is available from our GitHub code repository.

Hardware Support

Support for ARM processors running in 64-bit mode (aarch64) has been added



Signal Systems

New / Updated decoder definitions


Dave Heap made the following changes:

Norsk Modelljernbane (NMJ)
Train-O-Matic (tOm)