Arduino Projects

Vehicle Location Tracker Using Arduino

step by step guide how you make vehicle location tracking system


The Vehicle Location Tracking System is an innovative solution that uses Arduino and it enables real-time tracking and remote control of a vehicle. This article will explain the completed process of the projects and explain all components in detail.

Circuit Components





Arduino Board



GSM module (SIM800l)



GPS module (NEO-6M)



Ignition switch (relay module)



Ignition sensor






9v Power Supply


Arduino Board

    • The Arduino board is the control unit in the system.
    • It is responsible for processing data, executing commands, and interacting with the GSM and GPS modules.


Arduino UNO
Arduino UNO

GSM Module (SIM800l)

    • The GSM module facilitates communication with the vehicle using the Global System for Mobile Communications (GSM) network.
    • It enables sending and receiving SMS messages, which allows for remote control and monitoring of the vehicle.
    • The module is connected to the Arduino board to pin numbers 2 and 3.

Components1 2

GPS Module (NEO-6M)

    • The GPS module integrates Global Positioning System (GPS) functionality into the tracking system.
    • It receives signals from GPS satellites to determine the vehicle’s precise location coordinates.
    • The module is connected to pin numbers 8 and 9.


Ignition Switch

    • The ignition switch is a physical switch that controls the vehicle’s ignition system.
    • It can be turned on or off remotely through SMS commands, providing control over the vehicle’s engine.

water Pump Conected To the relay module e1686916865269

Ignition Sensor

    • The ignition sensor is an analog sensor connected to the Arduino board.
    • It measures the voltage or resistance associated with the vehicle’s ignition status.
    • The sensor helps detect whether the ignition is on or off, enabling the system to monitor the vehicle’s status.

Screenshot 2023 06 16 at 1.54.28 PM


Resistor (10Ω) and Resistor (10kΩ)

    • These resistors are used in conjunction with the ignition sensor.
    • They create a voltage divider circuit to convert the analog signal from the ignition sensor into a measurable value.

12V Power Supply

    • The tracking system requires a 9V power supply to operate the Arduino board, GSM module, GPS module, and other components.
    • The power supply can be sourced from the vehicle’s battery or an external power source.

Screenshot 2023 06 16 at 1.56.44 PM

Circuit Diagram

GSM Module

    • RX pin of the GSM module is connected to digital pin 11 (txPin) of Arduino.
    • TX pin of the GSM module is connected to digital pin 10 (rxPin) of Arduino.
    • The GSM module is powered and grounded appropriately.

GPS Module

    • RX pin of the GPS module is connected to digital pin 9 of Arduino (AltSoftSerial library is used).
    • TX pin of the GPS module is connected to digital pin 8 of Arduino.
    • The GPS module is powered and grounded appropriately.

Ignition Relay

    • One terminal of the ignition Relay is connected to digital pin 4 of Arduino.
    • The other terminal of the ignition switch is connected to the ground.
    • A pull-up or pull-down resistor may be necessary based on the switch type.

Ignition Sensor

    • The ignition sensor is connected to analog pin A0 of Arduino.
    • Appropriate 1M and 100k resistors and wiring may be required for proper sensor connections.

circuit diagram 23



Libraries Required

  • SoftwareSerial.h and AltSoftSerial.h These libraries enable serial communication with the GSM and GPS modules.
  • TinyGPS++.h This library provides GPS parsing functionality.

Pin Definitions

    • neogpsAn instance of the AltSoftSerial library for GPS module communication.

Global Variables

    • Various boolean and string variables are used to store status, phone numbers, received SMS details, and messages.

setup() function

    • Sets the pinMode for the ignition switch and ignition sensor.
    • Sends AT commands to the GSM module to configure settings.

loop() function

    • Checks the ignition status and perform different actions based on the tracking and anti-theft statuses.
    • Sends GPS coordinates to the server at regular intervals when tracking is enabled.

parseData() function

    • Processes the response received from the GSM module.
    • Extracts SMS information and calls the extractSms() function.

extractSms() function

    • Extracts and stores information from the received SMS messages, such as status, sender number, date, and message content.


doAction() function

    • Performs different actions based on the received SMS message.
    • Controls the ignition switch, sends SMS responses, and toggles tracking and anti-theft statuses.

Other Helper Functions

    • deleteSms(): Deletes all SMS messages.

    • sendSmsGPS(): Sends an SMS message containing the GPS location.

    • sendSms(): Sends a general SMS message.

    • setIgnition(): Sets the ignition status based on the ignition sensor reading.

After Uploading the code just open the Serial Monitor 

Vehicle Location Tracker Using Arduino



Here we make the real-time location information tracker, and also we sensor notifications to vehicle owners if anything happens. This is used in various fields but in this article, we only show the Vehicle Location Tracking System.

More Arduino Tutorial


Hi, Prateek Here I’m interested in Electronics That's why I Make Soo Many Projects, I’m currently Pursuing M Tech.. if you Relay Like To My Blog Plz Comment Below...Thanks To All Electronics Lover...❤️

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button

Adblock Detected

Please consider supporting us by disabling your ad blocker