Most quadrotor flight controllers make use of an attitude control loop, which is responsible for stabilizing the flight of the vehicle by directly driving the four motors via the electronic speed controllers (ESCs). Such a control loop loses its effectiveness when the motors and ESCs are not well matched resulting in variation of the control performance. This study presents an alternative control structure that incorporates an inner speed and torque control loop within the attitude and altitude loop in order to achieve better flight stability and maneuverability. The control structure is designed to make use of PID control in order to correct for errors in the process and drive the motors correspondingly. The control system is simulated and tuned using Simulink and later implemented on a dsPIC33 microcontroller where various feedback and instrumentation sensors are interfaced. The attitude feedback is implemented using a complementary filter to fuse the accelerometer and gyrometer data in order to arrive at usable attitude estimates. The result of the flight testing reveals that the experimental and simulation results vary only by an attitude standard deviation of less than 5° and an altitude standard deviation of 50 cm. The control structure not only compensates for motor and ESC mismatches but also allows the attitude control loop, the one whose effects on the stability is most visible, to operate at the range of operation.