Skip to content

Conversation

@PaulZC
Copy link
Contributor

@PaulZC PaulZC commented Nov 25, 2025

Note: this PR needs the latest version of SEMP (1.0.6)

This PR:

  • Attempts to minimise the "no increase in file size" and the disconnect "due to lack of RTCM" glitches during NTRIP Server
  • See [Release Candidate] NTRIP Server breaking connection due to (unreal) lack of RTCM #702 for details. The real issue is network latency when using rtk2go. But there are improvements that can be made:
  • RTCM data from the GNSS is stored in a new ring buffer in PSRAM
    • See Base.ino for details
  • Data is written to consumers by sendRTCMToConsumers() - from inside the gnssReadTask instead of processUart1Message
  • On WiFi / Ethernet / Cellular: each complete RTCM message is written in one single write
    • Previously RTCM was written a byte at a time - which slowed things down dramatically!
  • Moves NTRIP_SERVER_DATA from settings.h into NtripServer.ino
  • Adds more semaphore-protected methods in NTRIP_SERVER_DATA to prevent connected() checks during a write()
  • Adds pin_debug for logic analyzer debugging - on EVK we can use the baseStatusLED for this
  • Adds settings.networkClientWriteTimeout_ms to avoid excessive write times from the default 3000ms timeout
  • Reverts the recent increase in uartReceiveBufferSize and btReadTaskStackSize
  • Adds new Tools Dinger.py and NTRIP_Sink.py
    • Dinger.py examines COM data, looks for a string and generates a "Ding" when the string is found. The date, time and following data are printed too. Very handy for trapping and recording rare events
    • NTRIP_Sink.py is a very simple local NTRIP Server: when a device connects, it sends "ICY 200 OK" and then sinks all incoming data with a byte count. Very handy for testing NTRIP Server without the latency of an external Caster
  • Allows individual NTRIP Servers to be Enabled / Disabled - as requested in Postal RTK: In Base mode, turn casters on or off individually. #758
  • Includes a temporary workaround to prevent bluetoothStop() from crashing

@PaulZC PaulZC requested a review from nseidle November 25, 2025 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants