Maker.io main logo

GPS Tracker Using RYS352A GNSS Module and a WiFi LoRa ESP32 Board

2026-09-08 | By Vaani Jain

License: Apache License, Version 2.0

GNSS receivers make it possible to determine the location of a device using signals from navigation satellites. In this project, we combine the REYAX RYS352A GNSS module with a WiFi LoRa ESP3232 board to build a simple GPS tracker.

The RYS352A receives satellite data and sends standard NMEA sentences to the ESP32 over UART. The ESP32 board processes the data, displays the current latitude, longitude, and satellite count on its onboard OLED, and hosts a simple web page for viewing the location and travel path.

The tracker works locally through a Wi-Fi hotspot and does not require a paid cloud service or dedicated tracking platform.

Note: The term GPS tracker is used here because it is commonly understood for location-tracking devices. The RYS352A is actually a multi-GNSS receiver supporting several satellite constellations.

How the GPS Tracker Works

The system has three main parts:

  • REYAX RYS352A GNSS module – receives signals from navigation satellites and outputs location data.

  • ESP32 WiFi LoRa board – processes GNSS data using its ESP32 controller and displays the information.

  • Mobile phone hotspot – provides Wi-Fi connectivity so the ESP32 can host and serve the tracking webpage.

After power-up, the ESP32 connects to the configured Wi-Fi hotspot. Its assigned IP address is shown on the OLED display. At the same time, the RYS352A searches for available satellites. Once it obtains a valid fix, it begins transmitting NMEA data through its UART interface.

The ESP32 extracts the required information from these NMEA sentences and displays the latitude, longitude, and satellite count. It also hosts a web page that can be opened from another device connected to the same Wi-Fi network. The map uses OpenStreetMap tiles. Internet access is required for loading the map tiles, but GNSS positioning itself does not require an internet connection.

As the tracker moves, the webpage updates the current position and retains previous coordinates to create a travel trail.

What Is GNSS?

GNSS, or Global Navigation Satellite System, refers to satellite-based positioning systems used to determine location and time.

GPS is one GNSS constellation operated by the United States. Other systems include:

  • GPS – United States

  • GLONASS – Russia

  • Galileo – European Union

  • BeiDou – China

  • QZSS – Japan

A GNSS receiver determines its position by measuring the time taken for signals from multiple satellites to reach the receiver. It uses these measurements to calculate its distance from the satellites and determine its position through trilateration.

Signals from at least three satellites can be used to determine a two-dimensional position, while a fourth satellite is required to determine altitude as well. In general, being able to track more satellites improves positioning availability and reliability.

REYAX RYS352A GNSS Module

The REYAX RYS352A is a compact, high-sensitivity multi-GNSS receiver based on the Airoha AG3352 GNSS engine.

It communicates with a host controller through a 3.3 V UART interface and outputs standard NMEA 0183 V4.10 navigation data.

Key Features

  • GPS, GLONASS, Galileo, and BeiDou support

  • Airoha AG3352 GNSS engine

  • 3.3 V UART interface

  • NMEA 0183 V4.10 protocol

  • Integrated GNSS antenna

  • Built-in SAW filter, LNA, and TCXO

  • Indoor and outdoor path detection and compensation

  • Rechargeable RTC battery backup

  • TXD and 1PPS LED indicators

  • 12 multi-tone active interference cancellers

  • Compact and lightweight design

  • Maximum 10 Hz navigation update rate

RYS352A Hardware Overview

The main hardware features of the module include an integrated GNSS antenna, status LEDs, RTC backup battery, and a 6-pin Molex connector.

GNSS antenna: Receives RF signals transmitted by navigation satellites.

TXD LED: Indicates transmission of NMEA data through the UART TX pin.

1PPS LED: Indicates the status of the one-pulse-per-second output. After a valid GNSS fix is acquired, it pulses once per second.

Rechargeable RTC battery: Maintains the real-time clock and satellite-related information when the main power is removed.

Molex connector: Provides a convenient 6-pin interface for connecting the GNSS module to a controller.

RYS352A Pinout

The RYS352A provides the following pins:

GNSS Module Pinout

GNSS Data Output: NMEA Protocol

The RYS352A communicates using standard NMEA sentences with a default baud rate of 115200 bps.

NMEA data is transmitted as ASCII text sentences containing navigation information such as position, altitude, speed, date, time, and satellite status.

For example:

$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47

The ESP32 reads these sentences through UART and extracts the required location information before displaying or serving it through the web interface.

ESP32 WiFi LoRa board

The ESP32 WiFi LoRa board acts as the main controller.

Its ESP32 handles several tasks in the project:

  • Receives NMEA data from the RYS352A

  • Extracts latitude, longitude, and satellite information

  • Displays GNSS information on the onboard OLED

  • Connects to a Wi-Fi hotspot

  • Hosts the local tracking webpage

Hardware Required

ESP32 WiFi LoRa board

REYAX RYS352A GNSS Module

USB A to USB C cable1

12 V lithium battery

Software Required

  • Arduino IDE 2.3.9 or later

  • ESP32 Dev-Boards library

Circuit Connections

Circuit diagram

The RYS352A GNSS module operates from a 3.3 V supply, so connect its VCC pin to the 3.3 V supply and its GND pin to the common ground of the circuit. For UART communication, connect the TXD pin of the RYS352A to GPIO38 (11th pin of header J3) on the ESP32 WiFi LoRa board. GPIO38 is used as the UART receive pin in this project, allowing the ESP32 to receive the NMEA sentences transmitted by the GNSS module.

The RYS352A can also be connected directly to the dedicated GNSS Molex connector on the ESP32 WiFi LoRa board. In this configuration, connect the RYS352A VCC pin to Molex Pin 7, GND to Pin 8, and TXD to Pin 4. The ESP30 board also provides VGNSS_CTRL (GPIO34) for controlling the GNSS module's power through software. The required switching circuitry is already implemented on the board, and this power-control feature is available when the RYS352A is connected through the dedicated Molex connector.

For the prototype, a breadboard power supply module can be used with a 12 V battery. The power supply module regulates the battery voltage and provides the required 5 V or 3.3 V output for the circuit.

Building the Tracker

Once the wiring is complete:

  1. Connect the RYS352A GNSS module to the ESP32 WiFi LoRa board.

  2. Connect the appropriate 3.3 V and ground supply.

  3. Connect the ESP32 board to a computer using USB.

  4. Install the required ESP32 board package in Arduino IDE.

  5. Upload the tracker firmware.

  6. Enable the mobile Wi-Fi hotspot.

  7. Power up the tracker and wait for the GNSS receiver to acquire satellites.

  8. Note the IP address shown on the OLED display.

  9. Open that IP address in a browser from a device connected to the same Wi-Fi network.

The webpage shows the current position on a map and builds a trail as the tracker moves.

For the complete firmware, wiring illustrations, code explanation, and testing procedure, see the full GPS tracker project guide on Play with Circuit.

Troubleshooting

No GNSS fix

Move the antenna to an open area with a clear view of the sky. Indoor environments can significantly reduce satellite signal reception.

No location data on the ESP32

Check the UART wiring, particularly the connection between RYS352A TXD and GPIO38. Also verify that the serial communication is configured for 115200 bps.

OLED does not show the IP address

Check the Wi-Fi hotspot credentials in the firmware and make sure the hotspot is enabled before powering the board.

Map tiles are not displayed

The tracker can continue receiving GNSS coordinates without internet access, but the map tiles require internet connectivity. Make sure the phone providing the hotspot has an active internet connection.

Conclusion

This project demonstrates a straightforward way to combine a multi-GNSS receiver with an ESP32-based development board. The RYS352A handles satellite reception and NMEA data generation, while the ESP32 WiFi LoRa board processes the data, displays the position, and provides a local web interface.

Because the positioning data comes directly from the GNSS receiver, the basic location functionality does not depend on a cloud service. This makes the setup useful for experimenting with GNSS, UART communication, ESP32 web servers, and location-based IoT projects.

Número de parte del fabricante RYS352A
REYAX RYS352A +3.3V UART Interfa
REYAX
$11.80
Ver más Details
Add all DigiKey Parts to Cart
Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.