Originally shared on the public FactorioPrints / Factorio School archive (factorioprints.com · factorio.school). Authorship preserved from the public catalog.
Introduction
This is the next version of my train system, plus some compatible 2-4 station blueprints for easy setup. The book allows you to upgrade your stations with a simple blueprint that will include them into the ETS routing. Once they are in the routing system, you can then name all your stations for each resource the same, e.g. "IronOreLoader" and "IronOreUnloader". Using the same name for multiple stations allows the trains to drive to every station using that name, which means you now don't have to individually asign your trains to each station, which massively cuts down on your management duties.
Usage
I've tried my best to make using it as simple as possible. If you use the included 2-4 station blueprints all the wiring should be done automatically, so you can skip steps 2, 3 and 4. To set it up, you need to:
Print "ETSV7.X.X" over your station. It won't overwrite the current name of the station.
Connect the chests of the station to the green wire running on the powerpoles.
Apply the "StackerSignalsV6.X" or "StackerSignalsDiagonalV6.X" over your stacker entry rail signals. Make sure that the signals turn red when a train is in the stackerslot and green when not. All the stacker signals should be connected by a red wire. If you don't use the blueprint, you have to manually change the signals settings to [Red=E, Yellow=D, Green=D].
Connect the red wire from the powerpoles of the station to the stacker signals. If you have multiple different stations using the same stacker, this will connect the different stations with the red wire, which is intended and totally fine.
That's it. Name all your Unloader and Loader stations of each resource the same and it should work now.
I recommend to set your train schedules to "Cargo inventory full/empty OR Time passed 300". The time passed condition will keep your trains from beeing stuck forever in low throughput un/loaders. You can ofc set it to something other than 300, that's only an example value.
When you first set up the station, a turquoise light should be glowing. This means the station is in initialization mode and is waiting for the first train to determine the stack size of the items this station will carry. Once the first train arrives, the station will switch into [Unloader/Loader] mode, which will be displayed by a [blue/red] light. After successful initialization, the six remaining lights will also start working, displaying the resource count of the station. Determining the stack size will take some time and be done over multiple trains, so don't worry when the light display doesn't make much sense right after initialization. The first yellow light signals that the resources are between 0 and 1/2 a train, two yellow lights mean 1/2 to 1 train. One green light means between 1 and 2 trains, second green light 2 to 3, thrid 3 to 4 and fourth above 4 trains.
There is an inactive constant combinator right next to the turqoise initilization lamp. This one can be activated to enable priority mode, meaning this station will be served before other stations. Priority mode is indicated by the initilization lamp turning purple. I recommend this mode for all mainbase/mall stations and for waste products. You can also kind of apply a negative priority by just faking a large amount of resources and pushing that onto the green cable.
Difference to Version 6
From a circuit perspective and general layout, version 7 is practically identical to 6. The key difference is, that I changed the un/loaders to be 6 tiles wide instead of the previous 4 tiles. This obviously breaks compatibility a lot, so I thought I would just publish this update as a new version instead. The change was done mainly to enable the use of yellow belts instead of red belts, which was necessary for a speedrun I wanted to do. It had some other positive side effects tho. The system now only has one variant, so you don't have to differentiate between the normal and slim version anymore. The belt unloader now has included lane balancers and a shifting belt balancer, which looks weird but has the same function as a normal belt balancer. The loader ofc also has a belt balancer included.
If you want to know more about how the actual routing works, feel free to pm me on reddit or read my post about the old version of this system. Also, I wrote this circuit guide, in case you want to understand the circuits of the system (very technical). Bug reports are also always welcome!
Changelog
V7.3.3 Fixed a bug for 1-1 trains, which allowed two trains to enter the station at once.
V7.3.2 Replaced the unloader belt balancer, because it had unequal input consumption. The new balancer is not throughput unlimited, but that should rarely be an issue as train input should always be balanced anyways. The system combinators are shifted one tile closer to the center of the station, which allows for more efficient placement of the yellow undergrounds and a resulting two extra tiles which are used for a new combinator. The new combinator slightly changes the station behaviour, when there is a stacker attached, the station will now apply a maximum penalty as soon as the stacker is full, even when it's own space is unoccupied. After a train is finished un/loading and tries to leave the station but still has to wait, the penalty routing won't stop working like it did up till now.
V7.1.8 Changed entry signals of the stations to chain signals, which resolves and issue with smaller train sizes.
V7.1.7 Fixed SmallStation incompatibility with the fluid un/loaders