How to make an app-controlled LEGO off-roader from a £15 ($20) kit instead of the £200 ($260) one LEGO sell
We love LEGO, especially the open-ended creativity those little bricks offer and, as you would expect from people who carefully crafted a powerful app to go with their robot kits, we love things that you can control with an app. So we were really excited to hear that LEGO had brought out a 4x4 crawler, that you can drive with an app. We were much less excited when we found out it cost a whopping £200 and, even worse than that, the app is made just for that specific car, so if you build something different with the parts you can't use the app to drive it😞.An app to drive anything you make
When we created the Smartibot app LEGO was a big inspiration. We wanted you the be able to design the perfect controller, for whatever you had made with your Smartibot, by dropping control elements like buttons joysticks and sliders onto a grid of blocks, just like those wonderful plastic bricks. This flexibility means no matter how simple, complex or unusual your creation, you will always be able to make the perfect controller for it. We always assumed when LEGO got into apps they would do the same thing and have been really surprised they didn't.
Cheap LEGO RC crawler
We found a very cheap and promising LEGO kit (42071 'Dozer Compactor') in the toy shop in the shopping mall where we were running robot workshops. They were selling it for £13. We thought it would make an ideal off-roader because it has really cool big spikey wheels and it can bend in the middle, which we thought would be great for steering.
Motorising a LEGO model
We converted the Dozer to Smartibot control by attaching a Smartibot motor between each wheel and the chassis. The motors attach to the LEGO Technic pieces with M3 x 35 (or longer) bolts, which go through the mounting holes in the motors and the holes in the sides of the LEGO pieces, and M3 nuts from the Smartibot kit. The wheels attach to the Smartibot wheel mounts using the M3 x 25 bolts and M3 nuts that come in the Smartibot kit.
We used one Smartibot motor on each wheel and a fifth one mounted on the top, to work the steering. We coupled it to the LEGO Dozer's steering mechanism using one of the Smartibot motor to LEGO '+' axle adapters that come with the '+' wheels that are available in the shop.
App controlled LEGO car
We attached the Smartibot circuit board to the front two motors using one of the large elastic bands from the Smartibot kit and wired up the motors. As the pair of motors on each side will always run in the same direction we wired each pair up to one motor port on the Smartibot board. We did this by twisting the two red wires together and the two black wires together and then putting the twisted ends into the ports and tightening them up. This meant we only needed two 'M' ports for the four wheel motors, which meant we had two free, one of which we used for the steering motor.
In the Smartibot app we mapped the wheel motors to a joystick just like the mapping for the robots in the kit, which meant that forward and backward on the stick would move the car forward and back and left and right would cause it to spin on the spot, just like the robot.
We mapped the steering motor to two buttons, one driving it in one direction when it was pressed and the other driving it in the other direction. Both buttons were set to stop the motor when released.
Let's go Off-Road!
The car worked much better than we had expected. The plastic spikey wheels were great because on hard surfaces they were slippy enough to allow the car to spin easily on the spot but also gave it amazing traction on the grass and mud. It was pretty fast with the Smartibot battery box (with 4 AAs) attached and really, really fast with a small 2S LiPo. We haven't managed to get hold of one of the official LEGO off-roaders to compare performance against but, based on looking at the videos, we think ours is faster and better at climbing.