GPS modules and interference

Stratux autodetects u-blox 6, 7, 8 and 9 USB GPS modules such as the VK-162, VK-172 and GPYes, and it uses only one GPS source at a time. If your GPS is slow or jumpy, the usual cause is radio noise from the SDRs, the Pi fan or nearby cables, so test by removing each one.

Supported USB modules

Stratux recognizes u-blox USB GPS modules by their USB ID. You don't need to configure them first, because Stratux sets up the chip itself at startup.

Module u-blox generation
VK-162 6 (rev 1) or 7 (rev 2)
VK-172 7
GPYes (original) 7
GPYes 2.0 8

Stratux doesn't rank the generations, and all of them work. Don't count on WAAS (SBAS) from every unit. Some GPYes 2.0 boards use a cut-down u-blox chip, and reports differ from unit to unit. u-center shows what a particular module supports.

Only one GPS is used

Stratux picks a single local GPS device, in a fixed order. A manual configuration comes first, then u-blox USB modules, then other serial devices. A second GPS is ignored. Two GPS modules give redundancy only, not better accuracy. The same applies to a tracker: a USB u-blox plus a SoftRF/OGN tracker won't give you position from one and traffic from the other.

UART (Raspberry Pi serial) modules

A GPS wired to the Pi's serial port works. Stratux can't identify the chip, so it treats it as a generic u-blox and probes 115200, 38400 and 9600 baud. Keep these points in mind:

  • USB is recommended over Pi serial, because UART setups are more sensitive to noise.
  • Chips with no USB interface (such as u-blox 10) need a USB-UART bridge or a wired UART.
  • A serial console (getty) holding the port must be disabled.
  • Manual settings aren't in the web UI. They live in /boot/firmware/stratux.conf (GpsManualConfig, GpsManualChip, GpsManualDevice, GpsManualTargetBaud).
  • Some Pi 4B users fixed garbled serial GPS with dtoverlay=disable-bt in config.txt. That is unsettled, so treat it as a per-setup experiment, not a requirement.

Using a tracker as the GPS

A SoftRF, OGN or T-Beam tracker that appears as /dev/serialin is used as the GPS when no u-blox USB GPS is found. If Stratux shows no fix while the tracker itself has one:

  1. Set nmea_g and nmea2_g to 0F on the tracker and save. Stratux normally sends these commands itself.
  2. Replace the USB cable. Repeated USB enumeration errors usually mean a bad cable.
  3. To see the raw output, run systemctl stop stratux, then cat /dev/serialin.

A T-Beam's weak GPS is mostly its small antenna, and u-blox 8 or newer is preferred.

Fixing slow, jumpy or lost GPS

The SDR radios, a failing SDR, the Pi fan and cables touching the GPS module all emit noise. Reports include slow lock, 0 satellites in solution and jumping positions. Try these in order:

  1. Put the GPS in the top USB port with its ceramic antenna facing the sky, not under the SDRs.
  2. Turn off 978 Mhz (UAT) and 1090 Mhz (ADS-B/Mode-S ES) on the Settings page, or unplug the radios, and see whether the fix improves. A failing 1090 SDR has been known to block lock entirely.
  3. Unplug the fan. One report went from about 10 to about 20 satellites.
  4. Reroute cables away from the GPS.
  5. Use a USB extension cable or an external antenna so the module sits away from the radios.
  6. Place a foil-wrapped cardboard shield, insulated with tape, between the SDRs and the GPS. One report improved from 30–50 m to about 2–3 m.

Removing only the SDR's antenna doesn't help, because the powered dongle itself radiates. A metal roof also reduces satellites, so an external puck on the dash can help.

Watch the result on the Status or GPS/AHRS page at 192.168.10.1. See The Stratux web interface. A weak or clone module may need replacing by the seller.

Not possible

Stratux can't take GPS from an EFIS or panel unit, because its serial output is one-way GDL-90. See Panel avionics. There is also no SDR fallback for position.

Get help

Still stuck? Ask in the Discord.