The M.A.R.S. rover from 4tronix is an autonomous vehicle designed to drive around on rough terrain.

Inspired by NASA’s Mars rovers Curiosity and Perseverance, the M.A.R.S. rover from 4tronix is an autonomous vehicle designed to drive around on rough terrain on Earth. Indeed, in this case M.A.R.S. doesn't refer to the planet but it is an acronym for Mobile Autonomous Robotic System.

The M.A.R.S. rover comes as a kit of parts but doesn’t require any soldering. The kit is self-contained, including tools, although I preferred to use my screwdrivers instead as they fit better.

There are two versions of the kit: Raspberry Pi Zero and BBC micro:bit. I tried the Raspberry Pi version. Note that the Raspberry Pi Zero or BBC micro:bit aren't included, and neither are the four AA batteries. For the Raspberry Pi, you will also need a microSD card. An additional keypad is available from the 4tronix website, but I didn’t try it.

The Raspberry Pi version of the rover allows mounting a Raspberry Pi camera on the ultrasonic transducer mast, but I didn’t try that either.

The box containing the kit is surprisingly compact (18 cm × 16 cm × 8 cm) but quite heavy (600 g) and filled to the brim with plastic bags containing parts. A manual is not included. Detailed assembly and programming instructions are available on the 4tronix website, so you will need a computer with an internet connection to assemble the rover.

The assembly instructions are quite clear and detailed. Assembling the rover isn't difficult but there are some fiddly things like screwing on the motor mounting brackets without the nuts falling out or fixing some of the locknuts or connecting the motors. However, do pay close attention to the orientation and positioning of certain parts like the bogeys and the servos as it’s easy to get it wrong and then you have to do it again. This happened to me a few times.

Assembling the rover took me about two hours due to a few mistakes I made. Here are a few tips:

-        Get some real screwdrivers.-        There are three 18 mm long screws that go through circuit boards. Make sure to tighten them well before fixing the part on the other side with a locknut as it may get loose otherwise when you have to adjust the nut to make the attached parts rotate smoothly.-        All the servo connectors are oriented the same way. They’re clearly labeled, and the servo wires are color coded. Brown is GND, yellow is SIG (signal). Writing down the number of each servo (SVx) is practical for when you run the servoTest program.-        The ultrasonic transducer mast can run into its servo wires if the wires aren’t folded down enough. Note that my kit didn’t contain the correct mast cable, so I had to make my own.-        After connecting the servos, you can wrap their wires around the servo bodies to tidy things up a bit. On the other hand, leave the wheel motor wires free to avoid them blocking the movements of the rocker arms.-        It isn’t required to chop off the protruding ends of the servo arms as it makes the rover only look slightly neater.

After assembling the rover, I mounted a Raspberry Pi Zero 2 W on top of it. I used a microSD card with the Raspberry Pi Buster OS installed. This had been used in another project, so the Raspberry Pi could already connect to my Wi-Fi network and SSH access was enabled too. To save batteries I powered the Raspberry Pi over USB to download and install the software to make the rover run. Again, the instructions on how to do this are clear and detailed, but online only.

I also tried a Raspberry Pi Zero instead of a Zero 2 W and found it to work in the same way. The advantage of using a Zero 2 W is, of course, that it boots much faster.

The Raspberry Pi doesn’t power the rest of the rover, you need the batteries for that. So, if, when trying the examples, you see an error message complaining about the I²C bus, but you’re sure you enabled it on the Raspberry Pi, then check the On/Off switch and your batteries. A blue LED indicates if the rover is powered on or not.

I measured a current consumption of about 400 to 500 mA when the rover is driving with the motorTest script. It is about 200 mA when idle.

When developing your own programs for the rover, it’s probably best to do as much as possible with the Raspberry Pi powered over USB to save batteries and only switch the rover on when trying things out.

I have tried all the examples provided by 4tronix and found everything to work without any problems. I didn’t do any programming myself. Note that for some reason using the rover’s RGB LEDs requires administrator privileges, so any script using them must be run with sudo.

Driving the rover over obstacles is quite impressive. It doesn’t go very fast, but the rocker arms allow the robot to climb over obstacles as if they weren’t there.

ConclusionThe 4tronix M.A.R.S. rover kit is a high-quality kit that once assembled looks pretty cool thanks to its decorative print and PCB features. It measures 20 cm × 18 cm × 16 cm, so it’s a bit bigger than the box it comes in. Assembling the robot is quite easy as everything fits perfectly (which is pretty rare) and the instructions are clear and detailed. Using it is easy too and the examples and test programs install and run without any problem. 

Some programming knowledge is required, of course, but that’s why you got it in the first place, didn’t you?

The main PCB has four extra mounting holes that can be used to attach extensions to and there are plenty connections left for adding more servos (BTW, the spare parts bag in my kit contained an extra servo). 

I didn’t find a schematic so I don’t know if the servo connectors can be used for something else. 

There are also two I²C extension connectors available to which you can connect for instance sensors.

Once assembled with the software installed the rover is ready to drive around and becomes almost unstoppable.

The kit would have been even better if the Raspberry Pi Zero would have been included together with a microSD card.