How to setup an automatic Fiddle Yard

This small tutorial shows the necessary steps to configure a virtual example of automatic Fiddle Yard in Rocrail.

The hardware

The hardware to be controlled should consist of:

  1. An electrically motorised sliding table with 4 parallel tracks in this example.
  2. An electronic device able to control the table. This device would need to know (a) the required table position, and it will inform (b) whether it has been already reached or not (still in movement), and ( c ) in which part of the required track is the train that is entering or leaving it.

Optionally it may also indicate (d) at what position is the table has been positioned.

The gliding table

Drawer sliders may constitute a good solution to let the table move. A gear rack & pinion combination may transmit well enough the torque of a small electric stepper motor. Search the internet and find your solution.

The electronic controller

I think Peter Giling's GCA145 will do the trick quite well. Initial table setup will require his manual controlling device GCA146. And the orders and feedback from & to Rocrail may be transmitted trough many methods, including Loconet. A simple signal decoder may also be used, which will read DCC signals from the rails to get the table required position (a). Feedback may be done from GCA145 outputs trough a S88 bus for instance.
On this basis let's now configure Rocrail. Please see Rocrail wiki pages for the details not explained here.

Rocrail layout

On the right there is our little example, consisting in a small fiddle yard of four tracks and a loop. Draw the plan in 'Edit plan' mode as usual, and let's configure the required sensors. Only the name and address are necessary for this example:


will indicate if the selection table has finished its movement to the required position. It should also indicate that the selection table is already at the required position.


in our example these two different sensors will be shared among the four blocks representing the four tracks of the fiddle yard, and will indicate Rocrail when to trigger the 'enter' (decrease speed) & 'in' (stop) events for those blocks. Optionally it's possible to have two sensors for each track, but this is more expensive.

S00+ & S00-

standard sensors to be associated with BL00 block.

b0 & b1

these sensors constitute the optional feedback (d) from the table controller, indicating at which position is the table at a certain moment. Both together form a binary coded number, according to the well-known table:

TRACK b0 b1

Please create b2 & b3 also.

Now the blocks

Let's create the six blocks on the picture above:

B00 to B03

standard blocks; they will be the fiddle yard tracks. Just the name is essential.
Don't configure any routes on them and leave the default options like Rocrail sets them. In my version they include 'Wait' option as activated.


a standard block.
Please assign here the sensors S00+ & S00- to 'all enter +' default route as shown in the picture. As trains will only circle clockwise the small plan of our example, there is no need to assign any sensors to the opposite route 'all enter -', nor to any other else.
Fine adjustment of a real selection table would require to introduce some milliseconds in the 'Event timer 1' field, but for our virtual example it is not convenient.


The automatic selection table block. Please activate the configuration window with right- click of the mouse ('Properties') on the selection table plan symbol and follow the pictures.

General tab

Set the number of tracksto four.
Activate 'Shared sensors' to avoid the need of two real sensors for each track in the fiddle yard.
With this option set, only two sensors will be necessary.
This also implies that some rolling contact device under the table will be necessary, in order to feed trough these sensors the track aligned with the in & out rails.
Activate 'Manage track blocks' to let the table automatically select the required track in each case.

Interface tab

Here is where to set the configuration of (a) the required table position, and ( c ) feedback of the success of the move command.
For (a) use the seven ports on the left of the configuring tab (address & ports) like if you were programming the behaviour of light signals.
Match the controlling device requirements.


is to be the necessary ( c ) 'Position sensor'

b0 & b1

are the optional feedback (d) of the position reached by the table. Configure also 'b2' & 'b3' (it seems Rocrail minimum configuration is 15 tracks, so four feedback signals are necessary - otherwise Rocrail doesn't work well).

New Position Flag

is the feedback (b) from the controlling device indicating that the table has finished its movement to the required position (a) or it was already there.

Tracks tab

Add four different tracks and assign one different existing block to each of them.
'Description' is optional. 'Sensor 1' & 'Sensor 2' are also optional. When they get ON they visually show the required table track, but this doesn't affect functionality.

Routes tab

Please configure ONLY the 'all enter +' default route by assigning to it the ENTER & IN sensors as in the picture.
Leave the other two routes blank.

Two more routes

Let's finally configure the routes around the circle.
Only two are necessary in this example: one from block BL00- to the fiddle yard FY+, and other from FY- to BL00+.
Don't forget to add a command in each route involving the fiddle yard as a non-locked number 0 track (see the picture). Otherwise trains will not stop until sensor FYPOS indicates the selection table is ready to admit or to liberate a loco.

Let's play!

We're done now. Let's just set up some locos and virtually play with them as follows:

  1. Place two of them in the fiddle yard (LOCO 1 & LOCO2).
  2. Place a third loco (LOCO 3) in BL00 block. Check that its 'enter side matches the sense of the allowed movement (clockwise in this example), or 'Swap block enter side' if necessary.
  3. Set position sensor 'b1' ON. This simulates the info coming from the selection table controller indicating it is at position 2 (third track).
  4. Start LOCO 3 in auto mode (double-click). It should not move until you set 'FYPOS' sensor ON. This sensor simulates the feedback from the table announcing it finally has reached position 2 and it's ready to receive LOCO 3.
  5. A click on the 'ENTER' sensor will decrease LOCO 3 speed. A click on the 'IN' sensor will stop it.
  6. Next move is to be automatically made as soon as you set to auto mode another loco. Don't forget to turn OFF 'FYPOS' before activating a different fiddle yard track with sensors 'b0' & 'b1', and then 'FYPOS' ON again.

When Rocrail doesn't find a destination to a loco, and apparently there is at least one, check the 'block enter side' details of the available destination blocks and make them match the clockwise sense of this example.

Have fun.
Norber (Salamanca - Spain).

Personal Tools