Level Crossings are intersections of roads and train tracks on the same level. They usually comprise boom barriers, flashing lights or both.

To get an impression of how this works, we have created a nice video about level crossings and how to control them in the MattzoBricks Train Automation System 2.0:

Fully automated Level Crossings for LEGO train layouts



Level Crossings are controlled with a MattzoLayoutController. The MattzoLayoutController is a device that controls all kinds of components on the layout. Among them are also the things you need to level crossings, i.e. boom barriers, lights and sensors.

Bahnübergang auf MILS-Platte
Level Crossing on a MILS plate

In terms of level crossings, the MattzoLayoutController has the following features:

  • Works with Rocrail or autonomously.
  • Support for primary and secondary booms.
  • Secondary booms can be configured to close with a delay.
  • All servo start and stop angles can be configured.
  • Closing and opening speed of the boom barriers can be configured separately.
  • Right hand and left hand road traffic configurable.
  • Flashing lights with configurable speed.
  • Configurable flashing or fading lights for enhanced realism.
  • Intelligent, powerful and flexible train axle counting logic for autonomous operation.
  • Works in an outstandingly large number of different track layout scenarios.
  • Multi-track support.
  • Virtual sensors for secure closing of barriers before train passes the level crossing.
  • Support for various hardware deployment scenarios.
  • Based on MattzoLayoutController firmware.
  • Common codebase with other controller types.

System integration

Level Crossings are integrated into the MattzoBricks Train Automation System as shown in the following diagram:

MattzoBricks Train Automation System: Level Crossings
MattzoBricks Train Automation System: Level Crossings

How to build it

Level Crossings are controlled with MattzoLayoutControllers. Building instructions can be found here.


Thanks for MattzoBricks Core Developer Markus for his contributions to the level crossing project.