Overview | Release Notes | Support | Documents | References | Porting to BB | To Do | Statistics | SDR Receiver
RTKLIB: An Open Source Program Package for GNSS Positioning

Download

Version Date Binary AP Package for Windows Full Package with Source Programs
2.2.0 2009/01/31 rtklib_2.2.0_bin.zip (10.7MB) rtklib_2.2.0.zip (23.4MB)
2.2.1 2009/05/17 rtklib_2.2.1_bin.zip (15.3MB) rtklib_2.2.1.zip (30.6MB)
2.2.2 2009/09/07 rtklib_2.2.2_bin.zip (21.4MB) rtklib_2.2.2.zip (33.8MB)
2.3.0 2009/12/17 rtklib_2.3.0_bin.zip (26.7MB) rtklib_2.3.0.zip (35.8MB)
2.4.0 2010/08/08 rtklib_2.4.0_bin.zip (17.4MB) rtklib_2.4.0.zip (26.5MB)
2.4.1 2011/06/11 rtklib_2.4.1_bin.zip (16.5MB) rtklib_2.4.1.zip (26.4MB)
2.4.2 2013/04/29 rtklib_2.4.2_bin.zip (30.4MB) rtklib_2.4.2.zip (55.2MB)
2.4.3 2015/03/31 rtklib_2.4.3_bin.zip (??.?MB) rtklib_2.4.3.zip (??.? MB)
Please refer the support information to get the latest patches.
RTKLIB 2.4.3 betas are available at GitHub. (RTKLIB - branch rtklib_2.4.3)

Open Repository in GitHub.

Tutorial and Demonstration

GNSS-SDRLIB: Open Source GNSS Software Defined Radio Library 2013/8/26 link added

Overview

RTKLIB is an open source program package for standard and precise positioning with GNSS (global navigation satellite system). RTKLIB consists of a portable program library and several APs (application programs) utilizing the library. The features of RTKLIB are:

(1) It supports standard and precise positioning algorithms with:
GPS, GLONASS, Galileo, QZSS, BeiDou and SBAS
(2) It supports various positioning modes with GNSS for both real-time and post-processing:
Single, DGPS/DGNSS, Kinematic, Static, Moving-Baseline, Fixed, PPP-Kinematic, PPP-Staticand PPP-Fixed
(3) It supports many standard formats and protocols for GNSS:
RINEX 2.10, 2.11, 2.12 OBS/NAV/GNAV/HNAV/LNAV/QNAV, RINEX 3.00, 3.01, 3.02 OBS/NAV, RINEX 3.02 CLK, RTCM ver.2.3, RTCM ver.3.1 (with amendment 1-5), ver.3.2, BINEX, NTRIP 1.0, RTCA/DO-229C, NMEA 0183, SP3-c, ANTEX 1.4, IONEX 1.0, NGS PCV and EMS 2.0 (refer the Manual for details)
(4) It supports several GNSS receivers' proprietary messages:
NovAtel: OEM4/V/6, OEM3, OEMStar, Superstar II, Hemisphere: Eclipse, Crescent, u-blox: LEA-4T/5T/6T, SkyTraq: S1315F, JAVAD: GRIL/GREIS, Furuno: GW-10 II/III and NVS NV08C BINR (refer the Manual for details)
(6) It supports external communication via:
Serial, TCP/IP, NTRIP, local log file (record and playback) and FTP/HTTP (automatic download)
(7) It provides many library functions and APIs for GNSS data processing:
Satellite and navigation system functions, matrix and vector functions, time and string functions, coordinates transformation, input and output functions, debug trace functions, platform dependent functions, positioning models, atmosphere models, antenna models, earth tides models, geoid models, datum transformation, RINEX functions, ephemeris and clock functions, precise ephemeris and clock functions, receiver raw data functions, RTCM functions, solution functions, Google Earth KML converter, SBAS functions, options functions, stream data input and output functions, integer ambiguity resolution, standard positioning, precise positioning, post-processing positioning, stream server functions, RTK server functions, downloader functions
(8) It includes the following GUI and CUI APs:
Function GUI AP CUI AP Notes
(a) AP Launcher RTKLAUNCH -
(b) Real-Time Positioning RTKNAVI RTKRCV
(c) Communication Server STRSVR STR2STR
(d) Post-Processing Analysis RTKPOST RNX2RTKP
(e) RINEX Converter RTKCONV CONVBIN
(f) Plot Solutions and Observation Data RTKPLOT -
(g) Downloader of GNSS Data RTKGET -
(h) NTRIP Browser SRCTBLBROWS -
(9) All of the executable binary APs for Windows are included in the package as well as whole source programs of the library and the APs.

System Requirement

The executable binary GUI and CUI APs included in the package require Microsoft Windows environment. On the other OS or environment, you have to compile and build CUI APs by yourself.
All of the library functions and APIs were written in ANSI C (C89). The library internally uses winsock and WIN32 thread for Windows with the compiler option -DWIN32 and the standard socket and pthread (POSIX thread) for Linux/UNIX without any option. By setting the compiler option -DLAPACK or -DMKL, the library uses LAPACK/BLAS or Intel MKL for fast matrix computation.
The CUI APs were written in ANSI C. The library and CUI APs can be built on many environments like gcc on Linux. The GUI APs were written in C++ and utilize Embarcadero/Borland VCL (visual component library) for GUI toolkits. All of the executable binary APs in the package were built by Embarcadero C++ builder XE2 Starter Edition on Windows 7. The executable GUI APs were tested on Windows 7 (64bit). The CUI APs were also built and tested on Ubuntu 11.04 Linux and x86 CPU.
Notes: Previous versions of RTKLIB until ver. 2.4.1 were built by a free edition of Borland C++ (Turbo C++ 2006). Turbo C++, however, is no longer supported in ver. 2.4.2 because of a type incompatibility problem of GUI strings between ver.2.4.2 and the previous ones.

License

The RTKLIB software package is distributed under the following BSD 2-clause license and additional exclusive clauses. Users are permitted to develop, produce or sell their own non-commercial or commercial products utilizing, linking or including RTKLIB as long as they comply with the license.

-----------------------------------------------------------------------------------------------------------------------------------

Copyright (c) 2007-2013, T. Takasu, All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Notes: Previous versions of RTKLIB until ver. 2.4.1 had been distributed under GPLv3 license.

History

Version Date Description
1.0 2007/01/25 New release
1.1 2007/03/20 Add rnx2rtkp_gui, fix bugs, improve performance.
2.1.0 2008/07/15 Refactored, add applications.
2.1.1 2008/10/19 Fix bugs.
2.2.0 2009/01/31 Add stream.c, rtksvr.c,preceph.c in src, Add rtknavi, rtkpost_mkl, srctblbrows, strsvr in app.
2.2.1 2009/05/17 See Release Notes
2.2.2 2009/09/07 See Release Notes
2.3.0 2009/12/17 See Release Notes
2.4.0 2010/08/08 See Release Notes 
2.4.1 2011/06/11 See Release Notes
2.4.1 2013/02/23 An exclusive clause of the licence is added.
2.4.2 2013 04/29 See Release Notes

Acknowledgement

The original code of src/rcv/nvs.c was provided by Michele Bavaro.


Copyright (C) 2007-2013, T.TAKASU, All rights reserved.