This project refers to a Security Alarm System implemented with Arduino and various electronics.

Below, are some of the system characteristics:

  1. A LCD is used for displaying helpful informative, warning and error messages
  2. A potentiometer is used for adjusting the contrast of the LCD
  3. The LCD is driven only with 2-wires by using a resistor, a diode and a shift register
  4. A decoupling capacitor is used with the shift register to prevent gibberish characters in LCD
  5. A piezo buzzer is used for notifying the users when a possible threat is recognized
  6. A loud security siren is used which is driven by a relay module
  7. The system is enabled / disabled with RFID cards
  8. A RFID reader is used for reading the RFID cards
  9. The RFID reader is connected in hardware serial
  10. A switch exists for connecting / disconnecting the hardware serial with the RFID reader
  11. Appropriate design patterns are used in software to reduce memory usage of global variables
  12. A PIR sensor is used for detecting possible motion
  13. A magnetic door switch is used for detecting possible violation
  14. The system can support also 5 more security zones (for example 5 more magnetic door switches)
  15. A GSM shield with a SIM card is used for sending SMSs and making missed voice calls
  16. The GSM shield is driven by using a well-written custom library based on SoftwareSerial
  17. All messages which are printed in the LCD are stored in flash memory
  18. A microSD shield is used for storing the RFIDs, the mobile numbers and the SMS text
  19. The main logic of the system is controlled in the software with a finite state machine
  20. You can add / remove RFIDs, mobile numbers or change the SMS text without software changes
  21. The PIR sensor is calibrated at boot time
  22. All users (mobile numbers) are notified 3 times with a SMS message and a missed voice call
  23. One line in loop function due to elegant code! 🙂
  24. The RFIDs in the microSD are encrypted with XOR encryption
  25. A one-time pad encryption key is provided at runtime with a RFID glass capsule
  26. U-Shaped wires are used for the connections in breadboard
  27. A sensor shield is used in order to expose PINs of Arduino board
  28. The system is powered with an external power supply

Hardware components:

  1. Arduino UNO
  2. SparkFun microSD shield
  3. Arduino GSM shield
  4. Arduino sensor shield
  5. 6x – 8-pin Arduino stackable headers (optional)
  6. 6x – 6-pin Arduino stackable headers (optional)
  7. U-Shaped jumper wires kit
  8. 10K potentiometer (optional)
  9. SparkFun RFID USB reader
  10. RFID reader ID-12LA
  11. Piezo buzzer
  12. SPDT mini power switch
  13. Flexible stranded core wires
  14. 1N4148 diode
  15. Ceramic capacitor 0.1uF
  16. 1K Resistor
  17. HD44780 compatible 16×2 LCD
  18. Magnetic door switch
  19. 74HC595 shift register 8-bit
  20. PIR sensor
  21. Relay module
  22. Breadboard
  23. RFID tags
  24. RFID glass capsule (optional)
  25. 2x Switching mode power supply MW3K10GS
  26. USB cable A to B
  27. SIM card
  28. 2x Half buckled 3 wire cables
  29. 512MB microSD card
  30. Security alarm siren (110db)

Future changes:

  • I might use a UPS to support the system even when the input power source fails
  • I will extend the wires of magnetic door switches and PIR sensor in order to hide the system
  • I will use a metallic security box for embedding the system in it

For more information you can get the project itself:


Below, are some pictures of the project:

This slideshow requires JavaScript.