Wednesday, December 13, 2017

Connecting up JMRI

December 13, 2017

With a minimum of effort and cost, my little layout is now connected to JMRI. I picked up an old PC with Windows 7 on it from a company I had done business with. After assigning it a reserved network address, I downloaded and installed JMRI. The JMRI took care of bringing in all the dependencies on Java, no manual intervention required.

The next step was to hook up the LocoBuffer-USB interface between the computer and the layout. Again, the LocoBuffer pulled down its own drivers without any interference in my part.
I fired up JMRI PanelPro and created a new railroad profile with Digitrax and LocoBuffer as my options. I then had a brief issue because I forgot that the WiThrottle server is not the LocoNet server or the JMRI web server. However, one I remembered that, I was able to connect from my phone using the Engine Driver Android app. The reason you need a static IP is so that you always know the address of your JMRI machine.

After that, I had a little fun driving trains with my phone, which seems slightly more responsive than my UT4D throttles. However, that's not surprising given how much better my Wi-Fi is than the Digitrax wireless is.

December 14, 2017

After the initial steps of getting JMRI set up on the old PC, the next step was to try out the Watchman board to see if it could detect trains. I had already done a little work in advance; namely, getting a coil installed with the positive feeder wire running through the middle of it. Because the block is around 12' long, there are actually two positive feeders running through the same coil. I had also set up a block using insulated rail joiners. I'm installing detection on my mainline track, so the sidings are isolated from the main. While some people isolate each turnout from the surrounding track, I've decided to use a simpler approach and combine the turnout with the block. The turnout will eventually have remote control to tell me which way it's facing for signaling purposes when I get that far. 



The next step in getting the Watchman board set up is to connect the SSB Adapter to the LocoNet network. The included power adapter plugs into the wall, and then you run three wires from the terminals to the next terminal on the Watchman board. The center wire is the LocoNet, the other two are power. According to the manual, you don't have to worry about polarity on the power wires; however, I'm planning to replace this temporary SSB wire with black/green/red for simplicity. 


I ran the SSB wires to the Watchman board, plugged them in, and got a green light on both the SSB adapter and the Watchman board. 


The next step was to hook wire from the Watchman to the coil I'd installed. RR-Cirkits recommends CAT 5 twisted pair wire to eliminate extraneous noise that can affect the signal quality. This is just a temporary and ugly solder job, but it was enough to make the connection. Make sure that you don't mix up your wires or you won't get any signal at all. 


The terminals on the Watchman board are labeled "1-4" and "8-5" -- it's not written down, but pair 1 is closest to the power end of the board, and pair 8 is the closest on the other side of the board. 

The next step was to get JMRI set up to listen for the board and to start getting signals. Unfortunately, the PDF version of the Watchman manual is quite a bit different than how JMRI looks now. I did stumble on a page in the RR-Cirkits site that was updated with the more current instructions. That page is available here. One of the most important things to set is the Programming on Main option on the list of decoders. Also, when you're adding a Watchman, you click the New Loco button to get started. Even though it's not a locomotive, you'll find the RR-Cirkits (and many other) products listed there. 

I numbered this device 10001 but will probably go back and renumber it later, which is easy to do with the Decoder Pro program. Once you get past the first setup pages, the manual is somewhat helpful, but I ended up stumbling my way through. With the default settings, I put an engine on the detected track and turned on the Monitor LocoNet under the LocoNet menu. As I turned up the throttle, I could see the various commands going to the locomotive; however, no indications were present that the detector was working. After reading the manual, searching the web, and a few other things, I found the Sensitivity tab and decided to play with it. From no detection at all, I got the detection to see when the train was actually moving. There would be a messages indicating that the detection block was active, but when the throttle went to zero, the detection block went inactive. 



Through trial and error, I found that setting the sensitivity to 80 (scale of 0-255) was sufficient to detect the locomotive entering, leaving, and stopping on the track. This was a 12 foot block with two sets of feeder wires. After that, the sensor would stay "High" when the engine was anywhere in the block. 

The next step was to get this to show up on a control panel. To create a control panel, you have to use the PanelPro application instead of DecoderPro, and you can't have both running at the same time. After playing with the LayoutPro application, I found that all I needed was to create a single control panel with a single block indicator on it. This is how I did it.
  1. From the Panels menu, I chose New Panel -> Control Panel Editor.
  2. From the Add Items menu, I picked the Item Palette option. 
  3. Because I had set up the Watchman already, the item named LS1 was the block I had set up. I renamed this block U5-U6 (the name of the module) and then dragged the icon to the panel. 
  4. I then added a small block of track and some text using the item palette, to end up with a very simple control panel, shown here:


After saving this panel, you go to the File menu and choose Close Editor. One note -- clicking on the indicator will cause it to change colors, but once you start running your train, it will flip appropriately.

Once I got all this setup, I could drive my engine in and out of the detected track and see a tiny yellow indicator flip back and forth. It's amazing how exciting seeing a handful of pixels change colors can be when this all works right. 

In case you're wondering, this is what I've purchased so far to make the JMRI interface:
  • RR-Cirkits LocoBuffer-USB - $62.43
  • RR-Cirkits Watchman - $43.64
  • RR-Cirkits 8 coil kit - $13.60
  • RR-Cirkits SSB-Adapter - $16.96
The per-block price is basically the cost of the Watchman and the coils, which is roughly $7.15 per detected block. Each Watchman board uses 20 mA of power, so a single SSB adapter power supply will power many of these boards. 

The Digitrax equivalent is the BDL168 (122.95 - Tony's Trains); however, it does not come with the remote coils. You have to run heavy gauge wire from the block back to the BDL168 for the detection to work. It appears they've added the RD2 remote sensing diode, which covers two blocks and costs another $7.65 (Tony's Trains price).  When you do the math, this works out to $11.50 per detected block, not counting the power supply required for the BDL168. 

Team Digital also has a block detection product (DBD22 - 23.95 - 2 blocks) that works with their Signal and Indicator Controller (SIC24e - 66.95 - 8 blocks). This works out to a per-block price of $20.34, not counting the required power supply. 


While I'm not trying to penny-pinch my layout, I do appreciate value pricing. I'm also very happy with the e-mail support I've gotten from RR-Cirkits' owner, Dick Bronson. He's heavily involved with the JMRI community, so I feel pretty confident using these products on my layout. 

Now that I know the detection and all the RR-Cirkits products work with my layout, I can put some of this aside and go back to laying track and installing detection coils as appropriate.  



No comments:

Post a Comment