Optimizing GNSS Receivers for FPV Drones: Step-by-Step Setup
Configuring GNSS receivers on U-blox M8 and M10 chips reduces the time to acquire 6+ satellites to 0.5–2 minutes instead of the factory 5–10. Disabling NMEA in favor of UBX, selecting GNSS systems, full power mode, and 5 Hz data updates minimize UART load and speed up return-to-home. This guide targets mid/senior drone developers familiar with Betaflight CLI and soldering.
Required Equipment
- GNSS receiver: HGLRC M80 (M8, GPS+GLONASS) or M100 Mini (M10, GPS+GLONASS+Galileo+BeiDou+QZSS).
- TTL-USB adapter (FT232RL FTDI) with 3.3/5 V switch.
- u-center software from U-blox.
- MicroUSB/Type-C cable.
- GPS Test app for signal assessment.
Connection: RX→TX, TX→RX, VCC (5 V)→VCC, GND→GND. The green LED on the FTDI blinks during data transmission. Alternative: gpspassthrough in Betaflight CLI, but with risk of VTX interference.
Connecting to u-center
Select the COM port and baud rate (57600 for M10, 9600–38400 for M8). The "magic" button (wand icon) auto-detects settings. After connection (green indicator), press F6 for Packet Console. The log shows satellites and signal strength.
UART Protocol Configuration
Betaflight works only with UBX or NMEA. Factory receivers send both, cluttering the bandwidth. In Configuration View → PRT (UART1):
- Protocol in/out:
0 - UBX. - Baud rate: 57600 (M10) or 9600 (M8).
Click Send to write to flash. This eliminates extra packets; the UBX checksum ensures integrity, and the binary format saves bandwidth.
GNSS System Optimization
In GNSS Config, disable unnecessary systems to speed up the fix:
- M100 Mini: GPS (L1) + GLONASS (L1) + Galileo (E1) or BeiDou (B1C).
- BeiDou B1 + GLONASS conflicts — for compatibility, switch to Generation 9 View → B1C for BeiDou.
- M80: GPS + GLONASS (default).
Save to flash. Test in GPS Test: goal — 6+ satellites outdoors.
Power Mode and Update Rate
In PMS (Power Management):
0 - Full Powerinstead of Balanced for fast TTFF (time to first fix).
In RATE:
- 200 ms (5 Hz) instead of 1000 ms (1 Hz).
GNSS power consumption is negligible compared to motors/VTX; the flight time gain comes from reduced idle time.
Verification and Tests
After configuration:
- Connect to Betaflight and check satellites in the GPS tab.
- TTFF <2 min on cold start.
- Flight: RTH (return to home) with 6+ satellites.
- u-center: monitor baud usage <20%, no NMEA.
Avoid metal shelters — signal weakens there. Indoor fix is impossible.
Key Points
- UBX over NMEA: bidirectional protocol, CRC, compact binary format.
- 5 Hz + Full Power: TTFF 0.5–2 min, minimum 6 satellites for RTH.
- GNSS combo: GPS+GLONASS+Galileo for reliability in Europe/LatAm.
- Baud 57600: balance of speed and stability, no packet loss.
- Test at the launch site: GPS Test shows real SNR.
— Editorial Team
No comments yet.