Skip to content

AVR/Arduino powered GPS tracking device + Android tracking app + Web API

License

Notifications You must be signed in to change notification settings

xdmtk/sim808-anti-theft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sim808-anti-theft


The prototype model for an AVR/Arduino powered GPS tracking device.

Introduction

Inspired originally by a motorcycle theft incident I experienced, the project was intended as a bare minimum hardware/software template that can be easily put together and used for remote location monitoring and alerts. A more refined, closed-source production model is currently in the works. Broken down into 4 distinct parts:

  • Hardware setup
  • Embedded software
  • Android monitoring app
  • Web API to interface between hardware and Android app

Hardware Requirements

Nano V3.0 ATmega328P 3.7v to 5v Step-up PCB
LiPoly Battery 3.7v Sim808 GPRS Module

The GPRS board specified for this project can be replaced with any board capable of serial communication and some basic AT commands (must be able to fetch coordinates and make HTTP/HTTPS requests)

Getting Started

Hardware/embedded setup

To build/compile the embedded software for the Atmega328P microcontroller, you'll need to have either the Arduino IDE installed, or the Arduino CLI tools. For the bootloader, the Atmega328P requires atmega328old. So your compilation command would be:

arduino-cli compile --fqbn arduino:avr:nano:cpu=atmega328old

To flash the compiled executable:

arduino-cli upload -p /dev/{port} --fqbn arduino:avr:nano:cpu=atmega328old

Where the pathname is the file descriptor of your connection to the microcontroller.

Android build

The code for the Android app is plug and play for Android 8.0 ( Oreo and up ), except you will need an API key from Google to access their maps API. Likewise you will need to change the endpoint locations for your own API to interface with remote data from the microcontroller.

API setup

For this project I used a t2.micro EC2 instance from AWS, and setup a local MySQL with credentials specified in an .env file. The PHP written for this project can get a bit specific with directory structure, so you will likely have to modify those elements as needed.

NOTE: You'll need to define the API endpoints in both the Arduino sketch, and the Android application to hit your own server. The endpoints currently referenced no longer exist.

Design / Screenshots

Inside view ( With components ) Cover plate
Inside view ( Without components ) Enclosed View

About

AVR/Arduino powered GPS tracking device + Android tracking app + Web API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published