Files
JIMRI/help/en/package/jmri/jmrix/maple/nodeconfig/NodeConfigFrame.shtml
T
2026-06-17 14:00:51 +02:00

152 lines
9.6 KiB
Plaintext

<!DOCTYPE html>
<html lang="en">
<head>
<meta name="generator" content="HTML Tidy for HTML5 for Apple macOS version 5.8.0">
<!-- Copyright Bob Jacobsen 2008 -->
<title>JMRI: Maple Node Configuration</title><!--#include virtual="/help/en/parts/Style.shtml" -->
</head>
<body>
<!--#include virtual="/help/en/parts/Header.shtml" -->
<div id="mBody">
<div id="mainContent" class="no-sidebar">
<h2>JMRI: Maple Node Configuration</h2>
<h3>Background Information:</h3>
<p>Maple Systems makes touch screen HMI (Human Machine Interface) panels that can have
application to model railroading. In particular, these touch screen HMI panels can serve as
hi-tech substitutes for fascia panels on a model railroad layout. This Maple-to-JMRI
implementation supports multiple identical HMI panels that can be plugged in at various
locations around the layout and used to control and display items related to that location.
Each HMI panel has a built-in microcomputer that can be programmed (using a programming
package supplied by Maple Systems) to display any number of user selectable displays. It is
envisioned that after plugging in his/her panel, the model railroader will select that
display appropriate to his/her current location, allowing the panel to serve as a
communication device directly into JMRI. After completing tasks at a location, the model
railroader will unplug the panel and move with it to another location, etc. Multiple HMI
panels operating simultaneously are supported.</p>
<p>The "coil bits" in the Maple HMI panels are used to communicate with JMRI. In this
Maple-to-JMRI implementation, all panels use the same address space and have exactly the same
input and output bit assignments. The first 1000 coil bits are reserved for configuration as
Sensors. Sensors are referred to as "Input Bits" and are used to set JMRI Sensors according
to status bits (coil bits) in your Maple HMI panels. Therefore, Sensors pass information from
configured HMI panels to JMRI. The next 8000 bits are reserved for assignment as "Output
Bits" and are used to send the current settings of Turnouts and Lights to the Maple
Panels.</p>
<h3>Communication between JMRI and Maple HMI Panels</h3>
<p>Maple communications work by polling. Each panel is polled separately, and the results of
the polls are ORed together to set Sensors. Therefore if a Sensor is ACTIVE (Maple "1") in
any panel, it is set ACTIVE in JMRI. If a Sensor is INACTIVE (Maple "0") in all configured
panels, then it is set INACTIVE in JMRI. Panels are polled in the order that they are
configured. <strong>Note:</strong> The Maple poll command allows a maximum of 99 bits to be
requested with each poll command, so if more than 99 input bits are configured, multiple poll
commands will be needed for each panel.</p>
<p>After all panels have been polled, the status of output bits is sent to the panels. Output
bits are sent in "Broadcast Mode" so all panels can receive the bits at the same time.
Broadcast Mode is indicated by an HMI Station Address of "0". Output bits begin with an HMI
coil bit address of "1001". All configured output bits are sent, regardless of if the bit is
assigned or not. <strong>Note:</strong> The Maple write command allows a maximum of 99 bits
to be written with each transmit command, so if more than 99 output bits are configured,
multiple transmit commands will be needed. Keeping the number of configured output bits as
low as reasonable will reduce the number of transmit commands that must be sent.</p>
<h3>Configuring a new Maple Panel</h3>
<p>A new Maple Panel (a "Maple Node") is configured by specifying its HMI Station Address,
specifying timeout times for polls and sends, entering the number of input and output bits,
and clicking the <strong>Add Panel</strong> button. HMI Station Address is unique to each HMI
panel, the other items are the same for all panels. Each item is described below:</p>
<ul>
<li><strong>HMI Station Address</strong> - This is the address used by JMRI to poll the
panel. Each panel must have a different HMI Station Address. Addresses of 1 through 99 are
allowed. The addresses need not be consecutive. Panels need not be configured in numerical
order.</li>
<li><strong>Poll Reply Timeout Time</strong> - This is the time (milliseconds) to wait for
a response after issuing a poll command before going on to the next command in the
communication process. The value displayed is the current timeout time, or, if this is the
first panel to be configured, the default timeout time. Changing it will change the timeout
time for all panels. This time should be set to the smallest number that gives reliable
communications between the computer and JMRI. <strong>Note:</strong> When a panel is
configured, but not plugged in (not communicating), it will timeout. This is the expected
behavior when a user is moving a panel between locations.</li>
<li><strong>Send Delay Time</strong> - This is the time (milliseconds) to wait after
issuing a broadcast write command before going on to the next command in the communication
process. The value displayed is the current send delay time, or, if this is the first panel
to be configured, the default send delay time. Changing it will change the send delay time
for all panels.</li>
<li><strong>Number of Input Bits</strong> - This is the number of input bits that will be
polled when each HMI panel is polled. Values of 1 through 1000 are allowed. The number of
input bits is forced to be the same for each panel, so if this number is changed when
adding or editing any panel, it is changed for all panels. Because of the 99 bit limit in
Maple polling requests, multiple poll commands will be required if this number is greater
than 99. So keeping this number to the lowest reasonable value will result in faster
communications.</li>
<li><strong>Number of Output Bits</strong> - This is the number of output bits that will be
sent in broadcast mode at the end of each polling cycle. Values of 1 through 8000 are
allowed. The number of output bits is forced to be the same for each panel, so if this
number is changed when adding or editing any panel, it is changed for all panels. Because
of the 99 bit limit in Maple write commands, multiple write commands will be required if
this number is greater than 99. So keeping this number to the lowest reasonable value will
result in faster communications.</li>
</ul>
<p><strong>Important:</strong> Always check the messages in the <strong>Notes</strong> box
after each operation! That's where success or errors will be reported.</p>
<p><strong>Very Important:</strong> Remember to save your Maple Panel Node configuration
information to disk after making changes. Use the <strong>Save</strong> button at the bottom
of the Preferences window.</p>
<h3>Other Operations</h3>
<p>To change any of the four common parameters (poll reply timeout time, send delay time,
number of input bits, and/or number of output bits), enter the HMI Station Address of any
configured panel, click Edit Panel, make the desired parameter changes, and click
<strong>Update Panel</strong>. This changes the parameter(s) in all configured panels.</p>
<p>To see a list of the HMI Station Addresses of all configured panels, select <strong>List
Assignments</strong> in the <strong>Maple</strong> menu, and pull down the
<strong>Nodes</strong> popup menu.</p>
<p>To change the HMI Station Address of a previously configured panel, enter the HMI Station
Address of the panel, click <strong>Delete Panel</strong>, confirm the deletion, enter the
new HMI Station Address, and click <strong>Add Panel</strong>. HMI Station Addresses cannot
be changed via Edit.</p>
<p>If you add a Sensor with a system name that addresses a coil bit beyond the configured
number of input bits, the Sensor will be added, and a <strong>Configuration Warning</strong>
message will be issued. There is no way to access a Sensor that corresponds to an HMI coil
bit outside the range of configured bits. So if you get a <strong>Configuration
Warning</strong> message, you should either change your configuration's <strong>Number of
Input Bits</strong> or delete the Sensor.</p>
<p>If you add a Turnout with a system name that addresses a coil bit outside the configured
range of output bits, the Turnout will be added, and a <strong>Configuration Warning</strong>
message will be issued. The configured range of HMI bit addresses is 1001 through 1000 + the
number of output bits, corresponding to JMRI addresses of 1 through the number of output
bits. There is no way to write to a Turnout that corresponds to an HMI coil bit outside the
range of configured bits. So if you get a <strong>Configuration Warning</strong> message, you
should either change your configuration's <strong>Number of Output Bits</strong> or delete
the Turnout.</p>
<p>JMRI will refuse to create a Light if it doesn't correspond to the configured address
range for output bits (see above).</p>
<!--#include virtual="/help/en/parts/Footer.shtml" -->
</div>
</div>
<!-- close #mBody -->
<script src="/js/help.js"></script>
</body>
</html>