I have a LEGO city built with a train encircling it. The track is the classic style with metal railings running through it. I have a switch track as well that is connected to an NXT robot to switch the track each time a train comes by.

The problem is, there are areas where the trains run into each other because there isn't enough power running through certain areas of the track or too much power. I have 2 of those power consoles connected to the tracks.

Does anyone know how I can have these two running at the same speed without slowing down and crashing into each other?

  • I'm assuming you're using 9V rail, is that correct?
    – Ambo100
    May 28, 2015 at 15:03

2 Answers 2


This probably isn't going to be solved without either changing to remote controlled PF trains or creating a complex control system.

Even if you were able to supply the exact same constant voltage to both trains, they'd both need to have precisely the same motor characteristics, weight, and aerodynamic properties. That's going to be difficult.

One way to address this is to create track blocks that are electrically isolated and can be controlled independently. You can isolate the track sections using tape at the joints, or you can physically cut the metal rails. You could then connect these blocks up to your NXT and build some sensors to determine what speed the trains need to run in these sections in order to not hit each other.


I know that Lego Trains expert Michael Gale (not sure if he has an account here on StackExchange) is working on a DCC module for Lego 9V trains. He has details and pictures up on his Flickr Feed. This would allow you to control multiple trains on the same 9V track, without needing to do electrical isolation. You would still need to build some sort of sensing (either accellerometer or IR distance sensor or something like that) to make the speed of the trains the same to compensate for motor and wheel characteristics. And you would need to invest in a DCC controller trafo.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.