Brushless Balance Bot

Created by [Ramon de Leon] • Started on May 23, 2024

A PID-controlled balancing robot with high grip wheels powered by brushless motors, controlled with a PS5 controller

May 23rd: Defining what I want the robot to do and researching the correct parts

So first off, I wanted to achieve a few things with this robot: - Make it balance itself (obviously) - Be controlled wirelessly with a game controller - Use brushless motors for speeeeeed (and because they are cool) - Make a custom PCB to make it as compact as possible - Write the firmware from scratch to learn the math and logic behind it - Build an app for telemetry - Have a very resilient angle sensing system

Based on this, I then defined what parts would be appropriate for this - PS5 controller - 2208 (or similar) brushless motors - SimpleFOC ESC (FOC allows for more accurate control) - PCB designed in EasyEDA and manufactured with JLCPCB - Write the firmware in C++ for an ESP32 - Build an app using React, React Native or some Python framework and build an API to communicate with the robot - Put 2 gyroscopes on the board for sensor fusion and drift correction

So i then got to searching for the parts online (mostly AliExpress) and it came out to this (draft) BOM (still some parts missing)

Item Purpose Source Price
2 Brushless motors Powering the wheels Link $30
BNO-055 Gyroscope Link $15
ESP32 Microcontroller Link $6

Total time spent: 2h 20m