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

Arduino Mega 2560-Based Sensor Data Logger with ESP32-CAM and LCD Interface

Image of Arduino Mega 2560-Based Sensor Data Logger with ESP32-CAM and LCD Interface

Circuit Documentation

Summary

This document provides a detailed overview of a circuit designed to interface various components including sensors, a microcontroller, a display, and other peripherals. The primary controller in this circuit is the Arduino Mega 2560, which is responsible for managing inputs and outputs, as well as communicating with an ESP32-CAM module and an Adafruit ADXL345 accelerometer. The circuit also includes an LCD Display for output, an HC-SR04 Ultrasonic Sensor for distance measurement, a toggle switch for user input, and a series of LEDs and resistors for indication purposes.

Component List

Adafruit ADXL345

  • Description: A digital accelerometer providing high resolution (13-bit) measurement at up to ±16g.
  • Pins: VIN, 3.3V, GND, CS, INT1, INT2, SDO/ADDR, SDA/SDIO, SCL

ESP32 - CAM

  • Description: A small-sized ESP32-based camera module that is suitable for smart home devices and wireless monitoring.
  • Pins: 5V, GND, IO12, IO13, IO15, IO14, IO2, IO4, VOT, VOR, VCC, IO0, IO16, 3V3

LCD Display 16x4 I2C

  • Description: A 16x4 character LCD display with an I2C interface for easy communication.
  • Pins: SCL, SDA, VCC, GND

HC-SR04 Ultrasonic Sensor

  • Description: An ultrasonic distance sensor capable of measuring distances from 2cm to 400cm.
  • Pins: VCC, TRIG, ECHO, GND

Toggle Switch

  • Description: A simple switch that can connect or disconnect an electrical circuit.
  • Pins: L1, COM, L2

9V Battery

  • Description: A standard 9V battery used to provide power to the circuit.
  • Pins: -, +

DIP Switch 4 Position

  • Description: A manual electric switch packaged in a standard dual in-line package with 4 individual switches.
  • Pins: 1, 2, 3, 4, 5, 6, 7, 8

Arduino Mega 2560

  • Description: A microcontroller board based on the ATmega2560 with 54 digital input/output pins.
  • Pins: IOREF, RESET, 3V3, 5V, GND, VIN, A0-A15, D0-D53, AREF, SDA, SCL

LED: Two Pin (red)

  • Description: A red light-emitting diode for indication purposes.
  • Pins: cathode, anode

LED: Two Pin (green)

  • Description: A green light-emitting diode for indication purposes.
  • Pins: cathode, anode

Resistor (1k Ohms)

  • Description: A resistor with a resistance of 1000 Ohms.
  • Pins: pin1, pin2

Resistor (100 Ohms)

  • Description: A resistor with a resistance of 100 Ohms.
  • Pins: pin1, pin2

Resistor (200 Ohms)

  • Description: A resistor with a resistance of 200 Ohms.
  • Pins: pin1, pin2

Wiring Details

Adafruit ADXL345

  • VIN connected to 5V power supply
  • GND connected to common ground
  • SDA/SDIO connected to Arduino Mega 2560 SDA (D20/SDA)
  • SCL connected to Arduino Mega 2560 SCL (D21/SCL)

ESP32 - CAM

  • 5V connected to 5V power supply
  • GND connected to common ground
  • IO15 connected to 100 Ohm resistor, which is connected to Arduino Mega 2560 D6 PWM

LCD Display 16x4 I2C

  • SCL connected to Arduino Mega 2560 SCL (D21/SCL)
  • SDA connected to Arduino Mega 2560 SDA (D20/SDA)
  • VCC connected to 5V power supply
  • GND connected to common ground

HC-SR04 Ultrasonic Sensor

  • VCC connected to 5V power supply
  • GND connected to common ground
  • TRIG connected to Arduino Mega 2560 D9 PWM
  • ECHO connected to Arduino Mega 2560 D10 PWM

Toggle Switch

  • COM connected to common ground
  • L1 connected to Arduino Mega 2560 D8 PWM
  • L2 connected to Arduino Mega 2560 D7 PWM

DIP Switch 4 Position

  • 4 connected to 5V power supply
  • 1 connected to common ground
  • 2 connected to Arduino Mega 2560 D18/TX1
  • 3 connected to Arduino Mega 2560 D19/RX1

Arduino Mega 2560

  • 5V connected to 5V power supply
  • GND connected to common ground
  • D6 PWM connected to 100 Ohm resistor
  • D7 PWM connected to Toggle Switch L2
  • D8 PWM connected to Toggle Switch L1
  • D9 PWM connected to HC-SR04 TRIG
  • D10 PWM connected to HC-SR04 ECHO
  • D12 PWM connected to 1k Ohm resistor
  • D13 PWM connected to 1k Ohm resistor
  • D18/TX1 connected to DIP Switch 2
  • D19/RX1 connected to DIP Switch 3
  • D20/SDA connected to LCD Display SDA and Adafruit ADXL345 SDA/SDIO
  • D21/SCL connected to LCD Display SCL and Adafruit ADXL345 SCL

LED: Two Pin (red)

  • cathode connected to common ground
  • anode connected to 1k Ohm resistor, which is connected to Arduino Mega 2560 D13 PWM

LED: Two Pin (green)

  • cathode connected to common ground
  • anode connected to 1k Ohm resistor, which is connected to Arduino Mega 2560 D12 PWM

Resistor (1k Ohms)

  • One resistor connected between Arduino Mega 2560 D12 PWM and green LED anode
  • Another resistor connected between Arduino Mega 2560 D13 PWM and red LED anode

Resistor (100 Ohms)

  • Connected between ESP32 - CAM IO15 and Arduino Mega 2560 D6 PWM

Resistor (200 Ohms)

  • Not connected in the provided net list

Documented Code

Arduino Mega 2560 Code (sketch.ino)

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

}

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

}

Note: The provided code for the Arduino Mega 2560 is a template with empty setup and loop functions. This code should be expanded with the specific logic required to control the components in the circuit.