Have just ordered one of these boards and read the hookup guide on getting it set up with PyGPSclient. That all makes sense. This will be going on a robot, so need to be able to capture GPS points via python code. I’ve found an example or two of how one might generically read the GPS position in a script, tho any tips would be welcome. Perhaps more importantly, I cannot see how one gets corrections from a RTK correction network (like Quectel’s) to the LG580P board.
You set the correction info in in the QGNSS software, you can then use python to push/pull however
The main thing that isn’t in our guide is getting a correction source added, but luckily we cover that a few ways here SparkFun GPS-RTK Dead Reckoning ZED-F9K Hookup Guide - SparkFun Learn ![]()
Based on these instructions, I have installed QGNSS V2.3 on a Windows 11 machine. Per the instructions, I have attempted to install CH342 USB Driver (regardless of whether the pHAT is connected to the laptop, I get a message that the driver is “pre-installed” which I have read to mean that it is not detecting the board…I also do not see any serial connection options within QGNSS).
I have the Flex pHAT - LG580P connected to the Windows 11 machine using a USB-C to USB-A cable. I do not have the Flex pHAT installed on the Raspi.
Any tips or tricks?
Hi @kbares ,
The LG580P Breakout and the pHAT + Flex LG580P are quite different products:
The Breakout has a CH342 which makes one of the LG580P’s UART ports (UART1) accessible over USB. The Breakout can also be powered via USB.
The pHAT + LG580P is different. It is designed to connect all the GNSS UARTs to the RPi. It is not designed as a stand-alone breakout. It has no on-board CH342. The USB connector on the pHAT is only for Flex GNSS modules which support USB directly: mosaic-X5, mosaic-G5 P3 and ZED-X20P. The LG580P does not support USB directly. The pHAT can only be powered from the RPi 2x20 way header; it can not be powered through the USB connector.
If you buy the GNSS Flex Breakout and move your LG580P module onto that, then you will be able to both connect over USB and power the board from USB. The UART USB connector provides access to GNSS UART1 and UART2 through an on-board CH342.
I hope this helps,
Paul
Thank you @PaulZC!
Am I correct in concluding that I can get the LG580P set up to receive RTK corrections from the Quectel network using the GNSS Flex Breakout and then return the LG580P to the Flex pHAT, and it’ll then be set up to receive RTK corrections assuming that the Raspi has an internet connection?
Hi @kbares ,
It looks like the Quectel RTK Corrections Solution uses NTRIP:

QGNSS has a NTRIP Client option under Tools. I’ve never tried the Quectel service, but I’m guessing that you simply connect to their server with your credentials and it delivers RTCM corrections to the GNSS. I suspect it behaves the same as if you were connected to any other NTRIP service (RTK2go, Swift Navigation, u-blox, Point One, etc.).
The GNSS itself is unaware of the NTRIP Server mount point and credentials. That part is looked after by the NTRIP Client.
On RPi, PyGPSClient supports the Quectel modules and also has an NTRIP Client. You should be able to connect to the Quectel Server in exactly the same way as you would with QGNSS.
So, no, you shouldn’t need the GNSS Flex Breakout… You should be able to do everything directly with the pHAT on RPi.
I hope this helps,
Paul