JMRI DecoderPro Open Source DCC Software

Lownen Jan 21, 2008

  1. Lownen

    Lownen TrainBoard Member

    1,077
    4
    21
    In another thread someone mentioned a product that interfaces DCC Controllers to a personal computer. It occurred to me that not everyone knows about DecoderPro, an Open Source (free) software package that does the same thing.

    DecoderPro uses the JMRI (Java Model Railroad Interface) code library, a free set of Java programming tools for writing DCC control programs. (http://jmri.sourceforge.net/).

    DecoderPro is found at http://jmri.sourceforge.net/apps/DecoderPro/ and can be downloaded for free.

    You do have to purchase an interface to connect your computer to your DCC Controller; the web site gives details about this. I purchased an RR-CirKits LocoBuffer-USB for about $65 to make the connection to my Digitrax Zephyr's LocoNet. This worked fine on my old notebook running Windows XP, but DecoderPro couldn't talk to the LocoBuffer-USB on my Macbook running OS X (if anyone has done this please post how).

    Having taught programming for many years, I have to say that the DecoderPro user interface is not elegant... but it is workable, and the price is right.

    Do any of you have experience with DecoderPro? I'd like to hear other people's opinions and experiences with this software.
     
  2. BedfordRob

    BedfordRob TrainBoard Supporter

    211
    13
    14
    Locobuffer USB on Mac

    I've got a Mac Mini running Tiger. I have got DecoderPro up and running successfully with a LocoBuffer-USB.

    I installed the LocoBuffer drivers and the JVM add-ons as described under the Decoder Pro setup before installing decoder pro

    I had problems until I went into the Network setup under System Preferences and enabled the new usb port that had been added.

    Select Network Port Configurations from the Show dropdown and ensure the USB port is enabled, mine is called usbserial-FTQ1Q32M

    Once this is ticked, it all works fine for me. up until that point decoder pro wouldn't detect the connection
     
  3. UP_Phill

    UP_Phill TrainBoard Supporter

    394
    10
    16
    Have used JMRI for well over 5 years now. I find the interface easy to use and quite functional. I also use a Digitrax system (Super Chief) interfacing with a Locobuffer II.

    The Locobuffer is only required if you use a Digitrax system. Most other DCC manufactures include a serial interface on their boosters.
     
  4. BedfordRob

    BedfordRob TrainBoard Supporter

    211
    13
    14
    Should have confirmed in my previous post that I'm running a Super Empire Builder
     
  5. conductorjonz

    conductorjonz TrainBoard Member

    89
    2
    12
    I use Decoder-Pro on my switching layout for programming locomotives and control of the turnouts.

    I have found that it is very straight foward and quite compatable with CVP Products EasyDCC...using an RS-232 port (on-board) and an old Dell Optiplex running Windows XP.

    I recently added a touch screen so that I can throw turnouts with my finger instead of a mouse. Much more intuitive and less cumbersome.

    I have attached a photo of the US&S Type "cyber" control panel from my layout. For free...you can't beat it. The program is constantly updated and assistance can be had via the JMRI yahoo group.

    Greg
     

    Attached Files:

  6. Dee Das

    Dee Das TrainBoard Member

    333
    9
    19
    Love that panel Greg!!!
     
  7. Lownen

    Lownen TrainBoard Member

    1,077
    4
    21
    Wow! Thanks everyone. Now I know where to get help as I become more familiar with DecoderPro.
     
  8. dstuard

    dstuard TrainBoard Member

    981
    1
    20
    JMRI is a suite of programs...you download them all as a package. DecoderPro for programming decoders, PanelPro for building computer control panelslike Greg's, and a bunch of useful tools an utilities (throttles, tuenout controls, Locnet Monitor, etc.)

    Go here ==> http://jmri.sourceforge.net/

    A must have!
     
  9. Kozmo

    Kozmo TrainBoard Member

    708
    0
    18
    What DCC systems does this work with? just any that have a computer interface?

    I basically want to control my whole layout from a computer/monitor/mouse. (touch screen would be real nice too - great idea you had)
    I'd like to be able to have an on screen throttle for each loco or consist running, maybe up to 10 of them. that way, I can tweak the speed easy as needed without entering 4 digit numbers in to a single handheld DCC controller.

    also, throwing switches would be nice too.

    Is it pretty easy to use to do this? or do you need to be a bit of a computer programmer?
    We just bought a new PC 6 months ago, so I have an older 6 year old PC with Windows XP on it.
    also a 5 year old Mac ibook if that would be better. I have a 19" LCD I can use with either computer. actually, with the ibook, I can add another LCD monitor (via a hack) and then can run dual screens. like one for throttles, one for switch/turnout control.
     
  10. Lownen

    Lownen TrainBoard Member

    1,077
    4
    21
    Here is a link to the controllers JMRI supports. http://jmri.sourceforge.net/hardware/

    I've never heard of half the controllers on it, so if yours isn't there I'd be surprised. You don't need to be a programmer to use DecoderPro or PanelPro. They should be all you'll need. Few people will actually be building their own JMRI programs.

    Like Doug said...
    Go here ==> http://jmri.sourceforge.net/
     
  11. ronone10

    ronone10 TrainBoard Member

    13
    0
    15
    JMRI with NCE PowerCab

    Thanks for the above link to the JMRI DCC system support page. I would like to give this a try and I plan to purchase a NCE PowerCab. But, according to the JMRI support page, the PowerCab limitations include:

    No AUI support, No Turnout MONITORING, No Clock functions.
    PowerCab can only access accessory addresses between 1 and 250.

    Can someone explain to me exactly what does this mean? Can the computer track the train(s) and throw the switches?

    Thanks.. Ron
     
  12. Another ATSF Admirer

    Another ATSF Admirer TrainBoard Member

    849
    56
    21
    I've fed my whole (DCC) roster into DecoderPro and set up speedtables even. The user interface is just Java to me - but then, I am a geek :)

    With an NCE PowerPro, it worked out of the box - only one serial cable needed. Not sure about the new PowerCab though. I wonder if the limitations mentioned stem from the fact that all alone a PowerCab doesn't really have a Cab Bus; from that I wonder if adding a Smart Booster would improve things any?

    Kozmo: as dstuard mentioned, JMRI is really a collection of programs; there's a core part that talks to your controller via either a native interface if your controller has one; or an add on - such as the Digitrax LocoBuffer; and then other programs in the collection talk to that core - DecoderPro for configuring your locos, and little throttles for controlling the locos. I haven't tried more than two throttles/engines myself - it got a little chaotic trying to stop them all from getting hurt on my baby-sized layout.

    Since it's Open and Free, it's easy enough to download it and try it out - assuming you can make it talk to your controller. There's not a lot to try out until you've got that bit ready :nerd:

    conductorjonz: a touch panel for your panel? ooh boy, there goes my disposable income for the next while :)
     
  13. Lownen

    Lownen TrainBoard Member

    1,077
    4
    21
    Ron;

    AUI is Attachment User Interface. If there isn't one I don't think you can connect a computer to it.

    No turnout monitoring means it won't know the current position of your turnouts. My Digitrax Zephyr doesn't do this (that I know of). When powered on the Digitrax DS64s which control my switches close them all... this is a problem slight problem when the Zephyr remembers them as thrown because it won't send a throw command if it thinks its already thrown. I have to cycle my switches after power up.

    Not sure what clock functions are... have to look that one up.

    DCC has two addressing modes, two-digit and four digit. Two digit allows you to number your locos from 3 - 99, 0 is used as the address to allow you to run one loco that has no DCC decoder installed. 1 and 2 are reserved I believe. Decoders and decoder equipped locos generally ship programmed for address 3.

    Any decent decoder today supports 4 digit addressing as well. This allows you to assign addresses 3 - 9999 to your locos. Many people use this addressing mode and make the loco's address its road number.

    I have never heard of a DCC controller before that supports 4 digit addressing but only up to address 250. The fact that they don't include 0 makes me wonder if it will control a non-decoder equipped loco on your layout.

    In short, your post has dropped the NCE power cab several notches in my estimation.

    The throttle on your DCC controller controls one loco at a time. When you have that loco running at the speed you want, or stopped, you can use the controller's number keys to select a different loco, and the throttle takes control of it. One of he beauties of DCC is that most systems allow you to connect multiple throttles and assign different locos to them.

    Can the computer track trains? If you mean will it know the position of a train on your layout, that is called transponding. Transponding wasn't part of the original DCC standard. I have heard they have added specifications for it, but there are already a number of proprietary transponding systems it will have to compete with. Digitrax has one. I don't know if NCE has transponding, but in any case transponding is rather expensive to implement.

    Will it throw your switches? The cab should be able to throw your switches if you buy compatible NCE switch controllers. I don't know anything about NCE's switch controllers; my Digitrax switch controllers have 4 output ports and cost about $60 each.
     
  14. UP_Phill

    UP_Phill TrainBoard Supporter

    394
    10
    16
    Just a quick correction Lownen. 2 digit addressing ranges from 001 to 127. 4 digit addressing ranges from from 0128 to 9983.

    As per my sig I have a Digitrax system. On my layout I have 21 Tortoise machines controlled via 2 switch-8 NCE stationary decoders. Each Switch-8 has 8 outputs with the ability to run 2 Torts off of one output. I've had no issues with compatibility.
     
  15. conductorjonz

    conductorjonz TrainBoard Member

    89
    2
    12
    Thanks for the nice compliments on the control panel. The touch-screen is very nice and makes the layout fairly "idiot-proof". The only thing is, I keep waiting for a locomotive...with cheese...to pull out of the engine house. Very McDonald's like ya' know.

    Here is the posibilities as I see them using JMRI:

    1. You can program your decoders. It has decoder definitions for almost every decoder known to man...with constant updates You can then use Decoder-Pro to write custon or pre-defined speed tables, change lighting effects , SFX if you have sound, change function outputs...etc.

    2. If your system and decoders support "main-line" or "Ops-Mode" programming, Decoder-Pro will make this easier too. You can do speed matching of locomotives, etc in "real-time".

    3. Once your roster of locos are programmed, you can print all parameters for safe keeping, and of course if you have a decoder that loses its mind, you can reprogram it with relative ease.

    4. There are throttles that can be used for locomotive control. I don't use them, but they could be handy I suppose.

    Now as to the Panel-Pro part of the package:

    Though I have not tested in theory or in practice, but I would say it is conceiveable you could accomplish the following:

    1. Program turnout control for either part or your entire layout. Perhaps a basement sized layout, you may want the dispatcher to control only your mainline crossovers and yard lead switches. Perhaps the dispatcher is in another room in the basement or somewhere else in the house. You could use a computer that is networked from your home-office to the controlling comupter to handle dispatching via your home network. The dispatcher could control signals and turnouts via Panel-Pro.

    2. Maybe the layout schematic is too big for one screen/monitor. You can use multiple video cards and multiple monitors...like real dispatchers...to spread the layout across multiple monitors for easy viewing.

    3. Panel-Pro has icons for new/current style dispatcher displays or the old fashion style that I used with the toggle switches. The map icons can be animated to show the line up, or fixed.

    4. Panel-Pro can set up turnout routing that will allow the dispatcher to flip one switch, and it will set all other turnouts leading to that turnout.

    5. You can hook up your block occupancy detectors to follow trains on the layout as they are moving about.

    Bottom line...as far as I can tell...your imagination is the limiting factor in all this program has to offer.

    I keep my files backed up on a thumb-drive for safe keeping.

    There is a learing curve in all this, but it is not steep. Once you play with each program in the suite, you'll get the hang of it.

    I think...counting the learning curve...I spent 6 hours building my panel. I'd like to note that the panel on my layout has 22 turnouts all controlled by the JMRI. That would be about the same as controlling an entire mainline railroads Control Points for a dispatcher...just the stretched out across the entire layout instead of squished together.
     
    Last edited by a moderator: Jan 22, 2008
  16. CSX Robert

    CSX Robert TrainBoard Member

    1,503
    640
    41
    Does your 6 year windows XP computer have a serial port? If so one option for connecting Digitrax is the circuit at the bottom of this page:http://www.teamdigital1.com/support_tools.html. I am using this circuit with a Digitrax Zephyr and a Windows XP computer and it is working fine for me and cost me less than $5. You talk about using dual screens on your ibook, but if you go with Digitrax, another option is to have both computers hooked up. There are two ways to do this. One is to have a Loconet adapter for each computer and have both computers hooked to Loconet, in fact, you could have several computers hooked to Loconet at the same time. Another option is a feature now included in JMRI called LoconetOverTCPIP. I know this would work with more than one Windows PC, but I am not sure about a Windows PC and a Mac, although I believe it would. You would have to have both computers on a TCP/IP network(if you have a router and you can get to the internet from either computer through the router, then you should be good to go). You could have the Windows PC connected to the layout and running the LoconetOverTCPIP server, and on the ibook use LoconetOverTCPIP as the connection.
     
  17. CSX Robert

    CSX Robert TrainBoard Member

    1,503
    640
    41
    The AIU(not AUI, and this wasn't your typo, it was wrong on the JMRI website) is NCE's Auxillary Input Unit, mainly used for occupancy detection. Turnout monitoring has already been partly answered. I will also add that with Digitrax, if someone thows a switch from the throttle, JMRI knows it, with NCE's USB interface, I don't know if JMRI would know it or not, but it sounds like it wouldn't. The clock functions are the fast clock. The accessory addresses between 1 and 250 are not referring to locomotive addresses. These are the addresses for accessories such as switch machines. According to the manual, the PowerCab can access accessory addresses up to 2044; if this is true, I don't know why the USB interface would be limited to 250.

    One thing about the PowerCab USB interface is, as far as I know, it still is not actually available yet.
     
  18. Lownen

    Lownen TrainBoard Member

    1,077
    4
    21
    Wow... I'm learning a lot here. I had forgotten that "two digit" addresses were actually single-byte addresses as twos compliment integers (for you bits and bytes geeks) which allows the range to be 0 - 127 as UP_Phill said.

    I'm spinning off a thread about Transponding/Occupancy Detection because I think it is a fascinating topic in its own right.

    Robert, please see that thread and reply there. I'm interested in how NCE's Occupancy Detection works.

    Best!
     
  19. Gats

    Gats TrainBoard Member

    4,122
    23
    59
    A few points;

    The 1-250 accessory address issue with the PowerCab seems to be related to the DecoderPro interface method - ie, the USB. Out of the box it handles 2044 addresses as CSX Robert points out. I have points addressed in the 300's and 400's without issue.

    The PowerCab;

    - will handle long addresses from 0 to 9999. It also handles short addresses from 0-127, and sees short- and long-address 0-127 as two different addresses.

    - has it's own internal clock which can be set from 1:1 to 12:1 over several increments. Whether this function will talk to DecoderPro in the final release version of the USB interface remains to be seen.

    - will NOT control a DC loco under address 00. This feature was apparently available in the very early PowerHouse system but was dropped. I guess a DCC system should operate DCC equipment in NCE's view.

    The AIU is as Robert points out. It takes inputs from point position and track occupancy devices and converts them to a NCE CabBus signal. This in turn can be read from the CabBus by a third party program via the serial port of the PowerHouse system, provided it is supported. The design of the AUI requires it to have a cab address per unit which makes it unwanted in a PowerCab system as it takes the second throttle's position.

    The proposed PowerCab USB interface is not designed to have the same functionality as it's bigger sibling's serial interface. Also, it's not designed to be connected to the PowerHouse.
     
  20. Kozmo

    Kozmo TrainBoard Member

    708
    0
    18

Share This Page