JMRI Hardware Support - OpenLCB Details

# Hardware Support: OpenLCB - Technical Details

JMRI support for OpenLCB is rapidly evolving; the actual code might be ahead or behind the documentation on any given day.

This page describes technical details of JMRI's OpenLCB support.

## CAN Adapters

JMRI's general approach is to support as many hardware combinations as possible. By supporting as many people and their hardware desires as possible, we can create a growing community of developers, hence more code.

As part of this, JMRI CAN support is designed to use as many CAN adapter types as possible.

## Node ID

JMRI on an OpenLCB network acts - in part - like an OpenLCB Node. As such, it needs a unique 6-byte OpenLCB Node ID. It builds this automatically every time it starts up by combining the JMRI OpenLCB unique prefix with one byte from the computer's IP address and two bytes of the process ID of the JMRI application. This allows you to e.g. run JMRI on multiple computers or multiple copies on one computer without problems.

A future enhancement will make these persistent from run to run, so that they can be used to easily create unique and persistent eventIDs.

## Documentation

### JMRI Help

CAN support Help

Back to the main OpenLCB Help page