Open-source MATLAB code for GPS vector tracking on a software-defined receiver

Research output: Journal article publicationJournal articleAcademic researchpeer-review

50 Citations (Scopus)


The research regarding global positioning system (GPS) vector tracking (VT), based on a software-defined receiver (SDR), has been increasing in recent years. The strengths of VT include its immunity to signal interference, its capability to mitigate multipath effects in urban areas, and its excellent performance in tracking signals under high-dynamic applications. We developed open-source MATLAB code for GPS VT SDR to enable researchers and scientists to investigate its pros and cons in various applications and under various environments. To achieve this goal, we developed an “equivalent conventional tracking (CT)” SDR as a baseline to compare with VT. The GPS positioning estimator of this equivalent CT is based on an extended Kalman filter (EKF), which has exactly the same state, system, and carrier measurement models and noise tuning method as VT. This baseline provides users with a tool to compare the performance of VT and CT on common ground. In addition, this MATLAB code is well organized and easy to use. Users can quickly implement and evaluate their own newly developed baseband signal processing algorithms related to VT. The implementation of this VT code is described in detail. Finally, static and kinematic experiments were conducted in an urban and open-sky area, respectively, to show the usage and performance of the developed open-source GPS VT SDR.

Original languageEnglish
Article number46
JournalGPS Solutions
Issue number2
Publication statusPublished - 1 Apr 2019


  • Extended Kalman filter (EKF)
  • GPS
  • Open-source software
  • Software-defined receiver (SDR)
  • Vector tracking (VT)

ASJC Scopus subject areas

  • Earth and Planetary Sciences(all)


Dive into the research topics of 'Open-source MATLAB code for GPS vector tracking on a software-defined receiver'. Together they form a unique fingerprint.

Cite this