MRTKLIB: Modernized RTKLIB for Next-Generation GNSS¶
MRTKLIB is a modern, thread-safe C11 GNSS positioning library built on RTKLIB, covering the open PPP / PPP-RTK correction services — QZSS CLAS and MADOCA-PPP, Galileo HAS, and IGS products and real-time streams — for both post-processing and real-time processing.
In the spirit of RTKLIB, it aims to be both a readable reference for how each service is applied and practical software for day-to-day and production use.
-
Getting Started
Build from source and run your first positioning solution in minutes.
-
CLI Reference
Learn the
mrtkunified command-line interface and its subcommands. -
Configuration
Configure positioning modes, constellations, and correction sources via TOML.
-
Reference
Full configuration options reference with all available parameters.
Key Features¶
Architectural Overhauls¶
- Thread-Safe Design —
mrtk_ctx_tcontext structure replaces global variables, enabling parallel processing - POSIX & C11 Pure — No Win32 API; fully portable across Linux, macOS (Apple Silicon), and embedded ARM/RISC-V
- Modern Build System — Unified CMake with
find_package(LAPACK)for hardware-accelerated matrix operations - Domain-Driven Layout — Source organized into
src/core/,src/pos/,src/rtcm/,src/models/, etc.
Supported Correction Services¶
| Service | Delivery | Modes | Post-Processing | Real-Time |
|---|---|---|---|---|
| QZSS CLAS | L6D (CSSR) | PPP-RTK, VRS-RTK | ||
| QZSS MADOCA-PPP | L6E + L6D wide-area iono | PPP, PPP-AR, PPP-AR + iono | ||
| Galileo HAS | E6-B C/NAV | Float PPP | ||
| IGS products | SP3 / CLK / Bias-SINEX | Float PPP, PPP-AR | — | |
| IGS-RTS | RTCM-SSR over NTRIP | Float PPP | ||
| BeiDou PPP-B2b | BDS-3 GEO B2b | PPP | planned | planned |
| SouthPAN PVS | SouthPAN SBAS GEO | PPP | under evaluation | under evaluation |
Lineage¶
MRTKLIB began by unifying the QZSS augmentation libraries into one code base on a modernized RTKLIB core; that integration is complete:
| Component | Description | Status |
|---|---|---|
| MALIB | MADOCA-PPP structural base (directory layout, threading, streams) | |
| MADOCALIB | PPP/PPP-AR engine, L6E SSR decoder, L6D ionospheric decoder | |
| CLASLIB | CLAS PPP-RTK, VRS-RTK, CSSR decoder |
Positioning Modes¶
| Mode | Post-Processing | Real-Time |
|---|---|---|
| SPP (Single Point) | ||
| PPP (Precise Point) | ||
| PPP-AR (Ambiguity Resolution) | ||
| PPP-AR + Ionosphere | ||
| PPP-RTK (CLAS) | ||
| VRS-RTK (CLAS) | — |
Related Projects¶
Ready-to-use packages for trying MRTKLIB without building it from source:
| Project | Description |
|---|---|
| mrtklib-docker-ui | Web UI for MRTKLIB in a Docker container — post-processing (mrtk post) and real-time positioning (mrtk run) from the browser, with TOML import / export and result visualization. No compilation required: docker compose up. |
| mrtklib-quickstart (docs, 日本語 / English) | One-script quickstart for real-time MADOCA-PPP with a Septentrio mosaic-G5 receiver — configures the receiver, launches the Docker web UI, and includes teaching material for Windows / macOS / Linux. |
Quick Start¶
# Build
cmake --preset default
cmake --build build
# Post-processing (PPP)
mrtk post -k conf/madocalib/rnx2rtkp.toml obs.obs nav.nav correction.l6
# Real-time positioning (CLAS PPP-RTK)
mrtk run -s -o conf/claslib/rtkrcv.toml
See the Installation Guide for detailed build instructions.
License¶
MRTKLIB is licensed under the BSD 2-Clause License.
Upstream components (MALIB, MADOCALIB, CLASLIB, GSILIB) are each licensed under BSD 2-Clause by their respective authors (JAXA, TOSHIBA, Cabinet Office, Lighthouse Technology & Consulting, Mitsubishi Electric, and the Geospatial Information Authority of Japan).