Mattzobricks has released the largest firmware update in its history.

The new firmware release 0.5 will cover a large variety of new controller types, new features and improvements.

I made a nice little video about it:

Here is a list of the most important items of MattzoBricks Firmware 0.5:


Probably the most significant piece of the firmware release is the MattzoTrainController for Bluetooth (MTC4BT). The MTC4BT enhanced the feature scope of the MattzoTrainController for Powered Up (MTC4PU). Whereas MTC4PU could only control LEGO Powered Up units, the MTC4BT can also serve SBrick units. LEGO Powered Up and SBrick units can be mixed and connected to a single MTC4BT.

The MTC4BT has undergone significant endurance testing in the Mattzobricks lab over several hours without problems.

MTC4BT: Test setup in the MattzoBricks lab
MTC4BT: Test setup in the MattzoBricks lab

The MTC4BT was also tested during the Bricktopia 2021 show on a fully supported LEGO train layout that used the Mattzobricks Train Automation System 2.0.

MTC4BT is based on the popular ESP32 microcontroller. To upload the firmware, is used instead of the Arduino IDE. Depending on the reception of this new platform approach, we might migrate the other controllers step by step to as well.

The MTC4BT will make the MTC4PU obsolete in the long run. For now, MTC4PU will remain in the package, but maintenance will be limited in the future.


The WiFi bug is (hopefully) fixed.

Due to the publication of the MTC4BT, the MTC4PU is now marked deprecated and might be removed from the official release package in the future.


The MattzoTrainController for Power Functions (MTC4PF) now provides multi-train support. This is very handy if you want to control more than one train with a single MTC4PF. This use case exists if you use the controller to control trains with LEGO Power Functions IR (infrared) receivers.

MTC4PF without battery
MTC4PF with infrared LED

Some optimizations in standard wiring configuration help you to get started more easily.


The MattzoLayoutController (MLC) comes with a large number of new and improved features.

Form Signals

LEGO train fans always had a strong desire towards semaphores (form signals). These iconic pices of art of railroad history are present on every decent scale model train layout. Nevertheless, on LEGO train layouts (or compatible) they are most often missing because of their complexity. Examples for semaphores in the LEGO train world are very scarse.

The MLC now fully supports semaphores. This means that servos may be part of a signal configuration. There is even multi-servo support for form signals with more than two signal aspects and thus multiple blades.

Mattzobricks has built some wonderful examples of fully functional form signals within the last couple of months, as shown on the following picture.

Form signals showing Hp2/Vr2
Form signals showing Hp2/Vr2

We will soon publish a video about building beautiful and fully functional semaphore signals, and how to automate them with MattzoControllers. Please subscribe to our social media channels to stay up to date!

Sempahore main and distant signal
Sempahore main and distant signal, design by Mattzobricks

The signal configuration in general was upgraded significantly and is now more powerful and flexible. Almost every signal type in the world, that we are aware of, should be supported, whatever aspects it may have, and whatever mechanical parts or lights it may have.

Light signals also profit from the new configuration. LEDs can now used for multiple signal aspects, and multiple LEDs can be shown per aspect. An example is the German H/V light signal with its Hp2 aspect, which requires both the green and yellow light to be visible.

Speed Control

The MLC can now be used as a “MattzoSpeedController”. This controller type measures the speed of your LEGO trains and shows the speed on a display.

Mattzobricks Speedometer

Bascule Bridges

The state machine of the bridge and the bridge leafs are now separated and optimized for better operation. The controller adapts more flexible to the type of bridge that you want to build. This is also allows for bridges with more than one bridge leaf – multi-leaf bascule bridges!

Prototype of an automated multi-leaf bascule bridge

The bridge is now operated with continuous servos by default, as they are easier to integrate into the bridge mechanics.

The bridge configuration is now easier to understand.

Level Crossings

Some edge cases are optimized, like starting to close boom barriers while the are still opening etc.

Level Crossing


Servos for switches, form signals and bascule bridges can be optionally powered off after a couple of seconds after their operation. This saves power, prevents the servo from blocking and burning off in case of configuration problems and also reduces the servo flattering.


The configuration is now significantly easier and more structured.

Hardware components (servos, LEDs and sensors) are now strictly separated from logical components like switches, signals, level crossings or bascule bridges.



The new MattzoController firmware can be downloaded on the website, menu Controllers/Firmware.

We wish all of our users great fun with this major release!


Leave a Reply

Your email address will not be published. Required fields are marked *