So what is the current status of the project and what it can do at the moment?
As is mention in the description the vehicle has a rather advanced transition that is composed of substractor mechanism using Sariel's (a famous LEGO Technic creator) building instruction. Why would I use that? I have another vehicle that uses two separate hobby DC motors to drive each track. The control of such vehicle is quite stupid - you have to change the speed of each DC Motor to control the vehicle. Even to move forward you always have to adjust the speed, as the motors behave really differently.
The idea of using a substractor is to use a powerful motor to drive a vehicle forward and backward and then a smaller motor to make turns and pivots. Unfortunately the small motor I am using now is not powerful enough to overcome friction of gears and mass of a vehicle so I can turn only by going either forward or backward. It's not that big of a deal for now but will have a huge effect when I will need a vehicle to become more or less autonomous.
The vehicle is controlled via Pimoroni's Explorer pHat . It's not really made to drive powerful motors but it seems to work fine for me at the moment. It also allows me to use 5V outputs for lights and have analog outputs that I am going to use for Sharp IR distance sensors. A bit not enough pins though so I will need to use some more very soon.
The vehicle is controlled by a PS3 clone Bluetooth joystick. It was a pain to connect it, in the end I could do it now following any instruction but just using single script of RetroPie. Worked perfectly for me. on Pi Zero W. I couldn't make it work with Bluetooth USB stick to wokr on Pi Zero. The Python script is run on Pi Zero W that uses PyGame to interact with gamepad. I'll share the code later but there's absolutely nothing special about it. Still need to make a check to make sure gamepad can be used again if connection is lost or time-out.
The vehicle has a Pi NoIR camera and video is streamed using RPi Cam Web Interface and can be used to guide the vehicle.
I also tried to use OpenCV object recognition to detect a get on pictures but it takes way too much time on Pi Zero W. I am thinking to do the object recognition on some other computer or in the Cloud. Still figuring our how to do that.