Overview
RE-RASSOR (Research and Education Regolith Advanced Surface Systems Operation Robot) is a 3D-printed variant of NASA's RASSOR lunar excavation rover, used by the Florida Space Institute for research and education. Its original stepper-motor drivetrain was heavy and power-hungry. Our six-person UCF senior design team, sponsored by FSI with faculty mentors Mike Conroy and Christian Vincent, designed a new brushless (BLDC) motor control system to replace it.
My role
I was the team's embedded systems software engineer. I finalized the software integration for the BLDC system and kept the control stack working end to end:
- debugged the C/C++ control code and fixed UART serial communication and data-serialization problems between the Le Potato server (a Raspberry Pi–compatible single-board computer) and the Arduino Mega motor controller;
- configured and tested the DRV8313-based SimpleFOC Mini drivers;
- wrote diagnostic procedures and a troubleshooting manual so faults in PWM generation, watchdog timers and SSH/TCP communication can be isolated quickly;
- supported the team's iterative, Agile-style test phases that verified the motor-control logic before final delivery.
System design
- Motors: four Gimbal 2208 90KV BLDC motors, about 39 g each, with Hall-effect sensors for position feedback.
- Gearing: a custom 3D-printed 4:1 gearbox per wheel, which recovers torque from the small motors.
- Drivers: SimpleFOC Mini boards (TI DRV8313), driven through SimpleFOC's 3-PWM driver class.
- Control: an Arduino Mega 2560 runs the motor control loop and receives commands over UART from the networked Le Potato board, which the operator's controller app reaches over the network.
- Safety: a watchdog that stops the motors if commands stop arriving, plus brownout tolerance.
Results
| Original steppers | New BLDC system | |
|---|---|---|
| Drivetrain mass | ~1,560 g | ~296 g (~81% lighter) |
| Power per motor | ~18 W | ~3.2 W (~82% lower) |
| Output torque | 0.59 Nm (holding) | 0.65 Nm (geared) |
The final system also passed safety and load testing: PWM is disabled within 300 ms when commands stop, it keeps running through brownouts down to 8.5 V, and speed droops 11% under load (the requirement was under 15%).
