Skip to content

GPS_Tracker is an ESP8266-based IoT project that tracks real-time location using the NEO-6M GPS module and sends data to a web server or via SMS using the SIM800L GSM module. It features a live web interface, emergency alerts through SMS or missed calls, and supports both GMT and IST formats for time reporting.

Notifications You must be signed in to change notification settings

tezodipta/GPS_Tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GPS_Tracker

ESP8266 GPS Tracker with Web Interface and SMS Functionality

Overview

This project is a GPS tracker that uses the ESP8266 Wi-Fi module, NEO-6M GPS module, and SIM800L GSM module to gather and transmit location data like latitude, longitude, speed, altitude, and timestamps. The data is sent to a backend server using HTTP, displayed on a web interface, and can also be sent via SMS or missed call to a specified phone number by triggering a button.


Required Components

  1. ESP8266 Wi-Fi Module
  2. NEO-6M GPS Module
  3. SIM800L GSM Module
  4. Connecting Wires
  5. Power Supply (3.3V for ESP8266 and 5V for GPS and GSM modules)

Circuit Diagram

Connections:

ESP8266 Pin NEO-6M GPS Pin SIM800L Pin
D1 D1 (RX)
D2 D2 (TX)
D3 D3 (TX)
D4 D4 (RX)
VCC 3V 3.7v Battery
GND GND GND

create a common ground for all the modules.

Note: Ensure proper power supply to all modules. Use a voltage regulator or level shifter as needed for compatibility.


Project Structure

Main Folder
│
├── Circuit_pic/
│   └── Circuit.png                            # Circuit diagram for the project. 
|
├── Final/
│   └── Final_code.ino                         # Code for sending location data to Website and sending location Via sms by push button and Emergency calling function.
|
├── GMT/
│   └── GMT.ino                                # Code for sending GMT time, lat, long, etc to the server.
│
├── IST/
│   └── IST.ino                                # Code for sending IST time, lat, long, etc to the server.
│
├── sendLocation/
│   └── sendLocation.ino                       # Code for sending GMT time, lat, long, via sms ony.
│
├── Webpage/
│   └── frontend/                              # Frontend code for the web interface
│   └── backend/                               # Backend code for the web server

Installing Dependencies

Prerequisites

  • Install Node.js from nodejs.org.
  • Verify the installation:
    node -v
    npm -v
    
  • Install cors
    npm install cors
  • To start the server, run:
    node server.js
    or
    nodemon server.js

For ESP8266

  • Install the Arduino IDE from arduino.cc.
    1. ESP8266 Library (ESP8266WiFi, ESP8266HTTPClient, WiFiClientSecure) Open Arduino IDE. Go to File > Preferences. Add the following URL to the Additional Board Manager URLs field:
    http://arduino.esp8266.com/stable/package_esp8266com_index.json
    
    Go to Tools > Board > Boards Manager. Search for ESP8266 and click Install. This will install the ESP8266 core along with the required libraries (ESP8266WiFi.h, ESP8266HTTPClient.h, WiFiClientSecure.h).
    1. TinyGPS++ Library Go to Sketch > Include Library > Manage Libraries. In the Library Manager, search for TinyGPS++. Install the library by Mikal Hart.

Circuit Diagram

Circuit image

output sample

{ "latitude": "33.225897", "longitude": "17.546809", "altitude": "0.00", "speed": "0.48", "time": "19:42:35" }

About

GPS_Tracker is an ESP8266-based IoT project that tracks real-time location using the NEO-6M GPS module and sends data to a web server or via SMS using the SIM800L GSM module. It features a live web interface, emergency alerts through SMS or missed calls, and supports both GMT and IST formats for time reporting.

Topics

Resources

Stars

Watchers

Forks