Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Project Documentation

Arduino UNO Based Multi-Functional Tracking Device with GPS, GSM, and Wi-Fi Capabilities

Image of Arduino UNO Based Multi-Functional Tracking Device with GPS, GSM, and Wi-Fi Capabilities

Circuit Documentation

Summary of the Circuit

This circuit integrates a variety of components including an Arduino UNO, an ESP8266 NodeMCU, a GPS module (NEO 6M), an LCD display, a potentiometer, an Adafruit ADXL335 accelerometer, and a SIM900A Mini GSM module. The Arduino UNO serves as the primary microcontroller, interfacing with the accelerometer for motion sensing, the GPS module for location tracking, the GSM module for cellular communication, and the LCD display for user interface. The ESP8266 NodeMCU is used for Wi-Fi connectivity. The potentiometer is used to adjust the contrast of the LCD display. Power distribution is managed across the components, and serial communication is established between the Arduino and the GPS and GSM modules.

Component List

Arduino UNO

  • Microcontroller board based on the ATmega328P
  • Features digital I/O pins, analog input pins, and various power pins

GPS NEO 6M

  • GPS module for satellite navigation
  • Provides location data via serial communication

ESP8266 NodeMCU

  • Wi-Fi microcontroller module based on the ESP8266
  • Features digital I/O and analog input pins

LCD Display (16 pin)

  • Alphanumeric liquid crystal display
  • Utilizes parallel interface for displaying information

Potentiometer

  • Three-terminal variable resistor
  • Adjusts voltage and can be used to control the LCD contrast

Adafruit ADXL335

  • Three-axis accelerometer
  • Measures acceleration in three dimensions

SIM900A Mini

  • GSM/GPRS module for cellular communication
  • Supports voice calls and SMS

Wiring Details

Arduino UNO

  • 3.3V connected to ESP8266 NodeMCU 3V3 and Adafruit ADXL335 VIN
  • GND connected to ESP8266 NodeMCU GND, LCD Display VSS, K, and R_W
  • Vin connected to Potentiometer VCC, LCD Display VDD, and A
  • A0 connected to Adafruit ADXL335 XOUT
  • A1 connected to Adafruit ADXL335 YOUT
  • A4 connected to ESP8266 NodeMCU D2
  • A5 connected to ESP8266 NodeMCU D1
  • D13 connected to LCD Display DB7
  • D12 connected to LCD Display DB6
  • D11 connected to LCD Display DB5
  • D10 connected to LCD Display DB4
  • D9 connected to LCD Display E
  • D8 connected to LCD Display RS
  • D6 connected to SIM900A Mini TX
  • D5 connected to SIM900A Mini RX
  • D4 connected to GPS NEO 6M RX
  • D3 connected to GPS NEO 6M TX

GPS NEO 6M

  • VCC connected to SIM900A Mini VCC and ESP8266 NodeMCU VIN
  • GND connected to SIM900A Mini GND and ESP8266 NodeMCU GND

ESP8266 NodeMCU

  • GND connected to Arduino UNO GND, LCD Display VSS, K, and R_W

LCD Display (16 pin)

  • VSS, K, and R_W connected to Arduino UNO GND
  • VDD and A connected to Arduino UNO Vin
  • VO connected to Potentiometer Output

Potentiometer

  • Output connected to LCD Display VO
  • GND connected to Adafruit ADXL335 GND

Adafruit ADXL335

  • VIN connected to Arduino UNO 3.3V
  • GND connected to Potentiometer GND

SIM900A Mini

  • VCC connected to ESP8266 NodeMCU VIN
  • GND connected to ESP8266 NodeMCU GND

Documented Code

Arduino UNO Code (sketch.ino)

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

Additional Notes

  • The Arduino UNO code provided is a template with empty setup() and loop() functions. Actual implementation details need to be added based on the specific requirements of the circuit's operation.
  • The ESP8266 NodeMCU code is not provided in the input and should be developed to handle Wi-Fi connectivity tasks.
  • The GPS NEO 6M, SIM900A Mini, and Adafruit ADXL335 modules typically communicate with the Arduino via serial interfaces, and appropriate libraries and code should be used to interface with these components.
  • The LCD Display requires initialization and a library to manage the display of characters and numbers on the screen.
  • The potentiometer is used to adjust the contrast of the LCD, and no specific code is required for its operation.