JMRI is...

General Tools

JMRI provides powerful tools for working with your layout.

LocoNet Tools

A set of Digitrax LocoNet specific tools
  • LocoNet monitor
  • Slot monitor
  • Packet source
  • PM4 programmer
  • BDL16 programmer
  • LocoIO programmer

Layout Automation

JMRI can be used to automate parts of your layout, from simply controlling a crossing gate to running trains in the background.

JMRI: Simple Signal Logic Example

This page provides an example of using the JMRI "Simple Signal Logic" to control signals on a Digitrax SE8c. This also works for other types of signals, including LEDs connected to stationary decoders, C/MRI systems, etc.

Modeling railroad signaling on a layout can be done many different ways, ranging from "stoplights" to complete emulation of a particular prototype's signaling logic. For more information on the various possibilities, please see the JMRI signaling page.

Predefined example

A predefined example signaling configuration is provided in the JMRI downloads; see the download page for information on downloading). To use it:

Setting up your own example

The complete set of steps involved in creating this example were:
  1. Launch and configure the PanelPro application. Restart it to have your preferences take effect.

    For more information on launching and configuring PanelPro, please see the PanelPro web page.

  2. Tell it about your block detectors.
    • From the Tools menu, open the "Sensor Table" tool.
    • If you have a Digitrax DCC system with your occupancy detectors connected to LocoNet, just power the track off and on using either a DT-series throttle or the "Power Control" in the Tools menu. The program will capture the sensor addresses from the resulting LocoNet traffic.
    • For other layouts, use the "Add" button to create the needed sensors.
  3. Save your work by selecting "Store Panels..." from the "Panels" menu, typing a filename, and hitting "Save". (You might want to do this often!)
  4. Tell it about your computer-driven turnouts.
    • From the Tools menu, open the "Turnout Table" tool.
    • If you have a Digitrax DCC system, just throw or close each turnout from a throttle. The program will capture the throttle addresses from the resulting LocoNet traffic.
    • You can also use the "Add" button on the turnout table window to open a panel to enter new turnouts.
    • The "Turnout Control" in the Tools menu also creates a new turnout entry for every turnout you operate.
  5. If you have signal heads connected to "turnout-type" outputs, tell the program about those turnouts also. (SE8c users skip this step)
  6. Tell it how your signals are addressed. Signal Table Figure
    • From the Tools menu, open the "Signal Table" tool.
    • Click the "Add..." button to pop a frame with several choices for the type of signal driver:
      Triple Output
      This a signal head with red/yellow/green lights that are driven by three separate outputs. The outputs are driven by JMRI turnout logic, and appear in the Turnout Table.

      To configure one of these, enter the name you want to give it (typically something like IH2, etc), and the names of the three outputs that drive the lamps.

      Double Output
      This a signal head with lights that are driven by two output connections. The two outputs drive red and green lights separately; the program will turn them both on to make yellow. The outputs are driven by JMRI turnout logic, and appear in the Turnout Table.

      To configure one of these, enter the name you want to give it (typically something like IH2, etc), and the names of the two turnouts that drive the lamps.

      SE8c 4 aspect
      This is one signal head driven by a Digitrax SE8c.

      Enter the lower of the two "turnout address" that this head responds to. For example, if it's the first head on the first card, you can control it by setting turnout 257 and 258 with your throttle. Enter 257 in the turnout control box.

      The SE8c should be configured so that the "4th aspect" is "dark"; the program will handle any flashing that's needed.

      Once you've set the options, click "OK". You can use this form repeatedly to enter as many as you'd like.
  7. Configure your signal logic using the "Simple Signal Logic" tool
    • Open the tool from the "Tools" menu. You should get a frame with a number of fields: Signal Logic Window
    • In the top box, enter the name of the signal you want to control.
    • The radio buttons below that select one of four possible uses for this signal:
      • "On Single Block" - this signal protects one end of a straight through block, with no signalled turnouts
      • "On Main Leg of Trailing-Point Turnout" - this signal is along the main route through a turnout, which is defined as the direction taken by trains when the turnout is closed. It's protecting the frog of the turnout so that trains will stop before running through a turnout set against them.
      • "On Diverging Leg of Trailing-Point Turnout" - this signal is along the diverging route through a turnout, which is defined as the direction taken by trains when the turnout is set to "thrown". It's protecting the frog of the turnout so that trains will stop before running through a turnout set against them.
      • "On Facing-Point Turnout" - this signal is protecting the points-end of a turnout. Depending on whether the turnout is thrown or closed, the train will take two different routes, and the signal will protect different next blocks.
    • If you want the signal to go red when a block detector shows occupied (sensor active), enter the sensor name in the next box.
    • If this signal is protecting travel in the trailing point direction through a turnout, you can have the signal show red if the turnout is thrown against the train. To do this, enter the turnout number to be monitored in the 3rd box, and select whether the signal should be red when the turnout is thrown or closed.
    • If you want multi-block logic, e.g. Absolute Block Signaling, enter the name of the following signal in the last box. When that signal shows red, this one will be set to yellow to warn the engineer that the train must be able to stop at the next signal.

      If you'd like to give additional warning, click the "with flashing yellow" checkbox. In that case, the signal before a red will show flashing yellow, and the signal before that flashing yellow will show a steady yellow.

    • Once you've set the options, click "OK". You can use this form repeatedly to enter as many as you'd like.
  8. Once you save your work, you're done!
You can try out your signal logic by operating your layout.

Although it's a lot less fun than actually running the layout, you can also test the signal logic by changing turnout and sensor status in the computer itself. Just click on the status information in the tables to change it. For example, is turnout LT23 is showing "Thrown", click on that to change it to "Closed". The signal status will update to the new appearance.

You can create a small control panel to do this graphically. For more info on how to do that, see the Panels page.