# GPS Modules for LoRa Nodes

GPS provides automatic position reporting for mesh mapping and navigation. Many boards include an integrated GPS; for those that don't, external GPS modules can be added via UART or I2C.

## Integrated GPS vs External Module

<table id="bkmrk-approachboardsprosco"><thead><tr><th>Approach</th><th>Boards</th><th>Pros</th><th>Cons</th></tr></thead><tbody><tr><td>Integrated GPS</td><td>T-Beam, T-Echo, some RAK boards</td><td>All-in-one, no wiring</td><td>Higher cost, harder to disable to save power</td></tr><tr><td>External UART GPS</td><td>Any board with UART pins</td><td>Flexible, replaceable, can be positioned for best sky view</td><td>Wiring required, adds bulk</td></tr><tr><td>GPS from phone via BLE</td><td>Any (Meshtastic only)</td><td>No hardware needed</td><td>Requires active phone connection; phone must remain near node</td></tr></tbody></table>

## Popular External GPS Modules

<table id="bkmrk-moduleinterfacettff-"><thead><tr><th>Module</th><th>Interface</th><th>TTFF (cold)</th><th>Current Draw</th><th>Notes</th></tr></thead><tbody><tr><td>u-blox NEO-M8N</td><td>UART</td><td>26s</td><td>23 mA</td><td>Excellent sensitivity; widely supported</td></tr><tr><td>Quectel L76K</td><td>UART</td><td>30s</td><td>18 mA</td><td>Used in newer T-Beam boards; compact</td></tr><tr><td>u-blox MAX-M8Q</td><td>UART</td><td>26s</td><td>15 mA</td><td>Compact form factor; patch antenna</td></tr><tr><td>ATGM336H</td><td>UART</td><td>35s</td><td>20 mA</td><td>Inexpensive Chinese alternative; adequate for most uses</td></tr><tr><td>GT-U7 (NEO-6M clone)</td><td>UART</td><td>60s+</td><td>45 mA</td><td>Very inexpensive; poor sensitivity; not recommended</td></tr></tbody></table>

TTFF = Time To First Fix from a cold start in open sky conditions.

## Wiring an External UART GPS

Most GPS modules use 3.3V logic and UART at 9600 baud. Connect:

- GPS VCC → 3.3V on LoRa board
- GPS GND → GND on LoRa board
- GPS TX → UART RX pin on LoRa board
- GPS RX → UART TX pin on LoRa board (needed only if sending commands to GPS)

Configure in Meshtastic: Config → Position → GPS Mode = Enabled; GPS RX pin = RX pin number from your board's pinout.

## GPS Power Management

GPS is one of the largest power consumers on a LoRa node. For battery-powered nodes:

- **Disable GPS if fixed position is configured** - A repeater at a known location doesn't need active GPS
- **Increase GPS update interval** - For slow-moving applications, a 60-300 second GPS update interval with smart beaconing works well
- **GPS power gating** - Some boards route GPS power through a GPIO-controlled switch. Meshtastic can be configured to power-cycle the GPS between fixes, reducing average consumption to under 5 mA
- **AGPS data** - Pre-loading almanac data via the [Meshtastic app](https://wiki.meshamerica.com/books/hardware-guide/page/meshtastic-app) when connected to internet reduces cold start time from 30-60 seconds to 2-5 seconds