OpenLCB Event Table Frame
This provides a table view of the Events, Producers and Consumers
in your OpenLCB network.
The primary purpose of the Event Table is three fold:
- Display the Events used on your OpenLCB network along with all of their related
Producers and Consumers.
This is created initially in real time through a query of the actual nodes on your
network and supplemented by any additional information available to JMRI at the time,
most usefully open node configuration dialog windows (displaying the node's CDI)
and JMRI data such as User names from the Turnout or Sensor tables.
As you open and close the configuration dialog windows for additional nodes,
these contributions will be added and removed from the Event table in real time.
For the most complete view of your network's Events and Consumer/Producer relationships,
open the configuration dialog windows for all of your nodes however you may find
it more manageable to open just the subset of nodes relevant to your task at hand.
If the information from all node configuration dialogs are to be considered,
on a large network open these windows prior to the Event Table for the
fastest initial response. This information is not retained between sessions.
- Apply User names to Events.
Similar to the use of User defined names in the Turnout or Sensor Tables,
the Event Table allows you to apply names to Events that are more meaningful as
to their purpose than just the Event ID itself.
The Event's user assigned name is retained between sessions and is also shown in the
OpenLCB Traffic Monitor as an additional aid when the Event box is checked therein.
- Provide a document record of your Events and their Consumer and Producer relationships.
Exported as a *.csv file and then viewed and manipulated through a suitable program like Excel,
this provides a reference or documentation of all of the Event IDs and their associated
Consumer/Producer relationships as known by JMRI at the time of the export.
This document can also be used as a reference source of Event IDs that
may be cut & pasted into a node configuration dialog as you build additional
Consumer/Producer relationships on your network.
This is the same data as displayed in the Event Table at the time of the export
so the more information available, the more complete the export.
It is envisioned that the user re-export this reference documentation regularly
as the network evolves rather than try to maintain the resulting document independently.
You can resize and sort the columns using the header row.
The Event ID field usually shows a single Event ID.
If a node has declared that it produces or consumes
a range of event IDs, the range will be shown as its
lowest and highest included Event IDs.
The Event Name column will show an event name that you've given
to this event ID.
If you haven't given the event ID a name, and if there is
a well-known standard meaning defined for that event, that will be displayed.
You can enter names for events in the 2nd column. Click on the cell
to open it for editing. Hit return when done. These will be
saved automatically and loaded when you next start JMRI.
At the bottom of the window, there's a tear-off button bar
that contains a number of useful controls:
-
Pressing the "Update from Network" button will load the table from the network.
This might take a couple seconds. You should press it again
after changes like adding nodes, changing their configuration, etc.
The table cannot always detect those changes automatically.
If node names (4th and 6th columns) don't show up after a short time, press
"Update from Network" a second time.
If you have a configuration window open on one or more events and
click "Update from Network", the right-hand column will show the
tree-walking display of where each event is referenced in those
configuration windows. This can help you determine the function of
the producers and consumers. You might need to resize the column
to see the complete entry.
Note that the "Update from Network" button does a "Verify Events" operation
on the network. Some nodes consider this to be a start-of-day, power-up
operation and might change the status of their outputs due to that.
- If you've defined
Node Groups
in the
LccPro
window, there will be a selection box that lets you display events
from "(All)" nodes or just the ones in a specific group. This
can be helpful if e.g. you're only interested in events from some
small part of the layout's network.
-
Checking the "Require label" box will display only events with labels.
This lets you ignore events that you haven't labeled as interesting.
-
Checking the "Require both producer(s) and consumer(s)" box will
display only those events that have both at least one producer
and at least one consumer. These are the events that actually do something
on your LCC network.
-
Checking the "Popcorn mode" will highlight the producer for every event that
JMRI sees being produced.
Since the window scrolls to show the event, this can result in the screen
jumping around when it's enabled.
If there's a lot of traffic, this can slow your
computer down significantly, so only enable it when you want to use it.
-
As you type in the "Find Event" box, the table will try to locate an
event that starts with what you've typed. The first (top most) match will
be highlighted. If need be, the table will scroll to make that visible.
If you don't find a specific event ID in the table, the "Add"
button will add it to the table. You can then give it a name in the usual way.
-
As you type in the "Find Name" box, the table will try to locate
an event, producer or consumer node name or also-known-as alias that starts with
what you've typed. Upper vs lower case is ignored. The first
(left most then top most) match will be highlighted. If need be, the table will
scroll to make that visible.
-
Pressing the "Names from Sensors" will fill in the event name column with the
names from the corresponding JMRI Sensors. Pressing the "Names from Turnouts"
button will fill in the event name column with the names from the
corresponding JMRI Turnouts. Note that only empty entries will be filled;
this does not overwrite any existing names you've already defined.
The File menu contains two items:
- Save to CSV: This exports all columns of the current contents of the table
to a comma-separated variable (CSV) file.
The file will contain column
headers in its first row, followed by a row for every Event ID in the table,
including ones that are not currently visible.
- Read from CSV: Reads in Event IDs and event names from a CSV file,
then if each Event ID doesn't already have a name, assign the name from
the file.
The file should have a numeric Event ID such as 00.01.02.03.04.05.06.07
in the 1st column and the desired name in the second column.
A header row, if present, is ignored. Extra columns are ignored.