JMRI Hardware Support - RailDriver Throttle

# Hardware Support: RailDriver Throttle

## Supported Hardware

JMRI allows you to use a RailDriver from PI Engineering as a Hardware Throttle to run Locomotives with your DCC system.

## Connecting

### Wiring

First, connect your computer to your DCC system and make sure that the regular JMRI Throttles are working fine (Unless you do this first, debugging possible problems connecting the RailDriver is very difficult.)

Next, plug the RailDriver into a USB port on your computer while your JMRI application (PanelPro or DecoderPro) isn't running.

### Configure OS

#### Linux

Out of the box Ubuntu classifies HID devices as belonging to root. You can override this rule by creating your own under /etc/udev/rules.d:

            sudo gedit /etc/udev/rules.d/99-myhid.rules

Make the content of this file as below (using your own discovered hex values for idVendor and idProduct): (note: RailDriver: 0x05F3 / 0x00D2)

            # My HID device
            ATTRS{idProduct}=="00D2", ATTRS{idVendor}=="05F3", MODE="0660", GROUP="plugdev"

Save and exit from root, then unplug and replug your device. The rules should take effect immediately. If they're still not running it may that you're not a member of the plugdev group. You can fix this as follows (assuming that plugdev is not present on your system):

            sudo addgroup plugdev
            sudo addgroup yourusername plugdev

### Settings

Once connected, start the JMRI program and select "RailDriver Throttle" from the Debug menu (It's temporarily located there while we develop the support).

A Throttle window titled "RailDriver" should open:

Type the DCC address of your Locomotive into the address box, just like a regular JMRI Throttle, and click "Set". This connects both the Throttle window and the RailDriver console through the DCC system to the decoder. You should now be able to operate the Locomotive from the RailDriver.

## Raildriver Tools

- The top row of buttons across the front edge control the decoder functions. The left most (#1 in the figure) is F0, usually the headlight. The next button to the right (#2 in the figure) is F1, etc. When you press the button, the function toggles: From Off to On, or On to Off. Try pressing one, and see if the Throttle function buttons on the screen and the functions in the Locomotive respond.
- The "Bell" button (#37 in the figure) drives F3 (this can be changed by editing a file in the JMRI distribution if your DCC system uses something different). It's momentary, so F3 is set on when the button is pressed, and off when it's released.
- The horn lever (#38 in the figure) operates F2. Push it forward or back to turn F2 On, and release or center it to turn F2 Off.
- The left-most large handle, labeled "Forward N Reverse" (#39 in the figure) serves to control direction. Since (most) DCC decoders don't have a neutral position, the N position isn't used.
- The next lever, labelled "Dyn Brake Throttle" (#40 in the figure), controls the decoder speed setting. For now, zero speed is (roughly) the center, and higher speeds are when the lever is pulled back.

Eventually, we'd like to make a more detailed simulation available by connecting the rest of the controls, and adding a detailed model of the trains braking and acceleration.

## Documentation

### JMRI Help

For technical information on Raildriver, please see the Details Help page.