Release Notes for JMRI 5.17.2 release
Date: August 8, 2026
From: Bob Jacobsen
Subject: Test Release 5.17.2 of JMRI/DecoderPro is available for download.
Notes:
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 5.17.* test releases.
It requires at least Java 11 to work.
We recommend that you use Java 21 if possible.
(See our page on downloading Java)
We expect this series to result in the next JMRI production release in December 2026.
(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 release should be considered experimental.
We would appreciate your feedback on it.
JMRI is now only available under the
GNU General Public License. For more information, please
see our
copyright and licensing page.
Update From Older JMRI Versions
If you are currently using a version older than JMRI 5.0, please follow these instructions carefully:
- Is your current version older than JMRI 4.12?
If so, then update to JMRI 4.12 first, and ensure everything works correctly: check
start-up, check things you need to be working, and check the JMRI log as well) before doing anything else.
Store your configuration and panel files under a new name and use those from now on.
Then continue with step 2.
If you are currently using JMRI 4.7.3 or earlier on Linux or macOS (Windows doesn't need this),
then it's very important
that you update to JMRI 4.12 and
carrying out the migration process described in the JMRI 4.12 release note
before updating to any later release.
- Is your current version older than JMRI 4.20?
Then update to JMRI 4.20 first, and ensure that works correctly (check
start-up, check things you need to be working, and check the JMRI log as well) before doing anything else.
Save your preferences again.
Store your configuration and panel files under a new name, use those from now on, and go on to step 3.
- Is your current version older than JMRI 4.24?
Then update to JMRI 4.24 first, and ensure that works correctly (check
start-up, check things you need to be working, and check the JMRI log as well) before doing anything else.
Save your preferences again.
Store your configuration and panel files under a new name and use those from now on.
- Is your current version older than JMRI 5.0?
Then update to JMRI 5.0 first, and ensure that works correctly (check
start-up, check things you need to be working, and check the JMRI log as well) before doing anything else.
Save your preferences again.
Store your configuration and panel files under a new name and use those from now on.
- You can then install this release.
Following this multi-step order of updating via stable major releases safeguards you against possible migration issues
that can arise from skipping these versions.
New problems with this release
- Using the new DS64 support in DecoderPro can
sometimes write the wrong output addresses to the DS64.
If this affects you, please either
wait for
JMRI 5.17.3, due out the 2nd Saturday in October
or pick up a
JMRI development build installer
from
Jenkins.
New warnings for this release:
Older warnings
See the
JMRI 5.16 release note
for more warnings predating the 5.17 development series,
including pointers to various migration issues.
These may be relevant to you if you're updating from an earlier version;
we strongly recommend you update to at least
JMRI 5.0
before installing this test release.
See
instructions above.
- Since JMRI 4.99.1
If you're using a Firefox web browser and opening JMRI
help files locally (not over the web), a Firefox bug
can sometimes cause it to enter a loop. There's a
workaround in
this JMRIusers post.
Download links:
These files are located in the
JMRI 5.17.2 GitHub release.
The
full list of included changes is available from our
GitHub code repository.
Hardware Support
CBUS
- Console Connection Logging - Default filename now includes connection name.
- On opening the Console, Logging to File resumes in an empty file if active when the previous console is closed.
- Unknwon Console CAN Frames now include the hex value of the Frame.
DCC++ and DCC-EX
- PowerManager - Added method for requesting power status from layout.
- Power status is polled following a set power state command as newer DCC-EX command
stations do not confirm their power status following the command.
LocoNet
- SlotMonitor update:
- Add ability to hide / move columns. N.B. if you open 2 or more SlotMonitors this is only effective on the first one.
- If Extended purge time is enabled in the Command Station the Slow scan for slots is extended.
- If purging is disabled in the Command Station so is slow scanning.
A value of -1 stops slowscanning.
Remove some extra messages when configuring with the board-level tools
in the LocoNet menu
Added a new programming facade "Digitrax OpSw Word Programming" for
programming at the board level for e.g. DS64's.
You can now program, save and load DS64 output addresses and routes in a roster entry using DecoderPro.
Add in-use count to the Slot Monitor.
Timeouts when programming the Op Switches on Digitrax boards (e.g. DS64, etc) will automatically be retried once.
Added interpretation of some BDL716 configuration messages to
LocoNet Monitor.
Made some LocoNet-specific programming mode constants public so the can be accessed from scripts.
- Update OpenLCB_Java library to pick up an improvement in
how the configuration windows are rendered.
- LccPro will now prompt you for a backup directory the first time
you do a node backup from the main screen if the location hasn't already been set.
- Added a "Trigger" column of buttons to the event table to conveniently produce the
corresponding event.
New / Updated decoder definitions
Doehler & Haas
- Sound decoders, firmware 1.13: added CV137 bit 6 and CV28 bit 2.
- Sound decoders: firmware 1.01, 1.02.084, 1.05.115, 1.08.027, 1.09.117,
1.11.069 and 1.13.101 are now identified correctly.
- Sound decoders: corrected the CV131, CV132 and CV133 defaults to F8, F4
and F9, and the CV361 threshold to 7.
- SUSI sound modules: corrected the CV961 threshold default and the SH05A
and SH10A model comments.
- The decoder schema now offers
E24 as a connector type (NEM 664 /
RCN-124, marketed by ESU as "Next28"); the D&H DH24A uses it.
- New definitions for firmware 3.15.016, covering the non-sound decoders (DH05C,
DH06A, DH10C, DH12A, DH14B, DH16A, DH18A, DH21A, DH21B, DH22A, DH22B, DH24A,
DHSP10A, PD05A, PD06A, PD10MU, PD12A, PD18A, PD18MU, PD21A, FH05B, FH16A, FH18A
and FH22A). Adds shuttle mode (CV60), AUX10-AUX12 mapping (CV101-103), AUX3-AUX6
dimming (CV461-467) and a wider CV112 range. Note that CV467 may read 255 after a
firmware update; a reset (CV8 = 8) restores its default of 31.
- New definitions for firmware 3.14.095, covering the same decoders, adding CV144
bit 5 and the GPIO brake settings on the DH21B, DH22B and DH24A.
- Non-sound decoders, firmware 3.13: added the CV401-412 function swapping settings
and CV137 bit 6, on a new Function Swapping tab.
- Non-sound decoders, firmware 3.13: added the DH24A and DHSP10A locomotive decoders
and the FH16A function decoder.
- Non-sound decoders, firmware 3.13: corrected the DH21B and DH22B product IDs, and
declared Motorola support on the FH decoders.
- Non-sound decoders, firmware 3.10 to 3.13: the CV144 GPIO brake settings are now
shown on the decoders that support them.
- Non-sound decoders, firmware 3.12 to 3.14: CV112 is no longer shown on FH and
PD05A decoders, and its default is corrected to 15.
- Non-sound decoders: CV124, which selects the function keys that start the
delay, is now shown on the DH Options tab. It is a bit mask over F1-F8 and is
modelled as such; it was previously a single-choice list.
- Non-sound decoders: corrected the default function assignments of CV131, CV132
and CV133 (low beam light, shunting gear, deceleration off), which all
defaulted to F1 instead of F8, F4 and F9.
- Non-sound decoders: label and tooltip corrections on CV131-133 and CV137,
using D&H's own wording.
- Added the missing French and German translations.
ESU
- LokSound 5 nano DCC now declares its E24 interface.
- Added LokPilot 5 micro DCC Direct Atlas Legacy.
- Renamed LokPilot 5 Micro Next18 DCC to LokPilot 5 micro Next18 DCC (capitalization) to match ESU.
- Added LokPilot 5 micro KATO.
- Reorganized function output definitions for LokSound 5 / LokPilot 5 decoders for easier maintenance. Removed 7500 lines of mostly duplicate xml, replaced with a few hundred lines of xsl.
ZIMO
- New definitions for Zimo MS/MN/FS software v5+.
- New decoders added: MS420, MS440C, MS440D, MS481, MS501, MS920LE and MN150,
plus the FS sound decoders FS840, FS850 and FS890N18 (v5 only), and MS001 and
MN250 (v4 & v5).
- Expanded CV coverage and corrections to Zimo MS/MN software v4+, including
output counts on the Next18 types.
- No more sound CVs for MN non-sound decoders.
- ZIMO sound levels now in the standard Sound Levels pane (including for MX
decoders), to avoid an empty Sound Levels pane.
- New "Off" option for the Swiss Mapping dimming groups (also for older MX
decoders).
- The alternative function mapping pane now shows exactly the outputs each
decoder has (also for MX decoders).
- MS540E24 now declares its E24 interface, and the MN140E24 definition is now
available.
- Added the missing French and German translations.
DecoderPro
- Add the ability to export a backup of a single Roster Group.
- You can now program, save and load DS64 output addresses and routes in a roster entry using DecoderPro.
- Fixed a bug which caused importing a decoder on Windows to fail.
- Provide "Delete Roster Group Contents" entry in the Settings menu which
lets you delete (i.e. permanently remove) all the entries in a selected Roster Group.
- Fixed a bug which would sometimes show empty tabs when it shouldn't.
- Added the Speed Profiling tool to the Actions menu.
-
LogixNG
- Add the Occupied option to the Sections Expression. This is used to
test if any blocks within a Section are occupied.
- Removed the Listen option from the Memory reference
tab used by Actions and Expressions.
See
Removed Listen for details.
Meters and MeterFrames
OperationsPro
- New feature, you can now control which road names and load types a track can service.
- Fixed a problem with spurs with schedules in quick service mode.
- You can now print the contents of the "Show Schedules by Car Type and Load".
- You can also print the contents of the "Show Staging and Schedules by Car Type and Load".
Roster
- Roster speed profile added ability to specify distance in inches or mm. Fix txt visibility.
Timetable
Tracker
Turnouts, Lights, Sensors and other elements
- Fixed high CPU use of the Sensor Table when the "graphic state" preference
is enabled: painting a state icon no longer resizes the row, which kept the
table repainting itself continuously once all sensors were in a known state.
Rows are now also tall enough for the icons while sensors are still in the
Unknown state.
Web Access
- Layout Editor has a turnout option to "Show ? When Unknown".
This will now also show when displaying the panel via the web.
Virtual Sound Decoder
- Added coasting and key-notching features in Diesel3Sound.java.
Miscellaneous
- The Linux desktop icons have been updated from .gif from .png
so they work on more Linux distributions.
- Updated how preferences are written so that the profile.xml file
will schema validate.