Joe Baker

I'm looking for some help from the forum to set-up JMRI operations for my layout.

My layout physically consists of one large industry with multiple spurs operated by a local switcher from the industry and an 'interchange' with a Class I railroad that is actually my staging yard. 

I want JMRI to develop a switch list for my industry. I want cars to move from the Interchange to the spurs, back to the interchange and have their loads switched.

What is the best way to do this virtually in JMRI:

1.  Set-up two locations - industry with spurs and staging location where loads are switched; or

2. Set-up two locations - industry with spurs and 'interchange' that is also a bunch spurs that will accept the exact opposite loads of my industry or;

3. Set-up three locations - industry with spurs, interchange location with C/I tracks, and staging location where loads are swapped; or

4. Something else?

 

I think once I figure out the larger movements I can work out the finer details from there.

 

 

Joe Baker

DOMTAR Pulp and Paper Mill

( My Blog Index)

Reply 0
George Sinos gsinos

A couple of resources

Joe -

A forum member, David Haynes, worked a small example here on the forum.  He's collected the posts in a pdf.  The PDF has links to the original forum posts so you can read the discussion.  His description of reading build reports is particularly helpful.

Brian Clark's JMRI overview article has just been published in the October, 2020 issue of the Dispatcher's Office.  The DO is the OpSig's magazine.  An OpSig membership is only $10. For that you get the benefit of access to the entire back library of magazines.  The article is several pages.

Steve Todd's video from a recent NMRAx has been posted on the NMRA's YouTube  Page.  Don't be put off by the title.  The first half is a quick overview on getting started.  The second half may be of interest if you would rather send you're switch lists to a tablet, rather than printing them.

 

 

That should get you started. GS

Reply 0
ctxmf74

Something else?

  I think it would depend on how detailed you want the off scene documentation  to be . Do you want to create imaginary originating locations and destinations for the car that are in staging or do you just want to call them inbounds or out bounds? I'd also decide what the industry relationship with the railroad is, does the railroad just drop cuts of cars at the industry siding and let the industry switcher take care of all the in plant switching or does the railroad switch anything themselves?  Once the operations are nailed down then you'll have to figure out how to best represent it in your space. Functionally it doesn't matter if the "interchange" takes place off scene with the switcher just pushing the cars out of sight or on scene with the mainline road setting them out and picking them up at their siding but visually it can be a big difference. Ideally one could have a big loop of mainline track with a double ended staging yard out of sight and an industrial siding on scene. This would allow mainline trains to appear and run thru in both directions and to stop if they need to or just roll by as moving scenery :> )....DaveB

Reply 0
David Husman dave1905

JMRI

In JMRI it makes a big difference what you call things because you can only do certain things on certain tracks.  An "interchange" only allows the attributes associated with the JMRI definition of that type of track.  If you call a track a "staging" track only the attributes associated with a staging track can be done which are not the same as an "interchange track".

And the attributes are unique to JMRI and may not be consistent with the "real world" attributes of an "interchange".

Therefore how Joe designates the type of track and what attributes he attributes to those tracks makes a huge difference in how his operations works.

This isn't an "operations" question, its a JMRI coding question.

Dave Husman

Visit my website :  https://wnbranch.com/

Blog index:  Dave Husman Blog Index

Reply 0
Joe Baker

Replies

Thanks GS, I'll take a look at those resources.

Dave -

All of the switching at the DOMTAR Pulp and Paper Mill is done by the industry owned switcher. In real life on my layout the switcher pulls cars from my staging tracks (the idea is that the staging tracks are an 'interchange' between the local from the Class I and the industry), switch the paper mill, and shove cars back to the staging tracks (interchange). It's all a point to point operation.

Virtually, I want JMRI to develop a detailed switch list for the paper mill. Eventually I want to have schedules, custom loads, and one internal spur to spur move (box-car clean-out spur to paper track). It doesn't matter to me what happens in JRMI at a virtual 'interchange' or 'staging' tracks in the program so long as it feeds the paper mill the correct stream of loads / empties for the various spurs and recognizes what I'm shoving back into my staging tracks in real life.

I'm struggling with how to do that in JRMI from a macro perspective i.e. what is the basic set-up I'm looking for in terms of locations and track types at those locations to perform those functions. 

 

 

 

 

 

 

Reply 0
cp5170

My experience

I designated my staging tracks as industries with spurs.  You can change the track type.

I use custom loads so this works best for me.

Join the JMRI Users group because the develpers review and

comment on posts.

Reply 0
George Sinos gsinos

My current progress

Joe - 
 
I've built a small switching layout with off-layout storage, similar to yours.  I'll try to briefly describe how I set it up.  Keep in mind, this is working for me, and there will be other ways to accomplish the same thing.
 
The Storage Drawers are a location with a yard track for each drawer.  I chose yard tracks because they don't do anything.  They are just a place to hold your cars.
 
My Staging is actually three additional off-layout drawers.  Each drawer holds one train.  In OpsPro the Staging drawers are a location with 3 Staging tracks.  Each track is a drawer. I chose staging tracks because they can optionally exchange load/empty status.  I have them flip the status on the way out of the layout and back to the yard (Storage Drawers.)
 
On the layout I have a third location. It's a Classification/Interchange track. One train at a time comes from the Staging Drawers to the physical C/I track.  Trains returning to Staging return from there.  C/I tracks don't do anything to a train.  What goes in must go out on a different train.
 
The fourth location has spur tracks for the industries.  Spur Tracks also flip the load/empty status.
 
Now - Routes are just paths that define going from place to place.  Trains travel on Routes.
 
I'll just say a few other things:
   It's a pretty good bet that OpsPro doesn't work the way you expect it to.
   You will need more routes than you think
    All of your tracks don't need to be defined in OpsPro.
    Some of your tracks will be defined as more than one thing in OpsPro.
 
Here's a typical sequence
 
3 trains (five finger) run along a route to move cars from the Storage Drawers to make the 3 trains in the Staging Drawers.
 
Repeat this next sequence for each of the 3 trains in the Staging Drawers.
 
1 train (five finger) runs along a route from a Staging track to the physical Interchange track. It sits there until it's picked up by the local switcher (real train).
 
A local switcher runs along a route from the Interchange track to the Industrial spurs, returning any pickups to the C/I track.  The cars get their load/empties flipped as they are set out on their spurs.
 
1 train (five finger) runs along a route from the physical C/I track, returning any pickups to the empty Staging Drawer.
 
Another train (five finger) travels along a route returning the cars from staging back to their storage drawers. The outbound cars get their Load/Empties flipped on the way back to storage.
 
Plan on testing and re-doing things a lot.  I've been working on this for a few days, and have the basics working.  Don't worry about details at first. Just get things moving in the right places.  Then start adding things one at a time, testing as you go.
 
Good Luck, GS
 
PS - my layout is running like a top with Car Cards and Way Bills.  I'm just trying OpsPro to see if I like it.  I built a small layout in Auran's Trainz simulator to do all of the OpsPro work without disrupting my physical layout.
 
Reply 0
PeterU

Join the JMRI users group

Join the JMRI users group and ask your question there. The developer of OperationPro is online regularly.

https://groups.io/g/jmriusers

jmriusers+subscribe@groups.io

Peter Ulvestad

Reply 0
Photo Bud

Fascinating Discussion

Definitely piques my interest and I'm not "into" ops at this time, but this thread may be what it takes to try it out.

Thanks OP and all the comments and links.

Bud (aka John), The Old Curmudgeon

Fan of Northern Pacific and the Rock Island

Reply 0
Joe Baker

Early Success

After taking some notes from the replies here, some detailed reading of the JRMI help files, and quite a few trial and error runs using staging tracks, I think I found the basic solution.

I am essentially doing what cp5170 said above:

 

Basic Set-Up

I have two 'locations' programmed in JRMI for switching.

1. Is the Pulp and Paper Mill with spurs that match the real layout and 2 long Classification / Interchange tracks.

The classification / interchange tracks in JMRI coincide with the track on my layout that is both a classification / interchange yard for the Paper Mill and my staging (my actual yard has five tracks, not two, but I will explain why I am only using 2 in JMRI below).

2. A universal industry in a separate 'location' with one really long spur, 5000', that can accept all loads.

I have two 'routes' and two 'trains' set-up:

1. The route and train for the Paper Mill location only services the Paper Mill so there is a local switcher established by the program.

2. The route and train running to the Paper Mill from the universal industry and back-again.

Details

To ensure that the train from the universal industry only sets-out and picks-up cars at the classification/interchange tracks where I want and not the rest of the Paper Mill, and to ensure the local switcher only sets-outs and picks up cars where I want at the interchange, I have done the following:

  • All of the spurs at the Mill have their train servicing directions turned off. The Mill 'location' itself has the East / West train servicing directions turned on. This ensures only the local switcher is working the spurs, and the train from the universal industry can still get to the C/I tracks at the Mill to exchange cars, but not the spurs.
  • One classification track is set-up to only accept set-outs by the train from the universal industry and pick-ups by the local switcher. That track funnels cars into the Paper Mill. A one way flow of cars in.
  • The other classification track is set-up to only accept set-outs by the local switcher, and pick-ups by the train from the universal industry. That track funnels cars out of the Paper Mill. A one way flow out.
  • The route and train from the universal industry to the mill and back again has four 'locations' in it.
    • Universal Industry - train departs - direction East
    • Paper Mill - train set-outs cars on one C/I track - direction East
    • Paper Mill - train picks-up cars on other c/I track - direction West
    • Universal Industry - train sets-out cars, loads are switched - direction West

This way in the real world, cars get pushed to my layouts' combination interchange / staging yard. The program tracks their movement as entering the C/I tracks at the virtual Mill location. Then the program virtually moves those cars to a universal industry (they don't move in real life), and sends them back to the virtual C/I tracks with their loads switched. 

This basic set-up seems to work well with just one spur (paper track) and one car type (boxcar). I will slowly try to expand the number of spurs, car types, custom loads, and schedules. I will probably post in more detail on my personal blog.

Failed Attempts

I spent a few hours trying to make the above set-up work with a 'staging' track location instead of a universal industry but the nature of how staging tracks operate kept it from working. Staging will switch loads for you, but you need at least two tracks (one for train to depart, one to enter), the train has to stay together, if a track has cars on it the train can't enter, etc...

Most importantly, the train will not depart staging to pull cars from the Mill classification track if there are no cars in staging in the first place.

So despite my best efforts, I could not make the names of the virtual tracks and locations match those of the real layout. Maybe I'm missing something. Maybe I'll figure it out in the future. 

 

Reply 0
HN1951

Similar Approach

Joe

I had a like problem you encountered, the JMRI use of a staging track did not match how I needed to use it and I have no formal yard. I found a trick from the JMRI group mentioned that with some minor tweaks did what I needed. As and example, here is how one actual train works.

Hidden double-end staging yard

These locations are physically the same track of the same length. EB & WB directions allowed.  All car types allowed.

Track ZZ EB-B = C/I
Track YY EB-B = C/I

Offline storage 
Very long single spur (exceeds cars in use). EB & WB directions allowed.  All car types allowed. Each car assigned to a bin location and bin location included in car comment fields which is included in switch list.


Manifest train #98

98 Sweep (imaginary)
Track ZZ EB-B -> Offline Storage

98 Refresh (imaginary)
Offline Storage -> Track YY EB-B 

98 Manifest (Real)
Track YY-B -> Town AA -> Track ZZ EB-B

Basically, the first train in the sequence moves cars to storage from staging, The second moves new cars from storage to the staging track and the last is the actual train that operates.  This approach allows JMRI to keep track of cars, etc as you would expect.

Have fun and run trains!

 

 

Rick G.
​C&O Hawks Nest Sub-division c. 1951

Reply 0
JLandT Railroad

Sharing OperationsPro Information...

Hi Joe,

I just found this thread, was going back through your posts and realised your using JMRI - Operations Pro for your switching too.

I've just began the process too, and the first industry to be programmed was my York Haven - Pulp & Paper Mill.  I'd be keen to start sharing some information about how your utilising the program, and some of the inbound & outbound goods your planning on including, and how your getting the program to work considering there are quite a few tricks you need to learn to get it all to work.

Here is the link to my thread on JMRI - OperationsPro so far:

https://forum.mrhmag.com/post/jmri-operations-pro-down-the-rabbit-hole-we-go-12218010

Let me know if you're interested and I'll contact you through the forum PM...

Jason.

 

Reply 0
Joe Baker

Hi Jason,

I'm definitely interested in sharing ideas. Send me a PM.  I haven't actually progressed to programming every single spur into JRMI yet. Once I figured out the hardest set of moves to program I didn't take it all the way to completion (empty box-car 'dirty', to box car cleaning track (within mill), to paper loading tracks (within mill - without other types of boxcars coming in to paper loading tracks accidentally). I don't think the rest is difficult to do, I just haven't put the time in yet to load all of information for my rolling stock, track lengths, commodities and set the schedule up based on the days of the week. Our discussion will be a good kick to focus on JRMI for a bit.

Reply 0
Photo Bud

Just a Reply to Ensure Following!

Hopefully this won't be necessary on the new forum with the ability to "Like".

Bud (aka John), The Old Curmudgeon

Fan of Northern Pacific and the Rock Island

Reply 0
Joe Baker

Interest and Grey Matter

It seems like there is enough interest in this that maybe I could write up a few detailed posts for the benefit of some of the forum members on how I set-up JRMI for my layout with specific references to the track plan. I make no promises on when that might happen though. My day job uses up all of the energy in my brain cells, so most of the current work on my layout is on things that don't require a lot of critical thought or analysis. Maybe I'll pull this together over some long weekend evenings and have a full daily switch list worked out by mid-summer. Maybe I should hang a clip board up on the fascia with a pencil for inspiration. 

Reply 0
David Husman dave1905

C/I

What is a "C/I" track?  Worked for 37 years in the operating dept. of a real railroad and never heard that term.

Dave Husman

Visit my website :  https://wnbranch.com/

Blog index:  Dave Husman Blog Index

Reply 0
Joe Baker

Hi Dave,

C/I track stands for Classification / Interchange track. It is a type of 'track' developed in JRMI for the purposes of the program and operations.

JRMI describes them as:

The easiest way to create the exchange of cars between trains is to use a classification/interchange track. A classification/interchange (C/I) track can be used for classification, the movement of cars within the same railroad, and an interchange, the movement of cars between railroads. Cars dropped off to a C/I track by a train on a given route will not be picked up by any train using that same route. Another train with a different route is required to pick up the cars. This includes transferring cars from a through freight to a local switcher. For example, you might have a branch line that picks up and set out cars from a terminal. By defining the track as a classification/interchange track, once the branch line train delivers the cars, they will remain there until the main line train stops to service the classification/interchange track. Same goes for a local switcher, cars dropped off at a location with a C/I track will remain there until the local moves them to the spur tracks. When the local pulls cars for the spur and places them on the C/I track, they will remain there until the main line train pulls them.

 

Reply 0
David Husman dave1905

C/I

Thanks, didn't remember that from when I tried JMRI, they may have been separate animals when I tried it.  An intermediate destination that forces a change in train/route, but not load/empty status or final destination.

Question on the "interchange" part of that.  

Does a C/I track actually maintain the load/empty, final destination status?  Or will it allow that to be changed?  If its truly an "interchange track" it should be allowed to change destination and L/E status.

Or is "interchange" used in an internal JMRI sense to mean "changing trains" instead of the prototype sense "changing railroads"?

Dave Husman

Visit my website :  https://wnbranch.com/

Blog index:  Dave Husman Blog Index

Reply 0
Joe Baker

C/I Track Info

Dave,

The C/I track will maintain the load / empty status. The C/I track can service several destinations and 'trains' that you program in JRMI which could be from different railroads.

If prototypes use a portion of an interchange track for exchanging loads, then you would have to create a separate virtual spur track to represent that exchange in JRMI that would occur on one real track on the prototype.

But I think you mean will the same car you drop-off at the interchange change loads as if another road had left a set-out for you? If you mean that, the road / train leaves an empty boxcar on the interchange, then that car would have to be picked up by another train you have programmed to stop at the interchange to pick up cars and move onward to a spur (or staging track) based on the cars pre-set final destination or the demand programmed into various spurs on the layout that can accept that type of car, where the program would change to loaded. Another car in circulation already loaded could be waiting at the interchange already to be picked up by the train that dropped off the empty, but it isn't the same virtual car that was dropped off. You have to have several virtual / real cars in circulation.

For my layout, which is just one big paper mill with some staging (represents an interchange with another railroad), I have two locations in JRMI - the paper mill with spur tracks that actually exist on my layout and one virtual 'inbound' and one virtual 'outbound' C/I track. Those C/I tracks represent the five tracks in real life in my staging area (the names get a bit confusing because staging in JRMI is different than a C/I track). My second location is a completely virtual 'Universal' industry (just a couple spur tracks in JRMI each with a specific purpose for me) where loads are exchanged. Cars are moved through the program in steps - universal industry to inbound C/I track - inbound C/I track to paper mill spurs (loads status switches) - spurs to outbound C/I track - outbound C/I track to Universal Industry (load status switches). I have set-up a virtual train that runs from the 'Universal' industry and drops of cars at the inbound interchange track, then picks up cars from the outbound interchange track, and goes back to the universal industry in one trip. I have a local switcher set-up in the paper mill location that essentially does the reverse.

Hope that explanation helps.

 

Reply 0
David Husman dave1905

C/I sorta

Quote:

The C/I track will maintain the load / empty status. 

This answers my question, the term "interchange" is still a JMRI term and doesn't have anything to do with prototype interchange. 

This was had biggest barrier I had to figuring out JMRI, because the track names and what they do compared to the prototype is completely bass ackwards in JMRI.  Having to unlearn 30+ years of prototype experience to use JMRI confused me and still does to some point (one of the reasons I don't use it on my layout).

Got it.

I think you actually have to make a true (prototype meaning) interchange track a "staging track" in JMRI speak to make it work prototypically (if I remember correctly).

Dave Husman

Visit my website :  https://wnbranch.com/

Blog index:  Dave Husman Blog Index

Reply 0
SD70M2

This Thread Could Really Help You

Go through this thread regarding JMRI Operations.  Another JMRI OperationsPro Worked Example. It sure helped me understand a lot of things about JMRI Operations that I hadn't quite understood. In fact the switching layout example used on this thread may be just what you are looking for on your layout.

I've been using JMRI for a couple of years now to handle switch lists on my switching layout and find that it works very well for the most part. My current switching layout theme is an small town at the end of a short branch line and I have JMRI set up working very well for this theme. I've also had it set up on a previous industrial spur and it worked just fine.

One confusing aspect of JMRI Operations is that some of the track types don't work the way you think they would, such as Yards, Interchange Tracks, Staging, Etc. and that thread will really help you understand the way they work.

 

Ed Vasser, Frankfort, KY

Reply 0
Joe Baker

Dave, Looking at JRMI with no

Dave,

Looking at JRMI with no prototype experience and very little modeling experience it makes sense in my mind from what I know of an interchange and/or yard at a junction point. In my case, the paper mill owns its own switchers and must interchange cars with a Class 1. The interchange of cars occurs on the 'interchange' tracks that I created to represent my 'staging yard'. If I had more room on my layout, my staging yard would be an actual modeled interchange / junction, and staging would go further down the wall. So the exchange of cars is happening at the real interchange / staging location on my layout. No loads are removed from the cars or added to the cars at the virtual interchange. The cars are just picked up and set-out by the mill switchers, and local switcher from the Class 1. I didn't think loaded or empty status of a car changed at an interchange between railroads, but again, I don't have any experience in this area. I can't speak to the classification part of the C/I track, I haven't had a use for that function in JRMI and haven't looked at it closely yet.

I'm interested to know more about interchange and/or junctions Dave. Let me know if I'm using the terms incorrectly or creating unrealistic operations.

 

Reply 0
David Husman dave1905

Software term

The thing to remember is that JMRI uses terms that relate to the operation of the software and are defined in the context of the software.  While they are the same terms as prototype operations they are not the same definitions as prototype operations.  That's fine, I just have to remember the differences in how they work.  A train block is not the same as a signal block as an air brake block as a crane rigging block as a dispatching block.  Same term different meanings in different contexts.

Dave Husman

Visit my website :  https://wnbranch.com/

Blog index:  Dave Husman Blog Index

Reply 0
David Husman dave1905

Scope

I didn't think loaded or empty status of a car changed at an interchange between railroads, but again, I don't have any experience in this area. 

Depends on the scope.  Depends on whether its really an interchange.   

You are modeling a special case, since you are modeling both sides of the the "interchange".

From your standpoint being two different railroads at once, the car looks like its status doesn't change at interchange.  However if you look at it from the standpoint of either single railroad it does.   If you are the road haul carrier and put the car on the interchange, the next time you see it the status and destination will have changed.  If you are the paper mill and put a car on the interchange, the next time you see it the destination and status will have changed.

In the real world the railroads "vision" ends at the interchange (with caveats).  In your world you have both sides of the interchange in the same system, its not two separate railroads its ONE railroad from a car management system viewpoint.  You have total  transparency of the complete move on both sides of the interchange.  If they were real railroads they would not.

You also have a special case in that what you are "interchanging" to is a closed system.  Once a car is in the paper mill its trapped, there is one way in and one way out.  In a "normal" interchange, its not.  If the UP give a car to the NS at St Louis, that car may never come back to the UP or it might come back through a different gateway.  It could come back as a load or it could come back as an an empty.  Generally we don't do that on a model railroad (since we by default have a captive fleet.) You own 200 cars, you are always going to see those same 200 cars.

 

Dave Husman

Visit my website :  https://wnbranch.com/

Blog index:  Dave Husman Blog Index

Reply 0
David Husman dave1905

JMRI

I am hesitant to continue this discussion because I don't want people to think I am against JMRI.  I'm not.  If you have read any of my post on operations, I recommend using JMRI if you want computer generated switch lists.  I have tried several different applications for switch lists and it was the only one I got to actually work, its FREE and there is a great support network.

JMRI is not a prototype car management system.  Its a model system.  its not set up to work like a prototype system would.  There is no concept of a "waybill", there is no concept of standing order, activities are tied to tracks rather than events.

But nobody on this forum is trying to run a real railroad, they are running a model railroad.

Dave Husman

Visit my website :  https://wnbranch.com/

Blog index:  Dave Husman Blog Index

Reply 0
Reply