The Gateway to Rocrail
About this tutorial: Alls steps necessary for a successful start with Rocrail will be described. These steps should be completed in the sequence presented as they build on each other.
Rocrail can now control locos on a layout. Tracks, switches and signals are added to the track plan in the next steps:
The layout is now fully controlled by Rocrail. Missing objects for automatic mode and its configuration follow in the last steps:
This page as downloadable PDF: Rocrail Step-by-Step (Version of March 1st, 2017)
| Please note: This tutorial is based on an unaltered first-time installation of Rocrail.
If changes of settings were made prior to reading this instruction success is not guaranteed!
A simple de-installation / re-installation of Rocrail will not help in this case! See footnote1)
This page aims to facilitate the first steps of beginners especially. It will guide the user from software downloading and installation through adding of locomotives and the creation of a track plan to a fully automatic control of the layout. By this it may offer valuable suggestions even to the advanced user.
This tutorial is kept as general as possible, i.e. it should apply equally to all operating systems and command stations. Thus, dialogues and settings pages will, depending on the operating system and personal settings, eventually look slightly different from the figures presented here. The contents remains the same, though.
An explanation of settings of all command stations supported is beyond the scope of this general introduction. The steps necessary to set up your individual command station are found on the wiki page of the respective command station.
This section describes the very basic steps: Downloading, program installation, starting Rocrail for the first time and learning the concept from the demo track-plan.
Rocrail can be downloaded from the download portal (all operating systems).
|If the installer offers the option, Wiki demo plan (not Demo plan) should be selected to be installed.|
OS-dependent information is found here (return to this page after the software was installed and proceed with section 1.3):
Rocview (not Rocrail!) is started from the start menu or the place where the OS holds the program links. Rocview opens and two pop-up dialogues shows up:
The one shown on the left is the Info dialogue. It appears only at the very first start of Rocrail. The terms and conditions have to be accepted and confirmed in order to use the program.
The dialogue on the right is the Donation Dialogue. It will appear every time Rocview is started as long as no donation key was loaded. The window is closed by pressing OK.
Note: Rocrail is developed and maintained entirely on volunteer labour. However, some money is needed to run the project, e.g. for purchasing hardware for testing purposes and to cover other expenses like domain and server hosting.
It is thus left to the user to make a small contribution as a donation if the program should be liked and be used in the long term.
The pages Donation Dialogue and Donating inform about how to make a donation.
After closing the Donation Dialogue Rocview shows the user interface in English language setting. The language can be changed by choosing Language from the View menu and the desired language as shown on the picture below.
Note: The language does not need any change if the desired language is English.
Tip: If this tutorial is not available in the desired language it may be wise to stay with the English user interface for the time being as the following explanations are based on screen-shots from the English GUI.
A dialogue appears which is confirmed by pressing OK.
Rocview has to be closed and restarted again, so the changes can take effect. A fresh, empty Rocview looks like this:
Tip: If a colourful menu is desired the appearance of Rocview can be changed by performing the following steps: From menu File → Rocview Properties… is selected. Option Gray icons (bottom middle column) is deactivated. Rocview is closed and restarted again.
Note: This instruction will show figures of both settings for the time being. There are no functional differences using the one or the other design except for the zoom handling (which will be described later).
In order to get an impression on how Rocview looks like with a plan loaded the demo workspace is opened from the File menu. Opening a workspace starts Rocrail (the server) and connects it to Rocview (the client / graphical user interface) in order to control the layout.
In the background the Rocrail server opens.
Note: On some operating systems (Linux, OSX, …) the server starts as an invisible background process, on other operating systems (Windows, …) the server is visible as a terminal window as described below.
The server window must not be closed during the whole session because the server is the component of Rocrail communicating with the command station. Again, do not attempt to close the server window!
In the standard configuration Rocrail uses the Virtual Command Station. A track-plan with two locomotives, E03 and V200, should appear as shown in the figure below. This virtual layout does not need any connection to a command station or a layout. It is meant as an example to learn about Rocrail's basic functions. The next chapter will explain how to work with the demo-plan.
| The Demo-Plan (plan.xml). The most relevant controls and indicators are described.
*: Track current display is working only if supported by the command station
**: For details regarding the status indicators see Command Station Status
To get a better overview the plan can be enlarged using the zoom.
| Using the Zoom.
With the gray default design first the magnifier symbol is clicked, then the zoom factor is set by selecting the desired value
or by using the slider. If the colourful design is used the zoom value is selected directly from the list in the menu.
The demo-plan is consisting of four blocks, eight sensors (green circles), two switches (points) and the connecting tracks. The direction tracks (green arrows) are for the orientation of the user only. Switches can be switched by clicking on their symbol. The sensors can be activated by clicking them. They are deactivated by a second click.
Note: Sensor simulation is working with the Virtual Command Station. Only a few other Command stations do support sensor simulation. See Supported Command Stations for a list.
On the demo layout each block is equipped with two sensors. Each time the first one, lying in front of the block symbol seen in driving direction is the enter sensor, the second one is called in. The enter sensor informs Rocrail that a locomotive has entered the block, the in sensor is the signal that the loco has now completely moved into the block. It will be explained later on that blocks can also be equipped with only one sensor or with additional sensors.
Loco E03, already present in block 04 (Step 1, see figures below), is started by double clicking on the block symbol of block 04. Now block 01 is marked as destination block and its colour changes to yellow (Step 2). With a click on the sensor symbol in front of the destination block seen in driving direction the enter sensor of block 01 is virtually triggered.
Tip: The names of the plan objects are shown if the mouse is moved over them. The correct sensor is
Block 01 now has changed to blue showing the loco has entered it. At the same time the route to block 03 and block 03 itself have been reserved as the loco can pass block 01 without stop (Step 3). The loco still continues to drive towards the end of the block where the in sensor is placed. To simulate this event the next sensor has to be activated:
fb1b. The block colour changes to red showing the block is now occupied. Block 04 lost its occupied state and appears in white (Step 4).
The sensors now should be deactivated again. In the example E03 continues to block 03 which was a random choice between blocks 02 and 03. The switch is always set according to the destination block. In block 03 (or 02 if this was chosen) the enter and in sensors have to be activated one after another (Steps 5 and 6). After a short stop the loco continues its journey back to block 04. The switch, again, is set to its correct position automatically. In this way the locomotive can, on the virtual layout, be driven around in a circle.
|1. The Demo-Plan||2. Loco started by a double click, destination block 01|
|3. Simulating enter of block 01||4. Simulating in of block 01|
|5. Simulating enter of block 03||6. Simulating in of block 03|
|7. The next destination is block 04|
To end the automatic session auto mode is switched off once the loco is standing in a block.
A workspace contains a configuration file for the Rocrail server and a plan file. In the first for instance the configuration of the command station and the auto mode settings are stored, the latter contains all objects managed by Rocrail, e.g. switches, signals, blocks as well as locomotives.
In order to use an own plan instead of the demo plan, a new workspace is created: Rocview is (re-) started, then from the File menu Open workspace… is selected.
Note: If Rocview is not closed and restarted before opening a workspace a warning message may show up telling that this will shut down the server. This has to be accepted by clicking Yes.
A new dialogue window will open (whose appearance and functions are depending on the relevant operating system). With the help of this dialogue the folder
Rocrail is chosen.
In most cases (may depend on operating system and user rights) the contents of the folder should automatically be shown. The correct folder contains (at least) these three sub-folders:
If the folder does not automatically open, it is found in the user folder, i.e. under "My Files" (older Windows), "Documents" (Windows) or "Home" (Linux) directory.
With the help of this dialogue a new sub-folder is created alongside those mentioned above. This new folder is renamed as appropriate, e.g.
Test. The newly created and renamed folder is then entered (double click on it or the like to show its contents). Afterwards it is selected / opened using the appropriate button of the dialogue.
Rocview automatically writes the necessary files with default values into the new folder. In the background the Rocrail server is started to which Rocview automatically connects.
The window title now reads
Rocrail: New plan. This name can be changed as needed using menu File → Track plan title…. For instance
My Layout could be used. The window title changes to the new name, e.g.
Rocrail: My Layout.
Tip: To facilitate the opening of the workspace in future Rocview properties… can be selected from the File menu, then the default workspace is selected on tab Path of the dialogue.
It is not recommended to check the Use workspace at startup option for the time being as the beginner may want to experiment with different plans in different workspaces.
The command station (CS) and the computer have to be connected as described in the manual of the CS. Contact the manufacturer of the CS in case of any doubts and read the Rocrail Wiki page on the relevant Command Station.
Open Rocrail properties… from the File menu (if the option is not available the own workspace has to be opened beforehand in order to establish the connection to the Rocrail server):
The Controller tab is selected, then the virtual CS (
vcs-1 - virtual) is highlighted and subsequently deleted by pressing Delete:
The desired CS is chosen from the drop-down menu New and added by pressing Add.
Note: Most command stations are not listed directly from drop-down menu. Often the protocol the CS uses to communicate with the computer has to be chosen instead. Which protocol applies to your CS is found on the wiki page of the Command Station.
The new CS is highlighted and configured after pressing Properties. The CS has to be configured following the instructions for this CS found on the wiki.
Example: The owner of a Uhlenbrock Intellibox "Classic" follows the link to Command Stations looks for the manufacturer Uhlenbrock, then clicks on Intellibox. On this page the two possible protocols p50x and LocoNet are explained. In the above dialogue p50x, as an example, is chosen and added. The new CS named
New - p50xis highlighted and the set-up dialogue is opened by pressing Properties. The dialogue itself is explained on the Intellibox page.
Generally at least the interface ID (a new CS gets the ID
NEW) and the baud rate as well as a port, bus or device the CS is connected to have to be specified.
Note: Rocview and Rocrail have to be closed and restarted in order the changes to take effect.
The command station has to be started up according to its manual. Then Rocview is started and the workspace has to be opened. Once Rocview and the server are running track power can be switched on and off using the or symbol of Rocview. It should be verified the command station is responding to the command. Mostly this can be done by watching the track power indicator of the command station.
Tip: Vote for the command station on the forum (requires forum subscription). This helps the developers as they can see how may people are using the particular model or protocol.
In order to control a locomotive via Rocrail the locomotive has to be created in a first step.
From the Tables menu Locomotives is chosen causing the following window to open:
Now the button New is pressed. A locomotive with the name
NEW has been created.
If this option is activated the loco's functions (e.g. lights, sounds, steam etc.) currently active will be restored after a (re-)start of Rocrail. This is often useful as it ensures the function status (on/off) is the same for both the loco and in Rocrail.
Note: If this option is activated now a pop-up window with a warning will occur. This has to be confirmed by pressing OK.
Other options do not have to be considered at the moment. They are explained on page Locomotives: Index.
In the next step the General tab is chosen and the Loco's ID is entered:
NEW is thereby overwritten by an appropriate name. The ID should be short to fit into Rocrail's block symbols. Often the locomotive's class like
BR298 in the example is used as ID.
Note: The loco ID is used as an unique identifier within Rocrail and is thus very important. Two or more locos must not share the same ID.
Some CS (e. g. ECoS) require exactly the same ID in both Rocrail and the CS. See the wiki page on the relevant CS, if applicable.
Note: IDs should not contain white spaces (blanks). Even though possible, blanks may interfere with Rocrail's advanced features like, e.g., XML scripting. Instead of a blank an underscore can be used:
All other fields are optional and do not need any change for the time being. See Locomotives: General for an explanation.
Next the Interface tab is selected and the locomotive's digital address is entered:
The address is entered here. This entry is very important as Rocrail is able to control locos with a valid address only.
Note: Some CS (e. g. ECos) use the ID instead of the address to identify a loco. See the wiki page on the relevant CS, if applicable.
Note: Marklin mfx-decoders - depending on the CS used - may require special settings regarding the address. See the wiki page on the relevant CS, if applicable.
The ID of the command station controlling the locomotive. As generally only one command station is used this field usually remains blank.
Tip: Not selecting an Interface ID makes it easier to help in case a problem is posted on the forum.
Some command stations (Selectrix, …) allow for separated buses for locomotives and accessories, respectively. In case of such a separation the bus used for locomotives has to be entered. Generally this field remains to the default value 0 (zero).
The protocol used to control the loco is chosen from this pull-down menu.
Tip: Generally the protocol is defined within the command station and does not need to be specified here.
Note: It is recommended to chose the appropriate protocol to keep track of the used protocols, though. Some command stations require this information. For details see Locomotives: Protocol.
Note: Marklin mfx-decoders - depending on the CS used - may require special settings regarding the protocol. See the wiki page on the relevant CS, if applicable.
This field remains unchanged generally. See Locomotives: Protocol.
The number of speed steps the decoder supports or is set up to. Values of 14, 28 and 128 are most commonly used.
Note: The number of speed steps of the decoder, of the command station and in Rocrail must match otherwise the loco light (F0) may not work correctly.
These settings are not required for basic operation and should not be altered at the moment. See Options for details.
These settings are not required for basic operation and should not be altered at the moment. See Acceleration for details.
Speed settings are either in percent or km/h (km/h is only a place holder for "distance per hour", thus mph values can be used as well)
Tip: All values can be left unchanged at the moment.
|Important If values should be changed anyway, only the left column (right of V_min, V_Mid etc.) should be used.|
If Percent is activated (default) all velocities (left column!) are in percent of the maximum decoder step. With a decoder offering 28 decoder steps as an example, 100% equals decoder step 28 whereas 50% equals decoder step 14.
Note: V_Max reduces the maximum velocity of the locomotive in percent-mode if values below 100 (percent) are entered.
Note: It is generally not recommended to reduce a locomotive's maximum speed by only V_Max as the number of available decoder steps would be reduced.
Example: A locomotive equipped with a Motorola decoder featuring 14 decoder steps has a maximum velocity of 200 km/h but the maximum velocity of the original engine is 120 km/h. Reducing V_max to 60%, which is decoder step eight, leaves eight speed steps for the 120 km/h range. This will lead to an increase / decrease of 15 km/h (120 km/h : 8) per decoder step. It is thus favourable to adjust the decoder itself to the desired maximum speed if possible leaving V_Max to values around 100%. Decoders without any internal speed setting, however, may be adjusted by decreasing V_Max if necessary.
If km/h is activated velocities are in km/h (mph).
Note: The locomotive's maximum velocity is not influenced by V_Max in km/h mode.
V_Max has to be set to the velocity the model engine gains at the highest decoder step. This value is the basis for Rocrail's calculation of all other velocities. Example: If a model engine was adjusted to 80 km/h maximum speed
80 has to be entered into the field V_max. If, for example, 35 km/h is the desired speed for V_Mid
35 has to be entered there.
Note: A linear speed curve is a prerequisite for a working km/h mode, e.g. a V_Mid of
35indeed yields 35 km/h. If this condition can not be fulfilled it is recommended to use percent mode instead.
The slowest velocity Rocrail uses under certain conditions in auto mode.
Tip: This should be a very low speed of only a few kilometres / miles per hour at which the loco is still running smooth. Even with slow deceleration the loco should be able to stop from this speed within a few centimetres (breaking distance depends on the used scale).
A medium velocity Rocrail uses under certain conditions in auto mode.
Tip: This speed is used, e.g., if a train approaches a red signal or if the train is passing switches in turnout position.
The cruise speed Rocrail uses under certain conditions in auto mode. This speed is 80% of V_Max by default (value 0). If a value other than 0 (zero) is entered this speed will be used.
The maximum velocity of the locomotive. See above for different meanings in percent and km/h modes, respectively.
Same as V_Min, V_Mid, V_Cru and V_Max but for reverse direction. These options are commonly used for locomotives featuring different maximum velocities for forwards and backwards driving, respectively.
Tip: All values can be left at 0 (zero) for the time being. The velocities specified above will be used for both directions in this case.
As no further settings on the remaining tabs are necessary for basic operation, creating of the locomotive is completed by pressing Apply.
| Attention : If on tab Details the engine type is set the following is very important:
Rocrail takes care that no electric engine is running on tracks without overhead contact line in automatic mode.
Therefore in all blocks which should allow electric locomotives block option Electrified has to be enabled. Otherwise the loco will neither start or run in automatic mode.
If the General tab is selected again the new loco is now listed with its correct name. If required, further locomotives can be created following the above steps.
Tip: See also Speeds in Automatic Mode.
If locomotives were created in a first step they are displayed on the loco panel on the left.
To control a loco the respective row on the panel is highlighted by clicking on it. The loco's speed is set by dragging the slider left of the clock to the desired position. The running direction can the changed by clicking the
> button which then changes to
<. The functions can be controlled by the buttons F0 to F4. Further function buttons are available after pressing FG+ / FG- (Function Group) buttons, respectively. If four or less functions are defined the FG buttons show no effect.
The title bar of the throttle window shows the ID of the controlled loco. In case another loco should be controlled, a single click on the image (above F1) opens a new window Mobile selection. The loco to be controlled is chosen from list, then the image is clicked again.
The running direction can be changed by pressing the
Stop is used to decelerate the loco to a hold whilst B R E A K is an Emergency Break (if supported by the command station) or a Power Off.
A throttle window allows for direct access to the functions F0 to F14. Further functions, if any, are visible after pressing FG.
Tip: Multiple throttles controlling multiple locos can be displayed at the same time. Note that a new throttle window is placed above the last active one and has thus to be moved aside.
Tip: The buttons with the Latin numbers (I, II, III, IIII) set the loco speed to one of the programmed velocities V_Min (I), V_Mid (II), V_Cru (III) and V_Max (IIII), respectively.
The track-plan of Rocrail is used for visualisation and graphical switching of, for example, switches and signals. Loco speed commands and automatic control of the layout can, however, take place even without a track-plan via the connection of blocks through routes.
The track-plan is not to scale and thus can and should be abstracted or symbolic. Rocrail's track-plan is lifelike and allows for the representation of large layouts within the limited space of a display.
Note: Rocrail is not a track-planning program! Every object in the track plan will use resources from the underlying Operating System. Objects without any functionality for controlling the layout should be avoided for optimal performance.
A new track plan was already added automatically when the workspace was created. The plan has the title
Level 0. The title can be changed as needed, for instance to
Main Line or the name of a location. This is done by renaming the title using menu Track plan → Panel properties….
Tip: If more lines, locations etc. shall be separated to show up on different track panels new panels can be added using Track Plan → Add track panel…. Each should be named as needed and has to get different level. Beginners, however, should start with a simple track plan using only one level.
"Level" is not meant physically, i.e. levels can represent different sections of the layout, regardless whether they are on different heights or whether they are arranged side by side.
Note: A level can not be shared by two or more panels. If the level-number is already in use no new panel will open.
Tip: For a better overview choose Show grid from the View menu.
In order to be able to edit the plan Edit Panel from the Track Plan menu has to be activated. A new dialogue opens allowing to place items by "drag & drop":
|Add item dialogue|| A single click on an item reveals its name
in the bottom line. Here a right turnout
The dialogue can be closed at any time if it is not needed and be reopened from the Track plan menu (Add item…). It is used for adding items to the plan:
Note: For a trial only items of the tracks type should be used as most other elements start queries which will be explained in the next chapter.
Using the above dialogue, at first, from the left column an appropriate object type (track, switch, signal etc.) is chosen. Then the desired item is clicked with the left mouse button and while the mouse button is kept pressed the item is dragged to the desired position and then dropped by releasing the mouse button. If the newly placed item does not have the wanted orientation it can be rotated (see below).
As an alternative, adding items can also be done by means of the context menu:
The right mouse button is clicked while the pointer is at the position where the new element should be placed. The desired item is then chosen from the menu.
Every item can be rotated once it was placed on the plan. The fastest way to rotate an active item is using the
Alt+R hotkey. A newly placed item is active by default. Other elemenst have to be left clicked first in order to set them activate (only one at a time).
As an alternative, rotating items can also be performed by means of the context menu:
Clicking the element with the right mouse button opens a menu from which Orientation → Rotate is chosen. This action has to be repeated until the item has the desired orientation.
Items can be moved by clicking them and holding the left mouse button. With the left mouse button still pressed the item can be moved to the desired position and placed there by releasing the button.
The experienced user may also move several objects at once or even an area of the track plan as described on page Select.
The item is selected by clicking it with the right mouse button and choosing select from the menu. In the dialogue copy is activated and the dialogue is closed by pressing OK. The copied item is placed right above the original one and thus has to be moved in order to see both the original and the copy.
Items are removed from the track-plan by clicking them with the right mouse button and choosing Delete from the menu.
The elements described in this chapter are necessary for basic train operations. With tracks, switches and signals trains can be operated manually already. Additional elements required for Rocrail's Auto Mode will be described in the next chapter.
In this tutorial a small layout in the style of the demo layout is designed as an example.
The small example should start with a curved track in top left corner: In the left column of the Add item dialogue (see chapter 5.2) Track is selected then the curved track (second item in the right column) is moved to the desired position. (Step 1 in figures below).
As the orientation of the curve is not correct it is rotated by once using the hotkey
Alt+R (or the item is clicked with the right mouse button and orientation is changed by choosing Orientation → Rotate from the context menu) (Step 2).
Now 12 straight tracks should be added right from the curved track. The first track is placed as explained above (Step 3).
As the last used element was a straight horizontal track, the remaining 11 tracks can be added by simply clicking with the left mouse button (Step 4).
Thereafter three straight tracks are plotted below the curve (Step 5).
Each of those three tracks has to be rotated as shown above (Step 6).
Tip: If the first track is rotated right after it was placed the remaining two tracks can each be added by a simple left click. Rocrail remembers the last orientation.
Below these tracks a curved track is added as described in step 2 (Step 7).
This track has to be rotated, too (Step 8).
With this knowledge base the track circle can be completed now by adding further straight and curved tracks (Step 9).
As a small exercise each central vertical straight track should now be removed. Clicking on the element with the right button, then choosing Delete from the menu is the only action to be performed (Step 10).
The gaps should be closed with direction tracks displaying the wanted driving direction of the trains. The tracks have to be rotated accordingly. (Step 11).
Note: The direction tracks are for the users orientation only. They have no influence on the running direction of a manually driven train. Direction tracks can be used to influence the automated generation of routes, which will be explained later.
The plan of an oval-shaped track circle has been created and finished with the last step. It will be the basis for the extensions following in the next paragraphs.
After the oval shaped track was created in the last paragraph it is now extended with a parallel track and the required switches.
At first two tracks are deleted from the track plan and a parallel track is drawn as shown in the figure below (Step 12).
The left gap is filled with a right switch which is selected from the Add item dialogue: At first, from the left column Switch has to be selected and in a second step the right switch (see screenshot in chapter 5.2) is placed in the plan . The following dialogue asks for the ID of the switch which in this example is to be
Sw01 (Step 13).
In the same way the right gap is filled with a Left Switch named
Sw02. In addition two curves have to be added and rotated to the correct positions. This will complete the extended demo plan for the moment (Step 14).
Two switches have been added in the last paragraph. To be able to operate them, they have to be configured as a next step. A right click on the left switch (
Sw01) opens the context menu from which Properties is chosen. The following dialogue opens:
Since the ID is already set nothing has to be changed on this tab for the time being. Pressing Help opens the wiki page describing all options. The Position tab is skipped and tab Interface is selected:
The following important options are available:
The Interface ID specifies the CS controlling the particular switch. The name of the CS (see chapter 2.2) is entered here.
Tip: As in general only one CS is used, the Interface ID may remain blank
Note: If the field Interface ID remains blank, the first (topmost) CS from the list (see again chapter 2.2) is chosen in case of more than one CS
With CS featuring more than one bus (e. g. Selectrix) the correct bus controlling accessories has to be specified here. See also Switches: Interface.
Tip: In general the bus number remains to 0 (zero).
With some CS the protocol used has to be chosen from the drop-down list. See Switches: Interface for details.
Tip: Generally it is not necessary to chose the protocol as it is defined by the CS. The protocol field can thus remain to default.
These two fields contain the most important information necessary to control a switch. The address of the decoder and the output (port) of the decoder the switch is connected to have to be entered in these fields.
In the example switch
Sw01 will get the switch address 1 (see figure above).
Tip: With many CS it is possible to use PADA. In this case Address remains to 0 (zero) and Port is set to address of the switch (see comparison table below)
Note: Some CS do not support PADA
Note: There are additional kinds of addressing which are described on page Addressing.
Addressing Comparison Table:
In case the position of the switch does not match the position displayed in Rocview the box Invert can be checked.
In most cases no further action in required to set up a switch. Further information is available from the wiki by pressing Help.
The configuration of the first switch is thus completed and can be confirmed by pressing Apply. After selecting tab Index both switches are listed. Switch
Sw02 is highlighted as shown below, afterwards again the tab Interface is selected.
Sw02 in the example shall get the address 2 (Address=1 + Port=2, or Address=0 + Port=2).
Note: It remains to the reader which address to choose. Of course addresses used on the own layout allowing to test the result can and should be used.
After finishing the set-up of the second switch the changes are confirmed by pressing Apply and subsequently the dialogue is closed by pressing OK.
To test switches the CS has to be powered up and the track power has to be switched on. With a click on each switch symbol on the plan displayed in Rocview the position of the switches change. The position of a switch on the track plan must match the position of the respective switch on the layout. If the positions do not match the Invert option of the respective switch has to be checked or unchecked (see above chapter).
Tip: To prevent the switch symbols from being moved accidentally while clicking on them choose Operate from the Track plan menu.
If the switches on the layout do not switch positions at all it should be checked whether the track power has been turned on and if the CS can be controlled trough Rocview. If the switches can be controlled via the CS directly but not using Rocrail the address(es) (and possibly Interface IDs and Protocols) have to be checked again.
If the configuration of the switches was successful on the small layout trains can be driven and directed using the switches. To achieve a more realistic train operation signals are added in the next chapter.
Signals generally are very important in railroading, but for the operation with Rocrail they are not required. Therefore, is not mandatory to set them up and they can also be supplemented at a later time. If no signals are desired, this part of the manual can be skipped (continue chapter 7.0).
In this chapter the example layout of Step 14 in the previous chapter is extended by three signals.
From the menu Track plan the option Edit panel has to be activated again, if applicable. Afterwards three tracks are deleted from the plan as depicted in the figure below (Step 15).
Right clicking on the upper gap in the track circle opens the context menu from which Signal is chosen. A dialogue opens asking for the Signal ID. The signal shall receive the ID
S01. The gap below is now filled with a signal named
S02 and the remaining gap is closed by adding signal
S03. The signals should be rotated to fit the driving direction as shown below (Step 16).
Like the switches, signals have to be configured prior to use.
In a first step the signal on the top right position is right clicked and Properties is chosen from the menu. The following dialogue opens:
No changes are necessary on the General tab for the time being.
In the example it is assumed that a simple two-aspects semaphore signal driven by magnetic coils is used. This type of signal is usually connected to the same type of decoder as used for switches.
Note: There are many different ways to connect a signal. Some signals are connected to the same kind of decoder used for switches, others need permanent current instead of pulses and finally there are special signal decoders available. Signal decoders especially differ very much in design. Thus Rocrail offers many different ways to configure a signal. In this example the simplest case of a magnetic coil driven semaphore signal is used as this is considered to be the most common type of signal.
Note: Further information on signal configuration is found on the page Signals and its sub-pages.
Now tab Details is selected. The Signal type is set to Semaphore signal and Aspects is set to 2 as shown in the figure below.
All other options remain unchanged and the Interface tab is selected.
Interface ID and Bus are configured in the same way as described for switches. The Protocol is chosen according to the decoder in use. The address of the signal is set to 3 (addresses 1 and 2 on the example layout are already used by the two switches). Addressing is carried out for output RED setting the (decoder) address to 1 and the Port to 3. Alternatively, PADA can be used: Address=0 and Port=3. In addition, the option Switch is activated assuming the signal is connected to a simple decoder used for switches. Often - if the signal aspects are interchanged - option Invert has to be activated, too.
Finally the changes are confirmed by pressing Apply and the Index tab is selected.
The index is showing all three signals available. Signal 'S02' is highlighted and tab Details is selected. The second signal could be configured in the same way as the first one.
However, as an exercise, signal
S02 should be configured using patterns.
On tab Details the signal is again configured as a two aspects semaphore signal. The pattern is set according to the figure above.
Note: If the signal aspects are found to be interchanged in line Green the pattern has to be changed from R1 to G1 and in line RED the pattern has to be changed from G1 to R1.
Next tab Interface is selected and the signal address 4 is entered (as shown in the figure or, alternatively, in PADA notation). Finally use patterns has to be activated.
After pressing Apply tab Index is selected, signal
S03 is highlighted and again tab Details selected.
The third signal is to be a three aspects semaphore signal. Therefore on tab Details only Semaphore Signal has to be selected.
After selecting tab Interface the address is entered: The three aspects signal will need two addresses, one for red / green and the other one for the yellow aspect. The signal in this example will receive the addresses 5 and 6. In the figure below they have been entered in PADA notation.
It has to be noted that the gates (red / green) have to be set according to the figure, too.
Note: If the signal aspects are found to be interchanged the gates have to be changed from red to green and green to red.
S03 could be configured using patterns as well. These alternative settings are shown in the figures below.
If all settings are correct Apply is pressed to confirm the changes and the dialogue is closed by pressing OK. The symbolic representations of the signals on the track plan have changed due to the settings made before: Signals
S02 are shown as two-aspects signals while
S03 is showing three aspects (Step 17).
The configuration of the signals is completed and thereby all elements for the manual mode are readily configured. The sample layout therefore allows driving of two alternating trains leaving it to the user to control signals and switches and to stop the trains in time. The elements missing for automatic operation are added successively in the next chapter.
With the present sample plan manual operation is possible while some essential elements for Automatic Mode are still missing. This chapter will explain how to add and configure the plan elements necessary in Automatic Mode.
Blocks, in plain language, are controlled sections where trains can stop. Blocks usually consist of sensor sections or sensor contacts informing the software about the occupancy state, tracks and signals. Rocrail uses a special block symbol to mark a block. The symbol, in addition, can show different states of the respective block, e. g. occupancy and the loco name. The block symbols, however, do not represent the physical length of a block.
Where blocks should be placed on the layout first of all depends on where trains should stop. On the sample layout this is apparent from the position of the signals already placed.
The track plan is modified by removing three times four tracks as shown in the figure below (Step 18):
The first block is placed by right clicking the topmost gap in the plan and selecting Block from the context menu. A dialogue asking for the Block-ID will open. The ID should be
01 for the first block. The dialogue is closed by pressing OK. If applicable, the block symbol can be positioned to fit into the gap.
Tip: If the right click is performed in the very left corner of each gap, the symbol will be placed correctly.
In the same manner the gap below of block
01 is filled with block
02 and block
03 in placed to fit into the remaining gap (Step 19).
Blocks do not need any complex configuration at the moment. All details are described on page Blocks and its sub-pages.
Signals, however, can be associated with the blocks now: Block 01 is right clicked and Properties is selected from the context menu. In the opening dialogue tab Signals is selected. Because the signal of block 01 is located at the
- side of the block signal
S01 is selected from the drop-down field Signal in section Minus(-) side signals. The changes are saved by pressing apply.
In the same way block 02 is configured: From tab Index block 02 is selected, subsequently on tab Signals signal
S02 is selected from the drop-down menu under Minus(-) side signals.
The changes are saved by pressing apply and from tab Index block 03 is selected. Again on tab Signals signal
S03 is associated with the block. As the signal of block 03 is placed at the
+ side of the block this time the signal has to be selected from the list of Plus(+) side signals.
Finally the last changes are saved by again pressing apply and the dialogue is closed with OK.
Tip: The analyser is able to associate signals with blocks automatically. If this is wanted from the menu File → Rocrail properties… → tab Analyser option Assign signals to blocks has to be activated. Rocrail has to be closed and restarted for this change to take effect. The signals are assigned to the blocks once the analysing is started as described in chapter 7.3.1.
In this section sensors are added to the plan and subsequently are configured.
All blocks will be equipped with two sensors each. These sensors have the functions enter and in, respectively. Two sensors per block represent the standard configuration of Rocrail: One sensor at the beginning of a block (enter) telling Rocrail the train has arrived the block and one sensor at the end of the block (in) telling Rocrail the train has completely moved into the block. The train will be slowed down when it reaches enter if the train has to stop in the particular block. Reaching in the train will be decelerated to a halt if the train has to stop. The in-sensor also triggers clearing of the previous block.
All possible sensor events and their usage are described in detail on page Sensors and Blocks.
The track plan is modified by removing six tracks from the layout as shown in the figure below (Step 20).
After right clicking on the gap left of block 01 Sensor is selected from the context menu. In the prompt the ID of the sensor has to be entered. The ID of the first sensor is to be
The remaining sensors are added in the same manner:
The modified track-plan should look like this (Step 21):
Generally sensors are configured by simply assigning addresses to them. To assign addresses after a right click on sensor
01+ Properties is selected from the menu. Dialogue Sensors, tab General will open.
Nothing is changed on this tab for the time being. The options are described on page Sensors: General. Next tab Interface is selected.
The Interface ID is configured in the same way as for switches. The address is changed to 1 for sensor
After Apply was pressed tab Index is selected.
01- is highlighted as shown in the figure above, tab Interface is selected and the address is changed to 2 for this sensor. After pressing Apply the next sensor is selected from the Index-tab and the address is again entered on tab Interface.
The sensors get the addresses 1, 2, 3, 4, 5 and 6 in the order of their appearance in the list.
Tip: A faster way to assign the addresses is to click the arrowhead button pointing to the right immediately after typing in the address of the first sensor:
This will call the next sensor in list showing again tab Interface where the next address is typed in and so on. When the last sensor was configured, after pressing Apply, the result can be viewed and be verified on tab Index.
After the configuration of the last sensor Apply is pressed and the dialogue is closed by clicking OK.
In the next section blocks, sensors and routes are merged.
Routes are interconnecting the blocks on a layout and define which way(s) a train can use.
Note: The track symbols apparently connecting the blocks on the layout are for the user's orientation only! Without further steps Rocrail does not evaluate these track connections. The interconnection of the blocks is solely made by routes.
Creating routes is very easy using the Analyser. It will find any possible route and create it automatically. This chapter describes how the analyser is used, the next chapter will briefly describe how routes can be created by hand.
Analyse → Analyse is selected from the File-menu to run the analyser. In the server message window the creation of four routes will be confirmed.
Rocrail has to be closed and restarted after running the analyser.
Four routes have been generated because (only) these four routes are possible if the plan is used in running direction (clockwise as indicated by the direction tracks): Block 01 (minus side) to block 03 (minus side), block 02 (-) to block 03 (-), 03 (+) to 01 (+) and 03 (+) to 02 (+).
Note: The analyser uses the direction tracks to determine the wanted running direction. Without direction tracks another four routes for the opposite running direction will be generated, too.
Note: In order to achieve proper results all elements must be connected without any space in between. There must be no double elements at one plan-coordinate (no overlapping allowed).
The routes generated by the analyser can be viewed after selecting Routes… from the Tables-menu:
The four routes described above are listed on the Index-tab. If, for instance, the first route (
[01-]-[03-]) is highlighted and subsequently the Switches-tab is selected, the automatically added switch
Sw02 is found in the list.
The analyser, in addition, added route IDs to each track. Route IDs are for showing locked routes using the route representation in automatic mode. The route IDs can be viewed after right clicking on a track symbol and selecting Properties… from the menu.
If the analyser was configured according to the tip in chapter 7.1.2 additionally it created the signal to block associations.
At the moment there is no need to care about those automatically generated entries but they may help to understand the underlying concept.
Note: The Analyser was developed as a helpful tool for new users and small layouts but will not substitute creating or editing routes, signal assignments etc. by hand in every case. With complex layouts the Analyser may fail or it may not generate all routes wanted. However, the routes and other entries generated by the Analyser can always serve as a blueprint for own modifications.
A more detailed description of the analyser is found here.
This section describes how routes are created by hand. In most cases the analyser can be used to create routes but sometimes it is good to know how to do this manually. This section can be skipped if not of interest (continue 7.3.3 below).
An existing route created be the analyser will be used to explain the course of action.
First, Tables → Routes is selected from the menu. The Index tab is shown. The first route in the list (
autogen-[01-]-[03-]) is highlighted (instead, if a new route was to be created, the NEW button had to be clicked). Now tab General is selected.
For a newly created route first of all the ID had to entered. Here, the ID was created by the analyser which is indicated by the
Note: Do not use
autogen-as a prefix for manually created routes.
For a manually created route the ID could be simply
01-_to_03- or something else which is found to be self explaining.
Very important are the lines From block and To block, respectively. The question is where (which block and block side) does the route start and where does it end.
|Note that a route always connects one block's exit side to the very next block's enter side in the From block → To block direction only and with no other blocks in between.|
In this case the route starts from the minus side of block 01. Thus, from the drop down list in line From block 01 (block 01) has to be chosen. Then the block side is selected: Either plus or minus. The check box
+ (plus) at the end of the line is not checked which means
The route ends at block 03, minus side: From the drop down list To block 03 (block 03) is chosen and the checkbox
+ is again not activated.
All other options are of minor importance and can be skipped (they have not been altered by the analyser, too). As usual, the Help button opens the wiki page with descriptions of all options available.
Tab Speed is also not important at the moment. The next thing to consider is which switches are involved in the route, if any. In the example case switch Sw02 is located between blocks 01 and 03 seen in driving direction. It has to be set to the correct position if the route is used. The switch commands are configured on tab Commands:
On this tab, after the first and only entry Sw02 was highlighted, it is shown what the analyser did: It selected
Sw02,sw and activated Command Straight.
If this was to do by hand, the ID of the relevant switch had to be chosen from the list, then the appropriate command (Straight or Thrown for simple switches) had to be selected and last the Add button had to be pressed. If there were more switches in the route, these steps had to be repeated for all these switches.
All other options and tabs are of minor importance and the dialogue can be closed by clicking Cancel. Of course, if a new route was created first the changes are saved by pressing Apply and, if no other routes should be created, the dialogue is afterwards closed by pressing OK.
This ends the small excursus on how to create a route manually.
Routes, in combination with Sensors, are configured in the block properties of each block.
After selecting Blocks… from the Tables-menu all three blocks of the sample layout are listed:
01 is highlighted as shown above and subsequently the Routes-tab is selected:
Three routes are listed: The general routes
all enter + and
all enter - and the specific route
[03+]-[01+] = from "03" to "01". The specific route tells there is only one route heading towards block 01 and this route is heading towards the + side of the block.
+ side means a train will enter the block at the
+ side and exit at the
- side. For direction
all enter + is used. In conclusion,
all enter - is used for direction
+. The table below summarises the correlation between running direction and routes.
Running Direction and Routes:
|+||-||all enter +|
|-||+||all enter -|
As the running direction for this block is
all enter + route has to be highlighted:
Sensors coming from block all (+ enter): there are several drop-down fields. It has to be specified which sensors apply to a train entering the block using route
all enter +. In block 01 these are the sensors
01-. These two are selected from the two topmost drop-down fields below the word ID (see figure above). Finally an event has to be assigned to each sensor: enter is assigned to sensor
01+ and in is assigned to sensor
01-, because a running train will trigger
01+ first (enter) and
01- will be the second sensor triggered (in). The changes are confirmed by pressing Apply.
To configure block 02 the Index-tab is selected, 02 is highlighted, then the Routes-tab is selected again. Alternatively, the arrowhead button can be used again as described in the tip concerning the addressing of sensors.
Note: As long as no route was selected sensors and events of the route edited previously may be displayed. It has therefore to be made sure a route was selected from the list prior to editing sensors and events.
Following the table Running Direction and Routes route
all enter + has to be used for this block, too and is thus selected. The two sensors in block 02 are added in the same way as shown for block 01: The sensors are
02+ (event: enter) and
02- (event: in):
After the changes were confirmed by pressing Apply block 03 is selected from the Index-tab and the sensors and events for block 03 are edited on the Routes-tab:
Four routes are presented: The general routes
all enter + and
all enter - and the two specific routes, one coming from block 01 and the other one coming from block 02. Both specific routes are heading towards the
- side of the block.
Following again table Running Direction and Routes this time route
all enter - has to be used because a train will enter at the
- side of the block. That is, route
all enter - has to be selected.
The sensors for this route are
03- with event enter and
03+ with event in.
After all settings are done Apply is pressed and the dialogue is closed by pressing OK.
Tip: The analyser in many cases can configure routes automatically. Prior to this in the dialogue available from menu File → Rocrail properties… → tab Analyser option Assign feedbacks to blocks has to be selected and Rocrail has to be closed and restarted.
Rocrail is now ready to run trains in automatic mode.
In automatic mode trains are autonomously controlled and conducted by Rocrail. It is thereby assured that switches and signals are set correctly and occupied routes and blocks are locked for further trains.
Rocrail offers two alternative methods in automatic mode:
Tip: Both methods may be used in parallel: Some trains follow their schedules while others are running from block to block without schedule.
Running in Block-to-Block mode is immediately possible on the sample layout: At first, track power has to be switched on, then automatic mode is activated by either pressing the known symbol or using the menu Automatic → Auto mode.
If there is no loco present in a block the loco is placed now by either:
The sample loco from chapter 4.0 stands in block 01, represented by block colour red and the loco ID shown inside the block symbol (Step 22).
If the direction arrow in the block does not point to the direction shown in the figure above the loco ID on the loco panel has to be right clicked and Swap block enter side has to be selected from the menu.
Note: If the arrow is pointing to the left Rocrail will try to start the loco in counter clockwise direction which is, due to the missing route (block 01
+to block 03
+), not possible on the sample layout. When a loco is set into a block it therefore has to made sure the running direction is the desired one.
Excursus: Running direction means the direction of movement in the block as illustrated in chapter 7.3, creating the routes.
The running direction of a loco could still be reverse (tender ahead for steam engines) while the movement in the block is forward (from
If a loco was placed tender ahead (i. e. pointing to the right in the example) the placing (see also picture above) had to be swapped, too in order the loco to receive reverse commands to exit the block to the right.
Taken together, direction or running direction refers to the direction of movement in a block or on a route while placing refers to the physical orientation of a loco.
Direction and placing is a rather complex issue. For the moment it is sufficient to ensure the loco's physical orientation (placing) is correct, the loco is indeed running forwards receiving forwards commands and the arrow in the block is pointing to the wanted direction.
In this mode the loco or train is given a destination block prior to starting it. The destination block can be either the next block or a distant block. However, it has to be ensured the block can be accessed using one ore more routes.
The following applies:
To see the loco running in automatic mode for the first time it is simply dragged to block 03 (Step 23) which will cause it to start immediately (Step 24).
|Step 23: Dragging and Dropping Loco to Block 03||Step24: Loco Heading To The Now Reserved (Yellow) Block 03|
A loco, alternatively, can be started from the context menu of a block: A right click is performed on the block symbol of block 01 and Set destination… is selected:
A further dialogue will open from which the desired destination block is selected and confirmed by pressing OK:
In the last step the loco has to be started from the context menu of block 01:
Running without destination a loco is driving to the next free block available, subsequently another free block is searched for. The choice of destination blocks, in basic settings, depends on block occupations only (an occupied block is not a valid destination). If multiple free blocks can be accessed the destination is set by random choice.
In the forum this mode is often referred to as "Aquarium Mode" because trains move somewhat unpredictable like fish in an aquarium.
To run a loco without destination either Start locomotive is selected from the context menu of the block (see figure in the above section, if necessary) or Start all locs is selected from the Automatic menu or a double click is performed on the block symbol. Prior to that the steps mentioned in section 8.1 have to carried out, if applicable.
To stop automatic mode see 8.3.
The automatic choice of destination blocks can be manipulated by means of further settings in Rocrail. E. g. certain trains will - if possible - use dedicated routes only or some routes are locked for certain types of trains or platforms in stations are used by dedicated trains only. These settings are described in detail on page Block Types and Train Types.
A schedule is a list containing all blocks which should be approached consecutively. The routes defined in chapter 7.3 are used to direct trains from one block to the other. Thus, accurate running in block-to-block mode (section 8.1) is a prerequisite and should always be tested first.
If a schedule is started the loco should reside in the first block of the schedule, if possible.
Note: If the loco resides in a block not belonging to the schedule Rocrail tries to move the loco to the first block in block-to-block mode and subsequently executes the schedule.
Note: If the loco resides in block belonging to the schedule which is not the first block all previous blocks are skipped and the schedule is executed starting with the current block.
The following describes the very basic steps only. See the wiki page on Schedules and its sub pages for more details.
From the Tables menu Schedules… is selected. The dialogue Schedules will open:
After pressing New a new schedule with the name
NEW is displayed:
Next, tab Destinations is selected and the desired name of the schedule is entered into the field ID:
After changing the name the starting block of the schedule is selected from the drop-down field Block: 01 (block 01) is selected and subsequently Add is pressed. Block 03 and again block 01 are added in the same way. This will result in a schedule starting in block 01, running via block 03 and ending in block 01.
The changes are confirmed by pressing Apply and the dialogue is closed by pressing OK.
In the loco settings, tab Details it has to be checked that use schedule departure time is not activated. Then, the steps described in section 8.1 have to be followed, if applicable.
From the context menu of block 01 Go with tour or schedule → My_Schedule is selected as shown below:
The loco will start in block 01, will proceed across block 03 and stop in block 01.
Note: In contrast with the block-to-block mode block 01 is the final destination: The loco will not go any further because the schedule ends in block 01.
To rerun the schedule the loco has to be started again from the context menu of the block.
Note: Schedules can be repeated using the Schedule Options described in section 8.2.5 below
A location or locality consists of several blocks representing a destination site, e. g. all tracks belonging to a railway station. On the sample layout blocks 01 and 02 may represent the two tracks of a station.
The advantage of locations is trains can choose a destination block freely within the location, e. g. a train can use block 02 if block 01 is already occupied by another train.
From the Tables menu Locations is selected. The dialogue Location opens. By pressing New a location named
NEW is created:
NEW in the name field is overwritten by an appropriate name. In the example the location is named
Station. The name is changed by pressing modify:
By selecting blocks from the drop-down field Blocks and pressing Add blocks are added to the location. In this case blocks 01 and 02 are added as shown below. The order of blocks in the list is important because blocks are selected in the order of appearance by Rocrail. With the settings in the figure below this results in block 01 having priority over block 02: The train will always enter block 01 unless it is occupied. Only in the latter case the train will enter block 02.
As usual changes are confirmed by pressing Apply and the dialogue is closed by pressing OK.
The schedule created in section 8.2.1 has to be modified (the schedule is opened from the menu Tables → Schedules…, schedule My_Schedule is selected from the index tab and finally tab Destinations is selected):
The first entry (line 1) in the list of destinations is highlighted. From the drop-down field Locality the Station is selected and from the second drop-down field Block the blank field is selected. These changes are executed by pressing modify. In exactly the same way the third entry is modified.
The loco can now be started with the modified schedule.
Excursus: As stated above the train will always run block 01 → block 03 → block 01. To see the effect of locations the loco could be moved to block 03 in block-to-block mode using drag and drop. Afterwards from the context menu of block 01 Put out of operation is selected. Block 01 is now closed (grey). If the loco is started with the schedule from the context menu of block 03 it will enter block 02 and always run block 02 → block 03 → block 02 until block 01 is Put into operation from its context menu again.
Departure times can be specified to get realistic railway time tables. Three alternatives are available:
Important: To use timed schedules in the loco settings, tab Details use schedule departure time must be activated.
Example: A schedule using relative times could look like this:
If this schedule is started the loco will wait in the starting block 01. It will depart one minute after the schedule was started and will again wait in block 03. Two minutes after the schedule was started the loco departs from block 03.
The number of times the schedule is repeated.
This function allows for delaying the in-event for a specified number of milliseconds in each location or block of the schedule. This Entry has priority over the Event timers of blocks.
The function is helpful e. g. with shunting actions controlled by schedules to achieve accurate positioning of wagons (cars) or to fine-tune the stopping point of a train.
A follow-up schedule can be specified which will be executed after the last destination of the schedule was reached (and after the repetitions - see Recycle above - were carried out.
The follow-up schedule may be a different or - to achieve an endless repetition - the same schedule:
To stop the automatic mode one of the following can be done:
These methods prepare Rocrail and the layout for the next session.
Tip: To exit Rocrail either ctrl-D or the "close window" button (depending on the operating system, e.g. "X" in the top right corner on Windows) can be used to close the window and both Rocview and Rocrail.
There is no need to click Save as the layout is saved automatically by exiting Rocrail.
After locomotives were created as well as a track plan equipped with switches and signals, all elements necessary in automatic mode were added and schedules have been created Rocrail is readily configured and can control a layout in automatic mode.
Often, however, only the very basic settings were carried out in order to come to results quickly. Many of these settings can be customised and improved.
Locomotives, for example, feature a lot of options regarding description, naming, date of purchase etc. Especially the length (of the train) can be specified allowing Rocrail to disregard blocks too short for the train. A maintenance interval specified in running hours will automatically remind that the loco needs to be serviced. There are many other details like, for example, the train type which allows Rocrail to distinguish between suitable and alternative routes.
Block properties can be adjusted to either trains waiting a specified time or, if possible, not stopping at all. Blocks further on can be locked for specific trains or types of trains using permissions.
Signals may be set to manual operation requiring the user to explicitly give clearance.
Outputs can be used to control lights, uncoupling tracks, track power for sidings and many more.
Actions can be used to automate activities triggered by events or on a time controlled basis.
The Automatic Mode can be fine-tuned for complex layouts. Namely Commuter Trains, Critical Sections, Signal Aspects and Second Next Block as well as Block Types and Train Types, among many others, may be of importance.
Have fun using Rocrail!