Arduino Smoke Detector With Emotive LED Display

by Random Stuff We Make in Circuits > Arduino

162 Views, 1 Favorites, 0 Comments

Arduino Smoke Detector With Emotive LED Display

This Isn't Your Average Smoke Detector: The Arduino Game Changer!

In this project, we will be creating an Arduino-based smoke detector that not only senses the smoke but also displays a visual alert. For the visual alert, we're using an 8x8 LED matrix to show a sad emoji when smoke is detected and a smiley face when the air is clear. A buzzer will also sound in the presence of smoke. This system can be a great addition to your home safety or an excellent project for those looking to delve a bit into electronics and coding.

Supplies

ETR-103-Arduino-Nano.png
max7219-8x8-led-dot-matrix-displ.jpg
MQ2-Gas-Sensor-Module_1024x1024@2x.jpg
Piezoelectric-Buzzer_1200x1200.png

For this project, you will need:

  • Arduino Nano
  • MQ-2 smoke sensor or Equivalent
  • 8x8 LED Matrix with MAX7219 driver
  • Buzzer
  • Breadboard
  • Jumper wires
  • USB cable for programming your Arduino

Wire Up the Circuit

Arduino smoke detector.png

Let's wire up your Arduino to the components. Here's a detailed guide:

  • MQ-2 Smoke Sensor:
  • VCC to 5V on Arduino
  • GND to GND on Arduino
  • A0 to Analog pin A0 on Arduino
  • 8x8 LED Matrix with MAX7219 Driver:
  • VCC to 5V on Arduino
  • GND to GND on Arduino
  • DIN to Digital pin 7 on Arduino
  • CS to Digital pin 5 on Arduino
  • CLK to Digital pin 6 on Arduino
  • Buzzer:
  • Positive (+) to Digital pin 3 on Arduino
  • Negative (-) to GND on Arduino

Refer to the image provided earlier as a visual aid to ensure all components are connected as instructed.


The Code

Screenshot (737).png


  1. Open Arduino IDE.
  2. Install the LED Control Library in your Arduino IDE.
  3. Upload the provided Arduino sketch to your board. This code will read the smoke levels from the MQ-2 sensor and display the corresponding emoji on the LED matrix, as well as manage the buzzer's beeping.
  4. Change the Threshold value, if required.