JMRI: MERG CBUS Node Configuration Tool
This is a generic tool for Node Variable and Node Event editing.
Other tools may be more appropriate for full node configuration.
Do not blindly change NVs to see what happens! Use in conjunction with the individual module documentation.
JMRI does not save node configuration changes, this is all saved on the node.
It is sensible to make regular backups of your node configurations using appropriate software.
You are advised not to use this tool at the same time as any other node configuration tool.
At the bottom of the main window is a config console where information relating to the current task is displayed, this is set to cover the main window on startup.
You can monitor full network activity in the MERG CBUS Console Tool.
Timeouts to actions are currently set at 2 seconds.
Node Selection
Selecting the Refresh button at the top of the screen will request each node on the CBUS network to report back.
This node list is added to the dropdown menu at the top of the screen.
Each node which reports itself is sent a message to take it out of any existing learn event mode.
A message identifying nodes in setup mode, ie requesting a node number will also be sent to the network.
Select the node you wish to configure, then press Select Node.
Additional information may be displayed, including firmware version, and if available a module specific web support link which will open in your browser.
The NV screen will show in the main window unless the event screen was displayed previously.
When a node is selected, you can switch the main screen between Node Variables to Events.
Node Variables
These are displayed in a list form, the mouseover tooltips can give extra information.
NV1: 10 ( Node Variable 1 is set at 10 decimal)
(a) 0000 1010 ( hexdecimal + binary forms of the variable )
Binary values are shown as a split value purely for readability.
New: Decimal Value ( Spinner box allows entry for values between 0 and 255.
When changed from existing value, the background colour highlights. )
The new hex and binary values are shown to the right hand side.
To write the new NV's, the Write NV's button is enabled when a variable has been changed.
Click on this button for a confirmation before writing.
Node Events
Click on the Edit button in the event list, or the new event button to bring up the edit event window.
The event and node combination are set at the top of the list
The number of variables per event will depend on the module specific event settings and firmware.
The hex and binary values are shown on the right hand side of each event variable.
Click on edit or new event to save this to the node.
If deleting an event from the node you will be asked to confirm this.
Node Numbers
Node Number : Each individual module in FLIM operation has a node number.
A node number is requested by the holding down the FLiM button on a node.
While the JMRI MERG CBUS Node Config Tool is running, it will listen for individual modules requesting a node number.
On hearing a node number request, an allocation popup window will be displayed.
Using the number spinner or keyboard, enter the numerical Node number you would like for the node.
It is suggested that you allocate node numbers above 256, the maximum non-reserved number is 65,533
If a reserved OpCode is used, background will turn yellow with explanation.
If an existing node number being used is selected, background will turn red.
If a node releases its Node Number, a notification is displayed with an option to refresh the node list.
Supported Operation Codes
- NERD - Sent when requesting node events.
- RQEVN - Sent when node selected prior to building event list.
- NVSET - Sent when editing NV's.
- NVRD - Sent when NV window selected in get node variable loop.
- RQNP - Sent on refresh node list to identify any nodes already in setup mode. Also sent in response to a node requesting a node number.
- QNN - Sent when refreshing node list.
- RQNPN - Sent when node selected to receive node parameter total, also sent to get each node parameter.
- REVAL - Sent when node event window selected, to request each event value.
- EVULN - Sent when deleting an event, also sent when editing an event.
- EVLRN - Sent to teach an event variable.
- NNLRN - Sent to request node enter learn mode, prior to deleting an event or teaching an event.
- SNN - Sent to allocate a node number following user choosing number.
Received OPCS must from an external CBUS connection. Messages sent from other JMRI components will be ingnored by this tool.
- RQNN - Constant listener for node number requests.
- NNREL - Constant listener for node number release.
- NNACK - Listener when waiting for a SNN response.
- PARAMS - Listener for setup mode on node list refresh, listener when an RQNP has been sent.
- WRACK - Listener when waiting for unlearn event response, listener when waiting for a response to setting event, listener when waiting for a response to setting NV.
- CMDERR - Listener when waiting for unlearn event response,
listener when waiting for a response to setting event,
listener when waiting for a response to setting NV.
Generic error message, numeric response value not translated at present. - PNN - Listener when refreshing node list.
- NVANS - Listener when waiting for node NV's.
- NUMEV - Listener when waiting for number of node events.
- PARAN - Listener when waiting for node ( which is not in setup ) parameters.
- ENRSP - Listener when waiting for node event list.
- NEVAL - Listen when waiting for an event variable.
Variance to MERG CBUS Developers Guide 6b
ENLRNI has not been found to be supported by enough modules to be appropriate for use in a generic tool. Instead when editing, the event is deleted fom the node and then re-taught for each event variable.
Although a WRACK acknowledge is not expected in response to an NNULN, if one is received it is used as confirmation and cancels the timeout, enabling the next task to proceed slightly faster.
Following an EVULN being sent, many modules take themselves out of learn mode, hence when another operation is expected directly after the EVULN, the module is taken out of learn mode, then re-enters learn mode prior to continuing.
It cannot be guaranteed that another program within the JMRI suite will not send any normal operational OPC to a module while in learn mode.
JMRI Help
You can view this help page within JMRI by selecting Help > Window Help in the top bar of the MERG CBUS Node Configuration Tool window.
Main JMRI MERG CBUS Support page.
MERG CBUS Node Config Tool Source Code on Github