Building my own sumobot
I recently finished the implementation and design of a mini sumobot by following the excellent embedded systems project series from the YouTube channel Artful Bytes.
The series walks through the complete design and implementation of a mini sumobot, including writing firmware for the MCU and sensors, building a state-machine abstraction for the fighting logic, and designing a custom PCB for the robot.
For both the firmware and the PCB, I used the original project as a reference, while trying to design and implement some parts of the robot myself. In particular, I adopted a different software architecture while reusing code from the original project especially for sensor drivers and state machine. On the hardware side, some components used in the original PCB were not available through JLCPCB, the manufacturer I used, which required selecting alternative parts and adapting the schematic and layout accordingly.
I highly recommend this series to anyone interested in completing an embedded project from start to finish. Through this project, I learned a great deal about electronics, designed my own PCB using KiCad, and created a custom 3D-printable enclosure using OpenSCAD. Overall, it was an excellent hands-on learning experience that tied together firmware development, hardware design, and 3D CAD design into a single cohesive project.
Some development pictures :)
Driver development

Board bring-up

Robot assembly

Testing of the robot

Inner life of robot
