Open, affordable GNSS RTK platform that enables centimeter‑level positioning (~10 mm XY / ~50 mm Z) using commodity, readily available modules. OSS aims to democratize survey‑grade measurements by publishing open hardware, firmware, and reference configurations.
Status: early draft - architecture overview only. Detailed BOMs, Gerbers, STLs, and configuration guides will be added later.
OSS consists of two building blocks:
- RTK Rover - a portable GNSS receiver that works with common mobile apps (e.g., SW Maps, Locus GIS, QField, SurPad, LandStar etc.). The rover receives RTK corrections via NTRIP over the Internet or from a local Wi‑Fi NTRIP caster.
- Extension Kit (LoRa) - a radio bridge that carries RTK corrections over longer distances using LoRa (433 MHz), (eg. when local access to RTK corrections over LTE is not available):
- LTE/LoRa Gateway - fetches RTK corrections from an online NTRIP service (e.g., a national CORS) or from a local RTK base, then transmits them via LoRa.
- LoRa/Wi‑Fi Gateway - receives LoRa packets with RTCM and exposes a local NTRIP caster over a Wi‑Fi Access Point.
- Local RTK Base Station (optional) - provides local corrections based on its precisely known position (surveyed once or derived from long averaging).
A) Internet‑only (no radio) - rover is used in an area with internet access to RTK corrections (eg. by LTE)
B) Radio‑relayed corrections (LoRa 433 MHz) - radio relay deployed in an area without internet access to RTK corrections network; corrections are calculated locally
C) Hybrid (online source → local radio) - radio relay deployed in an area with internet access to RTK corrections network (over LTE/Starlink, etc.)
A compact, dual‑frequency GNSS RTK receiver that pairs with a mobile app. The app supplies RTK corrections (via Internet or a local NTRIP caster), while the rover provides position output to the app. Connectivity is kept simple (Bluetooth to the phone); no onboard Wi‑Fi or general‑purpose MCU is planned in the rover.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
- Acts as an NTRIP client toward an online caster (e.g., CORS) or a local base station.
- Encapsulates RTCM and transmits over LoRa 433 MHz (P2P) to the LoRa/Wi‑Fi Gateway.
- Receives LoRa packets and reassembles RTCM stream.
- Hosts a local NTRIP caster behind a Wi‑Fi Access Point for the rover/mobile app.
- Provides local RTCM corrections from a fixed, accurately known position.
- Integrates with the LTE/LoRa Gateway to feed the radio uplink.
- Corrections: RTCM 3.x over NTRIP (TCP/HTTP Basic).
- Rover ↔ Phone link: Bluetooth SPP (UART over BT using BT module, or BLE using ESP32).
- Position output: NMEA from rover to mobile apps.
- Radio link: LoRa 433 MHz, P2P mode (not LoRaWAN), optimized for low‑latency streaming.
- Transport paths:
- Internet path: Mobile App (NTRIP client) → Online NTRIP Service → RTCM → Bluetooth SPP → Rover.
- Radio path: Base or Online Service → LTE/LoRa Gateway → LoRa → LoRa/Wi‑Fi Gateway (NTRIP caster) → Mobile App → Bluetooth SPP → Rover.
- Open & affordable: publish hardware files (Gerbers), mechanical models (STL/STEP), firmware and configs.
- Modular: rover can operate standalone (Internet) or with the radio Extension Kit.
Extension Kit could be potentially used as a correction source to rovers from other manufacturers!
- Interoperable: works with mainstream mobile GIS apps.
- Region‑aware: radio operation must comply with local regulations (e.g., 433/869 MHz in EU).
Component firmware and the shared, over-the-air specs are documented under firmware/:
The LoRa link is a contract between the two gateways, so its specs live in one canonical place — firmware/shared/docs/ — and both firmwares must stay byte-compatible with them:
- LoRa protocol - over-the-air packet format, fragmentation, radio parameters
- Maintenance frame - telemetry/maintenance and remote-command frames
- README - overview, hardware, quick start
- Web UI config structure - configuration model and REST API
- AGENTS.md - coding standards and workflow
- Architecture - task/core structure
- Configuration - pins, timing, constants
- NTRIP server - local caster protocol flow
- AGENTS.md - coding standards and workflow
- README - overview and configuration
- Hardware: CERN OHL‑S v2 (TBD)
- Firmware/Software: Apache‑2.0 or MIT (TBD)
- Docs: CC‑BY‑4.0 (TBD)
- Names and modules are placeholders for open, commonly available components.
- Rover = GNSS RTK module + classic Bluetooth SPP module over UART. Mobile app bridges NTRIP↔RTCM.
- This README intentionally omits implementation details; it is a high‑level map for the project structure and data flows.












