Wi-Fi GPS Tracker with Seeed Studio XIAO ESP32-S3 & Geofencing

Tracking the location of things doesn’t have to mean pricey cellular plans and complex hardware. In this project, we build a compact Wi-Fi GPS tracker using a Seeed Studio XIAO ESP32-S3 and a Neo-6M GPS module, all tied together with an easy cloud backend called GeoLinker. The result: real-time position reporting, geofence alerts, and SMS notifications — without a SIM card or GSM modem

🧠 What is it?

This tracker continuously reads GPS coordinates from the Neo-6M module and sends them over Wi-Fi to the GeoLinker cloud service. GeoLinker then plots the device on a map and logs historical tracks for analysis. A built-in geofencing feature lets you set a virtual boundary around a location — and receive an SMS alert when the device exits it. 

🔑 Key Features

  • 🚫 No Cellular Service Needed – Uses Wi-Fi and REST APIs instead of SIM/GSM modules. 

  • 📍 Real-Time Tracking – GPS coordinates pushed to the cloud at adjustable intervals. 

  • 🛑 Geofencing & Alerts – SMS notifications when the tracker crosses a defined boundary. 

  • 💾 Offline Buffering – Stores GPS data when Wi-Fi is unavailable and uploads on reconnect. 

  • 🗺️ Interactive Mapping – View route history and live location in your browser. 

🛠️ How It Works

  1. GPS Fix — The Neo-6M GPS gets satellite signals and computes lat/lon. 

  2. ESP32 Processing — The XIAO ESP32-S3 reads the GPS data over UART. 

  3. Wi-Fi Upload — Coordinates are sent via Wi-Fi to the GeoLinker API. 

  4. Geofence Logic — The code checks distance from a reference point using the Haversine formula. 

  5. SMS Alerts — When outside the boundary, an SMS is triggered via a cloud API. 

  6. Offline Mode — If Wi-Fi drops, data gets buffered locally and uploaded later. 

🔌 Hardware You’ll Need

  • Seeed Studio XIAO ESP32-S3 – main controller with Wi-Fi. 

  • Neo-6M GPS Module – for GPS coordinate acquisition. 

  • Breadboard & Wires – for prototyping. 

  • External GPS Antenna – improves satellite reception. 

🔧 Software Stack

  • Arduino IDE – build and flash firmware. 

  • GeoLinker Library – handles cloud comms. 

  • TinyGPSPlus – parses GPS data. 

  • WiFiClientSecure – HTTPS connectivity. 

🧠 Code & Cloud Setup

You’ll need a GeoLinker API key for uploads and SMS services. The ESP32 code manages GPS reads, handles geofence checks, and talks to GeoLinker. If your Wi-Fi goes offline, the tracker keeps data in a buffer and resyncs automatically once reconnected. 

📈 Real-World Uses

  • Vehicle & fleet tracking

  • Asset and equipment monitoring

  • Pet and personal trackers

  • Child or elderly geofence alerts
    No GSM subscription means lower operating costs and simpler builds. 

📌 Tips & Customisation

  • Adjust the update interval for battery or data efficiency. 

  • Change the geofence radius to suit your use case. 

  • Add multiple geofences or speed alerts for richer behaviour.

compact GPS tracker using Seeed Studio XIAO ESP32-S3 enables real-time location tracking and geofencing alerts over Wi-Fi without the need for a cellular SIM.