Aiming to solve the monitoring problem of unmanned aerial vehicles (UAVs), a novel positioning module is designed and implemented. The hardware design meets the prerequisites of miniaturization and low-cost. Then, a calibration procedure based on six-position calibration and ellipsoid fitting is executed to eliminate the bad influence on the system’s accuracy and stability caused by deterministic errors. Also, a stochastic error modeling procedure based on Allan variance is performed to identify stochastic errors’ model type and model parameters. Finally, data from inertial measurement units (IMUs), global navigation satellite system (GNSS), magnetometers, and a barometer are fused by an extended Kalman filter (EKF) based sensor fusion algorithm. This algorithm is applied to a UAV flight test and comparison result using calibrated data and uncalibrated data respectively are shown. Besides, the proposed EKF algorithm is compared with unscented Kalman filter (UKF) and unscented quaternion estimator (USQUE) to show its practicability in the application. The main contribution of this research is the design of the positioning module and the validation of the sensor fusion algorithm in this hardware. It is found that, under the constraint of low-cost sensors, the accuracy of positioning can achieve around 7.5m horizontally, and 2m vertically. The frequency of positioning increases to 50Hz after sensor fusion, a large improvement over the previous 1Hz GNSS positioning frequency.