In recent years drones have a broad application, including supervising agriculture condition in a large area, searching assistance after catastrophe and even custom delivery of package in future. Typically, drone flight system consists of at least four brushed or brushless motors, electronic speed controller (ESC), batteries, sensor system and flight controller which communicates with remote. ESC is a subsystem which regulates the speed of electric motors. In high-end drone, permanent magnetic synchronous motor (PMSM) and Field-oriented control (FOC) algorithm are used, because of great performance. In low-end or middle-end drone, brushed DC motor, brushless DC (BLDC) motor and six-step communication controls are widely used, because of their low cost. FOC is a computation-intensive vector control based on the projection which transforms a three-phase time-variant system into a two co-ordinate (d and q co-ordinates) time-invariant system. The q co-ordinate current represents torque component, and the d co-ordinate current represents flux component. The closed-loop FOC can automatically adjust the torque and flux component to make them equal to the input reference values, so the motor can work as expected. Six-step communication is applied in brushed DC motor or BLDC motor. The motor stator windings are supplied in a particular sequence to make the brushed DC or BLDC motor point 60° to the next position and keep the motor rotating. In this thesis, the sensored BLDC motor and sensorless BLDC motor are introduced and compared. Nowadays, it is very popular to use off-the-shelf microcontroller to implement ESC. This thesis uses the Arm Cortex-M0-based 32-bit microcontroller--Cypress PsoC 4 to implement three different control algorithms: FOC, six-step communication for sensored and sensorless BLDC and then compares theses algorithms’ performance under different motor speed. This thesis proposes an analysis method based on discrete Fourier transform over the measured motor current to evaluate different ESC implementations and optimize the system parameters of these implementations, including modulation period, CPU frequency and power supply voltage. The experimental result shows that the power quality and motor dynamic performance of FOC and BLDC controller depends strongly on modulation period and relatively insensitive to CPU voltage and frequency scaling.