LC29H ignores RTCM data on UART2 / No RTK Fix with ESP32 NTRIP Client

Hello Quectel Support and Community,

I am building a custom RTK setup using an ESP32 as an NTRIP Client and a Quectel LC29H module (specifically the [Hier genauen Namen eintragen, z.B. LC29H-BA oder LC29H-DA] HAT).

My ESP32 successfully connects to the local NTRIP Caster (SAPOS Germany, VRS_3_2G mountpoint), receives the RTCM 3.x correction data, and forwards it to the LC29H module. However, the module seems to completely ignore the RTCM data.

My Setup & Wiring:

  • ESP32 TX (Pin 17) → Quectel UART2 RX (R2) (For sending RTCM data)
  • ESP32 RX (Pin 16) → Quectel UART1 TX (For reading NMEA)
  • Common GND is connected and verified with a multimeter.
  • Antenna has a clear sky view (receiving 15-24 satellites).

The Problem:

  • The module outputs normal NMEA sentences (Baud: 115200) via UART1.
  • I receive $GNGGA with Fix Quality Indicator 1 or 2 (DGPS/SBAS).
  • The “Age of Differential Data” in the GGA sentence remains completely empty (e.g., ...M,45.276,M,,*6E).
  • It never reaches RTK Float (5) or RTK Fix (4).

What I have tried so far:

  1. Verified the physical connection and data flow (ESP32 is actively pushing bytes to the UART2 RX pin).
  2. Avoided blocking code (using read() instead of readStringUntil()) to prevent RTCM chunk drops.
  3. Tried sending RTCM to UART2 at different baud rates (115200 and 460800).
  4. Sent $PAIR,432,1*3B to enable RTCM parsing on both ports.

My Questions:

  1. What is the factory default baud rate for UART2 (RTCM IN) on my specific firmware?
  2. Is there a specific $PAIR or $PQTM command I need to send to explicitly unlock UART2 for RTCM parsing?
  3. Could this be a firmware issue, and if so, how can I check my firmware version and request an update?

Thank you in advance for your support!


from what I know uart2 is not designed to receive corrections…
try on uart1
ESP32 TX (Pin 17) → Quectel UART1 RX (For sending RTCM data)

Thx for the answer but I just tried this after posting this. I even tried to get a reaction by sending shutdown command but the board doesn’t react in any way. The esp32 is outputting correctly because when I connected tx and rx on the esp I can see my own commands.

…so U tried on uart1 and no success?
Can U parse the RTCM 3.x correction data, are compatible ones e.g rtcm1005, 10x7 etc?
here the hw ref.
Quectel_LC29H_Series_Hardware_Design_V1.2.pdf (1.6 MB)

Quectel_LC29H_Series_Reference_Design_V1.2.pdf (457.7 KB)

Yes I tried on UART1 and the result is the same.

I just looked into my code again and I was using an old mountpoint which is now fixed. Now im using " VRS_3_4G_BB" which uses RTCM 3.3 with MSM4 (Messages 1074, 1084, 1094, 1124), but still the board doesnt recieve anything.

This is the board I bought:
https://www.aliexpress.us/item/3256806684436336.html?gatewayAdapt=glo2usa4itemAdapt

if the module has an adhesive label instead of screen printing…
…probably a cloned chip.

It isnt a label, its screenprinted. The module also outputs gps data and even gets to fix 2 after a while which indicates that is works as expected, exept for accepting RTCM data

Ok, try to output the $PQTMVERNO*58 , post it and ask for a new firmware.
If U can connect the module direcly with the QGNSS via a usb -->ttl for debugging…
https://market.quectel.com/docsdownload/QGNSS_V1.10_EN.zip

I encountered issues on www.sapos-bb-ntrip.de caster (no auth), so did U see a real stream from?
Why not try the euref-ip.net with free registration service at BKG Ntrip registration
Regards

Hi @Max_Mustermann

May i know the firmware version of the modules?

Can you provide the NMEA log regarding your RTK setup?

Best regards,

Sorry for the late answer but I got rate limited due to my account being so new.

Will try the other souce asap but im pretty sure that I recieve correct data. This is in my self written console which outputs the returned data:

It also returns code 200 and the data you can see in the image.
I just downloaded satrack (esp is connected to the module on port R1 and acts as a relay) and tried to send the command to get the firmware Version (command: $PQTMVERNO*58) but nothing showed up. I can recieve all the data from the module but I cant send something to it. At this point I will probably try to measure the pin to test if something gets through.

Ok I actually made some progress somehow over telnet I can now send commands.
Firmware Version is: $PQTMVERNO,LC29HDANR11A03S_RSA,2024/03/19,13:55:31*20
I will try to send RTCM via this way.

1 Like

Used the wrong code to send to the module. Now it works as expected.