For this project I attempted to make a mini drone fully from scratch, including the CAD, electrical layout, and controls. This project gave me valuable experience with integrating electrical, mechanical, and software systems.
For the CAD design, I tried to make something easily 3D-printable and repairable, while also being lightweight with propeller guards for safety purposes.
I soldered a prototype flight controller board for initial testing. The board was ESP32 based and communicated with an MPU6050 accelerometer using I2C. The motors are driven with MOSFETs
I used the built in DLPF on the IMU to get clean data readings and sent them to an ESP32 webserver to visualize the pitch and roll in 3D
This controls page featured a recalibration function, PWM motor control, and IMU data logging.
After verifying that the perf board and schematic worked, I designed a more compact flight controller PCB. It's STM-32 based and uses a shared SPI bus to communicate with a BMI270 IMU and an NRF24L01 radio module. Additionally it features bidirectional DRV motor drivers and onboard status LED's
Additionoally I designed a simple driver board for the BMI270 IMU so I could easily test it and write firmware quicker.