Introduction: Make Your Own GPS SMS Security Tracking System
In this project I will show you how to combine a SIM5320 3G module with an Arduino and a piezoelectric transducer as a shock sensor in order to create a security tracking system that will send you the location of your precious vehicle via SMS when it is moved around without you knowing it. Let's get started!
Step 1: Watch the Video!
The video gives you a decent overview on how to create the security tracking system. In the next steps though, I will present you some additional information.
Step 2: Order Your Components!
Here you can find a parts list with example sellers (affiliate links):
Aliexpress:
1x SIM5320 3G Module (USA): https://s.click.aliexpress.com/e/_dWICzdV
1x Arduino Pro Mini: https://s.click.aliexpress.com/e/_d62ALdV
1x MCP602 OpAmp: https://s.click.aliexpress.com/e/_dTDPgWT
2x 20kΩ, 2x 680kΩ, 1x 10kΩ, 1x 470Ω Resistor: https://s.click.aliexpress.com/e/_dTPpXjt
1x 50kΩ Trimmer: https://s.click.aliexpress.com/e/_dTFyPv5
1x IRLZ44N MOSFET: https://s.click.aliexpress.com/e/_dWhSrDl
1x LM2940CT 5.0 Voltage Regulator: https://s.click.aliexpress.com/e/_dW9TqXl
1x 220nF, 1x 22µF Capacitor: https://s.click.aliexpress.com/e/_d7dOwRz
1x Piezoelectric Transducer: https://s.click.aliexpress.com/e/_d9FMvMj
1x Key Switch: https://s.click.aliexpress.com/e/_dZN7GI3
Ebay:
1x SIM5320 3G Module (Europe): http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x SIM5320 3G Module (USA): http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x Arduino Pro Mini: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x MCP602 OpAmp: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
2x 20kΩ, 2x 680kΩ, 1x 10kΩ, 1x 470Ω Resistor: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x 50kΩ Trimmer: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x IRLZ44N MOSFET: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x LM2940CT 5.0 Voltage Regulator: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x 220nF, 1x 22µF Capacitor: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x Piezoelectric Transducer: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
1x Key Switch: http://rover.ebay.com/rover/1/711-53200-19255-0/1?...
Amazon.de:
1x SIM5320 3G Module (Europe): -
1x Arduino Pro Mini: http://amzn.to/2kMv0ly
1x MCP602 OpAmp: http://amzn.to/2dLaboV
2x 20kΩ, 2x 680kΩ, 1x 10kΩ, 1x 470Ω Resistor: http://amzn.to/2nFIpOR
1x 50kΩ Trimmer: http://amzn.to/2nSlGyk
1x IRLZ44N MOSFET: http://amzn.to/2dL9WKB
1x LM2940CT 5.0 Voltage Regulator: http://amzn.to/2nFLFK0
1x 220nF, 1x 22µF Capacitor: http://amzn.to/2n2kUyp
1x Piezoelectric Transducer: http://amzn.to/2nFVKqH
1x Key Switch: http://amzn.to/2nFVPuv
Step 3: Build the Circuit!
Here you can find the schematic of the project and pictures of my finished circuit as a reference.
Step 4: Upload the Code!
Here you can find the sketch that you need to upload to your Arduino Pro Mini. Make sure to change the telephone number inside the sketch before the upload. And don't worry "+491521234567" is not my actual number.
Don't forget to also download these libraries and copy them into the library folder of your Arduino software:
Attachments
Step 5: Success!
You did it! You just created your GPS SMS Security Tracking System!
Feel free to check out my YouTube channel for more awesome projects:
http://www.youtube.com/user/greatscottlab
You can also follow me on Facebook, Twitter and Google+ for news about upcoming projects and behind the scenes information:
26 Comments
Question 2 years ago
Hello ! Where can i find the code for this project. i need it on my communications 1 subject. Thank you
Question 3 years ago on Step 5
i want to asking that, this project is send SMS again and again, or only one time.???
if again and again then how much time take for next sms???
Question 3 years ago
Hi! I was wondering if someone could tell me what type of resistors are used for the circuit? I think there are 2-3 different types but i can’t tell from looking at the picture. Thank you very very much! :)))
Question 4 years ago on Step 3
Please could you tell me what software you used to carry out your circuit simulation because the sim5320 virtually doesnt have component library online that works
4 years ago
Hi,
Could you please tell me, what kind of antenna did you use for GPS? I couldn't get the latitude and longitude positions. Could you please tell me how did you fix the issue? any inputs will be helpful. Thanks.
Question 4 years ago
dear sir
can you help me I am also trying to make a SMS GPS sending circuit for my school.
I have two arduino programs a SMS sending program by pushing a button and the other a GPS showing program on LCD display .
I just cant get the two to work to gether ( send Lat and Lng by pushing a button)
can you plese help me to get the two programd to work together .
But both work seperately.
Ido not have a SIM5320 3G Module
I am using Sim 800 and neo 6m GPS
love to hear from soon.
MY GPS
#include <TinyGPS++.h>
#include <SoftwareSerial.h>
#include <LiquidCrystal.h>
static const int RXPin =10, TXPin =11;
static const uint32_t GPSBaud = 9600;
// The TinyGPS++ object
TinyGPSPlus gps;
// The serial connection to the GPS device
SoftwareSerial ss(RXPin, TXPin);
LiquidCrystal lcd(4,5,6,7,8,9);
void setup()
{
lcd.begin(16, 2);
Serial.begin(9600 );
ss.begin(GPSBaud);
lcd.setCursor(0,0);
lcd.print("** - - -GPS- - -**");
delay(10000);
lcd.setCursor(0,0);
lcd.print("GPS Connecting...");
lcd.setCursor(0,1);
lcd.print("GPS Connecting...");
delay(10000);
lcd.setCursor(0,0);
lcd.clear();
}
void loop()
{
// This sketch displays information every time a new sentence is correctly encoded.
while (ss.available() > 0)
if (gps.encode(ss.read()))
displayInfo();
if (millis() > 5000 && gps.charsProcessed() < 10)
{
lcd.print(F("No GPS detected"));
while(true);
}
}
void displayInfo()
{
if (gps.location.isValid())
{
Serial.println(gps.satellites.value());
lcd.setCursor(0,0);
lcd.print(" N = 0");
lcd.print(gps.location.lat(), 5);
lcd.setCursor(0,1);
lcd.print(" E = ");
lcd.print(gps.location.lng(), 5);
}
else
{
lcd.print("");
}
}
////////
MY SMS
#include <SoftwareSerial.h>
#include <String.h>
SoftwareSerial sim800l(2, 3); // RX, TX
float sensorValue;
const int buttonPin1 = 1;
int buttonState1 = 1;
float tempC;
float tempCavg;
int avgcount = 0;
void setup()
{
pinMode(buttonPin1, INPUT);
sim800l.begin(9600);
Serial.begin(9600);
delay(500);
}
void loop()
{
// BUTTON CONDITION
buttonState1 = digitalRead(buttonPin1);
if (buttonState1 == 0) {
SendTextMessage1();
}
if (sim800l.available()){
Serial.write(sim800l.read());
}
}
void SendTextMessage1()
{
// Serial.println("Sending Text...");
sim800l.print("AT+CMGF=1\r"); // Set the shield to SMS mode
delay(100);
sim800l.print("AT+CMGS=\"+94718557286\"\r"); //TELEPHON NUMBER
delay(100);
sim800l.print("MT POSITION IS: ");
sim800l.print(" LAT (N) :-");
//sim800l.print(location.lat); //GPS LAT
sim800l.print(" LNG (E) :-");
//sim800l.print(location.lng); // GPS LNG
sim800l.print("\r"); //the content of the message
delay(100);
sim800l.print((char)26);//the ASCII code of the ctrl+z is 26 (required according to the datasheet)
delay(100);
sim800l.println();
delay(100);
tempCavg = 0;
avgcount = 0;
}
5 years ago
Nice video and work. I am trying to make GPS GSM SMS tracker not for vehicles but family safety or can be used as wearable bands for traking and sending distress signals / SMS? Could you please suggest and share some information around it. Thanks!
6 years ago
can i use the sim5320A american version at other country
6 years ago
is it possible to change the transducer to a push button so that when you push the button the sim5320 will send a SMS to the user???
6 years ago
I think you forgot to change timer2 to 0 in your code.
6 years ago
Great project. You make it look so simple. Why not use the cone of safety approach - if the mokick leaves a 10m circle around the bike, then it triggers an alarm. To save power, turn the GPS on/off every x minutes. Just an idea. Love your instructable, just the same. Vielen dank. Mike
6 years ago
Wow! I am deeply impressed. High quality, short but perfect description. Just one suggestion, to avoid false alarm, in case of strong wind, storm etc. So, you will have the first shakes on the parking place. Just imagine a second shake after 30 minutes on the same place because of a strong storm. It would be maybe a good idea to compare the last location with the location before the last one. When both have the same data, it would be a good idea to stop the device sending the message, translating the result as "false alarm".
Reply 6 years ago
really good point for eliminating false alarms.
6 years ago
Don't take this the wrong way. This is not for the poster of this great article.
For those who would like an off the shelf solution. Get a cheap prepaid or something cell phone with GPS. Install Find Device Manager and you can track it via the web. Add a solar charger and you are set for a while.
Reply 6 years ago
This is how I track my kids where abouts. I just sign into their android phones with my google account and shut off all syncing. Then if they dont arrive home when they should I use android Device manager online or my phone and BAM!!
6 years ago
Would it work with the raspberry pi 3?
6 years ago
Would be nice to see a PCB with an GSM/GPS module and an ATMega chip.
Reply 6 years ago
That would be great. Can you post a link here for it when done please Kevin?
6 years ago
Very nice! This is what alot of peeps would like for their bicycles
too. I'm envisioning something like this, but smaller and hidden in a
carbon part. Be it a seat post, handlebar, or a stem. If you had
wireless charging, then you really be happening!
Thanks for your post and I wish you the best.
6 years ago
Great project
How it is possible to download the schematic without being a "premium" member?
Also would it be possible to have 12v version? As I plan to use this in a Car.