BLDC Motor Controller

ECE 4760 Fall 2025 Final Project

Erica Jiang and Max Trager

BLDC motor controller from scratch, bit bashing and all!

Project Introduction

Summary

The goal of our final project was to implement commutation of a brushless DC motor on the RP2040 from scratch. The logic executed by the RP2040 determines the proper controls to apply to each phase of the motor based on feedback from hall effect sensors. To meet the strict timing requirements for control, we implemented part of this logic on PIO state machines. We implemented a closed-loop motor control system, where a user can input a target velocity via the serial terminal. The electrical systems behind our motor controller are fully customized and implemented on a printed circuit board (PCB).

Typically, BLDC motor controllers are wrapped into pre-manufactured, out-of-the-box chips. This gives little insight into the logic being performed to generate proper control signals. We did this project to fully understand and implement the logic behind BLDC control, and in doing so removed much of the “black-box” effect you typically get with BLDC controller chips. In designing a customized PCB for the electrical systems, we also gained a deeper understanding of circuit considerations behind BLDC motor control, and all the hardware bugs that come with it.

Use the tabs at the top to navigate!