With the project now focused on a specific application, autonomous metal detection, the electronics have been optimised for reliability, modularity, and expanded I/O.
-
Retaining the RP2040 for motor control PID and encoder feedback.
-
Adding a new Wi-Fi Comms Processor:
LilyGO T-PicoC3 (RP2040 + ESP32-C3) with 240×130 display. (using ESP-AT) -
Removing the RC module which was mainly used for testing.
-
Replacing the Vehicle Controller MCU (previously an RP2040) with a Pyboard v1.1 to accommodate expanded I/O needs:
-
UART to Motor MCU (2 pins)
-
UART for GPS (2 pins)
-
UART for Wi-Fi (2 pins)
-
SPI + GPIO for LoRa (7 pins)
-
I2C for IMU (2 pins)
-
-
Upgrading the main power supply from 20 V to 40 V to increase torque due to heavier payload.

Melt Down:
With increased torque and payload come new challenges, like spinning wheels and stalled motors. During an autonomous run, a stick got caught in one of the drive wheels (note to self: no more holes in wheels). The PID controller did what it was told, increased power to full and held it there. The result - One melted motor. I'm just lucky I had one spare.
40 V of Li-Po power pumped into a 24 V, 11 W brushed DC motor is far from iideal.
To prevent that from ever happening again, I’ve added both stall and slip detection:
Stall Detection:
Implemented at the motor controller (RP2040), this monitors current draw on each motor. If current exceeds a defined threshold continuously for more than a defined period (indicating a jam or blocked wheel), the controller shuts down motor output and reports the fault via UART to the vehicle controller. This is then passed on to the telemetry system.
Slip Detection:
Implemented at the vehicle controller (Pyboard), this compares expected movement (based on active commands) to actual displacement measured via GPS. If Roverling moves less than 1 m over 10 seconds while the motors are engaged and GPS fix is good, it transitions into a slipping state and halts further motion.
Mark Makies
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.