The Vehicle
The micro controller is an Adafruit Feather ESP32. This board has the advantage of being very small.
https://www.adafruit.com/product/3405
The Stepper Motor Drivers
I designed an built a custom stepper motor "shield/wing" to drive the stepper motors. See the files section for the gerber files if you want to have your own printed. The board holds up to 4 Pololu DRV8835 motor drivers.
https://www.pololu.com/product/2135
These can control 1 stepper motor each (not current limited) or 2 DC motors each. For a total of 4 stepper motors or 8 DC brushed motors.
The Stepper Motors
The stepper motors are Pololu "1204" Nema 8 stepper motors, but any Nema 8 sized stepper motor with an appropriate length shaft and voltage rating should do.
https://www.pololu.com/product/1204
The motors have 3D printed face plates that let them interface with the LEGO pin holes.
https://www.thingiverse.com/thing:2907018
The Software
The ESP32 has been programmed with a web server that serves a page that lets you control the vehicle. The page contains javascript controls that send input to the controller through a websocket.
Control is with a touch base onscreen joystick. I use the X/Y to skid-steer algorithm from here: http://home.kendra.com/mauser/joystick.html
The ESP32 then uses hardware interrupt timers to precisely control its motors.
Hi, very cool build ! : Did you have already all the lego pieces, or did you buy them somewhere ? (I am checking if I may redo the build for a christmas gift for my kids) i have already a lot of them, but some will be missing that are not sold on the lego website (and I don't know if 3D print will be precise enough)