RTK NTRIP server/client

The USV requires precise positioning, so I have built a minimalist RTK NTRIP server/client setup. The base station consists of an affordable UM980 GNSS receiver connected to a Raspberry Pi running RTKBase. RTKBase includes an integrated NTRIP caster that distributes RTCM3 correction data over a local network or the Internet.
The rover consists of a second UM980 GNSS receiver connected to an ESP32 equipped with either a W5500 Ethernet interface or Wi-Fi connectivity. The ESP32 runs a custom C++ NTRIP client, developed for the Arduino environment and inspired by this Python implementation. It receives RTCM3 correction data from the NTRIP caster, transmits GGA position messages back to the caster, and broadcasts the rover's RTK position data over the local network via UDP.
  
    

The everlasting charm of photographs

RTK Base
RTK Rover
Dynamic Performance
Static Performance

© Copyright 2026 Poul A. Andersen - All Rights Reserved