Signals are an important part of every decent LEGO train layout.
The following diagram show the integration of signals into the overall MattzoBricks Train Automation System:
On our LEGO train layouts, all signals are automatically. How this is being done is shown in this video:
Our signals are controlled with a component called MattzoSignalController. Check this page to find out how to build such a controller yourself.
Instead of the MattzoSignalController, you may also use the more versatile MattzoLayoutController. The MattzoLayoutController can also be used to control semaphohres, as shown in the example below: