Release Notes for JMRI 4.27.1 release
Date: February 13, 2022
From: Bob Jacobsen
Subject: Test Release 4.27.1 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.
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 4.20, 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 relese.
- 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 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
New warnings for this release:
-
Example scripts related to MQTT moved from jython directory to jython\MQTT directory. This will require
an update to any start-up actions that reference their location.
Older warnings
See the
JMRI 4.20 release note for more warnings predating the 4.21 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
JMRI 4.20
installing this test release.
- Since JMRI 4.21.4
If you use a Safari browser on macOS X, the local
help system might not work. There are two
workarounds:
- If your computer is connected to the internet, use
the web-based help. Go to JMRI Preferences, then
select Help on the left, then click "Open help pages online";
save and restart
- To get local access, you can select Safari's Preferences,
then the Advanced pane, then checkmark "Show Develop menu in menu bar"
If you're using another browser, like Chrome or Firefox, you
shouldn't encounter this issue.
- Since JMRI 4.21.1
The jmri.jmrix.SystemConnectionMemo class has become a jmri.SystemConnectionMemo
interface and a jmri.jmrix.DefaultSystemConnectionMemo class. This may
require changes to scripts. If you have a script that references
jmri.jmrix.SystemConnectionMemo, please change it to either
jmri.SystemConnectionMemo or jmri.jmrix.DefaultSystemConnectionMemo
(it's easier to have you just try the two than to explain which
one will work in which case)
- Since JMRI 4.21.1
The way preferences are loaded at startup has been slightly
modified. There is no impact to JMRI applications, but Non-JMRI
applications that are not derived from apps.Apps or apps.AppsBase
but are using jmri.implementation.JmriConfigurationManager to load
preferences will no longer see preferences if an error occurs. To
restore the old behavior, use apps.AppsConfigurationManager instead.
- Since JMRI 4.11.4
There are issues with the Pi-SPROG One command station operation. A number of workarounds should be applied:
- Do not turn on the track power until the power supply to the Pi-SPROG ONE is turned on
- Do not enable extra debugging through default.lcf, nor open the system console window
- Do not open the SPROG console window
- Disable power conversion (CV 29) in all locos
- If connecting via VNC (or similar), setup the screen layout before turning on the track power
Pi-SPROG One with version 2.4 or earlier firmware will cause a timeout after a track short circuit. A dialog box will
open to inform the user of this. The track power will be turned off and must be turned on again using the power control.
Download links:
The
list of included changes is available from our
GitHub code repository.
Hardware Support
CBUS
- Lawicell devices - added RTR CAN Frame support.
DCC++ and DCC-EX
- handle new locoState reply to sync speed, dir and Fkeys
LocoNet
- Updated some new IPL report messages
- Add configuration support for UR93, LNWIs. Allow updates for individual parameters.
MQTT
- Native MQTT SignalMasts are available.
- Splash screen shows connection address
- Lawicell devices - added RTR CAN Frame support.
RFID
- Updated: Tags are recorded in a table.
If there is a Car (from OperationsPro) associated with this tag,
the Road name and Car number are shown. The location and Track are
shown in ComboBoxes which the user can set
and then click on a button to set to the new Location and Track.
Another button shows the Car in the Edit Car window.
If there is no associated car, a button opens a window with a list of Road names.
The user can select a road name and the second list shows all car numbers for that road.
Once a car number has been selected a button sets the tag in that Car.
By default the only visible road names and numbers are for cars that do not have a tag.
A checkbox shows all cars, including those with tags.
The window is opened from the "RFID" menu choice (there is one for each RFID connection).
The first choice opens the standard Serial Monitor Pane.
This new Pane is opened from the second choice.
The help screen can be viewed from the monitor pane,
or via a link in the Hardware RFID connection frame.
TMCC
- Enabled functions 23-27 in the throttle.
New / Updated decoder definitions
SoundTraxx
- TSU2 Genesis Diesel - add SD70ACU and Dash 9-44CW
- TSU Genesis Steam - N Challenger add CV and change some default value per user request
ZIMO
- added new decoder definitions for Firmware v40.x
Dispatcher
- Fix XCrossings allocation.
- Improve AutoEngineer. Permit unlimited number of Auto Trains.
Layout Editor
- Use the actual turnout state for the turnout circle when that option is used. This
corrects the color for turnouts using the continuing route option when set to thrown.
- Tooltip support for panel icons has been changed.
See
Tooltips for details.
- Update the layout block occupancy sensor when the occupancy sensor for the related
block has been added, removed or changed to a different sensor.
Logix
- A single Logix can now be exported to LogixNG.
Open Tools -> Tables -> Logix and select Export
to LogixNG for the Logix you want to export.
LogixNG
- The action Throttle has been updated.
It now also has the child sockets Function
and FunctionOnOff. These are optional.
If both are connected, the Throttle action sets
or resets this function. The child Function
tells the function number and the child
FunctionOnOff tells if the function should
be On (True) or Off (False).
- A single Logix can be imported to LogixNG. See
the section Logix for more information.
- The action Local Variable now supports
Block and Reporter. For Memory,
Block and Reporter, there is a new
option Listen that selects whenether the
action should listen on changes for the Memory,
Block or Reporter.
- The actions Memory and Local variable
and the expressions Memory and Local variable
have improved support for LogixNG Tables.
Panel Editor
- Tooltips can now be edited in Panel Editor.
- Tooltip support for panel icons has been changed.
See
Tooltips for details.
Control Panel Editor
- Tooltip support for panel icons has been changed.
See
Tooltips for details.
Resources
- Inobu One provided new single-crossover icons and additional double-crossover USS icons.
Scripting
- Example scripts related to MQTT moved from jython directory to jython\MQTT directory.
Signals
Signal Systems
- Allow user-modified signal systems to provide
their own copy of an existing aspects.xml file.
Switchboard Editor
- The menu options to label a switch were enhanced to allow hiding the system name in case a user
name is configured. This was suggested by Phil-Klein.
Throttle
- Restored tab and shift+tab shortcuts to browse through throttles inner windows
- Address Panel is now focused as a default when opening a new throttle
Warrants
- Additional bug fixing and enhancements to Shared Warrants. SWs are
useful to animate the simultaneous operation of multiple trains.
Be aware that SWs may mutually block movement that can only be resolved
by aborting at least one of them. Regular warrants avoid such deadlocks
due to the priority of their launch times.
- SWs will not allocate any blocks beyond or at a "hazard" (occupation
by foreign train, passage beyond a stop signal, conflict with another
warrant)
- If a ramp down to stop at a "hazard" stops before entering the next block,
the restart is done automatically when the condition clears.
- If a ramp down to stop at a "hazard" overruns into the next block, the
SW will allocate the next block if that is permissible. Whether or not, i.e.
the position of the train is marked yellow or blue, use the normal Control
commands to restart. "Resume" if the "hazard" was occupation or a warrant,
or wait for the signal change to an allowable speed.
- The messages to the status field of the warrant Table and other information
can be displayed to the console by clicking the "Trace Warrants" button in
Warrant Preferences.
WiThrottle Server
- Added a "TelnetTrain.py" example to run a train from the Python command line.
Web Server
- Support for display and interaction with (Control) Panel slipTurnoutIcons has been added
to JMRI Web Server Panels.
This includes double and single slips, three-way turnouts and scissors with 2 or 4 turnouts.
Miscellaneous